diff --git a/packages/google-cloud-iap/.eslintignore b/packages/google-cloud-iap/.eslintignore
new file mode 100644
index 00000000000..ea5b04aebe6
--- /dev/null
+++ b/packages/google-cloud-iap/.eslintignore
@@ -0,0 +1,7 @@
+**/node_modules
+**/coverage
+test/fixtures
+build/
+docs/
+protos/
+samples/generated/
diff --git a/packages/google-cloud-iap/.eslintrc.json b/packages/google-cloud-iap/.eslintrc.json
new file mode 100644
index 00000000000..78215349546
--- /dev/null
+++ b/packages/google-cloud-iap/.eslintrc.json
@@ -0,0 +1,3 @@
+{
+ "extends": "./node_modules/gts"
+}
diff --git a/packages/google-cloud-iap/.gitattributes b/packages/google-cloud-iap/.gitattributes
new file mode 100644
index 00000000000..33739cb74e4
--- /dev/null
+++ b/packages/google-cloud-iap/.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-iap/.github/.OwlBot.yaml b/packages/google-cloud-iap/.github/.OwlBot.yaml
new file mode 100644
index 00000000000..d3d34c512ed
--- /dev/null
+++ b/packages/google-cloud-iap/.github/.OwlBot.yaml
@@ -0,0 +1,22 @@
+# Copyright 2021 Google LLC
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+docker:
+ image: gcr.io/cloud-devrel-public-resources/owlbot-nodejs:latest
+
+deep-remove-regex:
+ - /owl-bot-staging
+
+deep-copy-regex:
+ - source: /google/cloud/iap/(.*)/.*-nodejs/(.*)
+ dest: /owl-bot-staging/$1/$2
diff --git a/packages/google-cloud-iap/.gitignore b/packages/google-cloud-iap/.gitignore
new file mode 100644
index 00000000000..5d32b23782f
--- /dev/null
+++ b/packages/google-cloud-iap/.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-iap/.jsdoc.js b/packages/google-cloud-iap/.jsdoc.js
new file mode 100644
index 00000000000..c516e1ec527
--- /dev/null
+++ b/packages/google-cloud-iap/.jsdoc.js
@@ -0,0 +1,55 @@
+// Copyright 2022 Google LLC
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// https://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+//
+// ** This file is automatically generated by gapic-generator-typescript. **
+// ** https://github.com/googleapis/gapic-generator-typescript **
+// ** All changes to this file may be overwritten. **
+
+'use strict';
+
+module.exports = {
+ opts: {
+ readme: './README.md',
+ package: './package.json',
+ template: './node_modules/jsdoc-fresh',
+ recurse: true,
+ verbose: true,
+ destination: './docs/'
+ },
+ plugins: [
+ 'plugins/markdown',
+ 'jsdoc-region-tag'
+ ],
+ source: {
+ excludePattern: '(^|\\/|\\\\)[._]',
+ include: [
+ 'build/src',
+ 'protos'
+ ],
+ includePattern: '\\.js$'
+ },
+ templates: {
+ copyright: 'Copyright 2022 Google LLC',
+ includeDate: false,
+ sourceFiles: false,
+ systemName: '@google-cloud/iap',
+ theme: 'lumen',
+ default: {
+ outputSourceFiles: false
+ }
+ },
+ markdown: {
+ idInHeadings: true
+ }
+};
diff --git a/packages/google-cloud-iap/.mocharc.js b/packages/google-cloud-iap/.mocharc.js
new file mode 100644
index 00000000000..0b600509bed
--- /dev/null
+++ b/packages/google-cloud-iap/.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-iap/.nycrc b/packages/google-cloud-iap/.nycrc
new file mode 100644
index 00000000000..b18d5472b62
--- /dev/null
+++ b/packages/google-cloud-iap/.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-iap/.prettierignore b/packages/google-cloud-iap/.prettierignore
new file mode 100644
index 00000000000..9340ad9b86d
--- /dev/null
+++ b/packages/google-cloud-iap/.prettierignore
@@ -0,0 +1,6 @@
+**/node_modules
+**/coverage
+test/fixtures
+build/
+docs/
+protos/
diff --git a/packages/google-cloud-iap/.prettierrc.js b/packages/google-cloud-iap/.prettierrc.js
new file mode 100644
index 00000000000..d1b95106f4c
--- /dev/null
+++ b/packages/google-cloud-iap/.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-iap/.repo-metadata.json b/packages/google-cloud-iap/.repo-metadata.json
new file mode 100644
index 00000000000..aebfba58469
--- /dev/null
+++ b/packages/google-cloud-iap/.repo-metadata.json
@@ -0,0 +1,16 @@
+{
+ "name": "iap",
+ "name_pretty": "Identity-Aware Proxy",
+ "product_documentation": "https://cloud.google.com/iap/",
+ "client_documentation": "https://cloud.google.com/nodejs/docs/reference/iap/latest",
+ "issue_tracker": "https://github.com/googleapis/nodejs-iap/issues",
+ "release_level": "stable",
+ "language": "nodejs",
+ "repo": "googleapis/nodejs-iap",
+ "distribution_name": "@google-cloud/iap",
+ "api_id": "iap.googleapis.com",
+ "default_version": "v1",
+ "requires_billing": true,
+ "api_shortname": "iap",
+ "library_type": "GAPIC_AUTO"
+}
diff --git a/packages/google-cloud-iap/CHANGELOG.md b/packages/google-cloud-iap/CHANGELOG.md
new file mode 100644
index 00000000000..8122176bd42
--- /dev/null
+++ b/packages/google-cloud-iap/CHANGELOG.md
@@ -0,0 +1,84 @@
+# Changelog
+
+## [2.0.3](https://github.com/googleapis/nodejs-iap/compare/v2.0.2...v2.0.3) (2022-11-10)
+
+
+### Bug Fixes
+
+* **deps:** Use google-gax v3.5.2 ([#86](https://github.com/googleapis/nodejs-iap/issues/86)) ([25edbb2](https://github.com/googleapis/nodejs-iap/commit/25edbb2d3a145365115f2f5ce185ba2fb33b9dc5))
+* Preserve default values in x-goog-request-params header ([#79](https://github.com/googleapis/nodejs-iap/issues/79)) ([f6f411d](https://github.com/googleapis/nodejs-iap/commit/f6f411d90318256d13736eeb42c3ada08b9fe79a))
+* Regenerated protos JS and TS definitions ([#89](https://github.com/googleapis/nodejs-iap/issues/89)) ([6572907](https://github.com/googleapis/nodejs-iap/commit/6572907ee249cb4081cd3312cb430839ca68a1de))
+
+## [2.0.2](https://github.com/googleapis/nodejs-iap/compare/v2.0.1...v2.0.2) (2022-09-01)
+
+
+### Bug Fixes
+
+* Allow passing gax instance to client constructor ([#78](https://github.com/googleapis/nodejs-iap/issues/78)) ([819ed55](https://github.com/googleapis/nodejs-iap/commit/819ed550836f5fac12a7488227e04610cfab72f7))
+* Better support for fallback mode ([#73](https://github.com/googleapis/nodejs-iap/issues/73)) ([8433c4d](https://github.com/googleapis/nodejs-iap/commit/8433c4d3c21da8ee88b49feaadb286a299b72cb5))
+* Change import long to require ([#74](https://github.com/googleapis/nodejs-iap/issues/74)) ([4775b84](https://github.com/googleapis/nodejs-iap/commit/4775b8416d62feb49d448eebf1d186f6e49f4ef9))
+* Do not import the whole google-gax from proto JS ([#1553](https://github.com/googleapis/nodejs-iap/issues/1553)) ([#77](https://github.com/googleapis/nodejs-iap/issues/77)) ([863d928](https://github.com/googleapis/nodejs-iap/commit/863d92823a1efc459b1b851984687acc21da3ffc))
+* Remove pip install statements ([#1546](https://github.com/googleapis/nodejs-iap/issues/1546)) ([#76](https://github.com/googleapis/nodejs-iap/issues/76)) ([27e283a](https://github.com/googleapis/nodejs-iap/commit/27e283a01ac720112b307dc149492012ebccce1f))
+
+## [2.0.1](https://github.com/googleapis/nodejs-iap/compare/v2.0.0...v2.0.1) (2022-07-12)
+
+
+### Bug Fixes
+
+* **docs:** document fallback rest option ([#69](https://github.com/googleapis/nodejs-iap/issues/69)) ([154d791](https://github.com/googleapis/nodejs-iap/commit/154d791460661c13822104cb8464ff726a2a905b))
+
+## [2.0.0](https://github.com/googleapis/nodejs-iap/compare/v1.2.0...v2.0.0) (2022-05-19)
+
+
+### ⚠ BREAKING CHANGES
+
+* update library to use Node 12 (#65)
+
+### Features
+
+* add the TunnelDestGroup-related methods and types ([#63](https://github.com/googleapis/nodejs-iap/issues/63)) ([54419ef](https://github.com/googleapis/nodejs-iap/commit/54419efb8876f0705bfde529f160da2a58ec2c71))
+
+
+### Build System
+
+* update library to use Node 12 ([#65](https://github.com/googleapis/nodejs-iap/issues/65)) ([e54b690](https://github.com/googleapis/nodejs-iap/commit/e54b690de51e2287ef416e58d2169b36247cd4dc))
+
+## [1.2.0](https://github.com/googleapis/nodejs-iap/compare/v1.1.1...v1.2.0) (2022-04-08)
+
+
+### Features
+
+* AuditConfig for IAM v1 ([#48](https://github.com/googleapis/nodejs-iap/issues/48)) ([47af8d4](https://github.com/googleapis/nodejs-iap/commit/47af8d42fa116d8da4defd9a23312a4fe9c035c8))
+
+### [1.1.1](https://www.github.com/googleapis/nodejs-iap/compare/v1.1.0...v1.1.1) (2021-09-03)
+
+
+### Bug Fixes
+
+* **build:** migrate to main branch ([#12](https://www.github.com/googleapis/nodejs-iap/issues/12)) ([2826ce0](https://www.github.com/googleapis/nodejs-iap/commit/2826ce0cb7ed7573d02665410f91dd40c3ad08c2))
+
+## [1.1.0](https://www.github.com/googleapis/nodejs-iap/compare/v1.0.1...v1.1.0) (2021-08-23)
+
+
+### Features
+
+* turns on self-signed JWT feature flag ([#9](https://www.github.com/googleapis/nodejs-iap/issues/9)) ([433b4dc](https://www.github.com/googleapis/nodejs-iap/commit/433b4dcf15296a5760d2aa667ef94485e8993380))
+
+### [1.0.1](https://www.github.com/googleapis/nodejs-iap/compare/v1.0.0...v1.0.1) (2021-08-17)
+
+
+### Bug Fixes
+
+* **deps:** google-gax v2.24.1 ([#7](https://www.github.com/googleapis/nodejs-iap/issues/7)) ([69e6fa3](https://www.github.com/googleapis/nodejs-iap/commit/69e6fa3a726cdc5dc9205b470813b67c5712857c))
+
+## 1.0.0 (2021-07-30)
+
+
+### ⚠ BREAKING CHANGES
+
+* initial generation of library (#1)
+
+### Features
+
+* initial generation of library ([#1](https://www.github.com/googleapis/nodejs-iap/issues/1)) ([f1b5db4](https://www.github.com/googleapis/nodejs-iap/commit/f1b5db47a30588fdce6bb2a262152a07075ecfef))
+* initial stub of library ([a6a74d0](https://www.github.com/googleapis/nodejs-iap/commit/a6a74d07688051b87741c857824879ea3bfb1f01))
diff --git a/packages/google-cloud-iap/CODE_OF_CONDUCT.md b/packages/google-cloud-iap/CODE_OF_CONDUCT.md
new file mode 100644
index 00000000000..2add2547a81
--- /dev/null
+++ b/packages/google-cloud-iap/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-iap/CONTRIBUTING.md b/packages/google-cloud-iap/CONTRIBUTING.md
new file mode 100644
index 00000000000..08f74926361
--- /dev/null
+++ b/packages/google-cloud-iap/CONTRIBUTING.md
@@ -0,0 +1,76 @@
+# How to become a contributor and submit your own code
+
+**Table of contents**
+
+* [Contributor License Agreements](#contributor-license-agreements)
+* [Contributing a patch](#contributing-a-patch)
+* [Running the tests](#running-the-tests)
+* [Releasing the library](#releasing-the-library)
+
+## Contributor License Agreements
+
+We'd love to accept your sample apps and patches! Before we can take them, we
+have to jump a couple of legal hurdles.
+
+Please fill out either the individual or corporate Contributor License Agreement
+(CLA).
+
+ * If you are an individual writing original source code and you're sure you
+ own the intellectual property, then you'll need to sign an [individual CLA](https://developers.google.com/open-source/cla/individual).
+ * If you work for a company that wants to allow you to contribute your work,
+ then you'll need to sign a [corporate CLA](https://developers.google.com/open-source/cla/corporate).
+
+Follow either of the two links above to access the appropriate CLA and
+instructions for how to sign and return it. Once we receive it, we'll be able to
+accept your pull requests.
+
+## Contributing A Patch
+
+1. Submit an issue describing your proposed change to the repo in question.
+1. The repo owner will respond to your issue promptly.
+1. If your proposed change is accepted, and you haven't already done so, sign a
+ Contributor License Agreement (see details above).
+1. Fork the desired repo, develop and test your code changes.
+1. Ensure that your code adheres to the existing style in the code to which
+ you are contributing.
+1. Ensure that your code has an appropriate set of tests which all pass.
+1. Title your pull request following [Conventional Commits](https://www.conventionalcommits.org/) styling.
+1. Submit a pull request.
+
+### Before you begin
+
+1. [Select or create a Cloud Platform project][projects].
+1. [Enable billing for your project][billing].
+1. [Enable the Identity-Aware Proxy API][enable_api].
+1. [Set up authentication with a service account][auth] so you can access the
+ API from your local workstation.
+
+
+## Running the tests
+
+1. [Prepare your environment for Node.js setup][setup].
+
+1. Install dependencies:
+
+ npm install
+
+1. Run the tests:
+
+ # Run unit tests.
+ npm test
+
+ # Run sample integration tests.
+ npm run samples-test
+
+ # Run all system tests.
+ npm run system-test
+
+1. Lint (and maybe fix) any changes:
+
+ npm run fix
+
+[setup]: https://cloud.google.com/nodejs/docs/setup
+[projects]: https://console.cloud.google.com/project
+[billing]: https://support.google.com/cloud/answer/6293499#enable-billing
+[enable_api]: https://console.cloud.google.com/flows/enableapi?apiid=iap.googleapis.com
+[auth]: https://cloud.google.com/docs/authentication/getting-started
\ No newline at end of file
diff --git a/packages/google-cloud-iap/LICENSE b/packages/google-cloud-iap/LICENSE
new file mode 100644
index 00000000000..d6456956733
--- /dev/null
+++ b/packages/google-cloud-iap/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-iap/README.md b/packages/google-cloud-iap/README.md
new file mode 100644
index 00000000000..96df15060ba
--- /dev/null
+++ b/packages/google-cloud-iap/README.md
@@ -0,0 +1,159 @@
+[//]: # "This README.md file is auto-generated, all changes to this file will be lost."
+[//]: # "To regenerate it, use `python -m synthtool`."
+
+
+# [Identity-Aware Proxy: Node.js Client](https://github.com/googleapis/nodejs-iap)
+
+[](https://cloud.google.com/terms/launch-stages)
+[](https://www.npmjs.org/package/@google-cloud/iap)
+
+
+
+
+iap client for Node.js
+
+
+A comprehensive list of changes in each version may be found in
+[the CHANGELOG](https://github.com/googleapis/nodejs-iap/blob/main/CHANGELOG.md).
+
+* [Identity-Aware Proxy Node.js Client API Reference][client-docs]
+* [Identity-Aware Proxy Documentation][product-docs]
+* [github.com/googleapis/nodejs-iap](https://github.com/googleapis/nodejs-iap)
+
+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 Identity-Aware Proxy 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/iap
+```
+
+
+### Using the client library
+
+```javascript
+// Imports the Google Cloud client library
+
+// remove this line after package is released
+// eslint-disable-next-line node/no-missing-require
+const {IdentityAwareProxyOAuthServiceClient} = require('@google-cloud/iap');
+
+// const projectId = 'my-project'
+
+// Creates a client
+const client = new IdentityAwareProxyOAuthServiceClient();
+
+async function listBrands() {
+ const [brands] = await client.listBrands({
+ parent: `projects/${projectId}`,
+ });
+ console.info(brands);
+}
+listBrands();
+
+```
+
+
+
+## Samples
+
+Samples are in the [`samples/`](https://github.com/googleapis/nodejs-iap/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-iap/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-iap&page=editor&open_in_editor=samples/quickstart.js,samples/README.md) |
+
+
+
+The [Identity-Aware Proxy Node.js Client API Reference][client-docs] documentation
+also contains samples.
+
+## Supported Node.js Versions
+
+Our client libraries follow the [Node.js release schedule](https://nodejs.org/en/about/releases/).
+Libraries are compatible with all current _active_ and _maintenance_ versions of
+Node.js.
+If you are using an end-of-life version of Node.js, we recommend that you update
+as soon as possible to an actively supported LTS version.
+
+Google's client libraries support legacy versions of Node.js runtimes on a
+best-efforts basis with the following warnings:
+
+* Legacy versions are not tested in continuous integration.
+* Some security patches and features cannot be backported.
+* Dependencies cannot be kept up-to-date.
+
+Client libraries targeting some end-of-life versions of Node.js are available, and
+can be installed through npm [dist-tags](https://docs.npmjs.com/cli/dist-tag).
+The dist-tags follow the naming convention `legacy-(version)`.
+For example, `npm install @google-cloud/iap@legacy-8` installs client libraries
+for versions compatible with Node.js 8.
+
+## Versioning
+
+This library follows [Semantic Versioning](http://semver.org/).
+
+
+
+This library is considered to be **stable**. The code surface will not change in backwards-incompatible ways
+unless absolutely necessary (e.g. because of critical security issues) or with
+an extensive deprecation period. Issues and requests against **stable** libraries
+are addressed with the highest priority.
+
+
+
+
+
+
+More Information: [Google Cloud Platform Launch Stages][launch_stages]
+
+[launch_stages]: https://cloud.google.com/terms/launch-stages
+
+## Contributing
+
+Contributions welcome! See the [Contributing Guide](https://github.com/googleapis/nodejs-iap/blob/main/CONTRIBUTING.md).
+
+Please note that this `README.md`, the `samples/README.md`,
+and a variety of configuration files in this repository (including `.nycrc` and `tsconfig.json`)
+are generated from a central template. To edit one of these files, make an edit
+to its templates in
+[directory](https://github.com/googleapis/synthtool).
+
+## License
+
+Apache Version 2.0
+
+See [LICENSE](https://github.com/googleapis/nodejs-iap/blob/main/LICENSE)
+
+[client-docs]: https://cloud.google.com/nodejs/docs/reference/iap/latest
+[product-docs]: https://cloud.google.com/iap/
+[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=iap.googleapis.com
+[auth]: https://cloud.google.com/docs/authentication/getting-started
diff --git a/packages/google-cloud-iap/linkinator.config.json b/packages/google-cloud-iap/linkinator.config.json
new file mode 100644
index 00000000000..befd23c8633
--- /dev/null
+++ b/packages/google-cloud-iap/linkinator.config.json
@@ -0,0 +1,16 @@
+{
+ "recurse": true,
+ "skip": [
+ "https://codecov.io/gh/googleapis/",
+ "www.googleapis.com",
+ "img.shields.io",
+ "https://console.cloud.google.com/cloudshell",
+ "https://support.google.com"
+ ],
+ "silent": true,
+ "concurrency": 5,
+ "retry": true,
+ "retryErrors": true,
+ "retryErrorsCount": 5,
+ "retryErrorsJitter": 3000
+}
diff --git a/packages/google-cloud-iap/package.json b/packages/google-cloud-iap/package.json
new file mode 100644
index 00000000000..5a8821a6258
--- /dev/null
+++ b/packages/google-cloud-iap/package.json
@@ -0,0 +1,66 @@
+{
+ "name": "@google-cloud/iap",
+ "version": "2.0.3",
+ "description": "iap client for Node.js",
+ "repository": "googleapis/nodejs-iap",
+ "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 iap",
+ "iap",
+ "iap 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": "^3.5.2"
+ },
+ "devDependencies": {
+ "@types/mocha": "^9.0.0",
+ "@types/node": "^18.0.0",
+ "@types/sinon": "^10.0.0",
+ "c8": "^7.7.2",
+ "gts": "^3.1.0",
+ "jsdoc": "^4.0.0",
+ "jsdoc-fresh": "^2.0.0",
+ "jsdoc-region-tag": "^2.0.0",
+ "linkinator": "^4.0.0",
+ "mocha": "^9.2.2",
+ "null-loader": "^4.0.1",
+ "pack-n-play": "^1.0.0-2",
+ "sinon": "^14.0.0",
+ "ts-loader": "^9.1.2",
+ "typescript": "^4.6.4",
+ "webpack": "^5.36.2",
+ "webpack-cli": "^4.7.0"
+ },
+ "engines": {
+ "node": ">=12.0.0"
+ }
+}
diff --git a/packages/google-cloud-iap/protos/google/cloud/iap/v1/service.proto b/packages/google-cloud-iap/protos/google/cloud/iap/v1/service.proto
new file mode 100644
index 00000000000..cb28b24c6e3
--- /dev/null
+++ b/packages/google-cloud-iap/protos/google/cloud/iap/v1/service.proto
@@ -0,0 +1,630 @@
+// Copyright 2022 Google LLC
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+syntax = "proto3";
+
+package google.cloud.iap.v1;
+
+import "google/api/annotations.proto";
+import "google/api/client.proto";
+import "google/api/field_behavior.proto";
+import "google/api/resource.proto";
+import "google/iam/v1/iam_policy.proto";
+import "google/iam/v1/policy.proto";
+import "google/protobuf/duration.proto";
+import "google/protobuf/empty.proto";
+import "google/protobuf/field_mask.proto";
+import "google/protobuf/wrappers.proto";
+
+option csharp_namespace = "Google.Cloud.Iap.V1";
+option go_package = "google.golang.org/genproto/googleapis/cloud/iap/v1;iap";
+option java_multiple_files = true;
+option java_package = "com.google.cloud.iap.v1";
+option php_namespace = "Google\\Cloud\\Iap\\V1";
+option ruby_package = "Google::Cloud::Iap::V1";
+option (google.api.resource_definition) = {
+ type: "iap.googleapis.com/TunnelLocation"
+ pattern: "projects/{project}/iap_tunnel/locations/{location}"
+};
+
+// APIs for Identity-Aware Proxy Admin configurations.
+service IdentityAwareProxyAdminService {
+ option (google.api.default_host) = "iap.googleapis.com";
+ option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/cloud-platform";
+
+ // Sets the access control policy for an Identity-Aware Proxy protected
+ // resource. Replaces any existing policy.
+ // More information about managing access via IAP can be found at:
+ // https://cloud.google.com/iap/docs/managing-access#managing_access_via_the_api
+ rpc SetIamPolicy(google.iam.v1.SetIamPolicyRequest) returns (google.iam.v1.Policy) {
+ option (google.api.http) = {
+ post: "/v1/{resource=**}:setIamPolicy"
+ body: "*"
+ };
+ }
+
+ // Gets the access control policy for an Identity-Aware Proxy protected
+ // resource.
+ // More information about managing access via IAP can be found at:
+ // https://cloud.google.com/iap/docs/managing-access#managing_access_via_the_api
+ rpc GetIamPolicy(google.iam.v1.GetIamPolicyRequest) returns (google.iam.v1.Policy) {
+ option (google.api.http) = {
+ post: "/v1/{resource=**}:getIamPolicy"
+ body: "*"
+ };
+ }
+
+ // Returns permissions that a caller has on the Identity-Aware Proxy protected
+ // resource.
+ // More information about managing access via IAP can be found at:
+ // https://cloud.google.com/iap/docs/managing-access#managing_access_via_the_api
+ rpc TestIamPermissions(google.iam.v1.TestIamPermissionsRequest) returns (google.iam.v1.TestIamPermissionsResponse) {
+ option (google.api.http) = {
+ post: "/v1/{resource=**}:testIamPermissions"
+ body: "*"
+ };
+ }
+
+ // Gets the IAP settings on a particular IAP protected resource.
+ rpc GetIapSettings(GetIapSettingsRequest) returns (IapSettings) {
+ option (google.api.http) = {
+ get: "/v1/{name=**}:iapSettings"
+ };
+ }
+
+ // Updates the IAP settings on a particular IAP protected resource. It
+ // replaces all fields unless the `update_mask` is set.
+ rpc UpdateIapSettings(UpdateIapSettingsRequest) returns (IapSettings) {
+ option (google.api.http) = {
+ patch: "/v1/{iap_settings.name=**}:iapSettings"
+ body: "iap_settings"
+ };
+ }
+
+ // Lists the existing TunnelDestGroups. To group across all locations, use a
+ // `-` as the location ID. For example:
+ // `/v1/projects/123/iap_tunnel/locations/-/destGroups`
+ rpc ListTunnelDestGroups(ListTunnelDestGroupsRequest) returns (ListTunnelDestGroupsResponse) {
+ option (google.api.http) = {
+ get: "/v1/{parent=projects/*/iap_tunnel/locations/*}/destGroups"
+ };
+ option (google.api.method_signature) = "parent";
+ }
+
+ // Creates a new TunnelDestGroup.
+ rpc CreateTunnelDestGroup(CreateTunnelDestGroupRequest) returns (TunnelDestGroup) {
+ option (google.api.http) = {
+ post: "/v1/{parent=projects/*/iap_tunnel/locations/*}/destGroups"
+ body: "tunnel_dest_group"
+ };
+ option (google.api.method_signature) = "parent,tunnel_dest_group,tunnel_dest_group_id";
+ }
+
+ // Retrieves an existing TunnelDestGroup.
+ rpc GetTunnelDestGroup(GetTunnelDestGroupRequest) returns (TunnelDestGroup) {
+ option (google.api.http) = {
+ get: "/v1/{name=projects/*/iap_tunnel/locations/*/destGroups/*}"
+ };
+ option (google.api.method_signature) = "name";
+ }
+
+ // Deletes a TunnelDestGroup.
+ rpc DeleteTunnelDestGroup(DeleteTunnelDestGroupRequest) returns (google.protobuf.Empty) {
+ option (google.api.http) = {
+ delete: "/v1/{name=projects/*/iap_tunnel/locations/*/destGroups/*}"
+ };
+ option (google.api.method_signature) = "name";
+ }
+
+ // Updates a TunnelDestGroup.
+ rpc UpdateTunnelDestGroup(UpdateTunnelDestGroupRequest) returns (TunnelDestGroup) {
+ option (google.api.http) = {
+ patch: "/v1/{tunnel_dest_group.name=projects/*/iap_tunnel/locations/*/destGroups/*}"
+ body: "tunnel_dest_group"
+ };
+ option (google.api.method_signature) = "tunnel_dest_group,update_mask";
+ }
+}
+
+// The request to ListTunnelDestGroups.
+message ListTunnelDestGroupsRequest {
+ // Required. Google Cloud Project ID and location.
+ // In the following format:
+ // `projects/{project_number/id}/iap_tunnel/locations/{location}`.
+ // A `-` can be used for the location to group across all locations.
+ string parent = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "iap.googleapis.com/TunnelLocation"
+ }
+ ];
+
+ // The maximum number of groups to return. The service might return fewer than
+ // this value.
+ // If unspecified, at most 100 groups are returned.
+ // The maximum value is 1000; values above 1000 are coerced to 1000.
+ int32 page_size = 2;
+
+ // A page token, received from a previous `ListTunnelDestGroups`
+ // call. Provide this to retrieve the subsequent page.
+ //
+ // When paginating, all other parameters provided to
+ // `ListTunnelDestGroups` must match the call that provided the page
+ // token.
+ string page_token = 3;
+}
+
+// The response from ListTunnelDestGroups.
+message ListTunnelDestGroupsResponse {
+ // TunnelDestGroup existing in the project.
+ repeated TunnelDestGroup tunnel_dest_groups = 1;
+
+ // A token that you can send as `page_token` to retrieve the next page.
+ // If this field is omitted, there are no subsequent pages.
+ string next_page_token = 2;
+}
+
+// The request to CreateTunnelDestGroup.
+message CreateTunnelDestGroupRequest {
+ // Required. Google Cloud Project ID and location.
+ // In the following format:
+ // `projects/{project_number/id}/iap_tunnel/locations/{location}`.
+ string parent = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ child_type: "iap.googleapis.com/TunnelDestGroup"
+ }
+ ];
+
+ // Required. The TunnelDestGroup to create.
+ TunnelDestGroup tunnel_dest_group = 2 [(google.api.field_behavior) = REQUIRED];
+
+ // Required. The ID to use for the TunnelDestGroup, which becomes the final component of
+ // the resource name.
+ //
+ // This value must be 4-63 characters, and valid characters
+ // are `[a-z][0-9]-`.
+ string tunnel_dest_group_id = 3 [(google.api.field_behavior) = REQUIRED];
+}
+
+// The request to GetTunnelDestGroup.
+message GetTunnelDestGroupRequest {
+ // Required. Name of the TunnelDestGroup to be fetched.
+ // In the following format:
+ // `projects/{project_number/id}/iap_tunnel/locations/{location}/destGroups/{dest_group}`.
+ string name = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "iap.googleapis.com/TunnelDestGroup"
+ }
+ ];
+}
+
+// The request to DeleteTunnelDestGroup.
+message DeleteTunnelDestGroupRequest {
+ // Required. Name of the TunnelDestGroup to delete.
+ // In the following format:
+ // `projects/{project_number/id}/iap_tunnel/locations/{location}/destGroups/{dest_group}`.
+ string name = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "iap.googleapis.com/TunnelDestGroup"
+ }
+ ];
+}
+
+// The request to UpdateTunnelDestGroup.
+message UpdateTunnelDestGroupRequest {
+ // Required. The new values for the TunnelDestGroup.
+ TunnelDestGroup tunnel_dest_group = 1 [(google.api.field_behavior) = REQUIRED];
+
+ // A field mask that specifies which IAP settings to update.
+ // If omitted, then all of the settings are updated. See
+ // https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#fieldmask
+ google.protobuf.FieldMask update_mask = 2;
+}
+
+// A TunnelDestGroup.
+message TunnelDestGroup {
+ option (google.api.resource) = {
+ type: "iap.googleapis.com/TunnelDestGroup"
+ pattern: "projects/{project}/iap_tunnel/locations/{location}/destGroups/{dest_group}"
+ };
+
+ // Required. Immutable. Identifier for the TunnelDestGroup. Must be unique within the
+ // project.
+ string name = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.field_behavior) = IMMUTABLE
+ ];
+
+ // null List of CIDRs that this group applies to.
+ repeated string cidrs = 2 [(google.api.field_behavior) = UNORDERED_LIST];
+
+ // null List of FQDNs that this group applies to.
+ repeated string fqdns = 3 [(google.api.field_behavior) = UNORDERED_LIST];
+}
+
+// API to programmatically create, list and retrieve Identity Aware Proxy (IAP)
+// OAuth brands; and create, retrieve, delete and reset-secret of IAP OAuth
+// clients.
+service IdentityAwareProxyOAuthService {
+ option (google.api.default_host) = "iap.googleapis.com";
+ option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/cloud-platform";
+
+ // Lists the existing brands for the project.
+ rpc ListBrands(ListBrandsRequest) returns (ListBrandsResponse) {
+ option (google.api.http) = {
+ get: "/v1/{parent=projects/*}/brands"
+ };
+ }
+
+ // Constructs a new OAuth brand for the project if one does not exist.
+ // The created brand is "internal only", meaning that OAuth clients created
+ // under it only accept requests from users who belong to the same Google
+ // Workspace organization as the project. The brand is created in an
+ // un-reviewed status. NOTE: The "internal only" status can be manually
+ // changed in the Google Cloud Console. Requires that a brand does not already
+ // exist for the project, and that the specified support email is owned by the
+ // caller.
+ rpc CreateBrand(CreateBrandRequest) returns (Brand) {
+ option (google.api.http) = {
+ post: "/v1/{parent=projects/*}/brands"
+ body: "brand"
+ };
+ }
+
+ // Retrieves the OAuth brand of the project.
+ rpc GetBrand(GetBrandRequest) returns (Brand) {
+ option (google.api.http) = {
+ get: "/v1/{name=projects/*/brands/*}"
+ };
+ }
+
+ // Creates an Identity Aware Proxy (IAP) OAuth client. The client is owned
+ // by IAP. Requires that the brand for the project exists and that it is
+ // set for internal-only use.
+ rpc CreateIdentityAwareProxyClient(CreateIdentityAwareProxyClientRequest) returns (IdentityAwareProxyClient) {
+ option (google.api.http) = {
+ post: "/v1/{parent=projects/*/brands/*}/identityAwareProxyClients"
+ body: "identity_aware_proxy_client"
+ };
+ }
+
+ // Lists the existing clients for the brand.
+ rpc ListIdentityAwareProxyClients(ListIdentityAwareProxyClientsRequest) returns (ListIdentityAwareProxyClientsResponse) {
+ option (google.api.http) = {
+ get: "/v1/{parent=projects/*/brands/*}/identityAwareProxyClients"
+ };
+ }
+
+ // Retrieves an Identity Aware Proxy (IAP) OAuth client.
+ // Requires that the client is owned by IAP.
+ rpc GetIdentityAwareProxyClient(GetIdentityAwareProxyClientRequest) returns (IdentityAwareProxyClient) {
+ option (google.api.http) = {
+ get: "/v1/{name=projects/*/brands/*/identityAwareProxyClients/*}"
+ };
+ }
+
+ // Resets an Identity Aware Proxy (IAP) OAuth client secret. Useful if the
+ // secret was compromised. Requires that the client is owned by IAP.
+ rpc ResetIdentityAwareProxyClientSecret(ResetIdentityAwareProxyClientSecretRequest) returns (IdentityAwareProxyClient) {
+ option (google.api.http) = {
+ post: "/v1/{name=projects/*/brands/*/identityAwareProxyClients/*}:resetSecret"
+ body: "*"
+ };
+ }
+
+ // Deletes an Identity Aware Proxy (IAP) OAuth client. Useful for removing
+ // obsolete clients, managing the number of clients in a given project, and
+ // cleaning up after tests. Requires that the client is owned by IAP.
+ rpc DeleteIdentityAwareProxyClient(DeleteIdentityAwareProxyClientRequest) returns (google.protobuf.Empty) {
+ option (google.api.http) = {
+ delete: "/v1/{name=projects/*/brands/*/identityAwareProxyClients/*}"
+ };
+ }
+}
+
+// The request sent to GetIapSettings.
+message GetIapSettingsRequest {
+ // Required. The resource name for which to retrieve the settings.
+ // Authorization: Requires the `getSettings` permission for the associated
+ // resource.
+ string name = 1 [(google.api.field_behavior) = REQUIRED];
+}
+
+// The request sent to UpdateIapSettings.
+message UpdateIapSettingsRequest {
+ // Required. The new values for the IAP settings to be updated.
+ // Authorization: Requires the `updateSettings` permission for the associated
+ // resource.
+ IapSettings iap_settings = 1 [(google.api.field_behavior) = REQUIRED];
+
+ // The field mask specifying which IAP settings should be updated.
+ // If omitted, the all of the settings are updated. See
+ // https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#fieldmask
+ google.protobuf.FieldMask update_mask = 2;
+}
+
+// The IAP configurable settings.
+message IapSettings {
+ // Required. The resource name of the IAP protected resource.
+ string name = 1 [(google.api.field_behavior) = REQUIRED];
+
+ // Top level wrapper for all access related setting in IAP
+ AccessSettings access_settings = 5;
+
+ // Top level wrapper for all application related settings in IAP
+ ApplicationSettings application_settings = 6;
+}
+
+// Access related settings for IAP protected apps.
+message AccessSettings {
+ // GCIP claims and endpoint configurations for 3p identity providers.
+ GcipSettings gcip_settings = 1;
+
+ // Configuration to allow cross-origin requests via IAP.
+ CorsSettings cors_settings = 2;
+
+ // Settings to configure IAP's OAuth behavior.
+ OAuthSettings oauth_settings = 3;
+
+ // Settings to configure reauthentication policies in IAP.
+ ReauthSettings reauth_settings = 6;
+}
+
+// Allows customers to configure tenant_id for GCIP instance per-app.
+message GcipSettings {
+ // GCIP tenant ids that are linked to the IAP resource.
+ // tenant_ids could be a string beginning with a number character to indicate
+ // authenticating with GCIP tenant flow, or in the format of _
+ // to indicate authenticating with GCIP agent flow.
+ // If agent flow is used, tenant_ids should only contain one single element,
+ // while for tenant flow, tenant_ids can contain multiple elements.
+ repeated string tenant_ids = 1;
+
+ // Login page URI associated with the GCIP tenants.
+ // Typically, all resources within the same project share the same login page,
+ // though it could be overridden at the sub resource level.
+ google.protobuf.StringValue login_page_uri = 2;
+}
+
+// Allows customers to configure HTTP request paths that'll allow HTTP OPTIONS
+// call to bypass authentication and authorization.
+message CorsSettings {
+ // Configuration to allow HTTP OPTIONS calls to skip authorization. If
+ // undefined, IAP will not apply any special logic to OPTIONS requests.
+ google.protobuf.BoolValue allow_http_options = 1;
+}
+
+// Configuration for OAuth login&consent flow behavior as well as for OAuth
+// Credentials.
+message OAuthSettings {
+ // Domain hint to send as hd=? parameter in OAuth request flow. Enables
+ // redirect to primary IDP by skipping Google's login screen.
+ // https://developers.google.com/identity/protocols/OpenIDConnect#hd-param
+ // Note: IAP does not verify that the id token's hd claim matches this value
+ // since access behavior is managed by IAM policies.
+ google.protobuf.StringValue login_hint = 2;
+}
+
+// Configuration for IAP reauthentication policies.
+message ReauthSettings {
+ // Types of reauthentication methods supported by IAP.
+ enum Method {
+ // Reauthentication disabled.
+ METHOD_UNSPECIFIED = 0;
+
+ // Mimics the behavior as if the user had logged out and tried to log in
+ // again. Users with 2SV (2-step verification) enabled see their 2SV
+ // challenges if they did not opt to have their second factor responses
+ // saved. Apps Core (GSuites) admins can configure settings to disable 2SV
+ // cookies and require 2SV for all Apps Core users in their domains.
+ LOGIN = 1;
+
+ // User must type their password.
+ PASSWORD = 2;
+
+ // User must use their secure key 2nd factor device.
+ SECURE_KEY = 3;
+ }
+
+ // Type of policy in the case of hierarchial policies.
+ enum PolicyType {
+ // Default value. This value is unused.
+ POLICY_TYPE_UNSPECIFIED = 0;
+
+ // This policy acts as a minimum to other policies, lower in the hierarchy.
+ // Effective policy may only be the same or stricter.
+ MINIMUM = 1;
+
+ // This policy acts as a default if no other reauth policy is set.
+ DEFAULT = 2;
+ }
+
+ // Reauth method required by the policy.
+ Method method = 1;
+
+ // Reauth session lifetime, how long before a user has to reauthenticate
+ // again.
+ google.protobuf.Duration max_age = 2;
+
+ // How IAP determines the effective policy in cases of hierarchial policies.
+ // Policies are merged from higher in the hierarchy to lower in the hierarchy.
+ PolicyType policy_type = 3;
+}
+
+// Wrapper over application specific settings for IAP.
+message ApplicationSettings {
+ // Settings to configure IAP's behavior for a CSM mesh.
+ CsmSettings csm_settings = 1;
+
+ // Customization for Access Denied page.
+ AccessDeniedPageSettings access_denied_page_settings = 2;
+
+ // The Domain value to set for cookies generated by IAP. This value is not
+ // validated by the API, but will be ignored at runtime if invalid.
+ google.protobuf.StringValue cookie_domain = 3;
+}
+
+// Configuration for RCTokens generated for CSM workloads protected by IAP.
+// RCTokens are IAP generated JWTs that can be verified at the application. The
+// RCToken is primarily used for ISTIO deployments, and can be scoped to a
+// single mesh by configuring the audience field accordingly
+message CsmSettings {
+ // Audience claim set in the generated RCToken. This value is not validated by
+ // IAP.
+ google.protobuf.StringValue rctoken_aud = 1;
+}
+
+// Custom content configuration for access denied page.
+// IAP allows customers to define a custom URI to use as the error page when
+// access is denied to users. If IAP prevents access to this page, the default
+// IAP error page will be displayed instead.
+message AccessDeniedPageSettings {
+ // The URI to be redirected to when access is denied.
+ google.protobuf.StringValue access_denied_page_uri = 1;
+
+ // Whether to generate a troubleshooting URL on access denied events to this
+ // application.
+ google.protobuf.BoolValue generate_troubleshooting_uri = 2;
+}
+
+// The request sent to ListBrands.
+message ListBrandsRequest {
+ // Required. GCP Project number/id.
+ // In the following format: projects/{project_number/id}.
+ string parent = 1 [(google.api.field_behavior) = REQUIRED];
+}
+
+// Response message for ListBrands.
+message ListBrandsResponse {
+ // Brands existing in the project.
+ repeated Brand brands = 1;
+}
+
+// The request sent to CreateBrand.
+message CreateBrandRequest {
+ // Required. GCP Project number/id under which the brand is to be created.
+ // In the following format: projects/{project_number/id}.
+ string parent = 1 [(google.api.field_behavior) = REQUIRED];
+
+ // Required. The brand to be created.
+ Brand brand = 2 [(google.api.field_behavior) = REQUIRED];
+}
+
+// The request sent to GetBrand.
+message GetBrandRequest {
+ // Required. Name of the brand to be fetched.
+ // In the following format: projects/{project_number/id}/brands/{brand}.
+ string name = 1 [(google.api.field_behavior) = REQUIRED];
+}
+
+// The request sent to ListIdentityAwareProxyClients.
+message ListIdentityAwareProxyClientsRequest {
+ // Required. Full brand path.
+ // In the following format: projects/{project_number/id}/brands/{brand}.
+ string parent = 1 [(google.api.field_behavior) = REQUIRED];
+
+ // The maximum number of clients to return. The service may return fewer than
+ // this value.
+ // If unspecified, at most 100 clients will be returned.
+ // The maximum value is 1000; values above 1000 will be coerced to 1000.
+ int32 page_size = 2;
+
+ // A page token, received from a previous `ListIdentityAwareProxyClients`
+ // call. Provide this to retrieve the subsequent page.
+ //
+ // When paginating, all other parameters provided to
+ // `ListIdentityAwareProxyClients` must match the call that provided the page
+ // token.
+ string page_token = 3;
+}
+
+// Response message for ListIdentityAwareProxyClients.
+message ListIdentityAwareProxyClientsResponse {
+ // Clients existing in the brand.
+ repeated IdentityAwareProxyClient identity_aware_proxy_clients = 1;
+
+ // A token, which can be send as `page_token` to retrieve the next page.
+ // If this field is omitted, there are no subsequent pages.
+ string next_page_token = 2;
+}
+
+// The request sent to CreateIdentityAwareProxyClient.
+message CreateIdentityAwareProxyClientRequest {
+ // Required. Path to create the client in.
+ // In the following format:
+ // projects/{project_number/id}/brands/{brand}.
+ // The project must belong to a G Suite account.
+ string parent = 1 [(google.api.field_behavior) = REQUIRED];
+
+ // Required. Identity Aware Proxy Client to be created.
+ IdentityAwareProxyClient identity_aware_proxy_client = 2 [(google.api.field_behavior) = REQUIRED];
+}
+
+// The request sent to GetIdentityAwareProxyClient.
+message GetIdentityAwareProxyClientRequest {
+ // Required. Name of the Identity Aware Proxy client to be fetched.
+ // In the following format:
+ // projects/{project_number/id}/brands/{brand}/identityAwareProxyClients/{client_id}.
+ string name = 1 [(google.api.field_behavior) = REQUIRED];
+}
+
+// The request sent to ResetIdentityAwareProxyClientSecret.
+message ResetIdentityAwareProxyClientSecretRequest {
+ // Required. Name of the Identity Aware Proxy client to that will have its
+ // secret reset. In the following format:
+ // projects/{project_number/id}/brands/{brand}/identityAwareProxyClients/{client_id}.
+ string name = 1 [(google.api.field_behavior) = REQUIRED];
+}
+
+// The request sent to DeleteIdentityAwareProxyClient.
+message DeleteIdentityAwareProxyClientRequest {
+ // Required. Name of the Identity Aware Proxy client to be deleted.
+ // In the following format:
+ // projects/{project_number/id}/brands/{brand}/identityAwareProxyClients/{client_id}.
+ string name = 1 [(google.api.field_behavior) = REQUIRED];
+}
+
+// OAuth brand data.
+// NOTE: Only contains a portion of the data that describes a brand.
+message Brand {
+ // Output only. Identifier of the brand.
+ // NOTE: GCP project number achieves the same brand identification purpose as
+ // only one brand per project can be created.
+ string name = 1 [(google.api.field_behavior) = OUTPUT_ONLY];
+
+ // Support email displayed on the OAuth consent screen.
+ string support_email = 2;
+
+ // Application name displayed on OAuth consent screen.
+ string application_title = 3;
+
+ // Output only. Whether the brand is only intended for usage inside the
+ // G Suite organization only.
+ bool org_internal_only = 4 [(google.api.field_behavior) = OUTPUT_ONLY];
+}
+
+// Contains the data that describes an Identity Aware Proxy owned client.
+message IdentityAwareProxyClient {
+ // Output only. Unique identifier of the OAuth client.
+ string name = 1 [(google.api.field_behavior) = OUTPUT_ONLY];
+
+ // Output only. Client secret of the OAuth client.
+ string secret = 2 [(google.api.field_behavior) = OUTPUT_ONLY];
+
+ // Human-friendly name given to the OAuth client.
+ string display_name = 3;
+}
diff --git a/packages/google-cloud-iap/protos/google/cloud/iap/v1beta1/service.proto b/packages/google-cloud-iap/protos/google/cloud/iap/v1beta1/service.proto
new file mode 100644
index 00000000000..a414a339be9
--- /dev/null
+++ b/packages/google-cloud-iap/protos/google/cloud/iap/v1beta1/service.proto
@@ -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.
+
+syntax = "proto3";
+
+package google.cloud.iap.v1beta1;
+
+import "google/api/annotations.proto";
+import "google/api/client.proto";
+import "google/iam/v1/iam_policy.proto";
+import "google/iam/v1/policy.proto";
+
+option go_package = "google.golang.org/genproto/googleapis/cloud/iap/v1beta1;iap";
+option java_multiple_files = true;
+option java_package = "com.google.cloud.iap.v1beta1";
+
+// APIs for Identity-Aware Proxy Admin configurations.
+service IdentityAwareProxyAdminV1Beta1 {
+ option (google.api.default_host) = "iap.googleapis.com";
+ option (google.api.oauth_scopes) =
+ "https://www.googleapis.com/auth/cloud-platform";
+
+ // Sets the access control policy for an Identity-Aware Proxy protected
+ // resource. Replaces any existing policy.
+ // More information about managing access via IAP can be found at:
+ // https://cloud.google.com/iap/docs/managing-access#managing_access_via_the_api
+ rpc SetIamPolicy(google.iam.v1.SetIamPolicyRequest)
+ returns (google.iam.v1.Policy) {
+ option (google.api.http) = {
+ post: "/v1beta1/{resource=**}:setIamPolicy"
+ body: "*"
+ };
+ }
+
+ // Gets the access control policy for an Identity-Aware Proxy protected
+ // resource.
+ // More information about managing access via IAP can be found at:
+ // https://cloud.google.com/iap/docs/managing-access#managing_access_via_the_api
+ rpc GetIamPolicy(google.iam.v1.GetIamPolicyRequest)
+ returns (google.iam.v1.Policy) {
+ option (google.api.http) = {
+ post: "/v1beta1/{resource=**}:getIamPolicy"
+ body: "*"
+ };
+ }
+
+ // Returns permissions that a caller has on the Identity-Aware Proxy protected
+ // resource. If the resource does not exist or the caller does not have
+ // Identity-Aware Proxy permissions a [google.rpc.Code.PERMISSION_DENIED]
+ // will be returned.
+ // More information about managing access via IAP can be found at:
+ // https://cloud.google.com/iap/docs/managing-access#managing_access_via_the_api
+ rpc TestIamPermissions(google.iam.v1.TestIamPermissionsRequest)
+ returns (google.iam.v1.TestIamPermissionsResponse) {
+ option (google.api.http) = {
+ post: "/v1beta1/{resource=**}:testIamPermissions"
+ body: "*"
+ };
+ }
+}
diff --git a/packages/google-cloud-iap/protos/protos.d.ts b/packages/google-cloud-iap/protos/protos.d.ts
new file mode 100644
index 00000000000..e48b84cb1a4
--- /dev/null
+++ b/packages/google-cloud-iap/protos/protos.d.ts
@@ -0,0 +1,10312 @@
+// Copyright 2022 Google LLC
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+import type {protobuf as $protobuf} from "google-gax";
+import Long = require("long");
+/** Namespace google. */
+export namespace google {
+
+ /** Namespace cloud. */
+ namespace cloud {
+
+ /** Namespace iap. */
+ namespace iap {
+
+ /** Namespace v1. */
+ namespace v1 {
+
+ /** Represents an IdentityAwareProxyAdminService */
+ class IdentityAwareProxyAdminService extends $protobuf.rpc.Service {
+
+ /**
+ * Constructs a new IdentityAwareProxyAdminService 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 IdentityAwareProxyAdminService 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): IdentityAwareProxyAdminService;
+
+ /**
+ * Calls SetIamPolicy.
+ * @param request SetIamPolicyRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Policy
+ */
+ public setIamPolicy(request: google.iam.v1.ISetIamPolicyRequest, callback: google.cloud.iap.v1.IdentityAwareProxyAdminService.SetIamPolicyCallback): void;
+
+ /**
+ * Calls SetIamPolicy.
+ * @param request SetIamPolicyRequest message or plain object
+ * @returns Promise
+ */
+ public setIamPolicy(request: google.iam.v1.ISetIamPolicyRequest): Promise;
+
+ /**
+ * Calls GetIamPolicy.
+ * @param request GetIamPolicyRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Policy
+ */
+ public getIamPolicy(request: google.iam.v1.IGetIamPolicyRequest, callback: google.cloud.iap.v1.IdentityAwareProxyAdminService.GetIamPolicyCallback): void;
+
+ /**
+ * Calls GetIamPolicy.
+ * @param request GetIamPolicyRequest message or plain object
+ * @returns Promise
+ */
+ public getIamPolicy(request: google.iam.v1.IGetIamPolicyRequest): Promise;
+
+ /**
+ * Calls TestIamPermissions.
+ * @param request TestIamPermissionsRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and TestIamPermissionsResponse
+ */
+ public testIamPermissions(request: google.iam.v1.ITestIamPermissionsRequest, callback: google.cloud.iap.v1.IdentityAwareProxyAdminService.TestIamPermissionsCallback): void;
+
+ /**
+ * Calls TestIamPermissions.
+ * @param request TestIamPermissionsRequest message or plain object
+ * @returns Promise
+ */
+ public testIamPermissions(request: google.iam.v1.ITestIamPermissionsRequest): Promise;
+
+ /**
+ * Calls GetIapSettings.
+ * @param request GetIapSettingsRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and IapSettings
+ */
+ public getIapSettings(request: google.cloud.iap.v1.IGetIapSettingsRequest, callback: google.cloud.iap.v1.IdentityAwareProxyAdminService.GetIapSettingsCallback): void;
+
+ /**
+ * Calls GetIapSettings.
+ * @param request GetIapSettingsRequest message or plain object
+ * @returns Promise
+ */
+ public getIapSettings(request: google.cloud.iap.v1.IGetIapSettingsRequest): Promise;
+
+ /**
+ * Calls UpdateIapSettings.
+ * @param request UpdateIapSettingsRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and IapSettings
+ */
+ public updateIapSettings(request: google.cloud.iap.v1.IUpdateIapSettingsRequest, callback: google.cloud.iap.v1.IdentityAwareProxyAdminService.UpdateIapSettingsCallback): void;
+
+ /**
+ * Calls UpdateIapSettings.
+ * @param request UpdateIapSettingsRequest message or plain object
+ * @returns Promise
+ */
+ public updateIapSettings(request: google.cloud.iap.v1.IUpdateIapSettingsRequest): Promise;
+
+ /**
+ * Calls ListTunnelDestGroups.
+ * @param request ListTunnelDestGroupsRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and ListTunnelDestGroupsResponse
+ */
+ public listTunnelDestGroups(request: google.cloud.iap.v1.IListTunnelDestGroupsRequest, callback: google.cloud.iap.v1.IdentityAwareProxyAdminService.ListTunnelDestGroupsCallback): void;
+
+ /**
+ * Calls ListTunnelDestGroups.
+ * @param request ListTunnelDestGroupsRequest message or plain object
+ * @returns Promise
+ */
+ public listTunnelDestGroups(request: google.cloud.iap.v1.IListTunnelDestGroupsRequest): Promise;
+
+ /**
+ * Calls CreateTunnelDestGroup.
+ * @param request CreateTunnelDestGroupRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and TunnelDestGroup
+ */
+ public createTunnelDestGroup(request: google.cloud.iap.v1.ICreateTunnelDestGroupRequest, callback: google.cloud.iap.v1.IdentityAwareProxyAdminService.CreateTunnelDestGroupCallback): void;
+
+ /**
+ * Calls CreateTunnelDestGroup.
+ * @param request CreateTunnelDestGroupRequest message or plain object
+ * @returns Promise
+ */
+ public createTunnelDestGroup(request: google.cloud.iap.v1.ICreateTunnelDestGroupRequest): Promise;
+
+ /**
+ * Calls GetTunnelDestGroup.
+ * @param request GetTunnelDestGroupRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and TunnelDestGroup
+ */
+ public getTunnelDestGroup(request: google.cloud.iap.v1.IGetTunnelDestGroupRequest, callback: google.cloud.iap.v1.IdentityAwareProxyAdminService.GetTunnelDestGroupCallback): void;
+
+ /**
+ * Calls GetTunnelDestGroup.
+ * @param request GetTunnelDestGroupRequest message or plain object
+ * @returns Promise
+ */
+ public getTunnelDestGroup(request: google.cloud.iap.v1.IGetTunnelDestGroupRequest): Promise;
+
+ /**
+ * Calls DeleteTunnelDestGroup.
+ * @param request DeleteTunnelDestGroupRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Empty
+ */
+ public deleteTunnelDestGroup(request: google.cloud.iap.v1.IDeleteTunnelDestGroupRequest, callback: google.cloud.iap.v1.IdentityAwareProxyAdminService.DeleteTunnelDestGroupCallback): void;
+
+ /**
+ * Calls DeleteTunnelDestGroup.
+ * @param request DeleteTunnelDestGroupRequest message or plain object
+ * @returns Promise
+ */
+ public deleteTunnelDestGroup(request: google.cloud.iap.v1.IDeleteTunnelDestGroupRequest): Promise;
+
+ /**
+ * Calls UpdateTunnelDestGroup.
+ * @param request UpdateTunnelDestGroupRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and TunnelDestGroup
+ */
+ public updateTunnelDestGroup(request: google.cloud.iap.v1.IUpdateTunnelDestGroupRequest, callback: google.cloud.iap.v1.IdentityAwareProxyAdminService.UpdateTunnelDestGroupCallback): void;
+
+ /**
+ * Calls UpdateTunnelDestGroup.
+ * @param request UpdateTunnelDestGroupRequest message or plain object
+ * @returns Promise
+ */
+ public updateTunnelDestGroup(request: google.cloud.iap.v1.IUpdateTunnelDestGroupRequest): Promise;
+ }
+
+ namespace IdentityAwareProxyAdminService {
+
+ /**
+ * Callback as used by {@link google.cloud.iap.v1.IdentityAwareProxyAdminService|setIamPolicy}.
+ * @param error Error, if any
+ * @param [response] Policy
+ */
+ type SetIamPolicyCallback = (error: (Error|null), response?: google.iam.v1.Policy) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.iap.v1.IdentityAwareProxyAdminService|getIamPolicy}.
+ * @param error Error, if any
+ * @param [response] Policy
+ */
+ type GetIamPolicyCallback = (error: (Error|null), response?: google.iam.v1.Policy) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.iap.v1.IdentityAwareProxyAdminService|testIamPermissions}.
+ * @param error Error, if any
+ * @param [response] TestIamPermissionsResponse
+ */
+ type TestIamPermissionsCallback = (error: (Error|null), response?: google.iam.v1.TestIamPermissionsResponse) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.iap.v1.IdentityAwareProxyAdminService|getIapSettings}.
+ * @param error Error, if any
+ * @param [response] IapSettings
+ */
+ type GetIapSettingsCallback = (error: (Error|null), response?: google.cloud.iap.v1.IapSettings) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.iap.v1.IdentityAwareProxyAdminService|updateIapSettings}.
+ * @param error Error, if any
+ * @param [response] IapSettings
+ */
+ type UpdateIapSettingsCallback = (error: (Error|null), response?: google.cloud.iap.v1.IapSettings) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.iap.v1.IdentityAwareProxyAdminService|listTunnelDestGroups}.
+ * @param error Error, if any
+ * @param [response] ListTunnelDestGroupsResponse
+ */
+ type ListTunnelDestGroupsCallback = (error: (Error|null), response?: google.cloud.iap.v1.ListTunnelDestGroupsResponse) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.iap.v1.IdentityAwareProxyAdminService|createTunnelDestGroup}.
+ * @param error Error, if any
+ * @param [response] TunnelDestGroup
+ */
+ type CreateTunnelDestGroupCallback = (error: (Error|null), response?: google.cloud.iap.v1.TunnelDestGroup) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.iap.v1.IdentityAwareProxyAdminService|getTunnelDestGroup}.
+ * @param error Error, if any
+ * @param [response] TunnelDestGroup
+ */
+ type GetTunnelDestGroupCallback = (error: (Error|null), response?: google.cloud.iap.v1.TunnelDestGroup) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.iap.v1.IdentityAwareProxyAdminService|deleteTunnelDestGroup}.
+ * @param error Error, if any
+ * @param [response] Empty
+ */
+ type DeleteTunnelDestGroupCallback = (error: (Error|null), response?: google.protobuf.Empty) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.iap.v1.IdentityAwareProxyAdminService|updateTunnelDestGroup}.
+ * @param error Error, if any
+ * @param [response] TunnelDestGroup
+ */
+ type UpdateTunnelDestGroupCallback = (error: (Error|null), response?: google.cloud.iap.v1.TunnelDestGroup) => void;
+ }
+
+ /** Properties of a ListTunnelDestGroupsRequest. */
+ interface IListTunnelDestGroupsRequest {
+
+ /** ListTunnelDestGroupsRequest parent */
+ parent?: (string|null);
+
+ /** ListTunnelDestGroupsRequest pageSize */
+ pageSize?: (number|null);
+
+ /** ListTunnelDestGroupsRequest pageToken */
+ pageToken?: (string|null);
+ }
+
+ /** Represents a ListTunnelDestGroupsRequest. */
+ class ListTunnelDestGroupsRequest implements IListTunnelDestGroupsRequest {
+
+ /**
+ * Constructs a new ListTunnelDestGroupsRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.iap.v1.IListTunnelDestGroupsRequest);
+
+ /** ListTunnelDestGroupsRequest parent. */
+ public parent: string;
+
+ /** ListTunnelDestGroupsRequest pageSize. */
+ public pageSize: number;
+
+ /** ListTunnelDestGroupsRequest pageToken. */
+ public pageToken: string;
+
+ /**
+ * Creates a new ListTunnelDestGroupsRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ListTunnelDestGroupsRequest instance
+ */
+ public static create(properties?: google.cloud.iap.v1.IListTunnelDestGroupsRequest): google.cloud.iap.v1.ListTunnelDestGroupsRequest;
+
+ /**
+ * Encodes the specified ListTunnelDestGroupsRequest message. Does not implicitly {@link google.cloud.iap.v1.ListTunnelDestGroupsRequest.verify|verify} messages.
+ * @param message ListTunnelDestGroupsRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.iap.v1.IListTunnelDestGroupsRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ListTunnelDestGroupsRequest message, length delimited. Does not implicitly {@link google.cloud.iap.v1.ListTunnelDestGroupsRequest.verify|verify} messages.
+ * @param message ListTunnelDestGroupsRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.iap.v1.IListTunnelDestGroupsRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ListTunnelDestGroupsRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ListTunnelDestGroupsRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.iap.v1.ListTunnelDestGroupsRequest;
+
+ /**
+ * Decodes a ListTunnelDestGroupsRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ListTunnelDestGroupsRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.iap.v1.ListTunnelDestGroupsRequest;
+
+ /**
+ * Verifies a ListTunnelDestGroupsRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ListTunnelDestGroupsRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ListTunnelDestGroupsRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.iap.v1.ListTunnelDestGroupsRequest;
+
+ /**
+ * Creates a plain object from a ListTunnelDestGroupsRequest message. Also converts values to other types if specified.
+ * @param message ListTunnelDestGroupsRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.iap.v1.ListTunnelDestGroupsRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ListTunnelDestGroupsRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ListTunnelDestGroupsRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ListTunnelDestGroupsResponse. */
+ interface IListTunnelDestGroupsResponse {
+
+ /** ListTunnelDestGroupsResponse tunnelDestGroups */
+ tunnelDestGroups?: (google.cloud.iap.v1.ITunnelDestGroup[]|null);
+
+ /** ListTunnelDestGroupsResponse nextPageToken */
+ nextPageToken?: (string|null);
+ }
+
+ /** Represents a ListTunnelDestGroupsResponse. */
+ class ListTunnelDestGroupsResponse implements IListTunnelDestGroupsResponse {
+
+ /**
+ * Constructs a new ListTunnelDestGroupsResponse.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.iap.v1.IListTunnelDestGroupsResponse);
+
+ /** ListTunnelDestGroupsResponse tunnelDestGroups. */
+ public tunnelDestGroups: google.cloud.iap.v1.ITunnelDestGroup[];
+
+ /** ListTunnelDestGroupsResponse nextPageToken. */
+ public nextPageToken: string;
+
+ /**
+ * Creates a new ListTunnelDestGroupsResponse instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ListTunnelDestGroupsResponse instance
+ */
+ public static create(properties?: google.cloud.iap.v1.IListTunnelDestGroupsResponse): google.cloud.iap.v1.ListTunnelDestGroupsResponse;
+
+ /**
+ * Encodes the specified ListTunnelDestGroupsResponse message. Does not implicitly {@link google.cloud.iap.v1.ListTunnelDestGroupsResponse.verify|verify} messages.
+ * @param message ListTunnelDestGroupsResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.iap.v1.IListTunnelDestGroupsResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ListTunnelDestGroupsResponse message, length delimited. Does not implicitly {@link google.cloud.iap.v1.ListTunnelDestGroupsResponse.verify|verify} messages.
+ * @param message ListTunnelDestGroupsResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.iap.v1.IListTunnelDestGroupsResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ListTunnelDestGroupsResponse message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ListTunnelDestGroupsResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.iap.v1.ListTunnelDestGroupsResponse;
+
+ /**
+ * Decodes a ListTunnelDestGroupsResponse message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ListTunnelDestGroupsResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.iap.v1.ListTunnelDestGroupsResponse;
+
+ /**
+ * Verifies a ListTunnelDestGroupsResponse message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ListTunnelDestGroupsResponse message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ListTunnelDestGroupsResponse
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.iap.v1.ListTunnelDestGroupsResponse;
+
+ /**
+ * Creates a plain object from a ListTunnelDestGroupsResponse message. Also converts values to other types if specified.
+ * @param message ListTunnelDestGroupsResponse
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.iap.v1.ListTunnelDestGroupsResponse, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ListTunnelDestGroupsResponse to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ListTunnelDestGroupsResponse
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a CreateTunnelDestGroupRequest. */
+ interface ICreateTunnelDestGroupRequest {
+
+ /** CreateTunnelDestGroupRequest parent */
+ parent?: (string|null);
+
+ /** CreateTunnelDestGroupRequest tunnelDestGroup */
+ tunnelDestGroup?: (google.cloud.iap.v1.ITunnelDestGroup|null);
+
+ /** CreateTunnelDestGroupRequest tunnelDestGroupId */
+ tunnelDestGroupId?: (string|null);
+ }
+
+ /** Represents a CreateTunnelDestGroupRequest. */
+ class CreateTunnelDestGroupRequest implements ICreateTunnelDestGroupRequest {
+
+ /**
+ * Constructs a new CreateTunnelDestGroupRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.iap.v1.ICreateTunnelDestGroupRequest);
+
+ /** CreateTunnelDestGroupRequest parent. */
+ public parent: string;
+
+ /** CreateTunnelDestGroupRequest tunnelDestGroup. */
+ public tunnelDestGroup?: (google.cloud.iap.v1.ITunnelDestGroup|null);
+
+ /** CreateTunnelDestGroupRequest tunnelDestGroupId. */
+ public tunnelDestGroupId: string;
+
+ /**
+ * Creates a new CreateTunnelDestGroupRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns CreateTunnelDestGroupRequest instance
+ */
+ public static create(properties?: google.cloud.iap.v1.ICreateTunnelDestGroupRequest): google.cloud.iap.v1.CreateTunnelDestGroupRequest;
+
+ /**
+ * Encodes the specified CreateTunnelDestGroupRequest message. Does not implicitly {@link google.cloud.iap.v1.CreateTunnelDestGroupRequest.verify|verify} messages.
+ * @param message CreateTunnelDestGroupRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.iap.v1.ICreateTunnelDestGroupRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified CreateTunnelDestGroupRequest message, length delimited. Does not implicitly {@link google.cloud.iap.v1.CreateTunnelDestGroupRequest.verify|verify} messages.
+ * @param message CreateTunnelDestGroupRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.iap.v1.ICreateTunnelDestGroupRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a CreateTunnelDestGroupRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns CreateTunnelDestGroupRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.iap.v1.CreateTunnelDestGroupRequest;
+
+ /**
+ * Decodes a CreateTunnelDestGroupRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns CreateTunnelDestGroupRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.iap.v1.CreateTunnelDestGroupRequest;
+
+ /**
+ * Verifies a CreateTunnelDestGroupRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a CreateTunnelDestGroupRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns CreateTunnelDestGroupRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.iap.v1.CreateTunnelDestGroupRequest;
+
+ /**
+ * Creates a plain object from a CreateTunnelDestGroupRequest message. Also converts values to other types if specified.
+ * @param message CreateTunnelDestGroupRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.iap.v1.CreateTunnelDestGroupRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this CreateTunnelDestGroupRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for CreateTunnelDestGroupRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a GetTunnelDestGroupRequest. */
+ interface IGetTunnelDestGroupRequest {
+
+ /** GetTunnelDestGroupRequest name */
+ name?: (string|null);
+ }
+
+ /** Represents a GetTunnelDestGroupRequest. */
+ class GetTunnelDestGroupRequest implements IGetTunnelDestGroupRequest {
+
+ /**
+ * Constructs a new GetTunnelDestGroupRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.iap.v1.IGetTunnelDestGroupRequest);
+
+ /** GetTunnelDestGroupRequest name. */
+ public name: string;
+
+ /**
+ * Creates a new GetTunnelDestGroupRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns GetTunnelDestGroupRequest instance
+ */
+ public static create(properties?: google.cloud.iap.v1.IGetTunnelDestGroupRequest): google.cloud.iap.v1.GetTunnelDestGroupRequest;
+
+ /**
+ * Encodes the specified GetTunnelDestGroupRequest message. Does not implicitly {@link google.cloud.iap.v1.GetTunnelDestGroupRequest.verify|verify} messages.
+ * @param message GetTunnelDestGroupRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.iap.v1.IGetTunnelDestGroupRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified GetTunnelDestGroupRequest message, length delimited. Does not implicitly {@link google.cloud.iap.v1.GetTunnelDestGroupRequest.verify|verify} messages.
+ * @param message GetTunnelDestGroupRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.iap.v1.IGetTunnelDestGroupRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a GetTunnelDestGroupRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns GetTunnelDestGroupRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.iap.v1.GetTunnelDestGroupRequest;
+
+ /**
+ * Decodes a GetTunnelDestGroupRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns GetTunnelDestGroupRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.iap.v1.GetTunnelDestGroupRequest;
+
+ /**
+ * Verifies a GetTunnelDestGroupRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a GetTunnelDestGroupRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns GetTunnelDestGroupRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.iap.v1.GetTunnelDestGroupRequest;
+
+ /**
+ * Creates a plain object from a GetTunnelDestGroupRequest message. Also converts values to other types if specified.
+ * @param message GetTunnelDestGroupRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.iap.v1.GetTunnelDestGroupRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this GetTunnelDestGroupRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for GetTunnelDestGroupRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a DeleteTunnelDestGroupRequest. */
+ interface IDeleteTunnelDestGroupRequest {
+
+ /** DeleteTunnelDestGroupRequest name */
+ name?: (string|null);
+ }
+
+ /** Represents a DeleteTunnelDestGroupRequest. */
+ class DeleteTunnelDestGroupRequest implements IDeleteTunnelDestGroupRequest {
+
+ /**
+ * Constructs a new DeleteTunnelDestGroupRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.iap.v1.IDeleteTunnelDestGroupRequest);
+
+ /** DeleteTunnelDestGroupRequest name. */
+ public name: string;
+
+ /**
+ * Creates a new DeleteTunnelDestGroupRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns DeleteTunnelDestGroupRequest instance
+ */
+ public static create(properties?: google.cloud.iap.v1.IDeleteTunnelDestGroupRequest): google.cloud.iap.v1.DeleteTunnelDestGroupRequest;
+
+ /**
+ * Encodes the specified DeleteTunnelDestGroupRequest message. Does not implicitly {@link google.cloud.iap.v1.DeleteTunnelDestGroupRequest.verify|verify} messages.
+ * @param message DeleteTunnelDestGroupRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.iap.v1.IDeleteTunnelDestGroupRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified DeleteTunnelDestGroupRequest message, length delimited. Does not implicitly {@link google.cloud.iap.v1.DeleteTunnelDestGroupRequest.verify|verify} messages.
+ * @param message DeleteTunnelDestGroupRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.iap.v1.IDeleteTunnelDestGroupRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a DeleteTunnelDestGroupRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns DeleteTunnelDestGroupRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.iap.v1.DeleteTunnelDestGroupRequest;
+
+ /**
+ * Decodes a DeleteTunnelDestGroupRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns DeleteTunnelDestGroupRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.iap.v1.DeleteTunnelDestGroupRequest;
+
+ /**
+ * Verifies a DeleteTunnelDestGroupRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a DeleteTunnelDestGroupRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns DeleteTunnelDestGroupRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.iap.v1.DeleteTunnelDestGroupRequest;
+
+ /**
+ * Creates a plain object from a DeleteTunnelDestGroupRequest message. Also converts values to other types if specified.
+ * @param message DeleteTunnelDestGroupRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.iap.v1.DeleteTunnelDestGroupRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this DeleteTunnelDestGroupRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for DeleteTunnelDestGroupRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an UpdateTunnelDestGroupRequest. */
+ interface IUpdateTunnelDestGroupRequest {
+
+ /** UpdateTunnelDestGroupRequest tunnelDestGroup */
+ tunnelDestGroup?: (google.cloud.iap.v1.ITunnelDestGroup|null);
+
+ /** UpdateTunnelDestGroupRequest updateMask */
+ updateMask?: (google.protobuf.IFieldMask|null);
+ }
+
+ /** Represents an UpdateTunnelDestGroupRequest. */
+ class UpdateTunnelDestGroupRequest implements IUpdateTunnelDestGroupRequest {
+
+ /**
+ * Constructs a new UpdateTunnelDestGroupRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.iap.v1.IUpdateTunnelDestGroupRequest);
+
+ /** UpdateTunnelDestGroupRequest tunnelDestGroup. */
+ public tunnelDestGroup?: (google.cloud.iap.v1.ITunnelDestGroup|null);
+
+ /** UpdateTunnelDestGroupRequest updateMask. */
+ public updateMask?: (google.protobuf.IFieldMask|null);
+
+ /**
+ * Creates a new UpdateTunnelDestGroupRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns UpdateTunnelDestGroupRequest instance
+ */
+ public static create(properties?: google.cloud.iap.v1.IUpdateTunnelDestGroupRequest): google.cloud.iap.v1.UpdateTunnelDestGroupRequest;
+
+ /**
+ * Encodes the specified UpdateTunnelDestGroupRequest message. Does not implicitly {@link google.cloud.iap.v1.UpdateTunnelDestGroupRequest.verify|verify} messages.
+ * @param message UpdateTunnelDestGroupRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.iap.v1.IUpdateTunnelDestGroupRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified UpdateTunnelDestGroupRequest message, length delimited. Does not implicitly {@link google.cloud.iap.v1.UpdateTunnelDestGroupRequest.verify|verify} messages.
+ * @param message UpdateTunnelDestGroupRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.iap.v1.IUpdateTunnelDestGroupRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an UpdateTunnelDestGroupRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns UpdateTunnelDestGroupRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.iap.v1.UpdateTunnelDestGroupRequest;
+
+ /**
+ * Decodes an UpdateTunnelDestGroupRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns UpdateTunnelDestGroupRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.iap.v1.UpdateTunnelDestGroupRequest;
+
+ /**
+ * Verifies an UpdateTunnelDestGroupRequest message.
+ * @param message Plain 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 UpdateTunnelDestGroupRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns UpdateTunnelDestGroupRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.iap.v1.UpdateTunnelDestGroupRequest;
+
+ /**
+ * Creates a plain object from an UpdateTunnelDestGroupRequest message. Also converts values to other types if specified.
+ * @param message UpdateTunnelDestGroupRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.iap.v1.UpdateTunnelDestGroupRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this UpdateTunnelDestGroupRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for UpdateTunnelDestGroupRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a TunnelDestGroup. */
+ interface ITunnelDestGroup {
+
+ /** TunnelDestGroup name */
+ name?: (string|null);
+
+ /** TunnelDestGroup cidrs */
+ cidrs?: (string[]|null);
+
+ /** TunnelDestGroup fqdns */
+ fqdns?: (string[]|null);
+ }
+
+ /** Represents a TunnelDestGroup. */
+ class TunnelDestGroup implements ITunnelDestGroup {
+
+ /**
+ * Constructs a new TunnelDestGroup.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.iap.v1.ITunnelDestGroup);
+
+ /** TunnelDestGroup name. */
+ public name: string;
+
+ /** TunnelDestGroup cidrs. */
+ public cidrs: string[];
+
+ /** TunnelDestGroup fqdns. */
+ public fqdns: string[];
+
+ /**
+ * Creates a new TunnelDestGroup instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns TunnelDestGroup instance
+ */
+ public static create(properties?: google.cloud.iap.v1.ITunnelDestGroup): google.cloud.iap.v1.TunnelDestGroup;
+
+ /**
+ * Encodes the specified TunnelDestGroup message. Does not implicitly {@link google.cloud.iap.v1.TunnelDestGroup.verify|verify} messages.
+ * @param message TunnelDestGroup message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.iap.v1.ITunnelDestGroup, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified TunnelDestGroup message, length delimited. Does not implicitly {@link google.cloud.iap.v1.TunnelDestGroup.verify|verify} messages.
+ * @param message TunnelDestGroup message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.iap.v1.ITunnelDestGroup, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a TunnelDestGroup message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns TunnelDestGroup
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.iap.v1.TunnelDestGroup;
+
+ /**
+ * Decodes a TunnelDestGroup message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns TunnelDestGroup
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.iap.v1.TunnelDestGroup;
+
+ /**
+ * Verifies a TunnelDestGroup message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a TunnelDestGroup message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns TunnelDestGroup
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.iap.v1.TunnelDestGroup;
+
+ /**
+ * Creates a plain object from a TunnelDestGroup message. Also converts values to other types if specified.
+ * @param message TunnelDestGroup
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.iap.v1.TunnelDestGroup, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this TunnelDestGroup to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for TunnelDestGroup
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Represents an IdentityAwareProxyOAuthService */
+ class IdentityAwareProxyOAuthService extends $protobuf.rpc.Service {
+
+ /**
+ * Constructs a new IdentityAwareProxyOAuthService 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 IdentityAwareProxyOAuthService 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): IdentityAwareProxyOAuthService;
+
+ /**
+ * Calls ListBrands.
+ * @param request ListBrandsRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and ListBrandsResponse
+ */
+ public listBrands(request: google.cloud.iap.v1.IListBrandsRequest, callback: google.cloud.iap.v1.IdentityAwareProxyOAuthService.ListBrandsCallback): void;
+
+ /**
+ * Calls ListBrands.
+ * @param request ListBrandsRequest message or plain object
+ * @returns Promise
+ */
+ public listBrands(request: google.cloud.iap.v1.IListBrandsRequest): Promise;
+
+ /**
+ * Calls CreateBrand.
+ * @param request CreateBrandRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Brand
+ */
+ public createBrand(request: google.cloud.iap.v1.ICreateBrandRequest, callback: google.cloud.iap.v1.IdentityAwareProxyOAuthService.CreateBrandCallback): void;
+
+ /**
+ * Calls CreateBrand.
+ * @param request CreateBrandRequest message or plain object
+ * @returns Promise
+ */
+ public createBrand(request: google.cloud.iap.v1.ICreateBrandRequest): Promise;
+
+ /**
+ * Calls GetBrand.
+ * @param request GetBrandRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Brand
+ */
+ public getBrand(request: google.cloud.iap.v1.IGetBrandRequest, callback: google.cloud.iap.v1.IdentityAwareProxyOAuthService.GetBrandCallback): void;
+
+ /**
+ * Calls GetBrand.
+ * @param request GetBrandRequest message or plain object
+ * @returns Promise
+ */
+ public getBrand(request: google.cloud.iap.v1.IGetBrandRequest): Promise;
+
+ /**
+ * Calls CreateIdentityAwareProxyClient.
+ * @param request CreateIdentityAwareProxyClientRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and IdentityAwareProxyClient
+ */
+ public createIdentityAwareProxyClient(request: google.cloud.iap.v1.ICreateIdentityAwareProxyClientRequest, callback: google.cloud.iap.v1.IdentityAwareProxyOAuthService.CreateIdentityAwareProxyClientCallback): void;
+
+ /**
+ * Calls CreateIdentityAwareProxyClient.
+ * @param request CreateIdentityAwareProxyClientRequest message or plain object
+ * @returns Promise
+ */
+ public createIdentityAwareProxyClient(request: google.cloud.iap.v1.ICreateIdentityAwareProxyClientRequest): Promise;
+
+ /**
+ * Calls ListIdentityAwareProxyClients.
+ * @param request ListIdentityAwareProxyClientsRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and ListIdentityAwareProxyClientsResponse
+ */
+ public listIdentityAwareProxyClients(request: google.cloud.iap.v1.IListIdentityAwareProxyClientsRequest, callback: google.cloud.iap.v1.IdentityAwareProxyOAuthService.ListIdentityAwareProxyClientsCallback): void;
+
+ /**
+ * Calls ListIdentityAwareProxyClients.
+ * @param request ListIdentityAwareProxyClientsRequest message or plain object
+ * @returns Promise
+ */
+ public listIdentityAwareProxyClients(request: google.cloud.iap.v1.IListIdentityAwareProxyClientsRequest): Promise;
+
+ /**
+ * Calls GetIdentityAwareProxyClient.
+ * @param request GetIdentityAwareProxyClientRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and IdentityAwareProxyClient
+ */
+ public getIdentityAwareProxyClient(request: google.cloud.iap.v1.IGetIdentityAwareProxyClientRequest, callback: google.cloud.iap.v1.IdentityAwareProxyOAuthService.GetIdentityAwareProxyClientCallback): void;
+
+ /**
+ * Calls GetIdentityAwareProxyClient.
+ * @param request GetIdentityAwareProxyClientRequest message or plain object
+ * @returns Promise
+ */
+ public getIdentityAwareProxyClient(request: google.cloud.iap.v1.IGetIdentityAwareProxyClientRequest): Promise;
+
+ /**
+ * Calls ResetIdentityAwareProxyClientSecret.
+ * @param request ResetIdentityAwareProxyClientSecretRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and IdentityAwareProxyClient
+ */
+ public resetIdentityAwareProxyClientSecret(request: google.cloud.iap.v1.IResetIdentityAwareProxyClientSecretRequest, callback: google.cloud.iap.v1.IdentityAwareProxyOAuthService.ResetIdentityAwareProxyClientSecretCallback): void;
+
+ /**
+ * Calls ResetIdentityAwareProxyClientSecret.
+ * @param request ResetIdentityAwareProxyClientSecretRequest message or plain object
+ * @returns Promise
+ */
+ public resetIdentityAwareProxyClientSecret(request: google.cloud.iap.v1.IResetIdentityAwareProxyClientSecretRequest): Promise;
+
+ /**
+ * Calls DeleteIdentityAwareProxyClient.
+ * @param request DeleteIdentityAwareProxyClientRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Empty
+ */
+ public deleteIdentityAwareProxyClient(request: google.cloud.iap.v1.IDeleteIdentityAwareProxyClientRequest, callback: google.cloud.iap.v1.IdentityAwareProxyOAuthService.DeleteIdentityAwareProxyClientCallback): void;
+
+ /**
+ * Calls DeleteIdentityAwareProxyClient.
+ * @param request DeleteIdentityAwareProxyClientRequest message or plain object
+ * @returns Promise
+ */
+ public deleteIdentityAwareProxyClient(request: google.cloud.iap.v1.IDeleteIdentityAwareProxyClientRequest): Promise;
+ }
+
+ namespace IdentityAwareProxyOAuthService {
+
+ /**
+ * Callback as used by {@link google.cloud.iap.v1.IdentityAwareProxyOAuthService|listBrands}.
+ * @param error Error, if any
+ * @param [response] ListBrandsResponse
+ */
+ type ListBrandsCallback = (error: (Error|null), response?: google.cloud.iap.v1.ListBrandsResponse) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.iap.v1.IdentityAwareProxyOAuthService|createBrand}.
+ * @param error Error, if any
+ * @param [response] Brand
+ */
+ type CreateBrandCallback = (error: (Error|null), response?: google.cloud.iap.v1.Brand) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.iap.v1.IdentityAwareProxyOAuthService|getBrand}.
+ * @param error Error, if any
+ * @param [response] Brand
+ */
+ type GetBrandCallback = (error: (Error|null), response?: google.cloud.iap.v1.Brand) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.iap.v1.IdentityAwareProxyOAuthService|createIdentityAwareProxyClient}.
+ * @param error Error, if any
+ * @param [response] IdentityAwareProxyClient
+ */
+ type CreateIdentityAwareProxyClientCallback = (error: (Error|null), response?: google.cloud.iap.v1.IdentityAwareProxyClient) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.iap.v1.IdentityAwareProxyOAuthService|listIdentityAwareProxyClients}.
+ * @param error Error, if any
+ * @param [response] ListIdentityAwareProxyClientsResponse
+ */
+ type ListIdentityAwareProxyClientsCallback = (error: (Error|null), response?: google.cloud.iap.v1.ListIdentityAwareProxyClientsResponse) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.iap.v1.IdentityAwareProxyOAuthService|getIdentityAwareProxyClient}.
+ * @param error Error, if any
+ * @param [response] IdentityAwareProxyClient
+ */
+ type GetIdentityAwareProxyClientCallback = (error: (Error|null), response?: google.cloud.iap.v1.IdentityAwareProxyClient) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.iap.v1.IdentityAwareProxyOAuthService|resetIdentityAwareProxyClientSecret}.
+ * @param error Error, if any
+ * @param [response] IdentityAwareProxyClient
+ */
+ type ResetIdentityAwareProxyClientSecretCallback = (error: (Error|null), response?: google.cloud.iap.v1.IdentityAwareProxyClient) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.iap.v1.IdentityAwareProxyOAuthService|deleteIdentityAwareProxyClient}.
+ * @param error Error, if any
+ * @param [response] Empty
+ */
+ type DeleteIdentityAwareProxyClientCallback = (error: (Error|null), response?: google.protobuf.Empty) => void;
+ }
+
+ /** Properties of a GetIapSettingsRequest. */
+ interface IGetIapSettingsRequest {
+
+ /** GetIapSettingsRequest name */
+ name?: (string|null);
+ }
+
+ /** Represents a GetIapSettingsRequest. */
+ class GetIapSettingsRequest implements IGetIapSettingsRequest {
+
+ /**
+ * Constructs a new GetIapSettingsRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.iap.v1.IGetIapSettingsRequest);
+
+ /** GetIapSettingsRequest name. */
+ public name: string;
+
+ /**
+ * Creates a new GetIapSettingsRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns GetIapSettingsRequest instance
+ */
+ public static create(properties?: google.cloud.iap.v1.IGetIapSettingsRequest): google.cloud.iap.v1.GetIapSettingsRequest;
+
+ /**
+ * Encodes the specified GetIapSettingsRequest message. Does not implicitly {@link google.cloud.iap.v1.GetIapSettingsRequest.verify|verify} messages.
+ * @param message GetIapSettingsRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.iap.v1.IGetIapSettingsRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified GetIapSettingsRequest message, length delimited. Does not implicitly {@link google.cloud.iap.v1.GetIapSettingsRequest.verify|verify} messages.
+ * @param message GetIapSettingsRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.iap.v1.IGetIapSettingsRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a GetIapSettingsRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns GetIapSettingsRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.iap.v1.GetIapSettingsRequest;
+
+ /**
+ * Decodes a GetIapSettingsRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns GetIapSettingsRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.iap.v1.GetIapSettingsRequest;
+
+ /**
+ * Verifies a GetIapSettingsRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a GetIapSettingsRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns GetIapSettingsRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.iap.v1.GetIapSettingsRequest;
+
+ /**
+ * Creates a plain object from a GetIapSettingsRequest message. Also converts values to other types if specified.
+ * @param message GetIapSettingsRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.iap.v1.GetIapSettingsRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this GetIapSettingsRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for GetIapSettingsRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an UpdateIapSettingsRequest. */
+ interface IUpdateIapSettingsRequest {
+
+ /** UpdateIapSettingsRequest iapSettings */
+ iapSettings?: (google.cloud.iap.v1.IIapSettings|null);
+
+ /** UpdateIapSettingsRequest updateMask */
+ updateMask?: (google.protobuf.IFieldMask|null);
+ }
+
+ /** Represents an UpdateIapSettingsRequest. */
+ class UpdateIapSettingsRequest implements IUpdateIapSettingsRequest {
+
+ /**
+ * Constructs a new UpdateIapSettingsRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.iap.v1.IUpdateIapSettingsRequest);
+
+ /** UpdateIapSettingsRequest iapSettings. */
+ public iapSettings?: (google.cloud.iap.v1.IIapSettings|null);
+
+ /** UpdateIapSettingsRequest updateMask. */
+ public updateMask?: (google.protobuf.IFieldMask|null);
+
+ /**
+ * Creates a new UpdateIapSettingsRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns UpdateIapSettingsRequest instance
+ */
+ public static create(properties?: google.cloud.iap.v1.IUpdateIapSettingsRequest): google.cloud.iap.v1.UpdateIapSettingsRequest;
+
+ /**
+ * Encodes the specified UpdateIapSettingsRequest message. Does not implicitly {@link google.cloud.iap.v1.UpdateIapSettingsRequest.verify|verify} messages.
+ * @param message UpdateIapSettingsRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.iap.v1.IUpdateIapSettingsRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified UpdateIapSettingsRequest message, length delimited. Does not implicitly {@link google.cloud.iap.v1.UpdateIapSettingsRequest.verify|verify} messages.
+ * @param message UpdateIapSettingsRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.iap.v1.IUpdateIapSettingsRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an UpdateIapSettingsRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns UpdateIapSettingsRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.iap.v1.UpdateIapSettingsRequest;
+
+ /**
+ * Decodes an UpdateIapSettingsRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns UpdateIapSettingsRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.iap.v1.UpdateIapSettingsRequest;
+
+ /**
+ * Verifies an UpdateIapSettingsRequest message.
+ * @param message Plain 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 UpdateIapSettingsRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns UpdateIapSettingsRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.iap.v1.UpdateIapSettingsRequest;
+
+ /**
+ * Creates a plain object from an UpdateIapSettingsRequest message. Also converts values to other types if specified.
+ * @param message UpdateIapSettingsRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.iap.v1.UpdateIapSettingsRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this UpdateIapSettingsRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for UpdateIapSettingsRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an IapSettings. */
+ interface IIapSettings {
+
+ /** IapSettings name */
+ name?: (string|null);
+
+ /** IapSettings accessSettings */
+ accessSettings?: (google.cloud.iap.v1.IAccessSettings|null);
+
+ /** IapSettings applicationSettings */
+ applicationSettings?: (google.cloud.iap.v1.IApplicationSettings|null);
+ }
+
+ /** Represents an IapSettings. */
+ class IapSettings implements IIapSettings {
+
+ /**
+ * Constructs a new IapSettings.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.iap.v1.IIapSettings);
+
+ /** IapSettings name. */
+ public name: string;
+
+ /** IapSettings accessSettings. */
+ public accessSettings?: (google.cloud.iap.v1.IAccessSettings|null);
+
+ /** IapSettings applicationSettings. */
+ public applicationSettings?: (google.cloud.iap.v1.IApplicationSettings|null);
+
+ /**
+ * Creates a new IapSettings instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns IapSettings instance
+ */
+ public static create(properties?: google.cloud.iap.v1.IIapSettings): google.cloud.iap.v1.IapSettings;
+
+ /**
+ * Encodes the specified IapSettings message. Does not implicitly {@link google.cloud.iap.v1.IapSettings.verify|verify} messages.
+ * @param message IapSettings message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.iap.v1.IIapSettings, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified IapSettings message, length delimited. Does not implicitly {@link google.cloud.iap.v1.IapSettings.verify|verify} messages.
+ * @param message IapSettings message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.iap.v1.IIapSettings, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an IapSettings message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns IapSettings
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.iap.v1.IapSettings;
+
+ /**
+ * Decodes an IapSettings message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns IapSettings
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.iap.v1.IapSettings;
+
+ /**
+ * Verifies an IapSettings message.
+ * @param message Plain 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 IapSettings message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns IapSettings
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.iap.v1.IapSettings;
+
+ /**
+ * Creates a plain object from an IapSettings message. Also converts values to other types if specified.
+ * @param message IapSettings
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.iap.v1.IapSettings, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this IapSettings to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for IapSettings
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an AccessSettings. */
+ interface IAccessSettings {
+
+ /** AccessSettings gcipSettings */
+ gcipSettings?: (google.cloud.iap.v1.IGcipSettings|null);
+
+ /** AccessSettings corsSettings */
+ corsSettings?: (google.cloud.iap.v1.ICorsSettings|null);
+
+ /** AccessSettings oauthSettings */
+ oauthSettings?: (google.cloud.iap.v1.IOAuthSettings|null);
+
+ /** AccessSettings reauthSettings */
+ reauthSettings?: (google.cloud.iap.v1.IReauthSettings|null);
+ }
+
+ /** Represents an AccessSettings. */
+ class AccessSettings implements IAccessSettings {
+
+ /**
+ * Constructs a new AccessSettings.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.iap.v1.IAccessSettings);
+
+ /** AccessSettings gcipSettings. */
+ public gcipSettings?: (google.cloud.iap.v1.IGcipSettings|null);
+
+ /** AccessSettings corsSettings. */
+ public corsSettings?: (google.cloud.iap.v1.ICorsSettings|null);
+
+ /** AccessSettings oauthSettings. */
+ public oauthSettings?: (google.cloud.iap.v1.IOAuthSettings|null);
+
+ /** AccessSettings reauthSettings. */
+ public reauthSettings?: (google.cloud.iap.v1.IReauthSettings|null);
+
+ /**
+ * Creates a new AccessSettings instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns AccessSettings instance
+ */
+ public static create(properties?: google.cloud.iap.v1.IAccessSettings): google.cloud.iap.v1.AccessSettings;
+
+ /**
+ * Encodes the specified AccessSettings message. Does not implicitly {@link google.cloud.iap.v1.AccessSettings.verify|verify} messages.
+ * @param message AccessSettings message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.iap.v1.IAccessSettings, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified AccessSettings message, length delimited. Does not implicitly {@link google.cloud.iap.v1.AccessSettings.verify|verify} messages.
+ * @param message AccessSettings message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.iap.v1.IAccessSettings, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an AccessSettings message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns AccessSettings
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.iap.v1.AccessSettings;
+
+ /**
+ * Decodes an AccessSettings message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns AccessSettings
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.iap.v1.AccessSettings;
+
+ /**
+ * Verifies an AccessSettings message.
+ * @param message Plain 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 AccessSettings message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns AccessSettings
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.iap.v1.AccessSettings;
+
+ /**
+ * Creates a plain object from an AccessSettings message. Also converts values to other types if specified.
+ * @param message AccessSettings
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.iap.v1.AccessSettings, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this AccessSettings to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for AccessSettings
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a GcipSettings. */
+ interface IGcipSettings {
+
+ /** GcipSettings tenantIds */
+ tenantIds?: (string[]|null);
+
+ /** GcipSettings loginPageUri */
+ loginPageUri?: (google.protobuf.IStringValue|null);
+ }
+
+ /** Represents a GcipSettings. */
+ class GcipSettings implements IGcipSettings {
+
+ /**
+ * Constructs a new GcipSettings.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.iap.v1.IGcipSettings);
+
+ /** GcipSettings tenantIds. */
+ public tenantIds: string[];
+
+ /** GcipSettings loginPageUri. */
+ public loginPageUri?: (google.protobuf.IStringValue|null);
+
+ /**
+ * Creates a new GcipSettings instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns GcipSettings instance
+ */
+ public static create(properties?: google.cloud.iap.v1.IGcipSettings): google.cloud.iap.v1.GcipSettings;
+
+ /**
+ * Encodes the specified GcipSettings message. Does not implicitly {@link google.cloud.iap.v1.GcipSettings.verify|verify} messages.
+ * @param message GcipSettings message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.iap.v1.IGcipSettings, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified GcipSettings message, length delimited. Does not implicitly {@link google.cloud.iap.v1.GcipSettings.verify|verify} messages.
+ * @param message GcipSettings message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.iap.v1.IGcipSettings, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a GcipSettings message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns GcipSettings
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.iap.v1.GcipSettings;
+
+ /**
+ * Decodes a GcipSettings message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns GcipSettings
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.iap.v1.GcipSettings;
+
+ /**
+ * Verifies a GcipSettings message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a GcipSettings message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns GcipSettings
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.iap.v1.GcipSettings;
+
+ /**
+ * Creates a plain object from a GcipSettings message. Also converts values to other types if specified.
+ * @param message GcipSettings
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.iap.v1.GcipSettings, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this GcipSettings to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for GcipSettings
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a CorsSettings. */
+ interface ICorsSettings {
+
+ /** CorsSettings allowHttpOptions */
+ allowHttpOptions?: (google.protobuf.IBoolValue|null);
+ }
+
+ /** Represents a CorsSettings. */
+ class CorsSettings implements ICorsSettings {
+
+ /**
+ * Constructs a new CorsSettings.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.iap.v1.ICorsSettings);
+
+ /** CorsSettings allowHttpOptions. */
+ public allowHttpOptions?: (google.protobuf.IBoolValue|null);
+
+ /**
+ * Creates a new CorsSettings instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns CorsSettings instance
+ */
+ public static create(properties?: google.cloud.iap.v1.ICorsSettings): google.cloud.iap.v1.CorsSettings;
+
+ /**
+ * Encodes the specified CorsSettings message. Does not implicitly {@link google.cloud.iap.v1.CorsSettings.verify|verify} messages.
+ * @param message CorsSettings message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.iap.v1.ICorsSettings, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified CorsSettings message, length delimited. Does not implicitly {@link google.cloud.iap.v1.CorsSettings.verify|verify} messages.
+ * @param message CorsSettings message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.iap.v1.ICorsSettings, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a CorsSettings message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns CorsSettings
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.iap.v1.CorsSettings;
+
+ /**
+ * Decodes a CorsSettings message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns CorsSettings
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.iap.v1.CorsSettings;
+
+ /**
+ * Verifies a CorsSettings message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a CorsSettings message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns CorsSettings
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.iap.v1.CorsSettings;
+
+ /**
+ * Creates a plain object from a CorsSettings message. Also converts values to other types if specified.
+ * @param message CorsSettings
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.iap.v1.CorsSettings, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this CorsSettings to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for CorsSettings
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a OAuthSettings. */
+ interface IOAuthSettings {
+
+ /** OAuthSettings loginHint */
+ loginHint?: (google.protobuf.IStringValue|null);
+ }
+
+ /** Represents a OAuthSettings. */
+ class OAuthSettings implements IOAuthSettings {
+
+ /**
+ * Constructs a new OAuthSettings.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.iap.v1.IOAuthSettings);
+
+ /** OAuthSettings loginHint. */
+ public loginHint?: (google.protobuf.IStringValue|null);
+
+ /**
+ * Creates a new OAuthSettings instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns OAuthSettings instance
+ */
+ public static create(properties?: google.cloud.iap.v1.IOAuthSettings): google.cloud.iap.v1.OAuthSettings;
+
+ /**
+ * Encodes the specified OAuthSettings message. Does not implicitly {@link google.cloud.iap.v1.OAuthSettings.verify|verify} messages.
+ * @param message OAuthSettings message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.iap.v1.IOAuthSettings, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified OAuthSettings message, length delimited. Does not implicitly {@link google.cloud.iap.v1.OAuthSettings.verify|verify} messages.
+ * @param message OAuthSettings message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.iap.v1.IOAuthSettings, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a OAuthSettings message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns OAuthSettings
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.iap.v1.OAuthSettings;
+
+ /**
+ * Decodes a OAuthSettings message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns OAuthSettings
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.iap.v1.OAuthSettings;
+
+ /**
+ * Verifies a OAuthSettings message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a OAuthSettings message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns OAuthSettings
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.iap.v1.OAuthSettings;
+
+ /**
+ * Creates a plain object from a OAuthSettings message. Also converts values to other types if specified.
+ * @param message OAuthSettings
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.iap.v1.OAuthSettings, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this OAuthSettings to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for OAuthSettings
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ReauthSettings. */
+ interface IReauthSettings {
+
+ /** ReauthSettings method */
+ method?: (google.cloud.iap.v1.ReauthSettings.Method|keyof typeof google.cloud.iap.v1.ReauthSettings.Method|null);
+
+ /** ReauthSettings maxAge */
+ maxAge?: (google.protobuf.IDuration|null);
+
+ /** ReauthSettings policyType */
+ policyType?: (google.cloud.iap.v1.ReauthSettings.PolicyType|keyof typeof google.cloud.iap.v1.ReauthSettings.PolicyType|null);
+ }
+
+ /** Represents a ReauthSettings. */
+ class ReauthSettings implements IReauthSettings {
+
+ /**
+ * Constructs a new ReauthSettings.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.iap.v1.IReauthSettings);
+
+ /** ReauthSettings method. */
+ public method: (google.cloud.iap.v1.ReauthSettings.Method|keyof typeof google.cloud.iap.v1.ReauthSettings.Method);
+
+ /** ReauthSettings maxAge. */
+ public maxAge?: (google.protobuf.IDuration|null);
+
+ /** ReauthSettings policyType. */
+ public policyType: (google.cloud.iap.v1.ReauthSettings.PolicyType|keyof typeof google.cloud.iap.v1.ReauthSettings.PolicyType);
+
+ /**
+ * Creates a new ReauthSettings instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ReauthSettings instance
+ */
+ public static create(properties?: google.cloud.iap.v1.IReauthSettings): google.cloud.iap.v1.ReauthSettings;
+
+ /**
+ * Encodes the specified ReauthSettings message. Does not implicitly {@link google.cloud.iap.v1.ReauthSettings.verify|verify} messages.
+ * @param message ReauthSettings message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.iap.v1.IReauthSettings, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ReauthSettings message, length delimited. Does not implicitly {@link google.cloud.iap.v1.ReauthSettings.verify|verify} messages.
+ * @param message ReauthSettings message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.iap.v1.IReauthSettings, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ReauthSettings message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ReauthSettings
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.iap.v1.ReauthSettings;
+
+ /**
+ * Decodes a ReauthSettings message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ReauthSettings
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.iap.v1.ReauthSettings;
+
+ /**
+ * Verifies a ReauthSettings message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ReauthSettings message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ReauthSettings
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.iap.v1.ReauthSettings;
+
+ /**
+ * Creates a plain object from a ReauthSettings message. Also converts values to other types if specified.
+ * @param message ReauthSettings
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.iap.v1.ReauthSettings, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ReauthSettings to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ReauthSettings
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace ReauthSettings {
+
+ /** Method enum. */
+ enum Method {
+ METHOD_UNSPECIFIED = 0,
+ LOGIN = 1,
+ PASSWORD = 2,
+ SECURE_KEY = 3
+ }
+
+ /** PolicyType enum. */
+ enum PolicyType {
+ POLICY_TYPE_UNSPECIFIED = 0,
+ MINIMUM = 1,
+ DEFAULT = 2
+ }
+ }
+
+ /** Properties of an ApplicationSettings. */
+ interface IApplicationSettings {
+
+ /** ApplicationSettings csmSettings */
+ csmSettings?: (google.cloud.iap.v1.ICsmSettings|null);
+
+ /** ApplicationSettings accessDeniedPageSettings */
+ accessDeniedPageSettings?: (google.cloud.iap.v1.IAccessDeniedPageSettings|null);
+
+ /** ApplicationSettings cookieDomain */
+ cookieDomain?: (google.protobuf.IStringValue|null);
+ }
+
+ /** Represents an ApplicationSettings. */
+ class ApplicationSettings implements IApplicationSettings {
+
+ /**
+ * Constructs a new ApplicationSettings.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.iap.v1.IApplicationSettings);
+
+ /** ApplicationSettings csmSettings. */
+ public csmSettings?: (google.cloud.iap.v1.ICsmSettings|null);
+
+ /** ApplicationSettings accessDeniedPageSettings. */
+ public accessDeniedPageSettings?: (google.cloud.iap.v1.IAccessDeniedPageSettings|null);
+
+ /** ApplicationSettings cookieDomain. */
+ public cookieDomain?: (google.protobuf.IStringValue|null);
+
+ /**
+ * Creates a new ApplicationSettings instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ApplicationSettings instance
+ */
+ public static create(properties?: google.cloud.iap.v1.IApplicationSettings): google.cloud.iap.v1.ApplicationSettings;
+
+ /**
+ * Encodes the specified ApplicationSettings message. Does not implicitly {@link google.cloud.iap.v1.ApplicationSettings.verify|verify} messages.
+ * @param message ApplicationSettings message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.iap.v1.IApplicationSettings, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ApplicationSettings message, length delimited. Does not implicitly {@link google.cloud.iap.v1.ApplicationSettings.verify|verify} messages.
+ * @param message ApplicationSettings message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.iap.v1.IApplicationSettings, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an ApplicationSettings message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ApplicationSettings
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.iap.v1.ApplicationSettings;
+
+ /**
+ * Decodes an ApplicationSettings message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ApplicationSettings
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.iap.v1.ApplicationSettings;
+
+ /**
+ * Verifies an ApplicationSettings message.
+ * @param message Plain 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 ApplicationSettings message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ApplicationSettings
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.iap.v1.ApplicationSettings;
+
+ /**
+ * Creates a plain object from an ApplicationSettings message. Also converts values to other types if specified.
+ * @param message ApplicationSettings
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.iap.v1.ApplicationSettings, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ApplicationSettings to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ApplicationSettings
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a CsmSettings. */
+ interface ICsmSettings {
+
+ /** CsmSettings rctokenAud */
+ rctokenAud?: (google.protobuf.IStringValue|null);
+ }
+
+ /** Represents a CsmSettings. */
+ class CsmSettings implements ICsmSettings {
+
+ /**
+ * Constructs a new CsmSettings.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.iap.v1.ICsmSettings);
+
+ /** CsmSettings rctokenAud. */
+ public rctokenAud?: (google.protobuf.IStringValue|null);
+
+ /**
+ * Creates a new CsmSettings instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns CsmSettings instance
+ */
+ public static create(properties?: google.cloud.iap.v1.ICsmSettings): google.cloud.iap.v1.CsmSettings;
+
+ /**
+ * Encodes the specified CsmSettings message. Does not implicitly {@link google.cloud.iap.v1.CsmSettings.verify|verify} messages.
+ * @param message CsmSettings message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.iap.v1.ICsmSettings, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified CsmSettings message, length delimited. Does not implicitly {@link google.cloud.iap.v1.CsmSettings.verify|verify} messages.
+ * @param message CsmSettings message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.iap.v1.ICsmSettings, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a CsmSettings message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns CsmSettings
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.iap.v1.CsmSettings;
+
+ /**
+ * Decodes a CsmSettings message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns CsmSettings
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.iap.v1.CsmSettings;
+
+ /**
+ * Verifies a CsmSettings message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a CsmSettings message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns CsmSettings
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.iap.v1.CsmSettings;
+
+ /**
+ * Creates a plain object from a CsmSettings message. Also converts values to other types if specified.
+ * @param message CsmSettings
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.iap.v1.CsmSettings, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this CsmSettings to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for CsmSettings
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an AccessDeniedPageSettings. */
+ interface IAccessDeniedPageSettings {
+
+ /** AccessDeniedPageSettings accessDeniedPageUri */
+ accessDeniedPageUri?: (google.protobuf.IStringValue|null);
+
+ /** AccessDeniedPageSettings generateTroubleshootingUri */
+ generateTroubleshootingUri?: (google.protobuf.IBoolValue|null);
+ }
+
+ /** Represents an AccessDeniedPageSettings. */
+ class AccessDeniedPageSettings implements IAccessDeniedPageSettings {
+
+ /**
+ * Constructs a new AccessDeniedPageSettings.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.iap.v1.IAccessDeniedPageSettings);
+
+ /** AccessDeniedPageSettings accessDeniedPageUri. */
+ public accessDeniedPageUri?: (google.protobuf.IStringValue|null);
+
+ /** AccessDeniedPageSettings generateTroubleshootingUri. */
+ public generateTroubleshootingUri?: (google.protobuf.IBoolValue|null);
+
+ /**
+ * Creates a new AccessDeniedPageSettings instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns AccessDeniedPageSettings instance
+ */
+ public static create(properties?: google.cloud.iap.v1.IAccessDeniedPageSettings): google.cloud.iap.v1.AccessDeniedPageSettings;
+
+ /**
+ * Encodes the specified AccessDeniedPageSettings message. Does not implicitly {@link google.cloud.iap.v1.AccessDeniedPageSettings.verify|verify} messages.
+ * @param message AccessDeniedPageSettings message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.iap.v1.IAccessDeniedPageSettings, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified AccessDeniedPageSettings message, length delimited. Does not implicitly {@link google.cloud.iap.v1.AccessDeniedPageSettings.verify|verify} messages.
+ * @param message AccessDeniedPageSettings message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.iap.v1.IAccessDeniedPageSettings, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an AccessDeniedPageSettings message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns AccessDeniedPageSettings
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.iap.v1.AccessDeniedPageSettings;
+
+ /**
+ * Decodes an AccessDeniedPageSettings message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns AccessDeniedPageSettings
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.iap.v1.AccessDeniedPageSettings;
+
+ /**
+ * Verifies an AccessDeniedPageSettings message.
+ * @param message Plain 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 AccessDeniedPageSettings message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns AccessDeniedPageSettings
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.iap.v1.AccessDeniedPageSettings;
+
+ /**
+ * Creates a plain object from an AccessDeniedPageSettings message. Also converts values to other types if specified.
+ * @param message AccessDeniedPageSettings
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.iap.v1.AccessDeniedPageSettings, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this AccessDeniedPageSettings to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for AccessDeniedPageSettings
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ListBrandsRequest. */
+ interface IListBrandsRequest {
+
+ /** ListBrandsRequest parent */
+ parent?: (string|null);
+ }
+
+ /** Represents a ListBrandsRequest. */
+ class ListBrandsRequest implements IListBrandsRequest {
+
+ /**
+ * Constructs a new ListBrandsRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.iap.v1.IListBrandsRequest);
+
+ /** ListBrandsRequest parent. */
+ public parent: string;
+
+ /**
+ * Creates a new ListBrandsRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ListBrandsRequest instance
+ */
+ public static create(properties?: google.cloud.iap.v1.IListBrandsRequest): google.cloud.iap.v1.ListBrandsRequest;
+
+ /**
+ * Encodes the specified ListBrandsRequest message. Does not implicitly {@link google.cloud.iap.v1.ListBrandsRequest.verify|verify} messages.
+ * @param message ListBrandsRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.iap.v1.IListBrandsRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ListBrandsRequest message, length delimited. Does not implicitly {@link google.cloud.iap.v1.ListBrandsRequest.verify|verify} messages.
+ * @param message ListBrandsRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.iap.v1.IListBrandsRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ListBrandsRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ListBrandsRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.iap.v1.ListBrandsRequest;
+
+ /**
+ * Decodes a ListBrandsRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ListBrandsRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.iap.v1.ListBrandsRequest;
+
+ /**
+ * Verifies a ListBrandsRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ListBrandsRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ListBrandsRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.iap.v1.ListBrandsRequest;
+
+ /**
+ * Creates a plain object from a ListBrandsRequest message. Also converts values to other types if specified.
+ * @param message ListBrandsRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.iap.v1.ListBrandsRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ListBrandsRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ListBrandsRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ListBrandsResponse. */
+ interface IListBrandsResponse {
+
+ /** ListBrandsResponse brands */
+ brands?: (google.cloud.iap.v1.IBrand[]|null);
+ }
+
+ /** Represents a ListBrandsResponse. */
+ class ListBrandsResponse implements IListBrandsResponse {
+
+ /**
+ * Constructs a new ListBrandsResponse.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.iap.v1.IListBrandsResponse);
+
+ /** ListBrandsResponse brands. */
+ public brands: google.cloud.iap.v1.IBrand[];
+
+ /**
+ * Creates a new ListBrandsResponse instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ListBrandsResponse instance
+ */
+ public static create(properties?: google.cloud.iap.v1.IListBrandsResponse): google.cloud.iap.v1.ListBrandsResponse;
+
+ /**
+ * Encodes the specified ListBrandsResponse message. Does not implicitly {@link google.cloud.iap.v1.ListBrandsResponse.verify|verify} messages.
+ * @param message ListBrandsResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.iap.v1.IListBrandsResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ListBrandsResponse message, length delimited. Does not implicitly {@link google.cloud.iap.v1.ListBrandsResponse.verify|verify} messages.
+ * @param message ListBrandsResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.iap.v1.IListBrandsResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ListBrandsResponse message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ListBrandsResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.iap.v1.ListBrandsResponse;
+
+ /**
+ * Decodes a ListBrandsResponse message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ListBrandsResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.iap.v1.ListBrandsResponse;
+
+ /**
+ * Verifies a ListBrandsResponse message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ListBrandsResponse message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ListBrandsResponse
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.iap.v1.ListBrandsResponse;
+
+ /**
+ * Creates a plain object from a ListBrandsResponse message. Also converts values to other types if specified.
+ * @param message ListBrandsResponse
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.iap.v1.ListBrandsResponse, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ListBrandsResponse to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ListBrandsResponse
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a CreateBrandRequest. */
+ interface ICreateBrandRequest {
+
+ /** CreateBrandRequest parent */
+ parent?: (string|null);
+
+ /** CreateBrandRequest brand */
+ brand?: (google.cloud.iap.v1.IBrand|null);
+ }
+
+ /** Represents a CreateBrandRequest. */
+ class CreateBrandRequest implements ICreateBrandRequest {
+
+ /**
+ * Constructs a new CreateBrandRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.iap.v1.ICreateBrandRequest);
+
+ /** CreateBrandRequest parent. */
+ public parent: string;
+
+ /** CreateBrandRequest brand. */
+ public brand?: (google.cloud.iap.v1.IBrand|null);
+
+ /**
+ * Creates a new CreateBrandRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns CreateBrandRequest instance
+ */
+ public static create(properties?: google.cloud.iap.v1.ICreateBrandRequest): google.cloud.iap.v1.CreateBrandRequest;
+
+ /**
+ * Encodes the specified CreateBrandRequest message. Does not implicitly {@link google.cloud.iap.v1.CreateBrandRequest.verify|verify} messages.
+ * @param message CreateBrandRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.iap.v1.ICreateBrandRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified CreateBrandRequest message, length delimited. Does not implicitly {@link google.cloud.iap.v1.CreateBrandRequest.verify|verify} messages.
+ * @param message CreateBrandRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.iap.v1.ICreateBrandRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a CreateBrandRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns CreateBrandRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.iap.v1.CreateBrandRequest;
+
+ /**
+ * Decodes a CreateBrandRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns CreateBrandRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.iap.v1.CreateBrandRequest;
+
+ /**
+ * Verifies a CreateBrandRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a CreateBrandRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns CreateBrandRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.iap.v1.CreateBrandRequest;
+
+ /**
+ * Creates a plain object from a CreateBrandRequest message. Also converts values to other types if specified.
+ * @param message CreateBrandRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.iap.v1.CreateBrandRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this CreateBrandRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for CreateBrandRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a GetBrandRequest. */
+ interface IGetBrandRequest {
+
+ /** GetBrandRequest name */
+ name?: (string|null);
+ }
+
+ /** Represents a GetBrandRequest. */
+ class GetBrandRequest implements IGetBrandRequest {
+
+ /**
+ * Constructs a new GetBrandRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.iap.v1.IGetBrandRequest);
+
+ /** GetBrandRequest name. */
+ public name: string;
+
+ /**
+ * Creates a new GetBrandRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns GetBrandRequest instance
+ */
+ public static create(properties?: google.cloud.iap.v1.IGetBrandRequest): google.cloud.iap.v1.GetBrandRequest;
+
+ /**
+ * Encodes the specified GetBrandRequest message. Does not implicitly {@link google.cloud.iap.v1.GetBrandRequest.verify|verify} messages.
+ * @param message GetBrandRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.iap.v1.IGetBrandRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified GetBrandRequest message, length delimited. Does not implicitly {@link google.cloud.iap.v1.GetBrandRequest.verify|verify} messages.
+ * @param message GetBrandRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.iap.v1.IGetBrandRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a GetBrandRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns GetBrandRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.iap.v1.GetBrandRequest;
+
+ /**
+ * Decodes a GetBrandRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns GetBrandRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.iap.v1.GetBrandRequest;
+
+ /**
+ * Verifies a GetBrandRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a GetBrandRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns GetBrandRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.iap.v1.GetBrandRequest;
+
+ /**
+ * Creates a plain object from a GetBrandRequest message. Also converts values to other types if specified.
+ * @param message GetBrandRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.iap.v1.GetBrandRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this GetBrandRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for GetBrandRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ListIdentityAwareProxyClientsRequest. */
+ interface IListIdentityAwareProxyClientsRequest {
+
+ /** ListIdentityAwareProxyClientsRequest parent */
+ parent?: (string|null);
+
+ /** ListIdentityAwareProxyClientsRequest pageSize */
+ pageSize?: (number|null);
+
+ /** ListIdentityAwareProxyClientsRequest pageToken */
+ pageToken?: (string|null);
+ }
+
+ /** Represents a ListIdentityAwareProxyClientsRequest. */
+ class ListIdentityAwareProxyClientsRequest implements IListIdentityAwareProxyClientsRequest {
+
+ /**
+ * Constructs a new ListIdentityAwareProxyClientsRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.iap.v1.IListIdentityAwareProxyClientsRequest);
+
+ /** ListIdentityAwareProxyClientsRequest parent. */
+ public parent: string;
+
+ /** ListIdentityAwareProxyClientsRequest pageSize. */
+ public pageSize: number;
+
+ /** ListIdentityAwareProxyClientsRequest pageToken. */
+ public pageToken: string;
+
+ /**
+ * Creates a new ListIdentityAwareProxyClientsRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ListIdentityAwareProxyClientsRequest instance
+ */
+ public static create(properties?: google.cloud.iap.v1.IListIdentityAwareProxyClientsRequest): google.cloud.iap.v1.ListIdentityAwareProxyClientsRequest;
+
+ /**
+ * Encodes the specified ListIdentityAwareProxyClientsRequest message. Does not implicitly {@link google.cloud.iap.v1.ListIdentityAwareProxyClientsRequest.verify|verify} messages.
+ * @param message ListIdentityAwareProxyClientsRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.iap.v1.IListIdentityAwareProxyClientsRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ListIdentityAwareProxyClientsRequest message, length delimited. Does not implicitly {@link google.cloud.iap.v1.ListIdentityAwareProxyClientsRequest.verify|verify} messages.
+ * @param message ListIdentityAwareProxyClientsRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.iap.v1.IListIdentityAwareProxyClientsRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ListIdentityAwareProxyClientsRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ListIdentityAwareProxyClientsRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.iap.v1.ListIdentityAwareProxyClientsRequest;
+
+ /**
+ * Decodes a ListIdentityAwareProxyClientsRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ListIdentityAwareProxyClientsRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.iap.v1.ListIdentityAwareProxyClientsRequest;
+
+ /**
+ * Verifies a ListIdentityAwareProxyClientsRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ListIdentityAwareProxyClientsRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ListIdentityAwareProxyClientsRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.iap.v1.ListIdentityAwareProxyClientsRequest;
+
+ /**
+ * Creates a plain object from a ListIdentityAwareProxyClientsRequest message. Also converts values to other types if specified.
+ * @param message ListIdentityAwareProxyClientsRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.iap.v1.ListIdentityAwareProxyClientsRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ListIdentityAwareProxyClientsRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ListIdentityAwareProxyClientsRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ListIdentityAwareProxyClientsResponse. */
+ interface IListIdentityAwareProxyClientsResponse {
+
+ /** ListIdentityAwareProxyClientsResponse identityAwareProxyClients */
+ identityAwareProxyClients?: (google.cloud.iap.v1.IIdentityAwareProxyClient[]|null);
+
+ /** ListIdentityAwareProxyClientsResponse nextPageToken */
+ nextPageToken?: (string|null);
+ }
+
+ /** Represents a ListIdentityAwareProxyClientsResponse. */
+ class ListIdentityAwareProxyClientsResponse implements IListIdentityAwareProxyClientsResponse {
+
+ /**
+ * Constructs a new ListIdentityAwareProxyClientsResponse.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.iap.v1.IListIdentityAwareProxyClientsResponse);
+
+ /** ListIdentityAwareProxyClientsResponse identityAwareProxyClients. */
+ public identityAwareProxyClients: google.cloud.iap.v1.IIdentityAwareProxyClient[];
+
+ /** ListIdentityAwareProxyClientsResponse nextPageToken. */
+ public nextPageToken: string;
+
+ /**
+ * Creates a new ListIdentityAwareProxyClientsResponse instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ListIdentityAwareProxyClientsResponse instance
+ */
+ public static create(properties?: google.cloud.iap.v1.IListIdentityAwareProxyClientsResponse): google.cloud.iap.v1.ListIdentityAwareProxyClientsResponse;
+
+ /**
+ * Encodes the specified ListIdentityAwareProxyClientsResponse message. Does not implicitly {@link google.cloud.iap.v1.ListIdentityAwareProxyClientsResponse.verify|verify} messages.
+ * @param message ListIdentityAwareProxyClientsResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.iap.v1.IListIdentityAwareProxyClientsResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ListIdentityAwareProxyClientsResponse message, length delimited. Does not implicitly {@link google.cloud.iap.v1.ListIdentityAwareProxyClientsResponse.verify|verify} messages.
+ * @param message ListIdentityAwareProxyClientsResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.iap.v1.IListIdentityAwareProxyClientsResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ListIdentityAwareProxyClientsResponse message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ListIdentityAwareProxyClientsResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.iap.v1.ListIdentityAwareProxyClientsResponse;
+
+ /**
+ * Decodes a ListIdentityAwareProxyClientsResponse message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ListIdentityAwareProxyClientsResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.iap.v1.ListIdentityAwareProxyClientsResponse;
+
+ /**
+ * Verifies a ListIdentityAwareProxyClientsResponse message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ListIdentityAwareProxyClientsResponse message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ListIdentityAwareProxyClientsResponse
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.iap.v1.ListIdentityAwareProxyClientsResponse;
+
+ /**
+ * Creates a plain object from a ListIdentityAwareProxyClientsResponse message. Also converts values to other types if specified.
+ * @param message ListIdentityAwareProxyClientsResponse
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.iap.v1.ListIdentityAwareProxyClientsResponse, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ListIdentityAwareProxyClientsResponse to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ListIdentityAwareProxyClientsResponse
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a CreateIdentityAwareProxyClientRequest. */
+ interface ICreateIdentityAwareProxyClientRequest {
+
+ /** CreateIdentityAwareProxyClientRequest parent */
+ parent?: (string|null);
+
+ /** CreateIdentityAwareProxyClientRequest identityAwareProxyClient */
+ identityAwareProxyClient?: (google.cloud.iap.v1.IIdentityAwareProxyClient|null);
+ }
+
+ /** Represents a CreateIdentityAwareProxyClientRequest. */
+ class CreateIdentityAwareProxyClientRequest implements ICreateIdentityAwareProxyClientRequest {
+
+ /**
+ * Constructs a new CreateIdentityAwareProxyClientRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.iap.v1.ICreateIdentityAwareProxyClientRequest);
+
+ /** CreateIdentityAwareProxyClientRequest parent. */
+ public parent: string;
+
+ /** CreateIdentityAwareProxyClientRequest identityAwareProxyClient. */
+ public identityAwareProxyClient?: (google.cloud.iap.v1.IIdentityAwareProxyClient|null);
+
+ /**
+ * Creates a new CreateIdentityAwareProxyClientRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns CreateIdentityAwareProxyClientRequest instance
+ */
+ public static create(properties?: google.cloud.iap.v1.ICreateIdentityAwareProxyClientRequest): google.cloud.iap.v1.CreateIdentityAwareProxyClientRequest;
+
+ /**
+ * Encodes the specified CreateIdentityAwareProxyClientRequest message. Does not implicitly {@link google.cloud.iap.v1.CreateIdentityAwareProxyClientRequest.verify|verify} messages.
+ * @param message CreateIdentityAwareProxyClientRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.iap.v1.ICreateIdentityAwareProxyClientRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified CreateIdentityAwareProxyClientRequest message, length delimited. Does not implicitly {@link google.cloud.iap.v1.CreateIdentityAwareProxyClientRequest.verify|verify} messages.
+ * @param message CreateIdentityAwareProxyClientRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.iap.v1.ICreateIdentityAwareProxyClientRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a CreateIdentityAwareProxyClientRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns CreateIdentityAwareProxyClientRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.iap.v1.CreateIdentityAwareProxyClientRequest;
+
+ /**
+ * Decodes a CreateIdentityAwareProxyClientRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns CreateIdentityAwareProxyClientRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.iap.v1.CreateIdentityAwareProxyClientRequest;
+
+ /**
+ * Verifies a CreateIdentityAwareProxyClientRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a CreateIdentityAwareProxyClientRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns CreateIdentityAwareProxyClientRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.iap.v1.CreateIdentityAwareProxyClientRequest;
+
+ /**
+ * Creates a plain object from a CreateIdentityAwareProxyClientRequest message. Also converts values to other types if specified.
+ * @param message CreateIdentityAwareProxyClientRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.iap.v1.CreateIdentityAwareProxyClientRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this CreateIdentityAwareProxyClientRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for CreateIdentityAwareProxyClientRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a GetIdentityAwareProxyClientRequest. */
+ interface IGetIdentityAwareProxyClientRequest {
+
+ /** GetIdentityAwareProxyClientRequest name */
+ name?: (string|null);
+ }
+
+ /** Represents a GetIdentityAwareProxyClientRequest. */
+ class GetIdentityAwareProxyClientRequest implements IGetIdentityAwareProxyClientRequest {
+
+ /**
+ * Constructs a new GetIdentityAwareProxyClientRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.iap.v1.IGetIdentityAwareProxyClientRequest);
+
+ /** GetIdentityAwareProxyClientRequest name. */
+ public name: string;
+
+ /**
+ * Creates a new GetIdentityAwareProxyClientRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns GetIdentityAwareProxyClientRequest instance
+ */
+ public static create(properties?: google.cloud.iap.v1.IGetIdentityAwareProxyClientRequest): google.cloud.iap.v1.GetIdentityAwareProxyClientRequest;
+
+ /**
+ * Encodes the specified GetIdentityAwareProxyClientRequest message. Does not implicitly {@link google.cloud.iap.v1.GetIdentityAwareProxyClientRequest.verify|verify} messages.
+ * @param message GetIdentityAwareProxyClientRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.iap.v1.IGetIdentityAwareProxyClientRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified GetIdentityAwareProxyClientRequest message, length delimited. Does not implicitly {@link google.cloud.iap.v1.GetIdentityAwareProxyClientRequest.verify|verify} messages.
+ * @param message GetIdentityAwareProxyClientRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.iap.v1.IGetIdentityAwareProxyClientRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a GetIdentityAwareProxyClientRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns GetIdentityAwareProxyClientRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.iap.v1.GetIdentityAwareProxyClientRequest;
+
+ /**
+ * Decodes a GetIdentityAwareProxyClientRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns GetIdentityAwareProxyClientRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.iap.v1.GetIdentityAwareProxyClientRequest;
+
+ /**
+ * Verifies a GetIdentityAwareProxyClientRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a GetIdentityAwareProxyClientRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns GetIdentityAwareProxyClientRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.iap.v1.GetIdentityAwareProxyClientRequest;
+
+ /**
+ * Creates a plain object from a GetIdentityAwareProxyClientRequest message. Also converts values to other types if specified.
+ * @param message GetIdentityAwareProxyClientRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.iap.v1.GetIdentityAwareProxyClientRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this GetIdentityAwareProxyClientRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for GetIdentityAwareProxyClientRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ResetIdentityAwareProxyClientSecretRequest. */
+ interface IResetIdentityAwareProxyClientSecretRequest {
+
+ /** ResetIdentityAwareProxyClientSecretRequest name */
+ name?: (string|null);
+ }
+
+ /** Represents a ResetIdentityAwareProxyClientSecretRequest. */
+ class ResetIdentityAwareProxyClientSecretRequest implements IResetIdentityAwareProxyClientSecretRequest {
+
+ /**
+ * Constructs a new ResetIdentityAwareProxyClientSecretRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.iap.v1.IResetIdentityAwareProxyClientSecretRequest);
+
+ /** ResetIdentityAwareProxyClientSecretRequest name. */
+ public name: string;
+
+ /**
+ * Creates a new ResetIdentityAwareProxyClientSecretRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ResetIdentityAwareProxyClientSecretRequest instance
+ */
+ public static create(properties?: google.cloud.iap.v1.IResetIdentityAwareProxyClientSecretRequest): google.cloud.iap.v1.ResetIdentityAwareProxyClientSecretRequest;
+
+ /**
+ * Encodes the specified ResetIdentityAwareProxyClientSecretRequest message. Does not implicitly {@link google.cloud.iap.v1.ResetIdentityAwareProxyClientSecretRequest.verify|verify} messages.
+ * @param message ResetIdentityAwareProxyClientSecretRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.iap.v1.IResetIdentityAwareProxyClientSecretRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ResetIdentityAwareProxyClientSecretRequest message, length delimited. Does not implicitly {@link google.cloud.iap.v1.ResetIdentityAwareProxyClientSecretRequest.verify|verify} messages.
+ * @param message ResetIdentityAwareProxyClientSecretRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.iap.v1.IResetIdentityAwareProxyClientSecretRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ResetIdentityAwareProxyClientSecretRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ResetIdentityAwareProxyClientSecretRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.iap.v1.ResetIdentityAwareProxyClientSecretRequest;
+
+ /**
+ * Decodes a ResetIdentityAwareProxyClientSecretRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ResetIdentityAwareProxyClientSecretRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.iap.v1.ResetIdentityAwareProxyClientSecretRequest;
+
+ /**
+ * Verifies a ResetIdentityAwareProxyClientSecretRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ResetIdentityAwareProxyClientSecretRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ResetIdentityAwareProxyClientSecretRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.iap.v1.ResetIdentityAwareProxyClientSecretRequest;
+
+ /**
+ * Creates a plain object from a ResetIdentityAwareProxyClientSecretRequest message. Also converts values to other types if specified.
+ * @param message ResetIdentityAwareProxyClientSecretRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.iap.v1.ResetIdentityAwareProxyClientSecretRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ResetIdentityAwareProxyClientSecretRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ResetIdentityAwareProxyClientSecretRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a DeleteIdentityAwareProxyClientRequest. */
+ interface IDeleteIdentityAwareProxyClientRequest {
+
+ /** DeleteIdentityAwareProxyClientRequest name */
+ name?: (string|null);
+ }
+
+ /** Represents a DeleteIdentityAwareProxyClientRequest. */
+ class DeleteIdentityAwareProxyClientRequest implements IDeleteIdentityAwareProxyClientRequest {
+
+ /**
+ * Constructs a new DeleteIdentityAwareProxyClientRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.iap.v1.IDeleteIdentityAwareProxyClientRequest);
+
+ /** DeleteIdentityAwareProxyClientRequest name. */
+ public name: string;
+
+ /**
+ * Creates a new DeleteIdentityAwareProxyClientRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns DeleteIdentityAwareProxyClientRequest instance
+ */
+ public static create(properties?: google.cloud.iap.v1.IDeleteIdentityAwareProxyClientRequest): google.cloud.iap.v1.DeleteIdentityAwareProxyClientRequest;
+
+ /**
+ * Encodes the specified DeleteIdentityAwareProxyClientRequest message. Does not implicitly {@link google.cloud.iap.v1.DeleteIdentityAwareProxyClientRequest.verify|verify} messages.
+ * @param message DeleteIdentityAwareProxyClientRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.iap.v1.IDeleteIdentityAwareProxyClientRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified DeleteIdentityAwareProxyClientRequest message, length delimited. Does not implicitly {@link google.cloud.iap.v1.DeleteIdentityAwareProxyClientRequest.verify|verify} messages.
+ * @param message DeleteIdentityAwareProxyClientRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.iap.v1.IDeleteIdentityAwareProxyClientRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a DeleteIdentityAwareProxyClientRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns DeleteIdentityAwareProxyClientRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.iap.v1.DeleteIdentityAwareProxyClientRequest;
+
+ /**
+ * Decodes a DeleteIdentityAwareProxyClientRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns DeleteIdentityAwareProxyClientRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.iap.v1.DeleteIdentityAwareProxyClientRequest;
+
+ /**
+ * Verifies a DeleteIdentityAwareProxyClientRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a DeleteIdentityAwareProxyClientRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns DeleteIdentityAwareProxyClientRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.iap.v1.DeleteIdentityAwareProxyClientRequest;
+
+ /**
+ * Creates a plain object from a DeleteIdentityAwareProxyClientRequest message. Also converts values to other types if specified.
+ * @param message DeleteIdentityAwareProxyClientRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.iap.v1.DeleteIdentityAwareProxyClientRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this DeleteIdentityAwareProxyClientRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for DeleteIdentityAwareProxyClientRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a Brand. */
+ interface IBrand {
+
+ /** Brand name */
+ name?: (string|null);
+
+ /** Brand supportEmail */
+ supportEmail?: (string|null);
+
+ /** Brand applicationTitle */
+ applicationTitle?: (string|null);
+
+ /** Brand orgInternalOnly */
+ orgInternalOnly?: (boolean|null);
+ }
+
+ /** Represents a Brand. */
+ class Brand implements IBrand {
+
+ /**
+ * Constructs a new Brand.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.iap.v1.IBrand);
+
+ /** Brand name. */
+ public name: string;
+
+ /** Brand supportEmail. */
+ public supportEmail: string;
+
+ /** Brand applicationTitle. */
+ public applicationTitle: string;
+
+ /** Brand orgInternalOnly. */
+ public orgInternalOnly: boolean;
+
+ /**
+ * Creates a new Brand instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Brand instance
+ */
+ public static create(properties?: google.cloud.iap.v1.IBrand): google.cloud.iap.v1.Brand;
+
+ /**
+ * Encodes the specified Brand message. Does not implicitly {@link google.cloud.iap.v1.Brand.verify|verify} messages.
+ * @param message Brand message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.iap.v1.IBrand, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Brand message, length delimited. Does not implicitly {@link google.cloud.iap.v1.Brand.verify|verify} messages.
+ * @param message Brand message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.iap.v1.IBrand, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Brand message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Brand
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.iap.v1.Brand;
+
+ /**
+ * Decodes a Brand message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Brand
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.iap.v1.Brand;
+
+ /**
+ * Verifies a Brand message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a Brand message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Brand
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.iap.v1.Brand;
+
+ /**
+ * Creates a plain object from a Brand message. Also converts values to other types if specified.
+ * @param message Brand
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.iap.v1.Brand, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Brand to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Brand
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an IdentityAwareProxyClient. */
+ interface IIdentityAwareProxyClient {
+
+ /** IdentityAwareProxyClient name */
+ name?: (string|null);
+
+ /** IdentityAwareProxyClient secret */
+ secret?: (string|null);
+
+ /** IdentityAwareProxyClient displayName */
+ displayName?: (string|null);
+ }
+
+ /** Represents an IdentityAwareProxyClient. */
+ class IdentityAwareProxyClient implements IIdentityAwareProxyClient {
+
+ /**
+ * Constructs a new IdentityAwareProxyClient.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.iap.v1.IIdentityAwareProxyClient);
+
+ /** IdentityAwareProxyClient name. */
+ public name: string;
+
+ /** IdentityAwareProxyClient secret. */
+ public secret: string;
+
+ /** IdentityAwareProxyClient displayName. */
+ public displayName: string;
+
+ /**
+ * Creates a new IdentityAwareProxyClient instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns IdentityAwareProxyClient instance
+ */
+ public static create(properties?: google.cloud.iap.v1.IIdentityAwareProxyClient): google.cloud.iap.v1.IdentityAwareProxyClient;
+
+ /**
+ * Encodes the specified IdentityAwareProxyClient message. Does not implicitly {@link google.cloud.iap.v1.IdentityAwareProxyClient.verify|verify} messages.
+ * @param message IdentityAwareProxyClient message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.iap.v1.IIdentityAwareProxyClient, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified IdentityAwareProxyClient message, length delimited. Does not implicitly {@link google.cloud.iap.v1.IdentityAwareProxyClient.verify|verify} messages.
+ * @param message IdentityAwareProxyClient message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.iap.v1.IIdentityAwareProxyClient, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an IdentityAwareProxyClient message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns IdentityAwareProxyClient
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.iap.v1.IdentityAwareProxyClient;
+
+ /**
+ * Decodes an IdentityAwareProxyClient message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns IdentityAwareProxyClient
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.iap.v1.IdentityAwareProxyClient;
+
+ /**
+ * Verifies an IdentityAwareProxyClient message.
+ * @param message Plain 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 IdentityAwareProxyClient message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns IdentityAwareProxyClient
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.iap.v1.IdentityAwareProxyClient;
+
+ /**
+ * Creates a plain object from an IdentityAwareProxyClient message. Also converts values to other types if specified.
+ * @param message IdentityAwareProxyClient
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.iap.v1.IdentityAwareProxyClient, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this IdentityAwareProxyClient to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for IdentityAwareProxyClient
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+ }
+
+ /** Namespace v1beta1. */
+ namespace v1beta1 {
+
+ /** Represents an IdentityAwareProxyAdminV1Beta1 */
+ class IdentityAwareProxyAdminV1Beta1 extends $protobuf.rpc.Service {
+
+ /**
+ * Constructs a new IdentityAwareProxyAdminV1Beta1 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 IdentityAwareProxyAdminV1Beta1 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): IdentityAwareProxyAdminV1Beta1;
+
+ /**
+ * Calls SetIamPolicy.
+ * @param request SetIamPolicyRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Policy
+ */
+ public setIamPolicy(request: google.iam.v1.ISetIamPolicyRequest, callback: google.cloud.iap.v1beta1.IdentityAwareProxyAdminV1Beta1.SetIamPolicyCallback): void;
+
+ /**
+ * Calls SetIamPolicy.
+ * @param request SetIamPolicyRequest message or plain object
+ * @returns Promise
+ */
+ public setIamPolicy(request: google.iam.v1.ISetIamPolicyRequest): Promise;
+
+ /**
+ * Calls GetIamPolicy.
+ * @param request GetIamPolicyRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Policy
+ */
+ public getIamPolicy(request: google.iam.v1.IGetIamPolicyRequest, callback: google.cloud.iap.v1beta1.IdentityAwareProxyAdminV1Beta1.GetIamPolicyCallback): void;
+
+ /**
+ * Calls GetIamPolicy.
+ * @param request GetIamPolicyRequest message or plain object
+ * @returns Promise
+ */
+ public getIamPolicy(request: google.iam.v1.IGetIamPolicyRequest): Promise;
+
+ /**
+ * Calls TestIamPermissions.
+ * @param request TestIamPermissionsRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and TestIamPermissionsResponse
+ */
+ public testIamPermissions(request: google.iam.v1.ITestIamPermissionsRequest, callback: google.cloud.iap.v1beta1.IdentityAwareProxyAdminV1Beta1.TestIamPermissionsCallback): void;
+
+ /**
+ * Calls TestIamPermissions.
+ * @param request TestIamPermissionsRequest message or plain object
+ * @returns Promise
+ */
+ public testIamPermissions(request: google.iam.v1.ITestIamPermissionsRequest): Promise;
+ }
+
+ namespace IdentityAwareProxyAdminV1Beta1 {
+
+ /**
+ * Callback as used by {@link google.cloud.iap.v1beta1.IdentityAwareProxyAdminV1Beta1|setIamPolicy}.
+ * @param error Error, if any
+ * @param [response] Policy
+ */
+ type SetIamPolicyCallback = (error: (Error|null), response?: google.iam.v1.Policy) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.iap.v1beta1.IdentityAwareProxyAdminV1Beta1|getIamPolicy}.
+ * @param error Error, if any
+ * @param [response] Policy
+ */
+ type GetIamPolicyCallback = (error: (Error|null), response?: google.iam.v1.Policy) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.iap.v1beta1.IdentityAwareProxyAdminV1Beta1|testIamPermissions}.
+ * @param error Error, if any
+ * @param [response] TestIamPermissionsResponse
+ */
+ type TestIamPermissionsCallback = (error: (Error|null), response?: google.iam.v1.TestIamPermissionsResponse) => void;
+ }
+ }
+ }
+ }
+
+ /** Namespace api. */
+ namespace api {
+
+ /** Properties of a Http. */
+ interface IHttp {
+
+ /** Http rules */
+ rules?: (google.api.IHttpRule[]|null);
+
+ /** Http fullyDecodeReservedExpansion */
+ fullyDecodeReservedExpansion?: (boolean|null);
+ }
+
+ /** Represents a Http. */
+ class Http implements IHttp {
+
+ /**
+ * Constructs a new Http.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.api.IHttp);
+
+ /** Http rules. */
+ public rules: google.api.IHttpRule[];
+
+ /** Http fullyDecodeReservedExpansion. */
+ public fullyDecodeReservedExpansion: boolean;
+
+ /**
+ * Creates a new Http instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Http instance
+ */
+ public static create(properties?: google.api.IHttp): google.api.Http;
+
+ /**
+ * Encodes the specified Http message. Does not implicitly {@link google.api.Http.verify|verify} messages.
+ * @param message Http message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.api.IHttp, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Http message, length delimited. Does not implicitly {@link google.api.Http.verify|verify} messages.
+ * @param message Http message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.api.IHttp, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Http message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Http
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.api.Http;
+
+ /**
+ * Decodes a Http message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Http
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.api.Http;
+
+ /**
+ * Verifies a Http message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a Http message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Http
+ */
+ public static fromObject(object: { [k: string]: any }): google.api.Http;
+
+ /**
+ * Creates a plain object from a Http message. Also converts values to other types if specified.
+ * @param message Http
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.api.Http, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Http to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Http
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a HttpRule. */
+ interface IHttpRule {
+
+ /** HttpRule selector */
+ selector?: (string|null);
+
+ /** HttpRule get */
+ get?: (string|null);
+
+ /** HttpRule put */
+ put?: (string|null);
+
+ /** HttpRule post */
+ post?: (string|null);
+
+ /** HttpRule delete */
+ "delete"?: (string|null);
+
+ /** HttpRule patch */
+ patch?: (string|null);
+
+ /** HttpRule custom */
+ custom?: (google.api.ICustomHttpPattern|null);
+
+ /** HttpRule body */
+ body?: (string|null);
+
+ /** HttpRule responseBody */
+ responseBody?: (string|null);
+
+ /** HttpRule additionalBindings */
+ additionalBindings?: (google.api.IHttpRule[]|null);
+ }
+
+ /** Represents a HttpRule. */
+ class HttpRule implements IHttpRule {
+
+ /**
+ * Constructs a new HttpRule.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.api.IHttpRule);
+
+ /** HttpRule selector. */
+ public selector: string;
+
+ /** HttpRule get. */
+ public get?: (string|null);
+
+ /** HttpRule put. */
+ public put?: (string|null);
+
+ /** HttpRule post. */
+ public post?: (string|null);
+
+ /** HttpRule delete. */
+ public delete?: (string|null);
+
+ /** HttpRule patch. */
+ public patch?: (string|null);
+
+ /** HttpRule custom. */
+ public custom?: (google.api.ICustomHttpPattern|null);
+
+ /** HttpRule body. */
+ public body: string;
+
+ /** HttpRule responseBody. */
+ public responseBody: string;
+
+ /** HttpRule additionalBindings. */
+ public additionalBindings: google.api.IHttpRule[];
+
+ /** HttpRule pattern. */
+ public pattern?: ("get"|"put"|"post"|"delete"|"patch"|"custom");
+
+ /**
+ * Creates a new HttpRule instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns HttpRule instance
+ */
+ public static create(properties?: google.api.IHttpRule): google.api.HttpRule;
+
+ /**
+ * Encodes the specified HttpRule message. Does not implicitly {@link google.api.HttpRule.verify|verify} messages.
+ * @param message HttpRule message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.api.IHttpRule, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified HttpRule message, length delimited. Does not implicitly {@link google.api.HttpRule.verify|verify} messages.
+ * @param message HttpRule message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.api.IHttpRule, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a HttpRule message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns HttpRule
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.api.HttpRule;
+
+ /**
+ * Decodes a HttpRule message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns HttpRule
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.api.HttpRule;
+
+ /**
+ * Verifies a HttpRule message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a HttpRule message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns HttpRule
+ */
+ public static fromObject(object: { [k: string]: any }): google.api.HttpRule;
+
+ /**
+ * Creates a plain object from a HttpRule message. Also converts values to other types if specified.
+ * @param message HttpRule
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.api.HttpRule, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this HttpRule to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for HttpRule
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a CustomHttpPattern. */
+ interface ICustomHttpPattern {
+
+ /** CustomHttpPattern kind */
+ kind?: (string|null);
+
+ /** CustomHttpPattern path */
+ path?: (string|null);
+ }
+
+ /** Represents a CustomHttpPattern. */
+ class CustomHttpPattern implements ICustomHttpPattern {
+
+ /**
+ * Constructs a new CustomHttpPattern.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.api.ICustomHttpPattern);
+
+ /** CustomHttpPattern kind. */
+ public kind: string;
+
+ /** CustomHttpPattern path. */
+ public path: string;
+
+ /**
+ * Creates a new CustomHttpPattern instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns CustomHttpPattern instance
+ */
+ public static create(properties?: google.api.ICustomHttpPattern): google.api.CustomHttpPattern;
+
+ /**
+ * Encodes the specified CustomHttpPattern message. Does not implicitly {@link google.api.CustomHttpPattern.verify|verify} messages.
+ * @param message CustomHttpPattern message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.api.ICustomHttpPattern, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified CustomHttpPattern message, length delimited. Does not implicitly {@link google.api.CustomHttpPattern.verify|verify} messages.
+ * @param message CustomHttpPattern message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.api.ICustomHttpPattern, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a CustomHttpPattern message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns CustomHttpPattern
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.api.CustomHttpPattern;
+
+ /**
+ * Decodes a CustomHttpPattern message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns CustomHttpPattern
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.api.CustomHttpPattern;
+
+ /**
+ * Verifies a CustomHttpPattern message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a CustomHttpPattern message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns CustomHttpPattern
+ */
+ public static fromObject(object: { [k: string]: any }): google.api.CustomHttpPattern;
+
+ /**
+ * Creates a plain object from a CustomHttpPattern message. Also converts values to other types if specified.
+ * @param message CustomHttpPattern
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.api.CustomHttpPattern, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this CustomHttpPattern to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for CustomHttpPattern
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** FieldBehavior enum. */
+ enum FieldBehavior {
+ FIELD_BEHAVIOR_UNSPECIFIED = 0,
+ OPTIONAL = 1,
+ REQUIRED = 2,
+ OUTPUT_ONLY = 3,
+ INPUT_ONLY = 4,
+ IMMUTABLE = 5,
+ UNORDERED_LIST = 6,
+ NON_EMPTY_DEFAULT = 7
+ }
+
+ /** Properties of a ResourceDescriptor. */
+ interface IResourceDescriptor {
+
+ /** ResourceDescriptor type */
+ type?: (string|null);
+
+ /** ResourceDescriptor pattern */
+ pattern?: (string[]|null);
+
+ /** ResourceDescriptor nameField */
+ nameField?: (string|null);
+
+ /** ResourceDescriptor history */
+ history?: (google.api.ResourceDescriptor.History|keyof typeof google.api.ResourceDescriptor.History|null);
+
+ /** ResourceDescriptor plural */
+ plural?: (string|null);
+
+ /** ResourceDescriptor singular */
+ singular?: (string|null);
+
+ /** ResourceDescriptor style */
+ style?: (google.api.ResourceDescriptor.Style[]|null);
+ }
+
+ /** Represents a ResourceDescriptor. */
+ class ResourceDescriptor implements IResourceDescriptor {
+
+ /**
+ * Constructs a new ResourceDescriptor.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.api.IResourceDescriptor);
+
+ /** ResourceDescriptor type. */
+ public type: string;
+
+ /** ResourceDescriptor pattern. */
+ public pattern: string[];
+
+ /** ResourceDescriptor nameField. */
+ public nameField: string;
+
+ /** ResourceDescriptor history. */
+ public history: (google.api.ResourceDescriptor.History|keyof typeof google.api.ResourceDescriptor.History);
+
+ /** ResourceDescriptor plural. */
+ public plural: string;
+
+ /** ResourceDescriptor singular. */
+ public singular: string;
+
+ /** ResourceDescriptor style. */
+ public style: google.api.ResourceDescriptor.Style[];
+
+ /**
+ * Creates a new ResourceDescriptor instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ResourceDescriptor instance
+ */
+ public static create(properties?: google.api.IResourceDescriptor): google.api.ResourceDescriptor;
+
+ /**
+ * Encodes the specified ResourceDescriptor message. Does not implicitly {@link google.api.ResourceDescriptor.verify|verify} messages.
+ * @param message ResourceDescriptor message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.api.IResourceDescriptor, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ResourceDescriptor message, length delimited. Does not implicitly {@link google.api.ResourceDescriptor.verify|verify} messages.
+ * @param message ResourceDescriptor message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.api.IResourceDescriptor, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ResourceDescriptor message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ResourceDescriptor
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.api.ResourceDescriptor;
+
+ /**
+ * Decodes a ResourceDescriptor message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ResourceDescriptor
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.api.ResourceDescriptor;
+
+ /**
+ * Verifies a ResourceDescriptor message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ResourceDescriptor message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ResourceDescriptor
+ */
+ public static fromObject(object: { [k: string]: any }): google.api.ResourceDescriptor;
+
+ /**
+ * Creates a plain object from a ResourceDescriptor message. Also converts values to other types if specified.
+ * @param message ResourceDescriptor
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.api.ResourceDescriptor, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ResourceDescriptor to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ResourceDescriptor
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace ResourceDescriptor {
+
+ /** History enum. */
+ enum History {
+ HISTORY_UNSPECIFIED = 0,
+ ORIGINALLY_SINGLE_PATTERN = 1,
+ FUTURE_MULTI_PATTERN = 2
+ }
+
+ /** Style enum. */
+ enum Style {
+ STYLE_UNSPECIFIED = 0,
+ DECLARATIVE_FRIENDLY = 1
+ }
+ }
+
+ /** Properties of a ResourceReference. */
+ interface IResourceReference {
+
+ /** ResourceReference type */
+ type?: (string|null);
+
+ /** ResourceReference childType */
+ childType?: (string|null);
+ }
+
+ /** Represents a ResourceReference. */
+ class ResourceReference implements IResourceReference {
+
+ /**
+ * Constructs a new ResourceReference.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.api.IResourceReference);
+
+ /** ResourceReference type. */
+ public type: string;
+
+ /** ResourceReference childType. */
+ public childType: string;
+
+ /**
+ * Creates a new ResourceReference instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ResourceReference instance
+ */
+ public static create(properties?: google.api.IResourceReference): google.api.ResourceReference;
+
+ /**
+ * Encodes the specified ResourceReference message. Does not implicitly {@link google.api.ResourceReference.verify|verify} messages.
+ * @param message ResourceReference message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.api.IResourceReference, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ResourceReference message, length delimited. Does not implicitly {@link google.api.ResourceReference.verify|verify} messages.
+ * @param message ResourceReference message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.api.IResourceReference, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ResourceReference message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ResourceReference
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.api.ResourceReference;
+
+ /**
+ * Decodes a ResourceReference message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ResourceReference
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.api.ResourceReference;
+
+ /**
+ * Verifies a ResourceReference message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ResourceReference message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ResourceReference
+ */
+ public static fromObject(object: { [k: string]: any }): google.api.ResourceReference;
+
+ /**
+ * Creates a plain object from a ResourceReference message. Also converts values to other types if specified.
+ * @param message ResourceReference
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.api.ResourceReference, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ResourceReference to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ResourceReference
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+ }
+
+ /** Namespace protobuf. */
+ namespace protobuf {
+
+ /** Properties of a FileDescriptorSet. */
+ interface IFileDescriptorSet {
+
+ /** FileDescriptorSet file */
+ file?: (google.protobuf.IFileDescriptorProto[]|null);
+ }
+
+ /** Represents a FileDescriptorSet. */
+ class FileDescriptorSet implements IFileDescriptorSet {
+
+ /**
+ * Constructs a new FileDescriptorSet.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.IFileDescriptorSet);
+
+ /** FileDescriptorSet file. */
+ public file: google.protobuf.IFileDescriptorProto[];
+
+ /**
+ * Creates a new FileDescriptorSet instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns FileDescriptorSet instance
+ */
+ public static create(properties?: google.protobuf.IFileDescriptorSet): google.protobuf.FileDescriptorSet;
+
+ /**
+ * Encodes the specified FileDescriptorSet message. Does not implicitly {@link google.protobuf.FileDescriptorSet.verify|verify} messages.
+ * @param message FileDescriptorSet message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.IFileDescriptorSet, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified FileDescriptorSet message, length delimited. Does not implicitly {@link google.protobuf.FileDescriptorSet.verify|verify} messages.
+ * @param message FileDescriptorSet message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.IFileDescriptorSet, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a FileDescriptorSet message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns FileDescriptorSet
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.FileDescriptorSet;
+
+ /**
+ * Decodes a FileDescriptorSet message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns FileDescriptorSet
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.FileDescriptorSet;
+
+ /**
+ * Verifies a FileDescriptorSet message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a FileDescriptorSet message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns FileDescriptorSet
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.FileDescriptorSet;
+
+ /**
+ * Creates a plain object from a FileDescriptorSet message. Also converts values to other types if specified.
+ * @param message FileDescriptorSet
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.FileDescriptorSet, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this FileDescriptorSet to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for FileDescriptorSet
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a FileDescriptorProto. */
+ interface IFileDescriptorProto {
+
+ /** FileDescriptorProto name */
+ name?: (string|null);
+
+ /** FileDescriptorProto package */
+ "package"?: (string|null);
+
+ /** FileDescriptorProto dependency */
+ dependency?: (string[]|null);
+
+ /** FileDescriptorProto publicDependency */
+ publicDependency?: (number[]|null);
+
+ /** FileDescriptorProto weakDependency */
+ weakDependency?: (number[]|null);
+
+ /** FileDescriptorProto messageType */
+ messageType?: (google.protobuf.IDescriptorProto[]|null);
+
+ /** FileDescriptorProto enumType */
+ enumType?: (google.protobuf.IEnumDescriptorProto[]|null);
+
+ /** FileDescriptorProto service */
+ service?: (google.protobuf.IServiceDescriptorProto[]|null);
+
+ /** FileDescriptorProto extension */
+ extension?: (google.protobuf.IFieldDescriptorProto[]|null);
+
+ /** FileDescriptorProto options */
+ options?: (google.protobuf.IFileOptions|null);
+
+ /** FileDescriptorProto sourceCodeInfo */
+ sourceCodeInfo?: (google.protobuf.ISourceCodeInfo|null);
+
+ /** FileDescriptorProto syntax */
+ syntax?: (string|null);
+
+ /** FileDescriptorProto edition */
+ edition?: (string|null);
+ }
+
+ /** Represents a FileDescriptorProto. */
+ class FileDescriptorProto implements IFileDescriptorProto {
+
+ /**
+ * Constructs a new FileDescriptorProto.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.IFileDescriptorProto);
+
+ /** FileDescriptorProto name. */
+ public name: string;
+
+ /** FileDescriptorProto package. */
+ public package: string;
+
+ /** FileDescriptorProto dependency. */
+ public dependency: string[];
+
+ /** FileDescriptorProto publicDependency. */
+ public publicDependency: number[];
+
+ /** FileDescriptorProto weakDependency. */
+ public weakDependency: number[];
+
+ /** FileDescriptorProto messageType. */
+ public messageType: google.protobuf.IDescriptorProto[];
+
+ /** FileDescriptorProto enumType. */
+ public enumType: google.protobuf.IEnumDescriptorProto[];
+
+ /** FileDescriptorProto service. */
+ public service: google.protobuf.IServiceDescriptorProto[];
+
+ /** FileDescriptorProto extension. */
+ public extension: google.protobuf.IFieldDescriptorProto[];
+
+ /** FileDescriptorProto options. */
+ public options?: (google.protobuf.IFileOptions|null);
+
+ /** FileDescriptorProto sourceCodeInfo. */
+ public sourceCodeInfo?: (google.protobuf.ISourceCodeInfo|null);
+
+ /** FileDescriptorProto syntax. */
+ public syntax: string;
+
+ /** FileDescriptorProto edition. */
+ public edition: string;
+
+ /**
+ * Creates a new FileDescriptorProto instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns FileDescriptorProto instance
+ */
+ public static create(properties?: google.protobuf.IFileDescriptorProto): google.protobuf.FileDescriptorProto;
+
+ /**
+ * Encodes the specified FileDescriptorProto message. Does not implicitly {@link google.protobuf.FileDescriptorProto.verify|verify} messages.
+ * @param message FileDescriptorProto message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.IFileDescriptorProto, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified FileDescriptorProto message, length delimited. Does not implicitly {@link google.protobuf.FileDescriptorProto.verify|verify} messages.
+ * @param message FileDescriptorProto message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.IFileDescriptorProto, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a FileDescriptorProto message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns FileDescriptorProto
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.FileDescriptorProto;
+
+ /**
+ * Decodes a FileDescriptorProto message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns FileDescriptorProto
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.FileDescriptorProto;
+
+ /**
+ * Verifies a FileDescriptorProto message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a FileDescriptorProto message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns FileDescriptorProto
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.FileDescriptorProto;
+
+ /**
+ * Creates a plain object from a FileDescriptorProto message. Also converts values to other types if specified.
+ * @param message FileDescriptorProto
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.FileDescriptorProto, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this FileDescriptorProto to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for FileDescriptorProto
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a DescriptorProto. */
+ interface IDescriptorProto {
+
+ /** DescriptorProto name */
+ name?: (string|null);
+
+ /** DescriptorProto field */
+ field?: (google.protobuf.IFieldDescriptorProto[]|null);
+
+ /** DescriptorProto extension */
+ extension?: (google.protobuf.IFieldDescriptorProto[]|null);
+
+ /** DescriptorProto nestedType */
+ nestedType?: (google.protobuf.IDescriptorProto[]|null);
+
+ /** DescriptorProto enumType */
+ enumType?: (google.protobuf.IEnumDescriptorProto[]|null);
+
+ /** DescriptorProto extensionRange */
+ extensionRange?: (google.protobuf.DescriptorProto.IExtensionRange[]|null);
+
+ /** DescriptorProto oneofDecl */
+ oneofDecl?: (google.protobuf.IOneofDescriptorProto[]|null);
+
+ /** DescriptorProto options */
+ options?: (google.protobuf.IMessageOptions|null);
+
+ /** DescriptorProto reservedRange */
+ reservedRange?: (google.protobuf.DescriptorProto.IReservedRange[]|null);
+
+ /** DescriptorProto reservedName */
+ reservedName?: (string[]|null);
+ }
+
+ /** Represents a DescriptorProto. */
+ class DescriptorProto implements IDescriptorProto {
+
+ /**
+ * Constructs a new DescriptorProto.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.IDescriptorProto);
+
+ /** DescriptorProto name. */
+ public name: string;
+
+ /** DescriptorProto field. */
+ public field: google.protobuf.IFieldDescriptorProto[];
+
+ /** DescriptorProto extension. */
+ public extension: google.protobuf.IFieldDescriptorProto[];
+
+ /** DescriptorProto nestedType. */
+ public nestedType: google.protobuf.IDescriptorProto[];
+
+ /** DescriptorProto enumType. */
+ public enumType: google.protobuf.IEnumDescriptorProto[];
+
+ /** DescriptorProto extensionRange. */
+ public extensionRange: google.protobuf.DescriptorProto.IExtensionRange[];
+
+ /** DescriptorProto oneofDecl. */
+ public oneofDecl: google.protobuf.IOneofDescriptorProto[];
+
+ /** DescriptorProto options. */
+ public options?: (google.protobuf.IMessageOptions|null);
+
+ /** DescriptorProto reservedRange. */
+ public reservedRange: google.protobuf.DescriptorProto.IReservedRange[];
+
+ /** DescriptorProto reservedName. */
+ public reservedName: string[];
+
+ /**
+ * Creates a new DescriptorProto instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns DescriptorProto instance
+ */
+ public static create(properties?: google.protobuf.IDescriptorProto): google.protobuf.DescriptorProto;
+
+ /**
+ * Encodes the specified DescriptorProto message. Does not implicitly {@link google.protobuf.DescriptorProto.verify|verify} messages.
+ * @param message DescriptorProto message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.IDescriptorProto, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified DescriptorProto message, length delimited. Does not implicitly {@link google.protobuf.DescriptorProto.verify|verify} messages.
+ * @param message DescriptorProto message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.IDescriptorProto, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a DescriptorProto message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns DescriptorProto
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.DescriptorProto;
+
+ /**
+ * Decodes a DescriptorProto message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns DescriptorProto
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.DescriptorProto;
+
+ /**
+ * Verifies a DescriptorProto message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a DescriptorProto message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns DescriptorProto
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.DescriptorProto;
+
+ /**
+ * Creates a plain object from a DescriptorProto message. Also converts values to other types if specified.
+ * @param message DescriptorProto
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.DescriptorProto, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this DescriptorProto to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for DescriptorProto
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace DescriptorProto {
+
+ /** Properties of an ExtensionRange. */
+ interface IExtensionRange {
+
+ /** ExtensionRange start */
+ start?: (number|null);
+
+ /** ExtensionRange end */
+ end?: (number|null);
+
+ /** ExtensionRange options */
+ options?: (google.protobuf.IExtensionRangeOptions|null);
+ }
+
+ /** Represents an ExtensionRange. */
+ class ExtensionRange implements IExtensionRange {
+
+ /**
+ * Constructs a new ExtensionRange.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.DescriptorProto.IExtensionRange);
+
+ /** ExtensionRange start. */
+ public start: number;
+
+ /** ExtensionRange end. */
+ public end: number;
+
+ /** ExtensionRange options. */
+ public options?: (google.protobuf.IExtensionRangeOptions|null);
+
+ /**
+ * Creates a new ExtensionRange instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ExtensionRange instance
+ */
+ public static create(properties?: google.protobuf.DescriptorProto.IExtensionRange): google.protobuf.DescriptorProto.ExtensionRange;
+
+ /**
+ * Encodes the specified ExtensionRange message. Does not implicitly {@link google.protobuf.DescriptorProto.ExtensionRange.verify|verify} messages.
+ * @param message ExtensionRange message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.DescriptorProto.IExtensionRange, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ExtensionRange message, length delimited. Does not implicitly {@link google.protobuf.DescriptorProto.ExtensionRange.verify|verify} messages.
+ * @param message ExtensionRange message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.DescriptorProto.IExtensionRange, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an ExtensionRange message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ExtensionRange
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.DescriptorProto.ExtensionRange;
+
+ /**
+ * Decodes an ExtensionRange message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ExtensionRange
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.DescriptorProto.ExtensionRange;
+
+ /**
+ * Verifies an ExtensionRange message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates an ExtensionRange message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ExtensionRange
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.DescriptorProto.ExtensionRange;
+
+ /**
+ * Creates a plain object from an ExtensionRange message. Also converts values to other types if specified.
+ * @param message ExtensionRange
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.DescriptorProto.ExtensionRange, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ExtensionRange to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ExtensionRange
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ReservedRange. */
+ interface IReservedRange {
+
+ /** ReservedRange start */
+ start?: (number|null);
+
+ /** ReservedRange end */
+ end?: (number|null);
+ }
+
+ /** Represents a ReservedRange. */
+ class ReservedRange implements IReservedRange {
+
+ /**
+ * Constructs a new ReservedRange.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.DescriptorProto.IReservedRange);
+
+ /** ReservedRange start. */
+ public start: number;
+
+ /** ReservedRange end. */
+ public end: number;
+
+ /**
+ * Creates a new ReservedRange instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ReservedRange instance
+ */
+ public static create(properties?: google.protobuf.DescriptorProto.IReservedRange): google.protobuf.DescriptorProto.ReservedRange;
+
+ /**
+ * Encodes the specified ReservedRange message. Does not implicitly {@link google.protobuf.DescriptorProto.ReservedRange.verify|verify} messages.
+ * @param message ReservedRange message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.DescriptorProto.IReservedRange, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ReservedRange message, length delimited. Does not implicitly {@link google.protobuf.DescriptorProto.ReservedRange.verify|verify} messages.
+ * @param message ReservedRange message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.DescriptorProto.IReservedRange, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ReservedRange message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ReservedRange
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.DescriptorProto.ReservedRange;
+
+ /**
+ * Decodes a ReservedRange message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ReservedRange
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.DescriptorProto.ReservedRange;
+
+ /**
+ * Verifies a ReservedRange message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ReservedRange message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ReservedRange
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.DescriptorProto.ReservedRange;
+
+ /**
+ * Creates a plain object from a ReservedRange message. Also converts values to other types if specified.
+ * @param message ReservedRange
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.DescriptorProto.ReservedRange, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ReservedRange to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ReservedRange
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+ }
+
+ /** Properties of an ExtensionRangeOptions. */
+ interface IExtensionRangeOptions {
+
+ /** ExtensionRangeOptions uninterpretedOption */
+ uninterpretedOption?: (google.protobuf.IUninterpretedOption[]|null);
+ }
+
+ /** Represents an ExtensionRangeOptions. */
+ class ExtensionRangeOptions implements IExtensionRangeOptions {
+
+ /**
+ * Constructs a new ExtensionRangeOptions.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.IExtensionRangeOptions);
+
+ /** ExtensionRangeOptions uninterpretedOption. */
+ public uninterpretedOption: google.protobuf.IUninterpretedOption[];
+
+ /**
+ * Creates a new ExtensionRangeOptions instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ExtensionRangeOptions instance
+ */
+ public static create(properties?: google.protobuf.IExtensionRangeOptions): google.protobuf.ExtensionRangeOptions;
+
+ /**
+ * Encodes the specified ExtensionRangeOptions message. Does not implicitly {@link google.protobuf.ExtensionRangeOptions.verify|verify} messages.
+ * @param message ExtensionRangeOptions message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.IExtensionRangeOptions, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ExtensionRangeOptions message, length delimited. Does not implicitly {@link google.protobuf.ExtensionRangeOptions.verify|verify} messages.
+ * @param message ExtensionRangeOptions message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.IExtensionRangeOptions, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an ExtensionRangeOptions message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ExtensionRangeOptions
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.ExtensionRangeOptions;
+
+ /**
+ * Decodes an ExtensionRangeOptions message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ExtensionRangeOptions
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.ExtensionRangeOptions;
+
+ /**
+ * Verifies an ExtensionRangeOptions message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates an ExtensionRangeOptions message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ExtensionRangeOptions
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.ExtensionRangeOptions;
+
+ /**
+ * Creates a plain object from an ExtensionRangeOptions message. Also converts values to other types if specified.
+ * @param message ExtensionRangeOptions
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.ExtensionRangeOptions, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ExtensionRangeOptions to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ExtensionRangeOptions
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a FieldDescriptorProto. */
+ interface IFieldDescriptorProto {
+
+ /** FieldDescriptorProto name */
+ name?: (string|null);
+
+ /** FieldDescriptorProto number */
+ number?: (number|null);
+
+ /** FieldDescriptorProto label */
+ label?: (google.protobuf.FieldDescriptorProto.Label|keyof typeof google.protobuf.FieldDescriptorProto.Label|null);
+
+ /** FieldDescriptorProto type */
+ type?: (google.protobuf.FieldDescriptorProto.Type|keyof typeof google.protobuf.FieldDescriptorProto.Type|null);
+
+ /** FieldDescriptorProto typeName */
+ typeName?: (string|null);
+
+ /** FieldDescriptorProto extendee */
+ extendee?: (string|null);
+
+ /** FieldDescriptorProto defaultValue */
+ defaultValue?: (string|null);
+
+ /** FieldDescriptorProto oneofIndex */
+ oneofIndex?: (number|null);
+
+ /** FieldDescriptorProto jsonName */
+ jsonName?: (string|null);
+
+ /** FieldDescriptorProto options */
+ options?: (google.protobuf.IFieldOptions|null);
+
+ /** FieldDescriptorProto proto3Optional */
+ proto3Optional?: (boolean|null);
+ }
+
+ /** Represents a FieldDescriptorProto. */
+ class FieldDescriptorProto implements IFieldDescriptorProto {
+
+ /**
+ * Constructs a new FieldDescriptorProto.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.IFieldDescriptorProto);
+
+ /** FieldDescriptorProto name. */
+ public name: string;
+
+ /** FieldDescriptorProto number. */
+ public number: number;
+
+ /** FieldDescriptorProto label. */
+ public label: (google.protobuf.FieldDescriptorProto.Label|keyof typeof google.protobuf.FieldDescriptorProto.Label);
+
+ /** FieldDescriptorProto type. */
+ public type: (google.protobuf.FieldDescriptorProto.Type|keyof typeof google.protobuf.FieldDescriptorProto.Type);
+
+ /** FieldDescriptorProto typeName. */
+ public typeName: string;
+
+ /** FieldDescriptorProto extendee. */
+ public extendee: string;
+
+ /** FieldDescriptorProto defaultValue. */
+ public defaultValue: string;
+
+ /** FieldDescriptorProto oneofIndex. */
+ public oneofIndex: number;
+
+ /** FieldDescriptorProto jsonName. */
+ public jsonName: string;
+
+ /** FieldDescriptorProto options. */
+ public options?: (google.protobuf.IFieldOptions|null);
+
+ /** FieldDescriptorProto proto3Optional. */
+ public proto3Optional: boolean;
+
+ /**
+ * Creates a new FieldDescriptorProto instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns FieldDescriptorProto instance
+ */
+ public static create(properties?: google.protobuf.IFieldDescriptorProto): google.protobuf.FieldDescriptorProto;
+
+ /**
+ * Encodes the specified FieldDescriptorProto message. Does not implicitly {@link google.protobuf.FieldDescriptorProto.verify|verify} messages.
+ * @param message FieldDescriptorProto message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.IFieldDescriptorProto, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified FieldDescriptorProto message, length delimited. Does not implicitly {@link google.protobuf.FieldDescriptorProto.verify|verify} messages.
+ * @param message FieldDescriptorProto message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.IFieldDescriptorProto, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a FieldDescriptorProto message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns FieldDescriptorProto
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.FieldDescriptorProto;
+
+ /**
+ * Decodes a FieldDescriptorProto message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns FieldDescriptorProto
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.FieldDescriptorProto;
+
+ /**
+ * Verifies a FieldDescriptorProto message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a FieldDescriptorProto message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns FieldDescriptorProto
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.FieldDescriptorProto;
+
+ /**
+ * Creates a plain object from a FieldDescriptorProto message. Also converts values to other types if specified.
+ * @param message FieldDescriptorProto
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.FieldDescriptorProto, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this FieldDescriptorProto to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for FieldDescriptorProto
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace FieldDescriptorProto {
+
+ /** Type enum. */
+ enum Type {
+ TYPE_DOUBLE = 1,
+ TYPE_FLOAT = 2,
+ TYPE_INT64 = 3,
+ TYPE_UINT64 = 4,
+ TYPE_INT32 = 5,
+ TYPE_FIXED64 = 6,
+ TYPE_FIXED32 = 7,
+ TYPE_BOOL = 8,
+ TYPE_STRING = 9,
+ TYPE_GROUP = 10,
+ TYPE_MESSAGE = 11,
+ TYPE_BYTES = 12,
+ TYPE_UINT32 = 13,
+ TYPE_ENUM = 14,
+ TYPE_SFIXED32 = 15,
+ TYPE_SFIXED64 = 16,
+ TYPE_SINT32 = 17,
+ TYPE_SINT64 = 18
+ }
+
+ /** Label enum. */
+ enum Label {
+ LABEL_OPTIONAL = 1,
+ LABEL_REQUIRED = 2,
+ LABEL_REPEATED = 3
+ }
+ }
+
+ /** Properties of an OneofDescriptorProto. */
+ interface IOneofDescriptorProto {
+
+ /** OneofDescriptorProto name */
+ name?: (string|null);
+
+ /** OneofDescriptorProto options */
+ options?: (google.protobuf.IOneofOptions|null);
+ }
+
+ /** Represents an OneofDescriptorProto. */
+ class OneofDescriptorProto implements IOneofDescriptorProto {
+
+ /**
+ * Constructs a new OneofDescriptorProto.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.IOneofDescriptorProto);
+
+ /** OneofDescriptorProto name. */
+ public name: string;
+
+ /** OneofDescriptorProto options. */
+ public options?: (google.protobuf.IOneofOptions|null);
+
+ /**
+ * Creates a new OneofDescriptorProto instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns OneofDescriptorProto instance
+ */
+ public static create(properties?: google.protobuf.IOneofDescriptorProto): google.protobuf.OneofDescriptorProto;
+
+ /**
+ * Encodes the specified OneofDescriptorProto message. Does not implicitly {@link google.protobuf.OneofDescriptorProto.verify|verify} messages.
+ * @param message OneofDescriptorProto message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.IOneofDescriptorProto, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified OneofDescriptorProto message, length delimited. Does not implicitly {@link google.protobuf.OneofDescriptorProto.verify|verify} messages.
+ * @param message OneofDescriptorProto message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.IOneofDescriptorProto, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an OneofDescriptorProto message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns OneofDescriptorProto
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.OneofDescriptorProto;
+
+ /**
+ * Decodes an OneofDescriptorProto message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns OneofDescriptorProto
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.OneofDescriptorProto;
+
+ /**
+ * Verifies an OneofDescriptorProto message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates an OneofDescriptorProto message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns OneofDescriptorProto
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.OneofDescriptorProto;
+
+ /**
+ * Creates a plain object from an OneofDescriptorProto message. Also converts values to other types if specified.
+ * @param message OneofDescriptorProto
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.OneofDescriptorProto, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this OneofDescriptorProto to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for OneofDescriptorProto
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an EnumDescriptorProto. */
+ interface IEnumDescriptorProto {
+
+ /** EnumDescriptorProto name */
+ name?: (string|null);
+
+ /** EnumDescriptorProto value */
+ value?: (google.protobuf.IEnumValueDescriptorProto[]|null);
+
+ /** EnumDescriptorProto options */
+ options?: (google.protobuf.IEnumOptions|null);
+
+ /** EnumDescriptorProto reservedRange */
+ reservedRange?: (google.protobuf.EnumDescriptorProto.IEnumReservedRange[]|null);
+
+ /** EnumDescriptorProto reservedName */
+ reservedName?: (string[]|null);
+ }
+
+ /** Represents an EnumDescriptorProto. */
+ class EnumDescriptorProto implements IEnumDescriptorProto {
+
+ /**
+ * Constructs a new EnumDescriptorProto.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.IEnumDescriptorProto);
+
+ /** EnumDescriptorProto name. */
+ public name: string;
+
+ /** EnumDescriptorProto value. */
+ public value: google.protobuf.IEnumValueDescriptorProto[];
+
+ /** EnumDescriptorProto options. */
+ public options?: (google.protobuf.IEnumOptions|null);
+
+ /** EnumDescriptorProto reservedRange. */
+ public reservedRange: google.protobuf.EnumDescriptorProto.IEnumReservedRange[];
+
+ /** EnumDescriptorProto reservedName. */
+ public reservedName: string[];
+
+ /**
+ * Creates a new EnumDescriptorProto instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns EnumDescriptorProto instance
+ */
+ public static create(properties?: google.protobuf.IEnumDescriptorProto): google.protobuf.EnumDescriptorProto;
+
+ /**
+ * Encodes the specified EnumDescriptorProto message. Does not implicitly {@link google.protobuf.EnumDescriptorProto.verify|verify} messages.
+ * @param message EnumDescriptorProto message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.IEnumDescriptorProto, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified EnumDescriptorProto message, length delimited. Does not implicitly {@link google.protobuf.EnumDescriptorProto.verify|verify} messages.
+ * @param message EnumDescriptorProto message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.IEnumDescriptorProto, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an EnumDescriptorProto message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns EnumDescriptorProto
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.EnumDescriptorProto;
+
+ /**
+ * Decodes an EnumDescriptorProto message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns EnumDescriptorProto
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.EnumDescriptorProto;
+
+ /**
+ * Verifies an EnumDescriptorProto message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates an EnumDescriptorProto message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns EnumDescriptorProto
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.EnumDescriptorProto;
+
+ /**
+ * Creates a plain object from an EnumDescriptorProto message. Also converts values to other types if specified.
+ * @param message EnumDescriptorProto
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.EnumDescriptorProto, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this EnumDescriptorProto to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for EnumDescriptorProto
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace EnumDescriptorProto {
+
+ /** Properties of an EnumReservedRange. */
+ interface IEnumReservedRange {
+
+ /** EnumReservedRange start */
+ start?: (number|null);
+
+ /** EnumReservedRange end */
+ end?: (number|null);
+ }
+
+ /** Represents an EnumReservedRange. */
+ class EnumReservedRange implements IEnumReservedRange {
+
+ /**
+ * Constructs a new EnumReservedRange.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.EnumDescriptorProto.IEnumReservedRange);
+
+ /** EnumReservedRange start. */
+ public start: number;
+
+ /** EnumReservedRange end. */
+ public end: number;
+
+ /**
+ * Creates a new EnumReservedRange instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns EnumReservedRange instance
+ */
+ public static create(properties?: google.protobuf.EnumDescriptorProto.IEnumReservedRange): google.protobuf.EnumDescriptorProto.EnumReservedRange;
+
+ /**
+ * Encodes the specified EnumReservedRange message. Does not implicitly {@link google.protobuf.EnumDescriptorProto.EnumReservedRange.verify|verify} messages.
+ * @param message EnumReservedRange message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.EnumDescriptorProto.IEnumReservedRange, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified EnumReservedRange message, length delimited. Does not implicitly {@link google.protobuf.EnumDescriptorProto.EnumReservedRange.verify|verify} messages.
+ * @param message EnumReservedRange message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.EnumDescriptorProto.IEnumReservedRange, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an EnumReservedRange message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns EnumReservedRange
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.EnumDescriptorProto.EnumReservedRange;
+
+ /**
+ * Decodes an EnumReservedRange message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns EnumReservedRange
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.EnumDescriptorProto.EnumReservedRange;
+
+ /**
+ * Verifies an EnumReservedRange message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates an EnumReservedRange message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns EnumReservedRange
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.EnumDescriptorProto.EnumReservedRange;
+
+ /**
+ * Creates a plain object from an EnumReservedRange message. Also converts values to other types if specified.
+ * @param message EnumReservedRange
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.EnumDescriptorProto.EnumReservedRange, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this EnumReservedRange to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for EnumReservedRange
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+ }
+
+ /** Properties of an EnumValueDescriptorProto. */
+ interface IEnumValueDescriptorProto {
+
+ /** EnumValueDescriptorProto name */
+ name?: (string|null);
+
+ /** EnumValueDescriptorProto number */
+ number?: (number|null);
+
+ /** EnumValueDescriptorProto options */
+ options?: (google.protobuf.IEnumValueOptions|null);
+ }
+
+ /** Represents an EnumValueDescriptorProto. */
+ class EnumValueDescriptorProto implements IEnumValueDescriptorProto {
+
+ /**
+ * Constructs a new EnumValueDescriptorProto.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.IEnumValueDescriptorProto);
+
+ /** EnumValueDescriptorProto name. */
+ public name: string;
+
+ /** EnumValueDescriptorProto number. */
+ public number: number;
+
+ /** EnumValueDescriptorProto options. */
+ public options?: (google.protobuf.IEnumValueOptions|null);
+
+ /**
+ * Creates a new EnumValueDescriptorProto instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns EnumValueDescriptorProto instance
+ */
+ public static create(properties?: google.protobuf.IEnumValueDescriptorProto): google.protobuf.EnumValueDescriptorProto;
+
+ /**
+ * Encodes the specified EnumValueDescriptorProto message. Does not implicitly {@link google.protobuf.EnumValueDescriptorProto.verify|verify} messages.
+ * @param message EnumValueDescriptorProto message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.IEnumValueDescriptorProto, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified EnumValueDescriptorProto message, length delimited. Does not implicitly {@link google.protobuf.EnumValueDescriptorProto.verify|verify} messages.
+ * @param message EnumValueDescriptorProto message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.IEnumValueDescriptorProto, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an EnumValueDescriptorProto message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns EnumValueDescriptorProto
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.EnumValueDescriptorProto;
+
+ /**
+ * Decodes an EnumValueDescriptorProto message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns EnumValueDescriptorProto
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.EnumValueDescriptorProto;
+
+ /**
+ * Verifies an EnumValueDescriptorProto message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates an EnumValueDescriptorProto message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns EnumValueDescriptorProto
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.EnumValueDescriptorProto;
+
+ /**
+ * Creates a plain object from an EnumValueDescriptorProto message. Also converts values to other types if specified.
+ * @param message EnumValueDescriptorProto
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.EnumValueDescriptorProto, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this EnumValueDescriptorProto to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for EnumValueDescriptorProto
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ServiceDescriptorProto. */
+ interface IServiceDescriptorProto {
+
+ /** ServiceDescriptorProto name */
+ name?: (string|null);
+
+ /** ServiceDescriptorProto method */
+ method?: (google.protobuf.IMethodDescriptorProto[]|null);
+
+ /** ServiceDescriptorProto options */
+ options?: (google.protobuf.IServiceOptions|null);
+ }
+
+ /** Represents a ServiceDescriptorProto. */
+ class ServiceDescriptorProto implements IServiceDescriptorProto {
+
+ /**
+ * Constructs a new ServiceDescriptorProto.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.IServiceDescriptorProto);
+
+ /** ServiceDescriptorProto name. */
+ public name: string;
+
+ /** ServiceDescriptorProto method. */
+ public method: google.protobuf.IMethodDescriptorProto[];
+
+ /** ServiceDescriptorProto options. */
+ public options?: (google.protobuf.IServiceOptions|null);
+
+ /**
+ * Creates a new ServiceDescriptorProto instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ServiceDescriptorProto instance
+ */
+ public static create(properties?: google.protobuf.IServiceDescriptorProto): google.protobuf.ServiceDescriptorProto;
+
+ /**
+ * Encodes the specified ServiceDescriptorProto message. Does not implicitly {@link google.protobuf.ServiceDescriptorProto.verify|verify} messages.
+ * @param message ServiceDescriptorProto message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.IServiceDescriptorProto, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ServiceDescriptorProto message, length delimited. Does not implicitly {@link google.protobuf.ServiceDescriptorProto.verify|verify} messages.
+ * @param message ServiceDescriptorProto message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.IServiceDescriptorProto, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ServiceDescriptorProto message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ServiceDescriptorProto
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.ServiceDescriptorProto;
+
+ /**
+ * Decodes a ServiceDescriptorProto message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ServiceDescriptorProto
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.ServiceDescriptorProto;
+
+ /**
+ * Verifies a ServiceDescriptorProto message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ServiceDescriptorProto message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ServiceDescriptorProto
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.ServiceDescriptorProto;
+
+ /**
+ * Creates a plain object from a ServiceDescriptorProto message. Also converts values to other types if specified.
+ * @param message ServiceDescriptorProto
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.ServiceDescriptorProto, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ServiceDescriptorProto to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ServiceDescriptorProto
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a MethodDescriptorProto. */
+ interface IMethodDescriptorProto {
+
+ /** MethodDescriptorProto name */
+ name?: (string|null);
+
+ /** MethodDescriptorProto inputType */
+ inputType?: (string|null);
+
+ /** MethodDescriptorProto outputType */
+ outputType?: (string|null);
+
+ /** MethodDescriptorProto options */
+ options?: (google.protobuf.IMethodOptions|null);
+
+ /** MethodDescriptorProto clientStreaming */
+ clientStreaming?: (boolean|null);
+
+ /** MethodDescriptorProto serverStreaming */
+ serverStreaming?: (boolean|null);
+ }
+
+ /** Represents a MethodDescriptorProto. */
+ class MethodDescriptorProto implements IMethodDescriptorProto {
+
+ /**
+ * Constructs a new MethodDescriptorProto.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.IMethodDescriptorProto);
+
+ /** MethodDescriptorProto name. */
+ public name: string;
+
+ /** MethodDescriptorProto inputType. */
+ public inputType: string;
+
+ /** MethodDescriptorProto outputType. */
+ public outputType: string;
+
+ /** MethodDescriptorProto options. */
+ public options?: (google.protobuf.IMethodOptions|null);
+
+ /** MethodDescriptorProto clientStreaming. */
+ public clientStreaming: boolean;
+
+ /** MethodDescriptorProto serverStreaming. */
+ public serverStreaming: boolean;
+
+ /**
+ * Creates a new MethodDescriptorProto instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns MethodDescriptorProto instance
+ */
+ public static create(properties?: google.protobuf.IMethodDescriptorProto): google.protobuf.MethodDescriptorProto;
+
+ /**
+ * Encodes the specified MethodDescriptorProto message. Does not implicitly {@link google.protobuf.MethodDescriptorProto.verify|verify} messages.
+ * @param message MethodDescriptorProto message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.IMethodDescriptorProto, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified MethodDescriptorProto message, length delimited. Does not implicitly {@link google.protobuf.MethodDescriptorProto.verify|verify} messages.
+ * @param message MethodDescriptorProto message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.IMethodDescriptorProto, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a MethodDescriptorProto message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns MethodDescriptorProto
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.MethodDescriptorProto;
+
+ /**
+ * Decodes a MethodDescriptorProto message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns MethodDescriptorProto
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.MethodDescriptorProto;
+
+ /**
+ * Verifies a MethodDescriptorProto message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a MethodDescriptorProto message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns MethodDescriptorProto
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.MethodDescriptorProto;
+
+ /**
+ * Creates a plain object from a MethodDescriptorProto message. Also converts values to other types if specified.
+ * @param message MethodDescriptorProto
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.MethodDescriptorProto, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this MethodDescriptorProto to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for MethodDescriptorProto
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a FileOptions. */
+ interface IFileOptions {
+
+ /** FileOptions javaPackage */
+ javaPackage?: (string|null);
+
+ /** FileOptions javaOuterClassname */
+ javaOuterClassname?: (string|null);
+
+ /** FileOptions javaMultipleFiles */
+ javaMultipleFiles?: (boolean|null);
+
+ /** FileOptions javaGenerateEqualsAndHash */
+ javaGenerateEqualsAndHash?: (boolean|null);
+
+ /** FileOptions javaStringCheckUtf8 */
+ javaStringCheckUtf8?: (boolean|null);
+
+ /** FileOptions optimizeFor */
+ optimizeFor?: (google.protobuf.FileOptions.OptimizeMode|keyof typeof google.protobuf.FileOptions.OptimizeMode|null);
+
+ /** FileOptions goPackage */
+ goPackage?: (string|null);
+
+ /** FileOptions ccGenericServices */
+ ccGenericServices?: (boolean|null);
+
+ /** FileOptions javaGenericServices */
+ javaGenericServices?: (boolean|null);
+
+ /** FileOptions pyGenericServices */
+ pyGenericServices?: (boolean|null);
+
+ /** FileOptions phpGenericServices */
+ phpGenericServices?: (boolean|null);
+
+ /** FileOptions deprecated */
+ deprecated?: (boolean|null);
+
+ /** FileOptions ccEnableArenas */
+ ccEnableArenas?: (boolean|null);
+
+ /** FileOptions objcClassPrefix */
+ objcClassPrefix?: (string|null);
+
+ /** FileOptions csharpNamespace */
+ csharpNamespace?: (string|null);
+
+ /** FileOptions swiftPrefix */
+ swiftPrefix?: (string|null);
+
+ /** FileOptions phpClassPrefix */
+ phpClassPrefix?: (string|null);
+
+ /** FileOptions phpNamespace */
+ phpNamespace?: (string|null);
+
+ /** FileOptions phpMetadataNamespace */
+ phpMetadataNamespace?: (string|null);
+
+ /** FileOptions rubyPackage */
+ rubyPackage?: (string|null);
+
+ /** FileOptions uninterpretedOption */
+ uninterpretedOption?: (google.protobuf.IUninterpretedOption[]|null);
+
+ /** FileOptions .google.api.resourceDefinition */
+ ".google.api.resourceDefinition"?: (google.api.IResourceDescriptor[]|null);
+ }
+
+ /** Represents a FileOptions. */
+ class FileOptions implements IFileOptions {
+
+ /**
+ * Constructs a new FileOptions.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.IFileOptions);
+
+ /** FileOptions javaPackage. */
+ public javaPackage: string;
+
+ /** FileOptions javaOuterClassname. */
+ public javaOuterClassname: string;
+
+ /** FileOptions javaMultipleFiles. */
+ public javaMultipleFiles: boolean;
+
+ /** FileOptions javaGenerateEqualsAndHash. */
+ public javaGenerateEqualsAndHash: boolean;
+
+ /** FileOptions javaStringCheckUtf8. */
+ public javaStringCheckUtf8: boolean;
+
+ /** FileOptions optimizeFor. */
+ public optimizeFor: (google.protobuf.FileOptions.OptimizeMode|keyof typeof google.protobuf.FileOptions.OptimizeMode);
+
+ /** FileOptions goPackage. */
+ public goPackage: string;
+
+ /** FileOptions ccGenericServices. */
+ public ccGenericServices: boolean;
+
+ /** FileOptions javaGenericServices. */
+ public javaGenericServices: boolean;
+
+ /** FileOptions pyGenericServices. */
+ public pyGenericServices: boolean;
+
+ /** FileOptions phpGenericServices. */
+ public phpGenericServices: boolean;
+
+ /** FileOptions deprecated. */
+ public deprecated: boolean;
+
+ /** FileOptions ccEnableArenas. */
+ public ccEnableArenas: boolean;
+
+ /** FileOptions objcClassPrefix. */
+ public objcClassPrefix: string;
+
+ /** FileOptions csharpNamespace. */
+ public csharpNamespace: string;
+
+ /** FileOptions swiftPrefix. */
+ public swiftPrefix: string;
+
+ /** FileOptions phpClassPrefix. */
+ public phpClassPrefix: string;
+
+ /** FileOptions phpNamespace. */
+ public phpNamespace: string;
+
+ /** FileOptions phpMetadataNamespace. */
+ public phpMetadataNamespace: string;
+
+ /** FileOptions rubyPackage. */
+ public rubyPackage: string;
+
+ /** FileOptions uninterpretedOption. */
+ public uninterpretedOption: google.protobuf.IUninterpretedOption[];
+
+ /**
+ * Creates a new FileOptions instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns FileOptions instance
+ */
+ public static create(properties?: google.protobuf.IFileOptions): google.protobuf.FileOptions;
+
+ /**
+ * Encodes the specified FileOptions message. Does not implicitly {@link google.protobuf.FileOptions.verify|verify} messages.
+ * @param message FileOptions message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.IFileOptions, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified FileOptions message, length delimited. Does not implicitly {@link google.protobuf.FileOptions.verify|verify} messages.
+ * @param message FileOptions message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.IFileOptions, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a FileOptions message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns FileOptions
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.FileOptions;
+
+ /**
+ * Decodes a FileOptions message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns FileOptions
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.FileOptions;
+
+ /**
+ * Verifies a FileOptions message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a FileOptions message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns FileOptions
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.FileOptions;
+
+ /**
+ * Creates a plain object from a FileOptions message. Also converts values to other types if specified.
+ * @param message FileOptions
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.FileOptions, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this FileOptions to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for FileOptions
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace FileOptions {
+
+ /** OptimizeMode enum. */
+ enum OptimizeMode {
+ SPEED = 1,
+ CODE_SIZE = 2,
+ LITE_RUNTIME = 3
+ }
+ }
+
+ /** Properties of a MessageOptions. */
+ interface IMessageOptions {
+
+ /** MessageOptions messageSetWireFormat */
+ messageSetWireFormat?: (boolean|null);
+
+ /** MessageOptions noStandardDescriptorAccessor */
+ noStandardDescriptorAccessor?: (boolean|null);
+
+ /** MessageOptions deprecated */
+ deprecated?: (boolean|null);
+
+ /** MessageOptions mapEntry */
+ mapEntry?: (boolean|null);
+
+ /** MessageOptions uninterpretedOption */
+ uninterpretedOption?: (google.protobuf.IUninterpretedOption[]|null);
+
+ /** MessageOptions .google.api.resource */
+ ".google.api.resource"?: (google.api.IResourceDescriptor|null);
+ }
+
+ /** Represents a MessageOptions. */
+ class MessageOptions implements IMessageOptions {
+
+ /**
+ * Constructs a new MessageOptions.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.IMessageOptions);
+
+ /** MessageOptions messageSetWireFormat. */
+ public messageSetWireFormat: boolean;
+
+ /** MessageOptions noStandardDescriptorAccessor. */
+ public noStandardDescriptorAccessor: boolean;
+
+ /** MessageOptions deprecated. */
+ public deprecated: boolean;
+
+ /** MessageOptions mapEntry. */
+ public mapEntry: boolean;
+
+ /** MessageOptions uninterpretedOption. */
+ public uninterpretedOption: google.protobuf.IUninterpretedOption[];
+
+ /**
+ * Creates a new MessageOptions instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns MessageOptions instance
+ */
+ public static create(properties?: google.protobuf.IMessageOptions): google.protobuf.MessageOptions;
+
+ /**
+ * Encodes the specified MessageOptions message. Does not implicitly {@link google.protobuf.MessageOptions.verify|verify} messages.
+ * @param message MessageOptions message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.IMessageOptions, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified MessageOptions message, length delimited. Does not implicitly {@link google.protobuf.MessageOptions.verify|verify} messages.
+ * @param message MessageOptions message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.IMessageOptions, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a MessageOptions message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns MessageOptions
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.MessageOptions;
+
+ /**
+ * Decodes a MessageOptions message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns MessageOptions
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.MessageOptions;
+
+ /**
+ * Verifies a MessageOptions message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a MessageOptions message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns MessageOptions
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.MessageOptions;
+
+ /**
+ * Creates a plain object from a MessageOptions message. Also converts values to other types if specified.
+ * @param message MessageOptions
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.MessageOptions, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this MessageOptions to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for MessageOptions
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a FieldOptions. */
+ interface IFieldOptions {
+
+ /** FieldOptions ctype */
+ ctype?: (google.protobuf.FieldOptions.CType|keyof typeof google.protobuf.FieldOptions.CType|null);
+
+ /** FieldOptions packed */
+ packed?: (boolean|null);
+
+ /** FieldOptions jstype */
+ jstype?: (google.protobuf.FieldOptions.JSType|keyof typeof google.protobuf.FieldOptions.JSType|null);
+
+ /** FieldOptions lazy */
+ lazy?: (boolean|null);
+
+ /** FieldOptions unverifiedLazy */
+ unverifiedLazy?: (boolean|null);
+
+ /** FieldOptions deprecated */
+ deprecated?: (boolean|null);
+
+ /** FieldOptions weak */
+ weak?: (boolean|null);
+
+ /** FieldOptions uninterpretedOption */
+ uninterpretedOption?: (google.protobuf.IUninterpretedOption[]|null);
+
+ /** FieldOptions .google.api.fieldBehavior */
+ ".google.api.fieldBehavior"?: (google.api.FieldBehavior[]|null);
+
+ /** FieldOptions .google.api.resourceReference */
+ ".google.api.resourceReference"?: (google.api.IResourceReference|null);
+ }
+
+ /** Represents a FieldOptions. */
+ class FieldOptions implements IFieldOptions {
+
+ /**
+ * Constructs a new FieldOptions.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.IFieldOptions);
+
+ /** FieldOptions ctype. */
+ public ctype: (google.protobuf.FieldOptions.CType|keyof typeof google.protobuf.FieldOptions.CType);
+
+ /** FieldOptions packed. */
+ public packed: boolean;
+
+ /** FieldOptions jstype. */
+ public jstype: (google.protobuf.FieldOptions.JSType|keyof typeof google.protobuf.FieldOptions.JSType);
+
+ /** FieldOptions lazy. */
+ public lazy: boolean;
+
+ /** FieldOptions unverifiedLazy. */
+ public unverifiedLazy: boolean;
+
+ /** FieldOptions deprecated. */
+ public deprecated: boolean;
+
+ /** FieldOptions weak. */
+ public weak: boolean;
+
+ /** FieldOptions uninterpretedOption. */
+ public uninterpretedOption: google.protobuf.IUninterpretedOption[];
+
+ /**
+ * Creates a new FieldOptions instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns FieldOptions instance
+ */
+ public static create(properties?: google.protobuf.IFieldOptions): google.protobuf.FieldOptions;
+
+ /**
+ * Encodes the specified FieldOptions message. Does not implicitly {@link google.protobuf.FieldOptions.verify|verify} messages.
+ * @param message FieldOptions message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.IFieldOptions, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified FieldOptions message, length delimited. Does not implicitly {@link google.protobuf.FieldOptions.verify|verify} messages.
+ * @param message FieldOptions message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.IFieldOptions, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a FieldOptions message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns FieldOptions
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.FieldOptions;
+
+ /**
+ * Decodes a FieldOptions message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns FieldOptions
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.FieldOptions;
+
+ /**
+ * Verifies a FieldOptions message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a FieldOptions message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns FieldOptions
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.FieldOptions;
+
+ /**
+ * Creates a plain object from a FieldOptions message. Also converts values to other types if specified.
+ * @param message FieldOptions
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.FieldOptions, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this FieldOptions to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for FieldOptions
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace FieldOptions {
+
+ /** CType enum. */
+ enum CType {
+ STRING = 0,
+ CORD = 1,
+ STRING_PIECE = 2
+ }
+
+ /** JSType enum. */
+ enum JSType {
+ JS_NORMAL = 0,
+ JS_STRING = 1,
+ JS_NUMBER = 2
+ }
+ }
+
+ /** Properties of an OneofOptions. */
+ interface IOneofOptions {
+
+ /** OneofOptions uninterpretedOption */
+ uninterpretedOption?: (google.protobuf.IUninterpretedOption[]|null);
+ }
+
+ /** Represents an OneofOptions. */
+ class OneofOptions implements IOneofOptions {
+
+ /**
+ * Constructs a new OneofOptions.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.IOneofOptions);
+
+ /** OneofOptions uninterpretedOption. */
+ public uninterpretedOption: google.protobuf.IUninterpretedOption[];
+
+ /**
+ * Creates a new OneofOptions instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns OneofOptions instance
+ */
+ public static create(properties?: google.protobuf.IOneofOptions): google.protobuf.OneofOptions;
+
+ /**
+ * Encodes the specified OneofOptions message. Does not implicitly {@link google.protobuf.OneofOptions.verify|verify} messages.
+ * @param message OneofOptions message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.IOneofOptions, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified OneofOptions message, length delimited. Does not implicitly {@link google.protobuf.OneofOptions.verify|verify} messages.
+ * @param message OneofOptions message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.IOneofOptions, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an OneofOptions message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns OneofOptions
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.OneofOptions;
+
+ /**
+ * Decodes an OneofOptions message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns OneofOptions
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.OneofOptions;
+
+ /**
+ * Verifies an OneofOptions message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates an OneofOptions message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns OneofOptions
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.OneofOptions;
+
+ /**
+ * Creates a plain object from an OneofOptions message. Also converts values to other types if specified.
+ * @param message OneofOptions
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.OneofOptions, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this OneofOptions to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for OneofOptions
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an EnumOptions. */
+ interface IEnumOptions {
+
+ /** EnumOptions allowAlias */
+ allowAlias?: (boolean|null);
+
+ /** EnumOptions deprecated */
+ deprecated?: (boolean|null);
+
+ /** EnumOptions uninterpretedOption */
+ uninterpretedOption?: (google.protobuf.IUninterpretedOption[]|null);
+ }
+
+ /** Represents an EnumOptions. */
+ class EnumOptions implements IEnumOptions {
+
+ /**
+ * Constructs a new EnumOptions.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.IEnumOptions);
+
+ /** EnumOptions allowAlias. */
+ public allowAlias: boolean;
+
+ /** EnumOptions deprecated. */
+ public deprecated: boolean;
+
+ /** EnumOptions uninterpretedOption. */
+ public uninterpretedOption: google.protobuf.IUninterpretedOption[];
+
+ /**
+ * Creates a new EnumOptions instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns EnumOptions instance
+ */
+ public static create(properties?: google.protobuf.IEnumOptions): google.protobuf.EnumOptions;
+
+ /**
+ * Encodes the specified EnumOptions message. Does not implicitly {@link google.protobuf.EnumOptions.verify|verify} messages.
+ * @param message EnumOptions message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.IEnumOptions, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified EnumOptions message, length delimited. Does not implicitly {@link google.protobuf.EnumOptions.verify|verify} messages.
+ * @param message EnumOptions message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.IEnumOptions, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an EnumOptions message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns EnumOptions
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.EnumOptions;
+
+ /**
+ * Decodes an EnumOptions message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns EnumOptions
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.EnumOptions;
+
+ /**
+ * Verifies an EnumOptions message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates an EnumOptions message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns EnumOptions
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.EnumOptions;
+
+ /**
+ * Creates a plain object from an EnumOptions message. Also converts values to other types if specified.
+ * @param message EnumOptions
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.EnumOptions, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this EnumOptions to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for EnumOptions
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an EnumValueOptions. */
+ interface IEnumValueOptions {
+
+ /** EnumValueOptions deprecated */
+ deprecated?: (boolean|null);
+
+ /** EnumValueOptions uninterpretedOption */
+ uninterpretedOption?: (google.protobuf.IUninterpretedOption[]|null);
+ }
+
+ /** Represents an EnumValueOptions. */
+ class EnumValueOptions implements IEnumValueOptions {
+
+ /**
+ * Constructs a new EnumValueOptions.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.IEnumValueOptions);
+
+ /** EnumValueOptions deprecated. */
+ public deprecated: boolean;
+
+ /** EnumValueOptions uninterpretedOption. */
+ public uninterpretedOption: google.protobuf.IUninterpretedOption[];
+
+ /**
+ * Creates a new EnumValueOptions instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns EnumValueOptions instance
+ */
+ public static create(properties?: google.protobuf.IEnumValueOptions): google.protobuf.EnumValueOptions;
+
+ /**
+ * Encodes the specified EnumValueOptions message. Does not implicitly {@link google.protobuf.EnumValueOptions.verify|verify} messages.
+ * @param message EnumValueOptions message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.IEnumValueOptions, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified EnumValueOptions message, length delimited. Does not implicitly {@link google.protobuf.EnumValueOptions.verify|verify} messages.
+ * @param message EnumValueOptions message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.IEnumValueOptions, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an EnumValueOptions message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns EnumValueOptions
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.EnumValueOptions;
+
+ /**
+ * Decodes an EnumValueOptions message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns EnumValueOptions
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.EnumValueOptions;
+
+ /**
+ * Verifies an EnumValueOptions message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates an EnumValueOptions message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns EnumValueOptions
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.EnumValueOptions;
+
+ /**
+ * Creates a plain object from an EnumValueOptions message. Also converts values to other types if specified.
+ * @param message EnumValueOptions
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.EnumValueOptions, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this EnumValueOptions to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for EnumValueOptions
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ServiceOptions. */
+ interface IServiceOptions {
+
+ /** ServiceOptions deprecated */
+ deprecated?: (boolean|null);
+
+ /** ServiceOptions uninterpretedOption */
+ uninterpretedOption?: (google.protobuf.IUninterpretedOption[]|null);
+
+ /** ServiceOptions .google.api.defaultHost */
+ ".google.api.defaultHost"?: (string|null);
+
+ /** ServiceOptions .google.api.oauthScopes */
+ ".google.api.oauthScopes"?: (string|null);
+ }
+
+ /** Represents a ServiceOptions. */
+ class ServiceOptions implements IServiceOptions {
+
+ /**
+ * Constructs a new ServiceOptions.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.IServiceOptions);
+
+ /** ServiceOptions deprecated. */
+ public deprecated: boolean;
+
+ /** ServiceOptions uninterpretedOption. */
+ public uninterpretedOption: google.protobuf.IUninterpretedOption[];
+
+ /**
+ * Creates a new ServiceOptions instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ServiceOptions instance
+ */
+ public static create(properties?: google.protobuf.IServiceOptions): google.protobuf.ServiceOptions;
+
+ /**
+ * Encodes the specified ServiceOptions message. Does not implicitly {@link google.protobuf.ServiceOptions.verify|verify} messages.
+ * @param message ServiceOptions message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.IServiceOptions, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ServiceOptions message, length delimited. Does not implicitly {@link google.protobuf.ServiceOptions.verify|verify} messages.
+ * @param message ServiceOptions message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.IServiceOptions, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ServiceOptions message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ServiceOptions
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.ServiceOptions;
+
+ /**
+ * Decodes a ServiceOptions message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ServiceOptions
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.ServiceOptions;
+
+ /**
+ * Verifies a ServiceOptions message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ServiceOptions message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ServiceOptions
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.ServiceOptions;
+
+ /**
+ * Creates a plain object from a ServiceOptions message. Also converts values to other types if specified.
+ * @param message ServiceOptions
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.ServiceOptions, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ServiceOptions to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ServiceOptions
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a MethodOptions. */
+ interface IMethodOptions {
+
+ /** MethodOptions deprecated */
+ deprecated?: (boolean|null);
+
+ /** MethodOptions idempotencyLevel */
+ idempotencyLevel?: (google.protobuf.MethodOptions.IdempotencyLevel|keyof typeof google.protobuf.MethodOptions.IdempotencyLevel|null);
+
+ /** MethodOptions uninterpretedOption */
+ uninterpretedOption?: (google.protobuf.IUninterpretedOption[]|null);
+
+ /** MethodOptions .google.api.http */
+ ".google.api.http"?: (google.api.IHttpRule|null);
+
+ /** MethodOptions .google.api.methodSignature */
+ ".google.api.methodSignature"?: (string[]|null);
+ }
+
+ /** Represents a MethodOptions. */
+ class MethodOptions implements IMethodOptions {
+
+ /**
+ * Constructs a new MethodOptions.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.IMethodOptions);
+
+ /** MethodOptions deprecated. */
+ public deprecated: boolean;
+
+ /** MethodOptions idempotencyLevel. */
+ public idempotencyLevel: (google.protobuf.MethodOptions.IdempotencyLevel|keyof typeof google.protobuf.MethodOptions.IdempotencyLevel);
+
+ /** MethodOptions uninterpretedOption. */
+ public uninterpretedOption: google.protobuf.IUninterpretedOption[];
+
+ /**
+ * Creates a new MethodOptions instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns MethodOptions instance
+ */
+ public static create(properties?: google.protobuf.IMethodOptions): google.protobuf.MethodOptions;
+
+ /**
+ * Encodes the specified MethodOptions message. Does not implicitly {@link google.protobuf.MethodOptions.verify|verify} messages.
+ * @param message MethodOptions message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.IMethodOptions, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified MethodOptions message, length delimited. Does not implicitly {@link google.protobuf.MethodOptions.verify|verify} messages.
+ * @param message MethodOptions message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.IMethodOptions, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a MethodOptions message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns MethodOptions
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.MethodOptions;
+
+ /**
+ * Decodes a MethodOptions message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns MethodOptions
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.MethodOptions;
+
+ /**
+ * Verifies a MethodOptions message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a MethodOptions message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns MethodOptions
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.MethodOptions;
+
+ /**
+ * Creates a plain object from a MethodOptions message. Also converts values to other types if specified.
+ * @param message MethodOptions
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.MethodOptions, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this MethodOptions to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for MethodOptions
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace MethodOptions {
+
+ /** IdempotencyLevel enum. */
+ enum IdempotencyLevel {
+ IDEMPOTENCY_UNKNOWN = 0,
+ NO_SIDE_EFFECTS = 1,
+ IDEMPOTENT = 2
+ }
+ }
+
+ /** Properties of an UninterpretedOption. */
+ interface IUninterpretedOption {
+
+ /** UninterpretedOption name */
+ name?: (google.protobuf.UninterpretedOption.INamePart[]|null);
+
+ /** UninterpretedOption identifierValue */
+ identifierValue?: (string|null);
+
+ /** UninterpretedOption positiveIntValue */
+ positiveIntValue?: (number|Long|string|null);
+
+ /** UninterpretedOption negativeIntValue */
+ negativeIntValue?: (number|Long|string|null);
+
+ /** UninterpretedOption doubleValue */
+ doubleValue?: (number|null);
+
+ /** UninterpretedOption stringValue */
+ stringValue?: (Uint8Array|string|null);
+
+ /** UninterpretedOption aggregateValue */
+ aggregateValue?: (string|null);
+ }
+
+ /** Represents an UninterpretedOption. */
+ class UninterpretedOption implements IUninterpretedOption {
+
+ /**
+ * Constructs a new UninterpretedOption.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.IUninterpretedOption);
+
+ /** UninterpretedOption name. */
+ public name: google.protobuf.UninterpretedOption.INamePart[];
+
+ /** UninterpretedOption identifierValue. */
+ public identifierValue: string;
+
+ /** UninterpretedOption positiveIntValue. */
+ public positiveIntValue: (number|Long|string);
+
+ /** UninterpretedOption negativeIntValue. */
+ public negativeIntValue: (number|Long|string);
+
+ /** UninterpretedOption doubleValue. */
+ public doubleValue: number;
+
+ /** UninterpretedOption stringValue. */
+ public stringValue: (Uint8Array|string);
+
+ /** UninterpretedOption aggregateValue. */
+ public aggregateValue: string;
+
+ /**
+ * Creates a new UninterpretedOption instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns UninterpretedOption instance
+ */
+ public static create(properties?: google.protobuf.IUninterpretedOption): google.protobuf.UninterpretedOption;
+
+ /**
+ * Encodes the specified UninterpretedOption message. Does not implicitly {@link google.protobuf.UninterpretedOption.verify|verify} messages.
+ * @param message UninterpretedOption message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.IUninterpretedOption, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified UninterpretedOption message, length delimited. Does not implicitly {@link google.protobuf.UninterpretedOption.verify|verify} messages.
+ * @param message UninterpretedOption message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.IUninterpretedOption, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an UninterpretedOption message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns UninterpretedOption
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.UninterpretedOption;
+
+ /**
+ * Decodes an UninterpretedOption message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns UninterpretedOption
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.UninterpretedOption;
+
+ /**
+ * Verifies an UninterpretedOption message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates an UninterpretedOption message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns UninterpretedOption
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.UninterpretedOption;
+
+ /**
+ * Creates a plain object from an UninterpretedOption message. Also converts values to other types if specified.
+ * @param message UninterpretedOption
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.UninterpretedOption, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this UninterpretedOption to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for UninterpretedOption
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace UninterpretedOption {
+
+ /** Properties of a NamePart. */
+ interface INamePart {
+
+ /** NamePart namePart */
+ namePart: string;
+
+ /** NamePart isExtension */
+ isExtension: boolean;
+ }
+
+ /** Represents a NamePart. */
+ class NamePart implements INamePart {
+
+ /**
+ * Constructs a new NamePart.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.UninterpretedOption.INamePart);
+
+ /** NamePart namePart. */
+ public namePart: string;
+
+ /** NamePart isExtension. */
+ public isExtension: boolean;
+
+ /**
+ * Creates a new NamePart instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns NamePart instance
+ */
+ public static create(properties?: google.protobuf.UninterpretedOption.INamePart): google.protobuf.UninterpretedOption.NamePart;
+
+ /**
+ * Encodes the specified NamePart message. Does not implicitly {@link google.protobuf.UninterpretedOption.NamePart.verify|verify} messages.
+ * @param message NamePart message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.UninterpretedOption.INamePart, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified NamePart message, length delimited. Does not implicitly {@link google.protobuf.UninterpretedOption.NamePart.verify|verify} messages.
+ * @param message NamePart message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.UninterpretedOption.INamePart, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a NamePart message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns NamePart
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.UninterpretedOption.NamePart;
+
+ /**
+ * Decodes a NamePart message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns NamePart
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.UninterpretedOption.NamePart;
+
+ /**
+ * Verifies a NamePart message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a NamePart message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns NamePart
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.UninterpretedOption.NamePart;
+
+ /**
+ * Creates a plain object from a NamePart message. Also converts values to other types if specified.
+ * @param message NamePart
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.UninterpretedOption.NamePart, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this NamePart to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for NamePart
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+ }
+
+ /** Properties of a SourceCodeInfo. */
+ interface ISourceCodeInfo {
+
+ /** SourceCodeInfo location */
+ location?: (google.protobuf.SourceCodeInfo.ILocation[]|null);
+ }
+
+ /** Represents a SourceCodeInfo. */
+ class SourceCodeInfo implements ISourceCodeInfo {
+
+ /**
+ * Constructs a new SourceCodeInfo.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.ISourceCodeInfo);
+
+ /** SourceCodeInfo location. */
+ public location: google.protobuf.SourceCodeInfo.ILocation[];
+
+ /**
+ * Creates a new SourceCodeInfo instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns SourceCodeInfo instance
+ */
+ public static create(properties?: google.protobuf.ISourceCodeInfo): google.protobuf.SourceCodeInfo;
+
+ /**
+ * Encodes the specified SourceCodeInfo message. Does not implicitly {@link google.protobuf.SourceCodeInfo.verify|verify} messages.
+ * @param message SourceCodeInfo message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.ISourceCodeInfo, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified SourceCodeInfo message, length delimited. Does not implicitly {@link google.protobuf.SourceCodeInfo.verify|verify} messages.
+ * @param message SourceCodeInfo message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.ISourceCodeInfo, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a SourceCodeInfo message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns SourceCodeInfo
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.SourceCodeInfo;
+
+ /**
+ * Decodes a SourceCodeInfo message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns SourceCodeInfo
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.SourceCodeInfo;
+
+ /**
+ * Verifies a SourceCodeInfo message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a SourceCodeInfo message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns SourceCodeInfo
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.SourceCodeInfo;
+
+ /**
+ * Creates a plain object from a SourceCodeInfo message. Also converts values to other types if specified.
+ * @param message SourceCodeInfo
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.SourceCodeInfo, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this SourceCodeInfo to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for SourceCodeInfo
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace SourceCodeInfo {
+
+ /** Properties of a Location. */
+ interface ILocation {
+
+ /** Location path */
+ path?: (number[]|null);
+
+ /** Location span */
+ span?: (number[]|null);
+
+ /** Location leadingComments */
+ leadingComments?: (string|null);
+
+ /** Location trailingComments */
+ trailingComments?: (string|null);
+
+ /** Location leadingDetachedComments */
+ leadingDetachedComments?: (string[]|null);
+ }
+
+ /** Represents a Location. */
+ class Location implements ILocation {
+
+ /**
+ * Constructs a new Location.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.SourceCodeInfo.ILocation);
+
+ /** Location path. */
+ public path: number[];
+
+ /** Location span. */
+ public span: number[];
+
+ /** Location leadingComments. */
+ public leadingComments: string;
+
+ /** Location trailingComments. */
+ public trailingComments: string;
+
+ /** Location leadingDetachedComments. */
+ public leadingDetachedComments: string[];
+
+ /**
+ * Creates a new Location instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Location instance
+ */
+ public static create(properties?: google.protobuf.SourceCodeInfo.ILocation): google.protobuf.SourceCodeInfo.Location;
+
+ /**
+ * Encodes the specified Location message. Does not implicitly {@link google.protobuf.SourceCodeInfo.Location.verify|verify} messages.
+ * @param message Location message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.SourceCodeInfo.ILocation, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Location message, length delimited. Does not implicitly {@link google.protobuf.SourceCodeInfo.Location.verify|verify} messages.
+ * @param message Location message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.SourceCodeInfo.ILocation, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Location message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Location
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.SourceCodeInfo.Location;
+
+ /**
+ * Decodes a Location message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Location
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.SourceCodeInfo.Location;
+
+ /**
+ * Verifies a Location message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a Location message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Location
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.SourceCodeInfo.Location;
+
+ /**
+ * Creates a plain object from a Location message. Also converts values to other types if specified.
+ * @param message Location
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.SourceCodeInfo.Location, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Location to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Location
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+ }
+
+ /** Properties of a GeneratedCodeInfo. */
+ interface IGeneratedCodeInfo {
+
+ /** GeneratedCodeInfo annotation */
+ annotation?: (google.protobuf.GeneratedCodeInfo.IAnnotation[]|null);
+ }
+
+ /** Represents a GeneratedCodeInfo. */
+ class GeneratedCodeInfo implements IGeneratedCodeInfo {
+
+ /**
+ * Constructs a new GeneratedCodeInfo.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.IGeneratedCodeInfo);
+
+ /** GeneratedCodeInfo annotation. */
+ public annotation: google.protobuf.GeneratedCodeInfo.IAnnotation[];
+
+ /**
+ * Creates a new GeneratedCodeInfo instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns GeneratedCodeInfo instance
+ */
+ public static create(properties?: google.protobuf.IGeneratedCodeInfo): google.protobuf.GeneratedCodeInfo;
+
+ /**
+ * Encodes the specified GeneratedCodeInfo message. Does not implicitly {@link google.protobuf.GeneratedCodeInfo.verify|verify} messages.
+ * @param message GeneratedCodeInfo message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.IGeneratedCodeInfo, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified GeneratedCodeInfo message, length delimited. Does not implicitly {@link google.protobuf.GeneratedCodeInfo.verify|verify} messages.
+ * @param message GeneratedCodeInfo message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.IGeneratedCodeInfo, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a GeneratedCodeInfo message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns GeneratedCodeInfo
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.GeneratedCodeInfo;
+
+ /**
+ * Decodes a GeneratedCodeInfo message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns GeneratedCodeInfo
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.GeneratedCodeInfo;
+
+ /**
+ * Verifies a GeneratedCodeInfo message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a GeneratedCodeInfo message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns GeneratedCodeInfo
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.GeneratedCodeInfo;
+
+ /**
+ * Creates a plain object from a GeneratedCodeInfo message. Also converts values to other types if specified.
+ * @param message GeneratedCodeInfo
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.GeneratedCodeInfo, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this GeneratedCodeInfo to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for GeneratedCodeInfo
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace GeneratedCodeInfo {
+
+ /** Properties of an Annotation. */
+ interface IAnnotation {
+
+ /** Annotation path */
+ path?: (number[]|null);
+
+ /** Annotation sourceFile */
+ sourceFile?: (string|null);
+
+ /** Annotation begin */
+ begin?: (number|null);
+
+ /** Annotation end */
+ end?: (number|null);
+
+ /** Annotation semantic */
+ semantic?: (google.protobuf.GeneratedCodeInfo.Annotation.Semantic|keyof typeof google.protobuf.GeneratedCodeInfo.Annotation.Semantic|null);
+ }
+
+ /** Represents an Annotation. */
+ class Annotation implements IAnnotation {
+
+ /**
+ * Constructs a new Annotation.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.GeneratedCodeInfo.IAnnotation);
+
+ /** Annotation path. */
+ public path: number[];
+
+ /** Annotation sourceFile. */
+ public sourceFile: string;
+
+ /** Annotation begin. */
+ public begin: number;
+
+ /** Annotation end. */
+ public end: number;
+
+ /** Annotation semantic. */
+ public semantic: (google.protobuf.GeneratedCodeInfo.Annotation.Semantic|keyof typeof google.protobuf.GeneratedCodeInfo.Annotation.Semantic);
+
+ /**
+ * Creates a new Annotation instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Annotation instance
+ */
+ public static create(properties?: google.protobuf.GeneratedCodeInfo.IAnnotation): google.protobuf.GeneratedCodeInfo.Annotation;
+
+ /**
+ * Encodes the specified Annotation message. Does not implicitly {@link google.protobuf.GeneratedCodeInfo.Annotation.verify|verify} messages.
+ * @param message Annotation message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.GeneratedCodeInfo.IAnnotation, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Annotation message, length delimited. Does not implicitly {@link google.protobuf.GeneratedCodeInfo.Annotation.verify|verify} messages.
+ * @param message Annotation message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.GeneratedCodeInfo.IAnnotation, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an Annotation message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Annotation
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.GeneratedCodeInfo.Annotation;
+
+ /**
+ * Decodes an Annotation message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Annotation
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.GeneratedCodeInfo.Annotation;
+
+ /**
+ * Verifies an Annotation message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates an Annotation message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Annotation
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.GeneratedCodeInfo.Annotation;
+
+ /**
+ * Creates a plain object from an Annotation message. Also converts values to other types if specified.
+ * @param message Annotation
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.GeneratedCodeInfo.Annotation, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Annotation to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Annotation
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace Annotation {
+
+ /** Semantic enum. */
+ enum Semantic {
+ NONE = 0,
+ SET = 1,
+ ALIAS = 2
+ }
+ }
+ }
+
+ /** Properties of a FieldMask. */
+ interface IFieldMask {
+
+ /** FieldMask paths */
+ paths?: (string[]|null);
+ }
+
+ /** Represents a FieldMask. */
+ class FieldMask implements IFieldMask {
+
+ /**
+ * Constructs a new FieldMask.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.IFieldMask);
+
+ /** FieldMask paths. */
+ public paths: string[];
+
+ /**
+ * Creates a new FieldMask instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns FieldMask instance
+ */
+ public static create(properties?: google.protobuf.IFieldMask): google.protobuf.FieldMask;
+
+ /**
+ * Encodes the specified FieldMask message. Does not implicitly {@link google.protobuf.FieldMask.verify|verify} messages.
+ * @param message FieldMask message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.IFieldMask, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified FieldMask message, length delimited. Does not implicitly {@link google.protobuf.FieldMask.verify|verify} messages.
+ * @param message FieldMask message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.IFieldMask, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a FieldMask message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns FieldMask
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.FieldMask;
+
+ /**
+ * Decodes a FieldMask message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns FieldMask
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.FieldMask;
+
+ /**
+ * Verifies a FieldMask message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a FieldMask message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns FieldMask
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.FieldMask;
+
+ /**
+ * Creates a plain object from a FieldMask message. Also converts values to other types if specified.
+ * @param message FieldMask
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.FieldMask, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this FieldMask to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for FieldMask
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a Duration. */
+ interface IDuration {
+
+ /** Duration seconds */
+ seconds?: (number|Long|string|null);
+
+ /** Duration nanos */
+ nanos?: (number|null);
+ }
+
+ /** Represents a Duration. */
+ class Duration implements IDuration {
+
+ /**
+ * Constructs a new Duration.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.IDuration);
+
+ /** Duration seconds. */
+ public seconds: (number|Long|string);
+
+ /** Duration nanos. */
+ public nanos: number;
+
+ /**
+ * Creates a new Duration instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Duration instance
+ */
+ public static create(properties?: google.protobuf.IDuration): google.protobuf.Duration;
+
+ /**
+ * Encodes the specified Duration message. Does not implicitly {@link google.protobuf.Duration.verify|verify} messages.
+ * @param message Duration message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.IDuration, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Duration message, length delimited. Does not implicitly {@link google.protobuf.Duration.verify|verify} messages.
+ * @param message Duration message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.IDuration, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Duration message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Duration
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.Duration;
+
+ /**
+ * Decodes a Duration message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Duration
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.Duration;
+
+ /**
+ * Verifies a Duration message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a Duration message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Duration
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.Duration;
+
+ /**
+ * Creates a plain object from a Duration message. Also converts values to other types if specified.
+ * @param message Duration
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.Duration, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Duration to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Duration
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an Empty. */
+ interface IEmpty {
+ }
+
+ /** Represents an Empty. */
+ class Empty implements IEmpty {
+
+ /**
+ * Constructs a new Empty.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.IEmpty);
+
+ /**
+ * Creates a new Empty instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Empty instance
+ */
+ public static create(properties?: google.protobuf.IEmpty): google.protobuf.Empty;
+
+ /**
+ * Encodes the specified Empty message. Does not implicitly {@link google.protobuf.Empty.verify|verify} messages.
+ * @param message Empty message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.IEmpty, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Empty message, length delimited. Does not implicitly {@link google.protobuf.Empty.verify|verify} messages.
+ * @param message Empty message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.IEmpty, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an Empty message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Empty
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.Empty;
+
+ /**
+ * Decodes an Empty message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Empty
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.Empty;
+
+ /**
+ * Verifies an Empty message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates an Empty message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Empty
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.Empty;
+
+ /**
+ * Creates a plain object from an Empty message. Also converts values to other types if specified.
+ * @param message Empty
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.Empty, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Empty to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Empty
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a DoubleValue. */
+ interface IDoubleValue {
+
+ /** DoubleValue value */
+ value?: (number|null);
+ }
+
+ /** Represents a DoubleValue. */
+ class DoubleValue implements IDoubleValue {
+
+ /**
+ * Constructs a new DoubleValue.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.IDoubleValue);
+
+ /** DoubleValue value. */
+ public value: number;
+
+ /**
+ * Creates a new DoubleValue instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns DoubleValue instance
+ */
+ public static create(properties?: google.protobuf.IDoubleValue): google.protobuf.DoubleValue;
+
+ /**
+ * Encodes the specified DoubleValue message. Does not implicitly {@link google.protobuf.DoubleValue.verify|verify} messages.
+ * @param message DoubleValue message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.IDoubleValue, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified DoubleValue message, length delimited. Does not implicitly {@link google.protobuf.DoubleValue.verify|verify} messages.
+ * @param message DoubleValue message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.IDoubleValue, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a DoubleValue message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns DoubleValue
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.DoubleValue;
+
+ /**
+ * Decodes a DoubleValue message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns DoubleValue
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.DoubleValue;
+
+ /**
+ * Verifies a DoubleValue message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a DoubleValue message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns DoubleValue
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.DoubleValue;
+
+ /**
+ * Creates a plain object from a DoubleValue message. Also converts values to other types if specified.
+ * @param message DoubleValue
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.DoubleValue, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this DoubleValue to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for DoubleValue
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a FloatValue. */
+ interface IFloatValue {
+
+ /** FloatValue value */
+ value?: (number|null);
+ }
+
+ /** Represents a FloatValue. */
+ class FloatValue implements IFloatValue {
+
+ /**
+ * Constructs a new FloatValue.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.IFloatValue);
+
+ /** FloatValue value. */
+ public value: number;
+
+ /**
+ * Creates a new FloatValue instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns FloatValue instance
+ */
+ public static create(properties?: google.protobuf.IFloatValue): google.protobuf.FloatValue;
+
+ /**
+ * Encodes the specified FloatValue message. Does not implicitly {@link google.protobuf.FloatValue.verify|verify} messages.
+ * @param message FloatValue message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.IFloatValue, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified FloatValue message, length delimited. Does not implicitly {@link google.protobuf.FloatValue.verify|verify} messages.
+ * @param message FloatValue message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.IFloatValue, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a FloatValue message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns FloatValue
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.FloatValue;
+
+ /**
+ * Decodes a FloatValue message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns FloatValue
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.FloatValue;
+
+ /**
+ * Verifies a FloatValue message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a FloatValue message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns FloatValue
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.FloatValue;
+
+ /**
+ * Creates a plain object from a FloatValue message. Also converts values to other types if specified.
+ * @param message FloatValue
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.FloatValue, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this FloatValue to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for FloatValue
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an Int64Value. */
+ interface IInt64Value {
+
+ /** Int64Value value */
+ value?: (number|Long|string|null);
+ }
+
+ /** Represents an Int64Value. */
+ class Int64Value implements IInt64Value {
+
+ /**
+ * Constructs a new Int64Value.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.IInt64Value);
+
+ /** Int64Value value. */
+ public value: (number|Long|string);
+
+ /**
+ * Creates a new Int64Value instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Int64Value instance
+ */
+ public static create(properties?: google.protobuf.IInt64Value): google.protobuf.Int64Value;
+
+ /**
+ * Encodes the specified Int64Value message. Does not implicitly {@link google.protobuf.Int64Value.verify|verify} messages.
+ * @param message Int64Value message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.IInt64Value, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Int64Value message, length delimited. Does not implicitly {@link google.protobuf.Int64Value.verify|verify} messages.
+ * @param message Int64Value message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.IInt64Value, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an Int64Value message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Int64Value
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.Int64Value;
+
+ /**
+ * Decodes an Int64Value message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Int64Value
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.Int64Value;
+
+ /**
+ * Verifies an Int64Value message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates an Int64Value message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Int64Value
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.Int64Value;
+
+ /**
+ * Creates a plain object from an Int64Value message. Also converts values to other types if specified.
+ * @param message Int64Value
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.Int64Value, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Int64Value to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Int64Value
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a UInt64Value. */
+ interface IUInt64Value {
+
+ /** UInt64Value value */
+ value?: (number|Long|string|null);
+ }
+
+ /** Represents a UInt64Value. */
+ class UInt64Value implements IUInt64Value {
+
+ /**
+ * Constructs a new UInt64Value.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.IUInt64Value);
+
+ /** UInt64Value value. */
+ public value: (number|Long|string);
+
+ /**
+ * Creates a new UInt64Value instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns UInt64Value instance
+ */
+ public static create(properties?: google.protobuf.IUInt64Value): google.protobuf.UInt64Value;
+
+ /**
+ * Encodes the specified UInt64Value message. Does not implicitly {@link google.protobuf.UInt64Value.verify|verify} messages.
+ * @param message UInt64Value message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.IUInt64Value, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified UInt64Value message, length delimited. Does not implicitly {@link google.protobuf.UInt64Value.verify|verify} messages.
+ * @param message UInt64Value message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.IUInt64Value, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a UInt64Value message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns UInt64Value
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.UInt64Value;
+
+ /**
+ * Decodes a UInt64Value message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns UInt64Value
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.UInt64Value;
+
+ /**
+ * Verifies a UInt64Value message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a UInt64Value message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns UInt64Value
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.UInt64Value;
+
+ /**
+ * Creates a plain object from a UInt64Value message. Also converts values to other types if specified.
+ * @param message UInt64Value
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.UInt64Value, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this UInt64Value to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for UInt64Value
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an Int32Value. */
+ interface IInt32Value {
+
+ /** Int32Value value */
+ value?: (number|null);
+ }
+
+ /** Represents an Int32Value. */
+ class Int32Value implements IInt32Value {
+
+ /**
+ * Constructs a new Int32Value.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.IInt32Value);
+
+ /** Int32Value value. */
+ public value: number;
+
+ /**
+ * Creates a new Int32Value instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Int32Value instance
+ */
+ public static create(properties?: google.protobuf.IInt32Value): google.protobuf.Int32Value;
+
+ /**
+ * Encodes the specified Int32Value message. Does not implicitly {@link google.protobuf.Int32Value.verify|verify} messages.
+ * @param message Int32Value message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.IInt32Value, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Int32Value message, length delimited. Does not implicitly {@link google.protobuf.Int32Value.verify|verify} messages.
+ * @param message Int32Value message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.IInt32Value, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an Int32Value message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Int32Value
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.Int32Value;
+
+ /**
+ * Decodes an Int32Value message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Int32Value
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.Int32Value;
+
+ /**
+ * Verifies an Int32Value message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates an Int32Value message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Int32Value
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.Int32Value;
+
+ /**
+ * Creates a plain object from an Int32Value message. Also converts values to other types if specified.
+ * @param message Int32Value
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.Int32Value, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Int32Value to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Int32Value
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a UInt32Value. */
+ interface IUInt32Value {
+
+ /** UInt32Value value */
+ value?: (number|null);
+ }
+
+ /** Represents a UInt32Value. */
+ class UInt32Value implements IUInt32Value {
+
+ /**
+ * Constructs a new UInt32Value.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.IUInt32Value);
+
+ /** UInt32Value value. */
+ public value: number;
+
+ /**
+ * Creates a new UInt32Value instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns UInt32Value instance
+ */
+ public static create(properties?: google.protobuf.IUInt32Value): google.protobuf.UInt32Value;
+
+ /**
+ * Encodes the specified UInt32Value message. Does not implicitly {@link google.protobuf.UInt32Value.verify|verify} messages.
+ * @param message UInt32Value message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.IUInt32Value, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified UInt32Value message, length delimited. Does not implicitly {@link google.protobuf.UInt32Value.verify|verify} messages.
+ * @param message UInt32Value message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.IUInt32Value, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a UInt32Value message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns UInt32Value
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.UInt32Value;
+
+ /**
+ * Decodes a UInt32Value message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns UInt32Value
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.UInt32Value;
+
+ /**
+ * Verifies a UInt32Value message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a UInt32Value message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns UInt32Value
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.UInt32Value;
+
+ /**
+ * Creates a plain object from a UInt32Value message. Also converts values to other types if specified.
+ * @param message UInt32Value
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.UInt32Value, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this UInt32Value to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for UInt32Value
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a BoolValue. */
+ interface IBoolValue {
+
+ /** BoolValue value */
+ value?: (boolean|null);
+ }
+
+ /** Represents a BoolValue. */
+ class BoolValue implements IBoolValue {
+
+ /**
+ * Constructs a new BoolValue.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.IBoolValue);
+
+ /** BoolValue value. */
+ public value: boolean;
+
+ /**
+ * Creates a new BoolValue instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns BoolValue instance
+ */
+ public static create(properties?: google.protobuf.IBoolValue): google.protobuf.BoolValue;
+
+ /**
+ * Encodes the specified BoolValue message. Does not implicitly {@link google.protobuf.BoolValue.verify|verify} messages.
+ * @param message BoolValue message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.IBoolValue, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified BoolValue message, length delimited. Does not implicitly {@link google.protobuf.BoolValue.verify|verify} messages.
+ * @param message BoolValue message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.IBoolValue, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a BoolValue message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns BoolValue
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.BoolValue;
+
+ /**
+ * Decodes a BoolValue message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns BoolValue
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.BoolValue;
+
+ /**
+ * Verifies a BoolValue message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a BoolValue message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns BoolValue
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.BoolValue;
+
+ /**
+ * Creates a plain object from a BoolValue message. Also converts values to other types if specified.
+ * @param message BoolValue
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.BoolValue, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this BoolValue to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for BoolValue
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a StringValue. */
+ interface IStringValue {
+
+ /** StringValue value */
+ value?: (string|null);
+ }
+
+ /** Represents a StringValue. */
+ class StringValue implements IStringValue {
+
+ /**
+ * Constructs a new StringValue.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.IStringValue);
+
+ /** StringValue value. */
+ public value: string;
+
+ /**
+ * Creates a new StringValue instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns StringValue instance
+ */
+ public static create(properties?: google.protobuf.IStringValue): google.protobuf.StringValue;
+
+ /**
+ * Encodes the specified StringValue message. Does not implicitly {@link google.protobuf.StringValue.verify|verify} messages.
+ * @param message StringValue message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.IStringValue, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified StringValue message, length delimited. Does not implicitly {@link google.protobuf.StringValue.verify|verify} messages.
+ * @param message StringValue message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.IStringValue, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a StringValue message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns StringValue
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.StringValue;
+
+ /**
+ * Decodes a StringValue message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns StringValue
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.StringValue;
+
+ /**
+ * Verifies a StringValue message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a StringValue message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns StringValue
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.StringValue;
+
+ /**
+ * Creates a plain object from a StringValue message. Also converts values to other types if specified.
+ * @param message StringValue
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.StringValue, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this StringValue to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for StringValue
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a BytesValue. */
+ interface IBytesValue {
+
+ /** BytesValue value */
+ value?: (Uint8Array|string|null);
+ }
+
+ /** Represents a BytesValue. */
+ class BytesValue implements IBytesValue {
+
+ /**
+ * Constructs a new BytesValue.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.IBytesValue);
+
+ /** BytesValue value. */
+ public value: (Uint8Array|string);
+
+ /**
+ * Creates a new BytesValue instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns BytesValue instance
+ */
+ public static create(properties?: google.protobuf.IBytesValue): google.protobuf.BytesValue;
+
+ /**
+ * Encodes the specified BytesValue message. Does not implicitly {@link google.protobuf.BytesValue.verify|verify} messages.
+ * @param message BytesValue message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.IBytesValue, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified BytesValue message, length delimited. Does not implicitly {@link google.protobuf.BytesValue.verify|verify} messages.
+ * @param message BytesValue message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.IBytesValue, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a BytesValue message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns BytesValue
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.BytesValue;
+
+ /**
+ * Decodes a BytesValue message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns BytesValue
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.BytesValue;
+
+ /**
+ * Verifies a BytesValue message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a BytesValue message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns BytesValue
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.BytesValue;
+
+ /**
+ * Creates a plain object from a BytesValue message. Also converts values to other types if specified.
+ * @param message BytesValue
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.BytesValue, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this BytesValue to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for BytesValue
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+ }
+
+ /** Namespace iam. */
+ namespace iam {
+
+ /** Namespace v1. */
+ namespace v1 {
+
+ /** Represents a IAMPolicy */
+ class IAMPolicy extends $protobuf.rpc.Service {
+
+ /**
+ * Constructs a new IAMPolicy service.
+ * @param rpcImpl RPC implementation
+ * @param [requestDelimited=false] Whether requests are length-delimited
+ * @param [responseDelimited=false] Whether responses are length-delimited
+ */
+ constructor(rpcImpl: $protobuf.RPCImpl, requestDelimited?: boolean, responseDelimited?: boolean);
+
+ /**
+ * Creates new IAMPolicy service using the specified rpc implementation.
+ * @param rpcImpl RPC implementation
+ * @param [requestDelimited=false] Whether requests are length-delimited
+ * @param [responseDelimited=false] Whether responses are length-delimited
+ * @returns RPC service. Useful where requests and/or responses are streamed.
+ */
+ public static create(rpcImpl: $protobuf.RPCImpl, requestDelimited?: boolean, responseDelimited?: boolean): IAMPolicy;
+
+ /**
+ * Calls SetIamPolicy.
+ * @param request SetIamPolicyRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Policy
+ */
+ public setIamPolicy(request: google.iam.v1.ISetIamPolicyRequest, callback: google.iam.v1.IAMPolicy.SetIamPolicyCallback): void;
+
+ /**
+ * Calls SetIamPolicy.
+ * @param request SetIamPolicyRequest message or plain object
+ * @returns Promise
+ */
+ public setIamPolicy(request: google.iam.v1.ISetIamPolicyRequest): Promise;
+
+ /**
+ * Calls GetIamPolicy.
+ * @param request GetIamPolicyRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Policy
+ */
+ public getIamPolicy(request: google.iam.v1.IGetIamPolicyRequest, callback: google.iam.v1.IAMPolicy.GetIamPolicyCallback): void;
+
+ /**
+ * Calls GetIamPolicy.
+ * @param request GetIamPolicyRequest message or plain object
+ * @returns Promise
+ */
+ public getIamPolicy(request: google.iam.v1.IGetIamPolicyRequest): Promise;
+
+ /**
+ * Calls TestIamPermissions.
+ * @param request TestIamPermissionsRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and TestIamPermissionsResponse
+ */
+ public testIamPermissions(request: google.iam.v1.ITestIamPermissionsRequest, callback: google.iam.v1.IAMPolicy.TestIamPermissionsCallback): void;
+
+ /**
+ * Calls TestIamPermissions.
+ * @param request TestIamPermissionsRequest message or plain object
+ * @returns Promise
+ */
+ public testIamPermissions(request: google.iam.v1.ITestIamPermissionsRequest): Promise;
+ }
+
+ namespace IAMPolicy {
+
+ /**
+ * Callback as used by {@link google.iam.v1.IAMPolicy|setIamPolicy}.
+ * @param error Error, if any
+ * @param [response] Policy
+ */
+ type SetIamPolicyCallback = (error: (Error|null), response?: google.iam.v1.Policy) => void;
+
+ /**
+ * Callback as used by {@link google.iam.v1.IAMPolicy|getIamPolicy}.
+ * @param error Error, if any
+ * @param [response] Policy
+ */
+ type GetIamPolicyCallback = (error: (Error|null), response?: google.iam.v1.Policy) => void;
+
+ /**
+ * Callback as used by {@link google.iam.v1.IAMPolicy|testIamPermissions}.
+ * @param error Error, if any
+ * @param [response] TestIamPermissionsResponse
+ */
+ type TestIamPermissionsCallback = (error: (Error|null), response?: google.iam.v1.TestIamPermissionsResponse) => void;
+ }
+
+ /** Properties of a SetIamPolicyRequest. */
+ interface ISetIamPolicyRequest {
+
+ /** SetIamPolicyRequest resource */
+ resource?: (string|null);
+
+ /** SetIamPolicyRequest policy */
+ policy?: (google.iam.v1.IPolicy|null);
+
+ /** SetIamPolicyRequest updateMask */
+ updateMask?: (google.protobuf.IFieldMask|null);
+ }
+
+ /** Represents a SetIamPolicyRequest. */
+ class SetIamPolicyRequest implements ISetIamPolicyRequest {
+
+ /**
+ * Constructs a new SetIamPolicyRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.iam.v1.ISetIamPolicyRequest);
+
+ /** SetIamPolicyRequest resource. */
+ public resource: string;
+
+ /** SetIamPolicyRequest policy. */
+ public policy?: (google.iam.v1.IPolicy|null);
+
+ /** SetIamPolicyRequest updateMask. */
+ public updateMask?: (google.protobuf.IFieldMask|null);
+
+ /**
+ * Creates a new SetIamPolicyRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns SetIamPolicyRequest instance
+ */
+ public static create(properties?: google.iam.v1.ISetIamPolicyRequest): google.iam.v1.SetIamPolicyRequest;
+
+ /**
+ * Encodes the specified SetIamPolicyRequest message. Does not implicitly {@link google.iam.v1.SetIamPolicyRequest.verify|verify} messages.
+ * @param message SetIamPolicyRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.iam.v1.ISetIamPolicyRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified SetIamPolicyRequest message, length delimited. Does not implicitly {@link google.iam.v1.SetIamPolicyRequest.verify|verify} messages.
+ * @param message SetIamPolicyRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.iam.v1.ISetIamPolicyRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a SetIamPolicyRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns SetIamPolicyRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.iam.v1.SetIamPolicyRequest;
+
+ /**
+ * Decodes a SetIamPolicyRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns SetIamPolicyRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.iam.v1.SetIamPolicyRequest;
+
+ /**
+ * Verifies a SetIamPolicyRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a SetIamPolicyRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns SetIamPolicyRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.iam.v1.SetIamPolicyRequest;
+
+ /**
+ * Creates a plain object from a SetIamPolicyRequest message. Also converts values to other types if specified.
+ * @param message SetIamPolicyRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.iam.v1.SetIamPolicyRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this SetIamPolicyRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for SetIamPolicyRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a GetIamPolicyRequest. */
+ interface IGetIamPolicyRequest {
+
+ /** GetIamPolicyRequest resource */
+ resource?: (string|null);
+
+ /** GetIamPolicyRequest options */
+ options?: (google.iam.v1.IGetPolicyOptions|null);
+ }
+
+ /** Represents a GetIamPolicyRequest. */
+ class GetIamPolicyRequest implements IGetIamPolicyRequest {
+
+ /**
+ * Constructs a new GetIamPolicyRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.iam.v1.IGetIamPolicyRequest);
+
+ /** GetIamPolicyRequest resource. */
+ public resource: string;
+
+ /** GetIamPolicyRequest options. */
+ public options?: (google.iam.v1.IGetPolicyOptions|null);
+
+ /**
+ * Creates a new GetIamPolicyRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns GetIamPolicyRequest instance
+ */
+ public static create(properties?: google.iam.v1.IGetIamPolicyRequest): google.iam.v1.GetIamPolicyRequest;
+
+ /**
+ * Encodes the specified GetIamPolicyRequest message. Does not implicitly {@link google.iam.v1.GetIamPolicyRequest.verify|verify} messages.
+ * @param message GetIamPolicyRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.iam.v1.IGetIamPolicyRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified GetIamPolicyRequest message, length delimited. Does not implicitly {@link google.iam.v1.GetIamPolicyRequest.verify|verify} messages.
+ * @param message GetIamPolicyRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.iam.v1.IGetIamPolicyRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a GetIamPolicyRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns GetIamPolicyRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.iam.v1.GetIamPolicyRequest;
+
+ /**
+ * Decodes a GetIamPolicyRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns GetIamPolicyRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.iam.v1.GetIamPolicyRequest;
+
+ /**
+ * Verifies a GetIamPolicyRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a GetIamPolicyRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns GetIamPolicyRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.iam.v1.GetIamPolicyRequest;
+
+ /**
+ * Creates a plain object from a GetIamPolicyRequest message. Also converts values to other types if specified.
+ * @param message GetIamPolicyRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.iam.v1.GetIamPolicyRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this GetIamPolicyRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for GetIamPolicyRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a TestIamPermissionsRequest. */
+ interface ITestIamPermissionsRequest {
+
+ /** TestIamPermissionsRequest resource */
+ resource?: (string|null);
+
+ /** TestIamPermissionsRequest permissions */
+ permissions?: (string[]|null);
+ }
+
+ /** Represents a TestIamPermissionsRequest. */
+ class TestIamPermissionsRequest implements ITestIamPermissionsRequest {
+
+ /**
+ * Constructs a new TestIamPermissionsRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.iam.v1.ITestIamPermissionsRequest);
+
+ /** TestIamPermissionsRequest resource. */
+ public resource: string;
+
+ /** TestIamPermissionsRequest permissions. */
+ public permissions: string[];
+
+ /**
+ * Creates a new TestIamPermissionsRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns TestIamPermissionsRequest instance
+ */
+ public static create(properties?: google.iam.v1.ITestIamPermissionsRequest): google.iam.v1.TestIamPermissionsRequest;
+
+ /**
+ * Encodes the specified TestIamPermissionsRequest message. Does not implicitly {@link google.iam.v1.TestIamPermissionsRequest.verify|verify} messages.
+ * @param message TestIamPermissionsRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.iam.v1.ITestIamPermissionsRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified TestIamPermissionsRequest message, length delimited. Does not implicitly {@link google.iam.v1.TestIamPermissionsRequest.verify|verify} messages.
+ * @param message TestIamPermissionsRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.iam.v1.ITestIamPermissionsRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a TestIamPermissionsRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns TestIamPermissionsRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.iam.v1.TestIamPermissionsRequest;
+
+ /**
+ * Decodes a TestIamPermissionsRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns TestIamPermissionsRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.iam.v1.TestIamPermissionsRequest;
+
+ /**
+ * Verifies a TestIamPermissionsRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a TestIamPermissionsRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns TestIamPermissionsRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.iam.v1.TestIamPermissionsRequest;
+
+ /**
+ * Creates a plain object from a TestIamPermissionsRequest message. Also converts values to other types if specified.
+ * @param message TestIamPermissionsRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.iam.v1.TestIamPermissionsRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this TestIamPermissionsRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for TestIamPermissionsRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a TestIamPermissionsResponse. */
+ interface ITestIamPermissionsResponse {
+
+ /** TestIamPermissionsResponse permissions */
+ permissions?: (string[]|null);
+ }
+
+ /** Represents a TestIamPermissionsResponse. */
+ class TestIamPermissionsResponse implements ITestIamPermissionsResponse {
+
+ /**
+ * Constructs a new TestIamPermissionsResponse.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.iam.v1.ITestIamPermissionsResponse);
+
+ /** TestIamPermissionsResponse permissions. */
+ public permissions: string[];
+
+ /**
+ * Creates a new TestIamPermissionsResponse instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns TestIamPermissionsResponse instance
+ */
+ public static create(properties?: google.iam.v1.ITestIamPermissionsResponse): google.iam.v1.TestIamPermissionsResponse;
+
+ /**
+ * Encodes the specified TestIamPermissionsResponse message. Does not implicitly {@link google.iam.v1.TestIamPermissionsResponse.verify|verify} messages.
+ * @param message TestIamPermissionsResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.iam.v1.ITestIamPermissionsResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified TestIamPermissionsResponse message, length delimited. Does not implicitly {@link google.iam.v1.TestIamPermissionsResponse.verify|verify} messages.
+ * @param message TestIamPermissionsResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.iam.v1.ITestIamPermissionsResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a TestIamPermissionsResponse message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns TestIamPermissionsResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.iam.v1.TestIamPermissionsResponse;
+
+ /**
+ * Decodes a TestIamPermissionsResponse message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns TestIamPermissionsResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.iam.v1.TestIamPermissionsResponse;
+
+ /**
+ * Verifies a TestIamPermissionsResponse message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a TestIamPermissionsResponse message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns TestIamPermissionsResponse
+ */
+ public static fromObject(object: { [k: string]: any }): google.iam.v1.TestIamPermissionsResponse;
+
+ /**
+ * Creates a plain object from a TestIamPermissionsResponse message. Also converts values to other types if specified.
+ * @param message TestIamPermissionsResponse
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.iam.v1.TestIamPermissionsResponse, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this TestIamPermissionsResponse to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for TestIamPermissionsResponse
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a GetPolicyOptions. */
+ interface IGetPolicyOptions {
+
+ /** GetPolicyOptions requestedPolicyVersion */
+ requestedPolicyVersion?: (number|null);
+ }
+
+ /** Represents a GetPolicyOptions. */
+ class GetPolicyOptions implements IGetPolicyOptions {
+
+ /**
+ * Constructs a new GetPolicyOptions.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.iam.v1.IGetPolicyOptions);
+
+ /** GetPolicyOptions requestedPolicyVersion. */
+ public requestedPolicyVersion: number;
+
+ /**
+ * Creates a new GetPolicyOptions instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns GetPolicyOptions instance
+ */
+ public static create(properties?: google.iam.v1.IGetPolicyOptions): google.iam.v1.GetPolicyOptions;
+
+ /**
+ * Encodes the specified GetPolicyOptions message. Does not implicitly {@link google.iam.v1.GetPolicyOptions.verify|verify} messages.
+ * @param message GetPolicyOptions message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.iam.v1.IGetPolicyOptions, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified GetPolicyOptions message, length delimited. Does not implicitly {@link google.iam.v1.GetPolicyOptions.verify|verify} messages.
+ * @param message GetPolicyOptions message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.iam.v1.IGetPolicyOptions, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a GetPolicyOptions message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns GetPolicyOptions
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.iam.v1.GetPolicyOptions;
+
+ /**
+ * Decodes a GetPolicyOptions message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns GetPolicyOptions
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.iam.v1.GetPolicyOptions;
+
+ /**
+ * Verifies a GetPolicyOptions message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a GetPolicyOptions message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns GetPolicyOptions
+ */
+ public static fromObject(object: { [k: string]: any }): google.iam.v1.GetPolicyOptions;
+
+ /**
+ * Creates a plain object from a GetPolicyOptions message. Also converts values to other types if specified.
+ * @param message GetPolicyOptions
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.iam.v1.GetPolicyOptions, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this GetPolicyOptions to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for GetPolicyOptions
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a Policy. */
+ interface IPolicy {
+
+ /** Policy version */
+ version?: (number|null);
+
+ /** Policy bindings */
+ bindings?: (google.iam.v1.IBinding[]|null);
+
+ /** Policy auditConfigs */
+ auditConfigs?: (google.iam.v1.IAuditConfig[]|null);
+
+ /** Policy etag */
+ etag?: (Uint8Array|string|null);
+ }
+
+ /** Represents a Policy. */
+ class Policy implements IPolicy {
+
+ /**
+ * Constructs a new Policy.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.iam.v1.IPolicy);
+
+ /** Policy version. */
+ public version: number;
+
+ /** Policy bindings. */
+ public bindings: google.iam.v1.IBinding[];
+
+ /** Policy auditConfigs. */
+ public auditConfigs: google.iam.v1.IAuditConfig[];
+
+ /** Policy etag. */
+ public etag: (Uint8Array|string);
+
+ /**
+ * Creates a new Policy instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Policy instance
+ */
+ public static create(properties?: google.iam.v1.IPolicy): google.iam.v1.Policy;
+
+ /**
+ * Encodes the specified Policy message. Does not implicitly {@link google.iam.v1.Policy.verify|verify} messages.
+ * @param message Policy message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.iam.v1.IPolicy, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Policy message, length delimited. Does not implicitly {@link google.iam.v1.Policy.verify|verify} messages.
+ * @param message Policy message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.iam.v1.IPolicy, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Policy message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Policy
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.iam.v1.Policy;
+
+ /**
+ * Decodes a Policy message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Policy
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.iam.v1.Policy;
+
+ /**
+ * Verifies a Policy message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a Policy message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Policy
+ */
+ public static fromObject(object: { [k: string]: any }): google.iam.v1.Policy;
+
+ /**
+ * Creates a plain object from a Policy message. Also converts values to other types if specified.
+ * @param message Policy
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.iam.v1.Policy, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Policy to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Policy
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a Binding. */
+ interface IBinding {
+
+ /** Binding role */
+ role?: (string|null);
+
+ /** Binding members */
+ members?: (string[]|null);
+
+ /** Binding condition */
+ condition?: (google.type.IExpr|null);
+ }
+
+ /** Represents a Binding. */
+ class Binding implements IBinding {
+
+ /**
+ * Constructs a new Binding.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.iam.v1.IBinding);
+
+ /** Binding role. */
+ public role: string;
+
+ /** Binding members. */
+ public members: string[];
+
+ /** Binding condition. */
+ public condition?: (google.type.IExpr|null);
+
+ /**
+ * Creates a new Binding instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Binding instance
+ */
+ public static create(properties?: google.iam.v1.IBinding): google.iam.v1.Binding;
+
+ /**
+ * Encodes the specified Binding message. Does not implicitly {@link google.iam.v1.Binding.verify|verify} messages.
+ * @param message Binding message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.iam.v1.IBinding, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Binding message, length delimited. Does not implicitly {@link google.iam.v1.Binding.verify|verify} messages.
+ * @param message Binding message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.iam.v1.IBinding, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Binding message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Binding
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.iam.v1.Binding;
+
+ /**
+ * Decodes a Binding message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Binding
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.iam.v1.Binding;
+
+ /**
+ * Verifies a Binding message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a Binding message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Binding
+ */
+ public static fromObject(object: { [k: string]: any }): google.iam.v1.Binding;
+
+ /**
+ * Creates a plain object from a Binding message. Also converts values to other types if specified.
+ * @param message Binding
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.iam.v1.Binding, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Binding to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Binding
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an AuditConfig. */
+ interface IAuditConfig {
+
+ /** AuditConfig service */
+ service?: (string|null);
+
+ /** AuditConfig auditLogConfigs */
+ auditLogConfigs?: (google.iam.v1.IAuditLogConfig[]|null);
+ }
+
+ /** Represents an AuditConfig. */
+ class AuditConfig implements IAuditConfig {
+
+ /**
+ * Constructs a new AuditConfig.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.iam.v1.IAuditConfig);
+
+ /** AuditConfig service. */
+ public service: string;
+
+ /** AuditConfig auditLogConfigs. */
+ public auditLogConfigs: google.iam.v1.IAuditLogConfig[];
+
+ /**
+ * Creates a new AuditConfig instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns AuditConfig instance
+ */
+ public static create(properties?: google.iam.v1.IAuditConfig): google.iam.v1.AuditConfig;
+
+ /**
+ * Encodes the specified AuditConfig message. Does not implicitly {@link google.iam.v1.AuditConfig.verify|verify} messages.
+ * @param message AuditConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.iam.v1.IAuditConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified AuditConfig message, length delimited. Does not implicitly {@link google.iam.v1.AuditConfig.verify|verify} messages.
+ * @param message AuditConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.iam.v1.IAuditConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an AuditConfig message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns AuditConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.iam.v1.AuditConfig;
+
+ /**
+ * Decodes an AuditConfig message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns AuditConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.iam.v1.AuditConfig;
+
+ /**
+ * Verifies an AuditConfig message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates an AuditConfig message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns AuditConfig
+ */
+ public static fromObject(object: { [k: string]: any }): google.iam.v1.AuditConfig;
+
+ /**
+ * Creates a plain object from an AuditConfig message. Also converts values to other types if specified.
+ * @param message AuditConfig
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.iam.v1.AuditConfig, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this AuditConfig to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for AuditConfig
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an AuditLogConfig. */
+ interface IAuditLogConfig {
+
+ /** AuditLogConfig logType */
+ logType?: (google.iam.v1.AuditLogConfig.LogType|keyof typeof google.iam.v1.AuditLogConfig.LogType|null);
+
+ /** AuditLogConfig exemptedMembers */
+ exemptedMembers?: (string[]|null);
+ }
+
+ /** Represents an AuditLogConfig. */
+ class AuditLogConfig implements IAuditLogConfig {
+
+ /**
+ * Constructs a new AuditLogConfig.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.iam.v1.IAuditLogConfig);
+
+ /** AuditLogConfig logType. */
+ public logType: (google.iam.v1.AuditLogConfig.LogType|keyof typeof google.iam.v1.AuditLogConfig.LogType);
+
+ /** AuditLogConfig exemptedMembers. */
+ public exemptedMembers: string[];
+
+ /**
+ * Creates a new AuditLogConfig instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns AuditLogConfig instance
+ */
+ public static create(properties?: google.iam.v1.IAuditLogConfig): google.iam.v1.AuditLogConfig;
+
+ /**
+ * Encodes the specified AuditLogConfig message. Does not implicitly {@link google.iam.v1.AuditLogConfig.verify|verify} messages.
+ * @param message AuditLogConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.iam.v1.IAuditLogConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified AuditLogConfig message, length delimited. Does not implicitly {@link google.iam.v1.AuditLogConfig.verify|verify} messages.
+ * @param message AuditLogConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.iam.v1.IAuditLogConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an AuditLogConfig message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns AuditLogConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.iam.v1.AuditLogConfig;
+
+ /**
+ * Decodes an AuditLogConfig message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns AuditLogConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.iam.v1.AuditLogConfig;
+
+ /**
+ * Verifies an AuditLogConfig message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates an AuditLogConfig message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns AuditLogConfig
+ */
+ public static fromObject(object: { [k: string]: any }): google.iam.v1.AuditLogConfig;
+
+ /**
+ * Creates a plain object from an AuditLogConfig message. Also converts values to other types if specified.
+ * @param message AuditLogConfig
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.iam.v1.AuditLogConfig, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this AuditLogConfig to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for AuditLogConfig
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace AuditLogConfig {
+
+ /** LogType enum. */
+ enum LogType {
+ LOG_TYPE_UNSPECIFIED = 0,
+ ADMIN_READ = 1,
+ DATA_WRITE = 2,
+ DATA_READ = 3
+ }
+ }
+
+ /** Properties of a PolicyDelta. */
+ interface IPolicyDelta {
+
+ /** PolicyDelta bindingDeltas */
+ bindingDeltas?: (google.iam.v1.IBindingDelta[]|null);
+
+ /** PolicyDelta auditConfigDeltas */
+ auditConfigDeltas?: (google.iam.v1.IAuditConfigDelta[]|null);
+ }
+
+ /** Represents a PolicyDelta. */
+ class PolicyDelta implements IPolicyDelta {
+
+ /**
+ * Constructs a new PolicyDelta.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.iam.v1.IPolicyDelta);
+
+ /** PolicyDelta bindingDeltas. */
+ public bindingDeltas: google.iam.v1.IBindingDelta[];
+
+ /** PolicyDelta auditConfigDeltas. */
+ public auditConfigDeltas: google.iam.v1.IAuditConfigDelta[];
+
+ /**
+ * Creates a new PolicyDelta instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns PolicyDelta instance
+ */
+ public static create(properties?: google.iam.v1.IPolicyDelta): google.iam.v1.PolicyDelta;
+
+ /**
+ * Encodes the specified PolicyDelta message. Does not implicitly {@link google.iam.v1.PolicyDelta.verify|verify} messages.
+ * @param message PolicyDelta message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.iam.v1.IPolicyDelta, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified PolicyDelta message, length delimited. Does not implicitly {@link google.iam.v1.PolicyDelta.verify|verify} messages.
+ * @param message PolicyDelta message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.iam.v1.IPolicyDelta, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a PolicyDelta message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns PolicyDelta
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.iam.v1.PolicyDelta;
+
+ /**
+ * Decodes a PolicyDelta message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns PolicyDelta
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.iam.v1.PolicyDelta;
+
+ /**
+ * Verifies a PolicyDelta message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a PolicyDelta message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns PolicyDelta
+ */
+ public static fromObject(object: { [k: string]: any }): google.iam.v1.PolicyDelta;
+
+ /**
+ * Creates a plain object from a PolicyDelta message. Also converts values to other types if specified.
+ * @param message PolicyDelta
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.iam.v1.PolicyDelta, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this PolicyDelta to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for PolicyDelta
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a BindingDelta. */
+ interface IBindingDelta {
+
+ /** BindingDelta action */
+ action?: (google.iam.v1.BindingDelta.Action|keyof typeof google.iam.v1.BindingDelta.Action|null);
+
+ /** BindingDelta role */
+ role?: (string|null);
+
+ /** BindingDelta member */
+ member?: (string|null);
+
+ /** BindingDelta condition */
+ condition?: (google.type.IExpr|null);
+ }
+
+ /** Represents a BindingDelta. */
+ class BindingDelta implements IBindingDelta {
+
+ /**
+ * Constructs a new BindingDelta.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.iam.v1.IBindingDelta);
+
+ /** BindingDelta action. */
+ public action: (google.iam.v1.BindingDelta.Action|keyof typeof google.iam.v1.BindingDelta.Action);
+
+ /** BindingDelta role. */
+ public role: string;
+
+ /** BindingDelta member. */
+ public member: string;
+
+ /** BindingDelta condition. */
+ public condition?: (google.type.IExpr|null);
+
+ /**
+ * Creates a new BindingDelta instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns BindingDelta instance
+ */
+ public static create(properties?: google.iam.v1.IBindingDelta): google.iam.v1.BindingDelta;
+
+ /**
+ * Encodes the specified BindingDelta message. Does not implicitly {@link google.iam.v1.BindingDelta.verify|verify} messages.
+ * @param message BindingDelta message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.iam.v1.IBindingDelta, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified BindingDelta message, length delimited. Does not implicitly {@link google.iam.v1.BindingDelta.verify|verify} messages.
+ * @param message BindingDelta message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.iam.v1.IBindingDelta, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a BindingDelta message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns BindingDelta
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.iam.v1.BindingDelta;
+
+ /**
+ * Decodes a BindingDelta message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns BindingDelta
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.iam.v1.BindingDelta;
+
+ /**
+ * Verifies a BindingDelta message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a BindingDelta message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns BindingDelta
+ */
+ public static fromObject(object: { [k: string]: any }): google.iam.v1.BindingDelta;
+
+ /**
+ * Creates a plain object from a BindingDelta message. Also converts values to other types if specified.
+ * @param message BindingDelta
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.iam.v1.BindingDelta, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this BindingDelta to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for BindingDelta
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace BindingDelta {
+
+ /** Action enum. */
+ enum Action {
+ ACTION_UNSPECIFIED = 0,
+ ADD = 1,
+ REMOVE = 2
+ }
+ }
+
+ /** Properties of an AuditConfigDelta. */
+ interface IAuditConfigDelta {
+
+ /** AuditConfigDelta action */
+ action?: (google.iam.v1.AuditConfigDelta.Action|keyof typeof google.iam.v1.AuditConfigDelta.Action|null);
+
+ /** AuditConfigDelta service */
+ service?: (string|null);
+
+ /** AuditConfigDelta exemptedMember */
+ exemptedMember?: (string|null);
+
+ /** AuditConfigDelta logType */
+ logType?: (string|null);
+ }
+
+ /** Represents an AuditConfigDelta. */
+ class AuditConfigDelta implements IAuditConfigDelta {
+
+ /**
+ * Constructs a new AuditConfigDelta.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.iam.v1.IAuditConfigDelta);
+
+ /** AuditConfigDelta action. */
+ public action: (google.iam.v1.AuditConfigDelta.Action|keyof typeof google.iam.v1.AuditConfigDelta.Action);
+
+ /** AuditConfigDelta service. */
+ public service: string;
+
+ /** AuditConfigDelta exemptedMember. */
+ public exemptedMember: string;
+
+ /** AuditConfigDelta logType. */
+ public logType: string;
+
+ /**
+ * Creates a new AuditConfigDelta instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns AuditConfigDelta instance
+ */
+ public static create(properties?: google.iam.v1.IAuditConfigDelta): google.iam.v1.AuditConfigDelta;
+
+ /**
+ * Encodes the specified AuditConfigDelta message. Does not implicitly {@link google.iam.v1.AuditConfigDelta.verify|verify} messages.
+ * @param message AuditConfigDelta message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.iam.v1.IAuditConfigDelta, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified AuditConfigDelta message, length delimited. Does not implicitly {@link google.iam.v1.AuditConfigDelta.verify|verify} messages.
+ * @param message AuditConfigDelta message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.iam.v1.IAuditConfigDelta, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an AuditConfigDelta message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns AuditConfigDelta
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.iam.v1.AuditConfigDelta;
+
+ /**
+ * Decodes an AuditConfigDelta message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns AuditConfigDelta
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.iam.v1.AuditConfigDelta;
+
+ /**
+ * Verifies an AuditConfigDelta message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates an AuditConfigDelta message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns AuditConfigDelta
+ */
+ public static fromObject(object: { [k: string]: any }): google.iam.v1.AuditConfigDelta;
+
+ /**
+ * Creates a plain object from an AuditConfigDelta message. Also converts values to other types if specified.
+ * @param message AuditConfigDelta
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.iam.v1.AuditConfigDelta, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this AuditConfigDelta to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for AuditConfigDelta
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace AuditConfigDelta {
+
+ /** Action enum. */
+ enum Action {
+ ACTION_UNSPECIFIED = 0,
+ ADD = 1,
+ REMOVE = 2
+ }
+ }
+ }
+ }
+
+ /** Namespace type. */
+ namespace type {
+
+ /** Properties of an Expr. */
+ interface IExpr {
+
+ /** Expr expression */
+ expression?: (string|null);
+
+ /** Expr title */
+ title?: (string|null);
+
+ /** Expr description */
+ description?: (string|null);
+
+ /** Expr location */
+ location?: (string|null);
+ }
+
+ /** Represents an Expr. */
+ class Expr implements IExpr {
+
+ /**
+ * Constructs a new Expr.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.type.IExpr);
+
+ /** Expr expression. */
+ public expression: string;
+
+ /** Expr title. */
+ public title: string;
+
+ /** Expr description. */
+ public description: string;
+
+ /** Expr location. */
+ public location: string;
+
+ /**
+ * Creates a new Expr instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Expr instance
+ */
+ public static create(properties?: google.type.IExpr): google.type.Expr;
+
+ /**
+ * Encodes the specified Expr message. Does not implicitly {@link google.type.Expr.verify|verify} messages.
+ * @param message Expr message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.type.IExpr, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Expr message, length delimited. Does not implicitly {@link google.type.Expr.verify|verify} messages.
+ * @param message Expr message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.type.IExpr, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an Expr message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Expr
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.type.Expr;
+
+ /**
+ * Decodes an Expr message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Expr
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.type.Expr;
+
+ /**
+ * Verifies an Expr message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates an Expr message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Expr
+ */
+ public static fromObject(object: { [k: string]: any }): google.type.Expr;
+
+ /**
+ * Creates a plain object from an Expr message. Also converts values to other types if specified.
+ * @param message Expr
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.type.Expr, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Expr to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Expr
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+ }
+}
diff --git a/packages/google-cloud-iap/protos/protos.js b/packages/google-cloud-iap/protos/protos.js
new file mode 100644
index 00000000000..59bc3784ef5
--- /dev/null
+++ b/packages/google-cloud-iap/protos/protos.js
@@ -0,0 +1,25208 @@
+// Copyright 2022 Google LLC
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+/*eslint-disable block-scoped-var, id-length, no-control-regex, no-magic-numbers, no-prototype-builtins, no-redeclare, no-shadow, no-var, sort-vars*/
+(function(global, factory) { /* global define, require, module */
+
+ /* AMD */ if (typeof define === 'function' && define.amd)
+ define(["protobufjs/minimal"], factory);
+
+ /* CommonJS */ else if (typeof require === 'function' && typeof module === 'object' && module && module.exports)
+ module.exports = factory(require("google-gax/build/src/protobuf").protobufMinimal);
+
+})(this, function($protobuf) {
+ "use strict";
+
+ // Common aliases
+ var $Reader = $protobuf.Reader, $Writer = $protobuf.Writer, $util = $protobuf.util;
+
+ // Exported root namespace
+ var $root = $protobuf.roots._google_cloud_iap_protos || ($protobuf.roots._google_cloud_iap_protos = {});
+
+ $root.google = (function() {
+
+ /**
+ * Namespace google.
+ * @exports google
+ * @namespace
+ */
+ var google = {};
+
+ google.cloud = (function() {
+
+ /**
+ * Namespace cloud.
+ * @memberof google
+ * @namespace
+ */
+ var cloud = {};
+
+ cloud.iap = (function() {
+
+ /**
+ * Namespace iap.
+ * @memberof google.cloud
+ * @namespace
+ */
+ var iap = {};
+
+ iap.v1 = (function() {
+
+ /**
+ * Namespace v1.
+ * @memberof google.cloud.iap
+ * @namespace
+ */
+ var v1 = {};
+
+ v1.IdentityAwareProxyAdminService = (function() {
+
+ /**
+ * Constructs a new IdentityAwareProxyAdminService service.
+ * @memberof google.cloud.iap.v1
+ * @classdesc Represents an IdentityAwareProxyAdminService
+ * @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 IdentityAwareProxyAdminService(rpcImpl, requestDelimited, responseDelimited) {
+ $protobuf.rpc.Service.call(this, rpcImpl, requestDelimited, responseDelimited);
+ }
+
+ (IdentityAwareProxyAdminService.prototype = Object.create($protobuf.rpc.Service.prototype)).constructor = IdentityAwareProxyAdminService;
+
+ /**
+ * Creates new IdentityAwareProxyAdminService service using the specified rpc implementation.
+ * @function create
+ * @memberof google.cloud.iap.v1.IdentityAwareProxyAdminService
+ * @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 {IdentityAwareProxyAdminService} RPC service. Useful where requests and/or responses are streamed.
+ */
+ IdentityAwareProxyAdminService.create = function create(rpcImpl, requestDelimited, responseDelimited) {
+ return new this(rpcImpl, requestDelimited, responseDelimited);
+ };
+
+ /**
+ * Callback as used by {@link google.cloud.iap.v1.IdentityAwareProxyAdminService|setIamPolicy}.
+ * @memberof google.cloud.iap.v1.IdentityAwareProxyAdminService
+ * @typedef SetIamPolicyCallback
+ * @type {function}
+ * @param {Error|null} error Error, if any
+ * @param {google.iam.v1.Policy} [response] Policy
+ */
+
+ /**
+ * Calls SetIamPolicy.
+ * @function setIamPolicy
+ * @memberof google.cloud.iap.v1.IdentityAwareProxyAdminService
+ * @instance
+ * @param {google.iam.v1.ISetIamPolicyRequest} request SetIamPolicyRequest message or plain object
+ * @param {google.cloud.iap.v1.IdentityAwareProxyAdminService.SetIamPolicyCallback} callback Node-style callback called with the error, if any, and Policy
+ * @returns {undefined}
+ * @variation 1
+ */
+ Object.defineProperty(IdentityAwareProxyAdminService.prototype.setIamPolicy = function setIamPolicy(request, callback) {
+ return this.rpcCall(setIamPolicy, $root.google.iam.v1.SetIamPolicyRequest, $root.google.iam.v1.Policy, request, callback);
+ }, "name", { value: "SetIamPolicy" });
+
+ /**
+ * Calls SetIamPolicy.
+ * @function setIamPolicy
+ * @memberof google.cloud.iap.v1.IdentityAwareProxyAdminService
+ * @instance
+ * @param {google.iam.v1.ISetIamPolicyRequest} request SetIamPolicyRequest message or plain object
+ * @returns {Promise} Promise
+ * @variation 2
+ */
+
+ /**
+ * Callback as used by {@link google.cloud.iap.v1.IdentityAwareProxyAdminService|getIamPolicy}.
+ * @memberof google.cloud.iap.v1.IdentityAwareProxyAdminService
+ * @typedef GetIamPolicyCallback
+ * @type {function}
+ * @param {Error|null} error Error, if any
+ * @param {google.iam.v1.Policy} [response] Policy
+ */
+
+ /**
+ * Calls GetIamPolicy.
+ * @function getIamPolicy
+ * @memberof google.cloud.iap.v1.IdentityAwareProxyAdminService
+ * @instance
+ * @param {google.iam.v1.IGetIamPolicyRequest} request GetIamPolicyRequest message or plain object
+ * @param {google.cloud.iap.v1.IdentityAwareProxyAdminService.GetIamPolicyCallback} callback Node-style callback called with the error, if any, and Policy
+ * @returns {undefined}
+ * @variation 1
+ */
+ Object.defineProperty(IdentityAwareProxyAdminService.prototype.getIamPolicy = function getIamPolicy(request, callback) {
+ return this.rpcCall(getIamPolicy, $root.google.iam.v1.GetIamPolicyRequest, $root.google.iam.v1.Policy, request, callback);
+ }, "name", { value: "GetIamPolicy" });
+
+ /**
+ * Calls GetIamPolicy.
+ * @function getIamPolicy
+ * @memberof google.cloud.iap.v1.IdentityAwareProxyAdminService
+ * @instance
+ * @param {google.iam.v1.IGetIamPolicyRequest} request GetIamPolicyRequest message or plain object
+ * @returns {Promise} Promise
+ * @variation 2
+ */
+
+ /**
+ * Callback as used by {@link google.cloud.iap.v1.IdentityAwareProxyAdminService|testIamPermissions}.
+ * @memberof google.cloud.iap.v1.IdentityAwareProxyAdminService
+ * @typedef TestIamPermissionsCallback
+ * @type {function}
+ * @param {Error|null} error Error, if any
+ * @param {google.iam.v1.TestIamPermissionsResponse} [response] TestIamPermissionsResponse
+ */
+
+ /**
+ * Calls TestIamPermissions.
+ * @function testIamPermissions
+ * @memberof google.cloud.iap.v1.IdentityAwareProxyAdminService
+ * @instance
+ * @param {google.iam.v1.ITestIamPermissionsRequest} request TestIamPermissionsRequest message or plain object
+ * @param {google.cloud.iap.v1.IdentityAwareProxyAdminService.TestIamPermissionsCallback} callback Node-style callback called with the error, if any, and TestIamPermissionsResponse
+ * @returns {undefined}
+ * @variation 1
+ */
+ Object.defineProperty(IdentityAwareProxyAdminService.prototype.testIamPermissions = function testIamPermissions(request, callback) {
+ return this.rpcCall(testIamPermissions, $root.google.iam.v1.TestIamPermissionsRequest, $root.google.iam.v1.TestIamPermissionsResponse, request, callback);
+ }, "name", { value: "TestIamPermissions" });
+
+ /**
+ * Calls TestIamPermissions.
+ * @function testIamPermissions
+ * @memberof google.cloud.iap.v1.IdentityAwareProxyAdminService
+ * @instance
+ * @param {google.iam.v1.ITestIamPermissionsRequest} request TestIamPermissionsRequest message or plain object
+ * @returns {Promise} Promise
+ * @variation 2
+ */
+
+ /**
+ * Callback as used by {@link google.cloud.iap.v1.IdentityAwareProxyAdminService|getIapSettings}.
+ * @memberof google.cloud.iap.v1.IdentityAwareProxyAdminService
+ * @typedef GetIapSettingsCallback
+ * @type {function}
+ * @param {Error|null} error Error, if any
+ * @param {google.cloud.iap.v1.IapSettings} [response] IapSettings
+ */
+
+ /**
+ * Calls GetIapSettings.
+ * @function getIapSettings
+ * @memberof google.cloud.iap.v1.IdentityAwareProxyAdminService
+ * @instance
+ * @param {google.cloud.iap.v1.IGetIapSettingsRequest} request GetIapSettingsRequest message or plain object
+ * @param {google.cloud.iap.v1.IdentityAwareProxyAdminService.GetIapSettingsCallback} callback Node-style callback called with the error, if any, and IapSettings
+ * @returns {undefined}
+ * @variation 1
+ */
+ Object.defineProperty(IdentityAwareProxyAdminService.prototype.getIapSettings = function getIapSettings(request, callback) {
+ return this.rpcCall(getIapSettings, $root.google.cloud.iap.v1.GetIapSettingsRequest, $root.google.cloud.iap.v1.IapSettings, request, callback);
+ }, "name", { value: "GetIapSettings" });
+
+ /**
+ * Calls GetIapSettings.
+ * @function getIapSettings
+ * @memberof google.cloud.iap.v1.IdentityAwareProxyAdminService
+ * @instance
+ * @param {google.cloud.iap.v1.IGetIapSettingsRequest} request GetIapSettingsRequest message or plain object
+ * @returns {Promise} Promise
+ * @variation 2
+ */
+
+ /**
+ * Callback as used by {@link google.cloud.iap.v1.IdentityAwareProxyAdminService|updateIapSettings}.
+ * @memberof google.cloud.iap.v1.IdentityAwareProxyAdminService
+ * @typedef UpdateIapSettingsCallback
+ * @type {function}
+ * @param {Error|null} error Error, if any
+ * @param {google.cloud.iap.v1.IapSettings} [response] IapSettings
+ */
+
+ /**
+ * Calls UpdateIapSettings.
+ * @function updateIapSettings
+ * @memberof google.cloud.iap.v1.IdentityAwareProxyAdminService
+ * @instance
+ * @param {google.cloud.iap.v1.IUpdateIapSettingsRequest} request UpdateIapSettingsRequest message or plain object
+ * @param {google.cloud.iap.v1.IdentityAwareProxyAdminService.UpdateIapSettingsCallback} callback Node-style callback called with the error, if any, and IapSettings
+ * @returns {undefined}
+ * @variation 1
+ */
+ Object.defineProperty(IdentityAwareProxyAdminService.prototype.updateIapSettings = function updateIapSettings(request, callback) {
+ return this.rpcCall(updateIapSettings, $root.google.cloud.iap.v1.UpdateIapSettingsRequest, $root.google.cloud.iap.v1.IapSettings, request, callback);
+ }, "name", { value: "UpdateIapSettings" });
+
+ /**
+ * Calls UpdateIapSettings.
+ * @function updateIapSettings
+ * @memberof google.cloud.iap.v1.IdentityAwareProxyAdminService
+ * @instance
+ * @param {google.cloud.iap.v1.IUpdateIapSettingsRequest} request UpdateIapSettingsRequest message or plain object
+ * @returns {Promise} Promise
+ * @variation 2
+ */
+
+ /**
+ * Callback as used by {@link google.cloud.iap.v1.IdentityAwareProxyAdminService|listTunnelDestGroups}.
+ * @memberof google.cloud.iap.v1.IdentityAwareProxyAdminService
+ * @typedef ListTunnelDestGroupsCallback
+ * @type {function}
+ * @param {Error|null} error Error, if any
+ * @param {google.cloud.iap.v1.ListTunnelDestGroupsResponse} [response] ListTunnelDestGroupsResponse
+ */
+
+ /**
+ * Calls ListTunnelDestGroups.
+ * @function listTunnelDestGroups
+ * @memberof google.cloud.iap.v1.IdentityAwareProxyAdminService
+ * @instance
+ * @param {google.cloud.iap.v1.IListTunnelDestGroupsRequest} request ListTunnelDestGroupsRequest message or plain object
+ * @param {google.cloud.iap.v1.IdentityAwareProxyAdminService.ListTunnelDestGroupsCallback} callback Node-style callback called with the error, if any, and ListTunnelDestGroupsResponse
+ * @returns {undefined}
+ * @variation 1
+ */
+ Object.defineProperty(IdentityAwareProxyAdminService.prototype.listTunnelDestGroups = function listTunnelDestGroups(request, callback) {
+ return this.rpcCall(listTunnelDestGroups, $root.google.cloud.iap.v1.ListTunnelDestGroupsRequest, $root.google.cloud.iap.v1.ListTunnelDestGroupsResponse, request, callback);
+ }, "name", { value: "ListTunnelDestGroups" });
+
+ /**
+ * Calls ListTunnelDestGroups.
+ * @function listTunnelDestGroups
+ * @memberof google.cloud.iap.v1.IdentityAwareProxyAdminService
+ * @instance
+ * @param {google.cloud.iap.v1.IListTunnelDestGroupsRequest} request ListTunnelDestGroupsRequest message or plain object
+ * @returns {Promise} Promise
+ * @variation 2
+ */
+
+ /**
+ * Callback as used by {@link google.cloud.iap.v1.IdentityAwareProxyAdminService|createTunnelDestGroup}.
+ * @memberof google.cloud.iap.v1.IdentityAwareProxyAdminService
+ * @typedef CreateTunnelDestGroupCallback
+ * @type {function}
+ * @param {Error|null} error Error, if any
+ * @param {google.cloud.iap.v1.TunnelDestGroup} [response] TunnelDestGroup
+ */
+
+ /**
+ * Calls CreateTunnelDestGroup.
+ * @function createTunnelDestGroup
+ * @memberof google.cloud.iap.v1.IdentityAwareProxyAdminService
+ * @instance
+ * @param {google.cloud.iap.v1.ICreateTunnelDestGroupRequest} request CreateTunnelDestGroupRequest message or plain object
+ * @param {google.cloud.iap.v1.IdentityAwareProxyAdminService.CreateTunnelDestGroupCallback} callback Node-style callback called with the error, if any, and TunnelDestGroup
+ * @returns {undefined}
+ * @variation 1
+ */
+ Object.defineProperty(IdentityAwareProxyAdminService.prototype.createTunnelDestGroup = function createTunnelDestGroup(request, callback) {
+ return this.rpcCall(createTunnelDestGroup, $root.google.cloud.iap.v1.CreateTunnelDestGroupRequest, $root.google.cloud.iap.v1.TunnelDestGroup, request, callback);
+ }, "name", { value: "CreateTunnelDestGroup" });
+
+ /**
+ * Calls CreateTunnelDestGroup.
+ * @function createTunnelDestGroup
+ * @memberof google.cloud.iap.v1.IdentityAwareProxyAdminService
+ * @instance
+ * @param {google.cloud.iap.v1.ICreateTunnelDestGroupRequest} request CreateTunnelDestGroupRequest message or plain object
+ * @returns {Promise} Promise
+ * @variation 2
+ */
+
+ /**
+ * Callback as used by {@link google.cloud.iap.v1.IdentityAwareProxyAdminService|getTunnelDestGroup}.
+ * @memberof google.cloud.iap.v1.IdentityAwareProxyAdminService
+ * @typedef GetTunnelDestGroupCallback
+ * @type {function}
+ * @param {Error|null} error Error, if any
+ * @param {google.cloud.iap.v1.TunnelDestGroup} [response] TunnelDestGroup
+ */
+
+ /**
+ * Calls GetTunnelDestGroup.
+ * @function getTunnelDestGroup
+ * @memberof google.cloud.iap.v1.IdentityAwareProxyAdminService
+ * @instance
+ * @param {google.cloud.iap.v1.IGetTunnelDestGroupRequest} request GetTunnelDestGroupRequest message or plain object
+ * @param {google.cloud.iap.v1.IdentityAwareProxyAdminService.GetTunnelDestGroupCallback} callback Node-style callback called with the error, if any, and TunnelDestGroup
+ * @returns {undefined}
+ * @variation 1
+ */
+ Object.defineProperty(IdentityAwareProxyAdminService.prototype.getTunnelDestGroup = function getTunnelDestGroup(request, callback) {
+ return this.rpcCall(getTunnelDestGroup, $root.google.cloud.iap.v1.GetTunnelDestGroupRequest, $root.google.cloud.iap.v1.TunnelDestGroup, request, callback);
+ }, "name", { value: "GetTunnelDestGroup" });
+
+ /**
+ * Calls GetTunnelDestGroup.
+ * @function getTunnelDestGroup
+ * @memberof google.cloud.iap.v1.IdentityAwareProxyAdminService
+ * @instance
+ * @param {google.cloud.iap.v1.IGetTunnelDestGroupRequest} request GetTunnelDestGroupRequest message or plain object
+ * @returns {Promise} Promise
+ * @variation 2
+ */
+
+ /**
+ * Callback as used by {@link google.cloud.iap.v1.IdentityAwareProxyAdminService|deleteTunnelDestGroup}.
+ * @memberof google.cloud.iap.v1.IdentityAwareProxyAdminService
+ * @typedef DeleteTunnelDestGroupCallback
+ * @type {function}
+ * @param {Error|null} error Error, if any
+ * @param {google.protobuf.Empty} [response] Empty
+ */
+
+ /**
+ * Calls DeleteTunnelDestGroup.
+ * @function deleteTunnelDestGroup
+ * @memberof google.cloud.iap.v1.IdentityAwareProxyAdminService
+ * @instance
+ * @param {google.cloud.iap.v1.IDeleteTunnelDestGroupRequest} request DeleteTunnelDestGroupRequest message or plain object
+ * @param {google.cloud.iap.v1.IdentityAwareProxyAdminService.DeleteTunnelDestGroupCallback} callback Node-style callback called with the error, if any, and Empty
+ * @returns {undefined}
+ * @variation 1
+ */
+ Object.defineProperty(IdentityAwareProxyAdminService.prototype.deleteTunnelDestGroup = function deleteTunnelDestGroup(request, callback) {
+ return this.rpcCall(deleteTunnelDestGroup, $root.google.cloud.iap.v1.DeleteTunnelDestGroupRequest, $root.google.protobuf.Empty, request, callback);
+ }, "name", { value: "DeleteTunnelDestGroup" });
+
+ /**
+ * Calls DeleteTunnelDestGroup.
+ * @function deleteTunnelDestGroup
+ * @memberof google.cloud.iap.v1.IdentityAwareProxyAdminService
+ * @instance
+ * @param {google.cloud.iap.v1.IDeleteTunnelDestGroupRequest} request DeleteTunnelDestGroupRequest message or plain object
+ * @returns {Promise} Promise
+ * @variation 2
+ */
+
+ /**
+ * Callback as used by {@link google.cloud.iap.v1.IdentityAwareProxyAdminService|updateTunnelDestGroup}.
+ * @memberof google.cloud.iap.v1.IdentityAwareProxyAdminService
+ * @typedef UpdateTunnelDestGroupCallback
+ * @type {function}
+ * @param {Error|null} error Error, if any
+ * @param {google.cloud.iap.v1.TunnelDestGroup} [response] TunnelDestGroup
+ */
+
+ /**
+ * Calls UpdateTunnelDestGroup.
+ * @function updateTunnelDestGroup
+ * @memberof google.cloud.iap.v1.IdentityAwareProxyAdminService
+ * @instance
+ * @param {google.cloud.iap.v1.IUpdateTunnelDestGroupRequest} request UpdateTunnelDestGroupRequest message or plain object
+ * @param {google.cloud.iap.v1.IdentityAwareProxyAdminService.UpdateTunnelDestGroupCallback} callback Node-style callback called with the error, if any, and TunnelDestGroup
+ * @returns {undefined}
+ * @variation 1
+ */
+ Object.defineProperty(IdentityAwareProxyAdminService.prototype.updateTunnelDestGroup = function updateTunnelDestGroup(request, callback) {
+ return this.rpcCall(updateTunnelDestGroup, $root.google.cloud.iap.v1.UpdateTunnelDestGroupRequest, $root.google.cloud.iap.v1.TunnelDestGroup, request, callback);
+ }, "name", { value: "UpdateTunnelDestGroup" });
+
+ /**
+ * Calls UpdateTunnelDestGroup.
+ * @function updateTunnelDestGroup
+ * @memberof google.cloud.iap.v1.IdentityAwareProxyAdminService
+ * @instance
+ * @param {google.cloud.iap.v1.IUpdateTunnelDestGroupRequest} request UpdateTunnelDestGroupRequest message or plain object
+ * @returns {Promise} Promise
+ * @variation 2
+ */
+
+ return IdentityAwareProxyAdminService;
+ })();
+
+ v1.ListTunnelDestGroupsRequest = (function() {
+
+ /**
+ * Properties of a ListTunnelDestGroupsRequest.
+ * @memberof google.cloud.iap.v1
+ * @interface IListTunnelDestGroupsRequest
+ * @property {string|null} [parent] ListTunnelDestGroupsRequest parent
+ * @property {number|null} [pageSize] ListTunnelDestGroupsRequest pageSize
+ * @property {string|null} [pageToken] ListTunnelDestGroupsRequest pageToken
+ */
+
+ /**
+ * Constructs a new ListTunnelDestGroupsRequest.
+ * @memberof google.cloud.iap.v1
+ * @classdesc Represents a ListTunnelDestGroupsRequest.
+ * @implements IListTunnelDestGroupsRequest
+ * @constructor
+ * @param {google.cloud.iap.v1.IListTunnelDestGroupsRequest=} [properties] Properties to set
+ */
+ function ListTunnelDestGroupsRequest(properties) {
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * ListTunnelDestGroupsRequest parent.
+ * @member {string} parent
+ * @memberof google.cloud.iap.v1.ListTunnelDestGroupsRequest
+ * @instance
+ */
+ ListTunnelDestGroupsRequest.prototype.parent = "";
+
+ /**
+ * ListTunnelDestGroupsRequest pageSize.
+ * @member {number} pageSize
+ * @memberof google.cloud.iap.v1.ListTunnelDestGroupsRequest
+ * @instance
+ */
+ ListTunnelDestGroupsRequest.prototype.pageSize = 0;
+
+ /**
+ * ListTunnelDestGroupsRequest pageToken.
+ * @member {string} pageToken
+ * @memberof google.cloud.iap.v1.ListTunnelDestGroupsRequest
+ * @instance
+ */
+ ListTunnelDestGroupsRequest.prototype.pageToken = "";
+
+ /**
+ * Creates a new ListTunnelDestGroupsRequest instance using the specified properties.
+ * @function create
+ * @memberof google.cloud.iap.v1.ListTunnelDestGroupsRequest
+ * @static
+ * @param {google.cloud.iap.v1.IListTunnelDestGroupsRequest=} [properties] Properties to set
+ * @returns {google.cloud.iap.v1.ListTunnelDestGroupsRequest} ListTunnelDestGroupsRequest instance
+ */
+ ListTunnelDestGroupsRequest.create = function create(properties) {
+ return new ListTunnelDestGroupsRequest(properties);
+ };
+
+ /**
+ * Encodes the specified ListTunnelDestGroupsRequest message. Does not implicitly {@link google.cloud.iap.v1.ListTunnelDestGroupsRequest.verify|verify} messages.
+ * @function encode
+ * @memberof google.cloud.iap.v1.ListTunnelDestGroupsRequest
+ * @static
+ * @param {google.cloud.iap.v1.IListTunnelDestGroupsRequest} message ListTunnelDestGroupsRequest message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ ListTunnelDestGroupsRequest.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);
+ return writer;
+ };
+
+ /**
+ * Encodes the specified ListTunnelDestGroupsRequest message, length delimited. Does not implicitly {@link google.cloud.iap.v1.ListTunnelDestGroupsRequest.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.cloud.iap.v1.ListTunnelDestGroupsRequest
+ * @static
+ * @param {google.cloud.iap.v1.IListTunnelDestGroupsRequest} message ListTunnelDestGroupsRequest message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ ListTunnelDestGroupsRequest.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a ListTunnelDestGroupsRequest message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.cloud.iap.v1.ListTunnelDestGroupsRequest
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.cloud.iap.v1.ListTunnelDestGroupsRequest} ListTunnelDestGroupsRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ ListTunnelDestGroupsRequest.decode = function 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.iap.v1.ListTunnelDestGroupsRequest();
+ 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;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a ListTunnelDestGroupsRequest message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.cloud.iap.v1.ListTunnelDestGroupsRequest
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.cloud.iap.v1.ListTunnelDestGroupsRequest} ListTunnelDestGroupsRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ ListTunnelDestGroupsRequest.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a ListTunnelDestGroupsRequest message.
+ * @function verify
+ * @memberof google.cloud.iap.v1.ListTunnelDestGroupsRequest
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ ListTunnelDestGroupsRequest.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";
+ return null;
+ };
+
+ /**
+ * Creates a ListTunnelDestGroupsRequest message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.cloud.iap.v1.ListTunnelDestGroupsRequest
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.cloud.iap.v1.ListTunnelDestGroupsRequest} ListTunnelDestGroupsRequest
+ */
+ ListTunnelDestGroupsRequest.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.cloud.iap.v1.ListTunnelDestGroupsRequest)
+ return object;
+ var message = new $root.google.cloud.iap.v1.ListTunnelDestGroupsRequest();
+ 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);
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a ListTunnelDestGroupsRequest message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.cloud.iap.v1.ListTunnelDestGroupsRequest
+ * @static
+ * @param {google.cloud.iap.v1.ListTunnelDestGroupsRequest} message ListTunnelDestGroupsRequest
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ ListTunnelDestGroupsRequest.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.defaults) {
+ object.parent = "";
+ object.pageSize = 0;
+ object.pageToken = "";
+ }
+ 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;
+ return object;
+ };
+
+ /**
+ * Converts this ListTunnelDestGroupsRequest to JSON.
+ * @function toJSON
+ * @memberof google.cloud.iap.v1.ListTunnelDestGroupsRequest
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ ListTunnelDestGroupsRequest.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for ListTunnelDestGroupsRequest
+ * @function getTypeUrl
+ * @memberof google.cloud.iap.v1.ListTunnelDestGroupsRequest
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ ListTunnelDestGroupsRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.cloud.iap.v1.ListTunnelDestGroupsRequest";
+ };
+
+ return ListTunnelDestGroupsRequest;
+ })();
+
+ v1.ListTunnelDestGroupsResponse = (function() {
+
+ /**
+ * Properties of a ListTunnelDestGroupsResponse.
+ * @memberof google.cloud.iap.v1
+ * @interface IListTunnelDestGroupsResponse
+ * @property {Array.|null} [tunnelDestGroups] ListTunnelDestGroupsResponse tunnelDestGroups
+ * @property {string|null} [nextPageToken] ListTunnelDestGroupsResponse nextPageToken
+ */
+
+ /**
+ * Constructs a new ListTunnelDestGroupsResponse.
+ * @memberof google.cloud.iap.v1
+ * @classdesc Represents a ListTunnelDestGroupsResponse.
+ * @implements IListTunnelDestGroupsResponse
+ * @constructor
+ * @param {google.cloud.iap.v1.IListTunnelDestGroupsResponse=} [properties] Properties to set
+ */
+ function ListTunnelDestGroupsResponse(properties) {
+ this.tunnelDestGroups = [];
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * ListTunnelDestGroupsResponse tunnelDestGroups.
+ * @member {Array.} tunnelDestGroups
+ * @memberof google.cloud.iap.v1.ListTunnelDestGroupsResponse
+ * @instance
+ */
+ ListTunnelDestGroupsResponse.prototype.tunnelDestGroups = $util.emptyArray;
+
+ /**
+ * ListTunnelDestGroupsResponse nextPageToken.
+ * @member {string} nextPageToken
+ * @memberof google.cloud.iap.v1.ListTunnelDestGroupsResponse
+ * @instance
+ */
+ ListTunnelDestGroupsResponse.prototype.nextPageToken = "";
+
+ /**
+ * Creates a new ListTunnelDestGroupsResponse instance using the specified properties.
+ * @function create
+ * @memberof google.cloud.iap.v1.ListTunnelDestGroupsResponse
+ * @static
+ * @param {google.cloud.iap.v1.IListTunnelDestGroupsResponse=} [properties] Properties to set
+ * @returns {google.cloud.iap.v1.ListTunnelDestGroupsResponse} ListTunnelDestGroupsResponse instance
+ */
+ ListTunnelDestGroupsResponse.create = function create(properties) {
+ return new ListTunnelDestGroupsResponse(properties);
+ };
+
+ /**
+ * Encodes the specified ListTunnelDestGroupsResponse message. Does not implicitly {@link google.cloud.iap.v1.ListTunnelDestGroupsResponse.verify|verify} messages.
+ * @function encode
+ * @memberof google.cloud.iap.v1.ListTunnelDestGroupsResponse
+ * @static
+ * @param {google.cloud.iap.v1.IListTunnelDestGroupsResponse} message ListTunnelDestGroupsResponse message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ ListTunnelDestGroupsResponse.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.tunnelDestGroups != null && message.tunnelDestGroups.length)
+ for (var i = 0; i < message.tunnelDestGroups.length; ++i)
+ $root.google.cloud.iap.v1.TunnelDestGroup.encode(message.tunnelDestGroups[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 ListTunnelDestGroupsResponse message, length delimited. Does not implicitly {@link google.cloud.iap.v1.ListTunnelDestGroupsResponse.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.cloud.iap.v1.ListTunnelDestGroupsResponse
+ * @static
+ * @param {google.cloud.iap.v1.IListTunnelDestGroupsResponse} message ListTunnelDestGroupsResponse message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ ListTunnelDestGroupsResponse.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a ListTunnelDestGroupsResponse message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.cloud.iap.v1.ListTunnelDestGroupsResponse
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.cloud.iap.v1.ListTunnelDestGroupsResponse} ListTunnelDestGroupsResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ ListTunnelDestGroupsResponse.decode = function 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.iap.v1.ListTunnelDestGroupsResponse();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ if (!(message.tunnelDestGroups && message.tunnelDestGroups.length))
+ message.tunnelDestGroups = [];
+ message.tunnelDestGroups.push($root.google.cloud.iap.v1.TunnelDestGroup.decode(reader, reader.uint32()));
+ break;
+ }
+ case 2: {
+ message.nextPageToken = reader.string();
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a ListTunnelDestGroupsResponse message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.cloud.iap.v1.ListTunnelDestGroupsResponse
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.cloud.iap.v1.ListTunnelDestGroupsResponse} ListTunnelDestGroupsResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ ListTunnelDestGroupsResponse.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a ListTunnelDestGroupsResponse message.
+ * @function verify
+ * @memberof google.cloud.iap.v1.ListTunnelDestGroupsResponse
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ ListTunnelDestGroupsResponse.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.tunnelDestGroups != null && message.hasOwnProperty("tunnelDestGroups")) {
+ if (!Array.isArray(message.tunnelDestGroups))
+ return "tunnelDestGroups: array expected";
+ for (var i = 0; i < message.tunnelDestGroups.length; ++i) {
+ var error = $root.google.cloud.iap.v1.TunnelDestGroup.verify(message.tunnelDestGroups[i]);
+ if (error)
+ return "tunnelDestGroups." + error;
+ }
+ }
+ if (message.nextPageToken != null && message.hasOwnProperty("nextPageToken"))
+ if (!$util.isString(message.nextPageToken))
+ return "nextPageToken: string expected";
+ return null;
+ };
+
+ /**
+ * Creates a ListTunnelDestGroupsResponse message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.cloud.iap.v1.ListTunnelDestGroupsResponse
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.cloud.iap.v1.ListTunnelDestGroupsResponse} ListTunnelDestGroupsResponse
+ */
+ ListTunnelDestGroupsResponse.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.cloud.iap.v1.ListTunnelDestGroupsResponse)
+ return object;
+ var message = new $root.google.cloud.iap.v1.ListTunnelDestGroupsResponse();
+ if (object.tunnelDestGroups) {
+ if (!Array.isArray(object.tunnelDestGroups))
+ throw TypeError(".google.cloud.iap.v1.ListTunnelDestGroupsResponse.tunnelDestGroups: array expected");
+ message.tunnelDestGroups = [];
+ for (var i = 0; i < object.tunnelDestGroups.length; ++i) {
+ if (typeof object.tunnelDestGroups[i] !== "object")
+ throw TypeError(".google.cloud.iap.v1.ListTunnelDestGroupsResponse.tunnelDestGroups: object expected");
+ message.tunnelDestGroups[i] = $root.google.cloud.iap.v1.TunnelDestGroup.fromObject(object.tunnelDestGroups[i]);
+ }
+ }
+ if (object.nextPageToken != null)
+ message.nextPageToken = String(object.nextPageToken);
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a ListTunnelDestGroupsResponse message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.cloud.iap.v1.ListTunnelDestGroupsResponse
+ * @static
+ * @param {google.cloud.iap.v1.ListTunnelDestGroupsResponse} message ListTunnelDestGroupsResponse
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ ListTunnelDestGroupsResponse.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.arrays || options.defaults)
+ object.tunnelDestGroups = [];
+ if (options.defaults)
+ object.nextPageToken = "";
+ if (message.tunnelDestGroups && message.tunnelDestGroups.length) {
+ object.tunnelDestGroups = [];
+ for (var j = 0; j < message.tunnelDestGroups.length; ++j)
+ object.tunnelDestGroups[j] = $root.google.cloud.iap.v1.TunnelDestGroup.toObject(message.tunnelDestGroups[j], options);
+ }
+ if (message.nextPageToken != null && message.hasOwnProperty("nextPageToken"))
+ object.nextPageToken = message.nextPageToken;
+ return object;
+ };
+
+ /**
+ * Converts this ListTunnelDestGroupsResponse to JSON.
+ * @function toJSON
+ * @memberof google.cloud.iap.v1.ListTunnelDestGroupsResponse
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ ListTunnelDestGroupsResponse.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for ListTunnelDestGroupsResponse
+ * @function getTypeUrl
+ * @memberof google.cloud.iap.v1.ListTunnelDestGroupsResponse
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ ListTunnelDestGroupsResponse.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.cloud.iap.v1.ListTunnelDestGroupsResponse";
+ };
+
+ return ListTunnelDestGroupsResponse;
+ })();
+
+ v1.CreateTunnelDestGroupRequest = (function() {
+
+ /**
+ * Properties of a CreateTunnelDestGroupRequest.
+ * @memberof google.cloud.iap.v1
+ * @interface ICreateTunnelDestGroupRequest
+ * @property {string|null} [parent] CreateTunnelDestGroupRequest parent
+ * @property {google.cloud.iap.v1.ITunnelDestGroup|null} [tunnelDestGroup] CreateTunnelDestGroupRequest tunnelDestGroup
+ * @property {string|null} [tunnelDestGroupId] CreateTunnelDestGroupRequest tunnelDestGroupId
+ */
+
+ /**
+ * Constructs a new CreateTunnelDestGroupRequest.
+ * @memberof google.cloud.iap.v1
+ * @classdesc Represents a CreateTunnelDestGroupRequest.
+ * @implements ICreateTunnelDestGroupRequest
+ * @constructor
+ * @param {google.cloud.iap.v1.ICreateTunnelDestGroupRequest=} [properties] Properties to set
+ */
+ function CreateTunnelDestGroupRequest(properties) {
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * CreateTunnelDestGroupRequest parent.
+ * @member {string} parent
+ * @memberof google.cloud.iap.v1.CreateTunnelDestGroupRequest
+ * @instance
+ */
+ CreateTunnelDestGroupRequest.prototype.parent = "";
+
+ /**
+ * CreateTunnelDestGroupRequest tunnelDestGroup.
+ * @member {google.cloud.iap.v1.ITunnelDestGroup|null|undefined} tunnelDestGroup
+ * @memberof google.cloud.iap.v1.CreateTunnelDestGroupRequest
+ * @instance
+ */
+ CreateTunnelDestGroupRequest.prototype.tunnelDestGroup = null;
+
+ /**
+ * CreateTunnelDestGroupRequest tunnelDestGroupId.
+ * @member {string} tunnelDestGroupId
+ * @memberof google.cloud.iap.v1.CreateTunnelDestGroupRequest
+ * @instance
+ */
+ CreateTunnelDestGroupRequest.prototype.tunnelDestGroupId = "";
+
+ /**
+ * Creates a new CreateTunnelDestGroupRequest instance using the specified properties.
+ * @function create
+ * @memberof google.cloud.iap.v1.CreateTunnelDestGroupRequest
+ * @static
+ * @param {google.cloud.iap.v1.ICreateTunnelDestGroupRequest=} [properties] Properties to set
+ * @returns {google.cloud.iap.v1.CreateTunnelDestGroupRequest} CreateTunnelDestGroupRequest instance
+ */
+ CreateTunnelDestGroupRequest.create = function create(properties) {
+ return new CreateTunnelDestGroupRequest(properties);
+ };
+
+ /**
+ * Encodes the specified CreateTunnelDestGroupRequest message. Does not implicitly {@link google.cloud.iap.v1.CreateTunnelDestGroupRequest.verify|verify} messages.
+ * @function encode
+ * @memberof google.cloud.iap.v1.CreateTunnelDestGroupRequest
+ * @static
+ * @param {google.cloud.iap.v1.ICreateTunnelDestGroupRequest} message CreateTunnelDestGroupRequest message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ CreateTunnelDestGroupRequest.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.tunnelDestGroup != null && Object.hasOwnProperty.call(message, "tunnelDestGroup"))
+ $root.google.cloud.iap.v1.TunnelDestGroup.encode(message.tunnelDestGroup, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim();
+ if (message.tunnelDestGroupId != null && Object.hasOwnProperty.call(message, "tunnelDestGroupId"))
+ writer.uint32(/* id 3, wireType 2 =*/26).string(message.tunnelDestGroupId);
+ return writer;
+ };
+
+ /**
+ * Encodes the specified CreateTunnelDestGroupRequest message, length delimited. Does not implicitly {@link google.cloud.iap.v1.CreateTunnelDestGroupRequest.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.cloud.iap.v1.CreateTunnelDestGroupRequest
+ * @static
+ * @param {google.cloud.iap.v1.ICreateTunnelDestGroupRequest} message CreateTunnelDestGroupRequest message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ CreateTunnelDestGroupRequest.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a CreateTunnelDestGroupRequest message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.cloud.iap.v1.CreateTunnelDestGroupRequest
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.cloud.iap.v1.CreateTunnelDestGroupRequest} CreateTunnelDestGroupRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ CreateTunnelDestGroupRequest.decode = function 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.iap.v1.CreateTunnelDestGroupRequest();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.parent = reader.string();
+ break;
+ }
+ case 2: {
+ message.tunnelDestGroup = $root.google.cloud.iap.v1.TunnelDestGroup.decode(reader, reader.uint32());
+ break;
+ }
+ case 3: {
+ message.tunnelDestGroupId = reader.string();
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a CreateTunnelDestGroupRequest message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.cloud.iap.v1.CreateTunnelDestGroupRequest
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.cloud.iap.v1.CreateTunnelDestGroupRequest} CreateTunnelDestGroupRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ CreateTunnelDestGroupRequest.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a CreateTunnelDestGroupRequest message.
+ * @function verify
+ * @memberof google.cloud.iap.v1.CreateTunnelDestGroupRequest
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ CreateTunnelDestGroupRequest.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.tunnelDestGroup != null && message.hasOwnProperty("tunnelDestGroup")) {
+ var error = $root.google.cloud.iap.v1.TunnelDestGroup.verify(message.tunnelDestGroup);
+ if (error)
+ return "tunnelDestGroup." + error;
+ }
+ if (message.tunnelDestGroupId != null && message.hasOwnProperty("tunnelDestGroupId"))
+ if (!$util.isString(message.tunnelDestGroupId))
+ return "tunnelDestGroupId: string expected";
+ return null;
+ };
+
+ /**
+ * Creates a CreateTunnelDestGroupRequest message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.cloud.iap.v1.CreateTunnelDestGroupRequest
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.cloud.iap.v1.CreateTunnelDestGroupRequest} CreateTunnelDestGroupRequest
+ */
+ CreateTunnelDestGroupRequest.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.cloud.iap.v1.CreateTunnelDestGroupRequest)
+ return object;
+ var message = new $root.google.cloud.iap.v1.CreateTunnelDestGroupRequest();
+ if (object.parent != null)
+ message.parent = String(object.parent);
+ if (object.tunnelDestGroup != null) {
+ if (typeof object.tunnelDestGroup !== "object")
+ throw TypeError(".google.cloud.iap.v1.CreateTunnelDestGroupRequest.tunnelDestGroup: object expected");
+ message.tunnelDestGroup = $root.google.cloud.iap.v1.TunnelDestGroup.fromObject(object.tunnelDestGroup);
+ }
+ if (object.tunnelDestGroupId != null)
+ message.tunnelDestGroupId = String(object.tunnelDestGroupId);
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a CreateTunnelDestGroupRequest message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.cloud.iap.v1.CreateTunnelDestGroupRequest
+ * @static
+ * @param {google.cloud.iap.v1.CreateTunnelDestGroupRequest} message CreateTunnelDestGroupRequest
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ CreateTunnelDestGroupRequest.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.defaults) {
+ object.parent = "";
+ object.tunnelDestGroup = null;
+ object.tunnelDestGroupId = "";
+ }
+ if (message.parent != null && message.hasOwnProperty("parent"))
+ object.parent = message.parent;
+ if (message.tunnelDestGroup != null && message.hasOwnProperty("tunnelDestGroup"))
+ object.tunnelDestGroup = $root.google.cloud.iap.v1.TunnelDestGroup.toObject(message.tunnelDestGroup, options);
+ if (message.tunnelDestGroupId != null && message.hasOwnProperty("tunnelDestGroupId"))
+ object.tunnelDestGroupId = message.tunnelDestGroupId;
+ return object;
+ };
+
+ /**
+ * Converts this CreateTunnelDestGroupRequest to JSON.
+ * @function toJSON
+ * @memberof google.cloud.iap.v1.CreateTunnelDestGroupRequest
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ CreateTunnelDestGroupRequest.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for CreateTunnelDestGroupRequest
+ * @function getTypeUrl
+ * @memberof google.cloud.iap.v1.CreateTunnelDestGroupRequest
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ CreateTunnelDestGroupRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.cloud.iap.v1.CreateTunnelDestGroupRequest";
+ };
+
+ return CreateTunnelDestGroupRequest;
+ })();
+
+ v1.GetTunnelDestGroupRequest = (function() {
+
+ /**
+ * Properties of a GetTunnelDestGroupRequest.
+ * @memberof google.cloud.iap.v1
+ * @interface IGetTunnelDestGroupRequest
+ * @property {string|null} [name] GetTunnelDestGroupRequest name
+ */
+
+ /**
+ * Constructs a new GetTunnelDestGroupRequest.
+ * @memberof google.cloud.iap.v1
+ * @classdesc Represents a GetTunnelDestGroupRequest.
+ * @implements IGetTunnelDestGroupRequest
+ * @constructor
+ * @param {google.cloud.iap.v1.IGetTunnelDestGroupRequest=} [properties] Properties to set
+ */
+ function GetTunnelDestGroupRequest(properties) {
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * GetTunnelDestGroupRequest name.
+ * @member {string} name
+ * @memberof google.cloud.iap.v1.GetTunnelDestGroupRequest
+ * @instance
+ */
+ GetTunnelDestGroupRequest.prototype.name = "";
+
+ /**
+ * Creates a new GetTunnelDestGroupRequest instance using the specified properties.
+ * @function create
+ * @memberof google.cloud.iap.v1.GetTunnelDestGroupRequest
+ * @static
+ * @param {google.cloud.iap.v1.IGetTunnelDestGroupRequest=} [properties] Properties to set
+ * @returns {google.cloud.iap.v1.GetTunnelDestGroupRequest} GetTunnelDestGroupRequest instance
+ */
+ GetTunnelDestGroupRequest.create = function create(properties) {
+ return new GetTunnelDestGroupRequest(properties);
+ };
+
+ /**
+ * Encodes the specified GetTunnelDestGroupRequest message. Does not implicitly {@link google.cloud.iap.v1.GetTunnelDestGroupRequest.verify|verify} messages.
+ * @function encode
+ * @memberof google.cloud.iap.v1.GetTunnelDestGroupRequest
+ * @static
+ * @param {google.cloud.iap.v1.IGetTunnelDestGroupRequest} message GetTunnelDestGroupRequest message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ GetTunnelDestGroupRequest.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 GetTunnelDestGroupRequest message, length delimited. Does not implicitly {@link google.cloud.iap.v1.GetTunnelDestGroupRequest.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.cloud.iap.v1.GetTunnelDestGroupRequest
+ * @static
+ * @param {google.cloud.iap.v1.IGetTunnelDestGroupRequest} message GetTunnelDestGroupRequest message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ GetTunnelDestGroupRequest.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a GetTunnelDestGroupRequest message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.cloud.iap.v1.GetTunnelDestGroupRequest
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.cloud.iap.v1.GetTunnelDestGroupRequest} GetTunnelDestGroupRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ GetTunnelDestGroupRequest.decode = function 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.iap.v1.GetTunnelDestGroupRequest();
+ 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 GetTunnelDestGroupRequest message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.cloud.iap.v1.GetTunnelDestGroupRequest
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.cloud.iap.v1.GetTunnelDestGroupRequest} GetTunnelDestGroupRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ GetTunnelDestGroupRequest.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a GetTunnelDestGroupRequest message.
+ * @function verify
+ * @memberof google.cloud.iap.v1.GetTunnelDestGroupRequest
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ GetTunnelDestGroupRequest.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 GetTunnelDestGroupRequest message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.cloud.iap.v1.GetTunnelDestGroupRequest
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.cloud.iap.v1.GetTunnelDestGroupRequest} GetTunnelDestGroupRequest
+ */
+ GetTunnelDestGroupRequest.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.cloud.iap.v1.GetTunnelDestGroupRequest)
+ return object;
+ var message = new $root.google.cloud.iap.v1.GetTunnelDestGroupRequest();
+ if (object.name != null)
+ message.name = String(object.name);
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a GetTunnelDestGroupRequest message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.cloud.iap.v1.GetTunnelDestGroupRequest
+ * @static
+ * @param {google.cloud.iap.v1.GetTunnelDestGroupRequest} message GetTunnelDestGroupRequest
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ GetTunnelDestGroupRequest.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 GetTunnelDestGroupRequest to JSON.
+ * @function toJSON
+ * @memberof google.cloud.iap.v1.GetTunnelDestGroupRequest
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ GetTunnelDestGroupRequest.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for GetTunnelDestGroupRequest
+ * @function getTypeUrl
+ * @memberof google.cloud.iap.v1.GetTunnelDestGroupRequest
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ GetTunnelDestGroupRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.cloud.iap.v1.GetTunnelDestGroupRequest";
+ };
+
+ return GetTunnelDestGroupRequest;
+ })();
+
+ v1.DeleteTunnelDestGroupRequest = (function() {
+
+ /**
+ * Properties of a DeleteTunnelDestGroupRequest.
+ * @memberof google.cloud.iap.v1
+ * @interface IDeleteTunnelDestGroupRequest
+ * @property {string|null} [name] DeleteTunnelDestGroupRequest name
+ */
+
+ /**
+ * Constructs a new DeleteTunnelDestGroupRequest.
+ * @memberof google.cloud.iap.v1
+ * @classdesc Represents a DeleteTunnelDestGroupRequest.
+ * @implements IDeleteTunnelDestGroupRequest
+ * @constructor
+ * @param {google.cloud.iap.v1.IDeleteTunnelDestGroupRequest=} [properties] Properties to set
+ */
+ function DeleteTunnelDestGroupRequest(properties) {
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * DeleteTunnelDestGroupRequest name.
+ * @member {string} name
+ * @memberof google.cloud.iap.v1.DeleteTunnelDestGroupRequest
+ * @instance
+ */
+ DeleteTunnelDestGroupRequest.prototype.name = "";
+
+ /**
+ * Creates a new DeleteTunnelDestGroupRequest instance using the specified properties.
+ * @function create
+ * @memberof google.cloud.iap.v1.DeleteTunnelDestGroupRequest
+ * @static
+ * @param {google.cloud.iap.v1.IDeleteTunnelDestGroupRequest=} [properties] Properties to set
+ * @returns {google.cloud.iap.v1.DeleteTunnelDestGroupRequest} DeleteTunnelDestGroupRequest instance
+ */
+ DeleteTunnelDestGroupRequest.create = function create(properties) {
+ return new DeleteTunnelDestGroupRequest(properties);
+ };
+
+ /**
+ * Encodes the specified DeleteTunnelDestGroupRequest message. Does not implicitly {@link google.cloud.iap.v1.DeleteTunnelDestGroupRequest.verify|verify} messages.
+ * @function encode
+ * @memberof google.cloud.iap.v1.DeleteTunnelDestGroupRequest
+ * @static
+ * @param {google.cloud.iap.v1.IDeleteTunnelDestGroupRequest} message DeleteTunnelDestGroupRequest message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ DeleteTunnelDestGroupRequest.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 DeleteTunnelDestGroupRequest message, length delimited. Does not implicitly {@link google.cloud.iap.v1.DeleteTunnelDestGroupRequest.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.cloud.iap.v1.DeleteTunnelDestGroupRequest
+ * @static
+ * @param {google.cloud.iap.v1.IDeleteTunnelDestGroupRequest} message DeleteTunnelDestGroupRequest message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ DeleteTunnelDestGroupRequest.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a DeleteTunnelDestGroupRequest message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.cloud.iap.v1.DeleteTunnelDestGroupRequest
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.cloud.iap.v1.DeleteTunnelDestGroupRequest} DeleteTunnelDestGroupRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ DeleteTunnelDestGroupRequest.decode = function 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.iap.v1.DeleteTunnelDestGroupRequest();
+ 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 DeleteTunnelDestGroupRequest message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.cloud.iap.v1.DeleteTunnelDestGroupRequest
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.cloud.iap.v1.DeleteTunnelDestGroupRequest} DeleteTunnelDestGroupRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ DeleteTunnelDestGroupRequest.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a DeleteTunnelDestGroupRequest message.
+ * @function verify
+ * @memberof google.cloud.iap.v1.DeleteTunnelDestGroupRequest
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ DeleteTunnelDestGroupRequest.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 DeleteTunnelDestGroupRequest message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.cloud.iap.v1.DeleteTunnelDestGroupRequest
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.cloud.iap.v1.DeleteTunnelDestGroupRequest} DeleteTunnelDestGroupRequest
+ */
+ DeleteTunnelDestGroupRequest.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.cloud.iap.v1.DeleteTunnelDestGroupRequest)
+ return object;
+ var message = new $root.google.cloud.iap.v1.DeleteTunnelDestGroupRequest();
+ if (object.name != null)
+ message.name = String(object.name);
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a DeleteTunnelDestGroupRequest message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.cloud.iap.v1.DeleteTunnelDestGroupRequest
+ * @static
+ * @param {google.cloud.iap.v1.DeleteTunnelDestGroupRequest} message DeleteTunnelDestGroupRequest
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ DeleteTunnelDestGroupRequest.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 DeleteTunnelDestGroupRequest to JSON.
+ * @function toJSON
+ * @memberof google.cloud.iap.v1.DeleteTunnelDestGroupRequest
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ DeleteTunnelDestGroupRequest.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for DeleteTunnelDestGroupRequest
+ * @function getTypeUrl
+ * @memberof google.cloud.iap.v1.DeleteTunnelDestGroupRequest
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ DeleteTunnelDestGroupRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.cloud.iap.v1.DeleteTunnelDestGroupRequest";
+ };
+
+ return DeleteTunnelDestGroupRequest;
+ })();
+
+ v1.UpdateTunnelDestGroupRequest = (function() {
+
+ /**
+ * Properties of an UpdateTunnelDestGroupRequest.
+ * @memberof google.cloud.iap.v1
+ * @interface IUpdateTunnelDestGroupRequest
+ * @property {google.cloud.iap.v1.ITunnelDestGroup|null} [tunnelDestGroup] UpdateTunnelDestGroupRequest tunnelDestGroup
+ * @property {google.protobuf.IFieldMask|null} [updateMask] UpdateTunnelDestGroupRequest updateMask
+ */
+
+ /**
+ * Constructs a new UpdateTunnelDestGroupRequest.
+ * @memberof google.cloud.iap.v1
+ * @classdesc Represents an UpdateTunnelDestGroupRequest.
+ * @implements IUpdateTunnelDestGroupRequest
+ * @constructor
+ * @param {google.cloud.iap.v1.IUpdateTunnelDestGroupRequest=} [properties] Properties to set
+ */
+ function UpdateTunnelDestGroupRequest(properties) {
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * UpdateTunnelDestGroupRequest tunnelDestGroup.
+ * @member {google.cloud.iap.v1.ITunnelDestGroup|null|undefined} tunnelDestGroup
+ * @memberof google.cloud.iap.v1.UpdateTunnelDestGroupRequest
+ * @instance
+ */
+ UpdateTunnelDestGroupRequest.prototype.tunnelDestGroup = null;
+
+ /**
+ * UpdateTunnelDestGroupRequest updateMask.
+ * @member {google.protobuf.IFieldMask|null|undefined} updateMask
+ * @memberof google.cloud.iap.v1.UpdateTunnelDestGroupRequest
+ * @instance
+ */
+ UpdateTunnelDestGroupRequest.prototype.updateMask = null;
+
+ /**
+ * Creates a new UpdateTunnelDestGroupRequest instance using the specified properties.
+ * @function create
+ * @memberof google.cloud.iap.v1.UpdateTunnelDestGroupRequest
+ * @static
+ * @param {google.cloud.iap.v1.IUpdateTunnelDestGroupRequest=} [properties] Properties to set
+ * @returns {google.cloud.iap.v1.UpdateTunnelDestGroupRequest} UpdateTunnelDestGroupRequest instance
+ */
+ UpdateTunnelDestGroupRequest.create = function create(properties) {
+ return new UpdateTunnelDestGroupRequest(properties);
+ };
+
+ /**
+ * Encodes the specified UpdateTunnelDestGroupRequest message. Does not implicitly {@link google.cloud.iap.v1.UpdateTunnelDestGroupRequest.verify|verify} messages.
+ * @function encode
+ * @memberof google.cloud.iap.v1.UpdateTunnelDestGroupRequest
+ * @static
+ * @param {google.cloud.iap.v1.IUpdateTunnelDestGroupRequest} message UpdateTunnelDestGroupRequest message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ UpdateTunnelDestGroupRequest.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.tunnelDestGroup != null && Object.hasOwnProperty.call(message, "tunnelDestGroup"))
+ $root.google.cloud.iap.v1.TunnelDestGroup.encode(message.tunnelDestGroup, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim();
+ 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();
+ return writer;
+ };
+
+ /**
+ * Encodes the specified UpdateTunnelDestGroupRequest message, length delimited. Does not implicitly {@link google.cloud.iap.v1.UpdateTunnelDestGroupRequest.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.cloud.iap.v1.UpdateTunnelDestGroupRequest
+ * @static
+ * @param {google.cloud.iap.v1.IUpdateTunnelDestGroupRequest} message UpdateTunnelDestGroupRequest message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ UpdateTunnelDestGroupRequest.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes an UpdateTunnelDestGroupRequest message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.cloud.iap.v1.UpdateTunnelDestGroupRequest
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.cloud.iap.v1.UpdateTunnelDestGroupRequest} UpdateTunnelDestGroupRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ UpdateTunnelDestGroupRequest.decode = function 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.iap.v1.UpdateTunnelDestGroupRequest();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.tunnelDestGroup = $root.google.cloud.iap.v1.TunnelDestGroup.decode(reader, reader.uint32());
+ break;
+ }
+ case 2: {
+ message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32());
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes an UpdateTunnelDestGroupRequest message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.cloud.iap.v1.UpdateTunnelDestGroupRequest
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.cloud.iap.v1.UpdateTunnelDestGroupRequest} UpdateTunnelDestGroupRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ UpdateTunnelDestGroupRequest.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies an UpdateTunnelDestGroupRequest message.
+ * @function verify
+ * @memberof google.cloud.iap.v1.UpdateTunnelDestGroupRequest
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ UpdateTunnelDestGroupRequest.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.tunnelDestGroup != null && message.hasOwnProperty("tunnelDestGroup")) {
+ var error = $root.google.cloud.iap.v1.TunnelDestGroup.verify(message.tunnelDestGroup);
+ if (error)
+ return "tunnelDestGroup." + error;
+ }
+ if (message.updateMask != null && message.hasOwnProperty("updateMask")) {
+ var error = $root.google.protobuf.FieldMask.verify(message.updateMask);
+ if (error)
+ return "updateMask." + error;
+ }
+ return null;
+ };
+
+ /**
+ * Creates an UpdateTunnelDestGroupRequest message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.cloud.iap.v1.UpdateTunnelDestGroupRequest
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.cloud.iap.v1.UpdateTunnelDestGroupRequest} UpdateTunnelDestGroupRequest
+ */
+ UpdateTunnelDestGroupRequest.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.cloud.iap.v1.UpdateTunnelDestGroupRequest)
+ return object;
+ var message = new $root.google.cloud.iap.v1.UpdateTunnelDestGroupRequest();
+ if (object.tunnelDestGroup != null) {
+ if (typeof object.tunnelDestGroup !== "object")
+ throw TypeError(".google.cloud.iap.v1.UpdateTunnelDestGroupRequest.tunnelDestGroup: object expected");
+ message.tunnelDestGroup = $root.google.cloud.iap.v1.TunnelDestGroup.fromObject(object.tunnelDestGroup);
+ }
+ if (object.updateMask != null) {
+ if (typeof object.updateMask !== "object")
+ throw TypeError(".google.cloud.iap.v1.UpdateTunnelDestGroupRequest.updateMask: object expected");
+ message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask);
+ }
+ return message;
+ };
+
+ /**
+ * Creates a plain object from an UpdateTunnelDestGroupRequest message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.cloud.iap.v1.UpdateTunnelDestGroupRequest
+ * @static
+ * @param {google.cloud.iap.v1.UpdateTunnelDestGroupRequest} message UpdateTunnelDestGroupRequest
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ UpdateTunnelDestGroupRequest.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.defaults) {
+ object.tunnelDestGroup = null;
+ object.updateMask = null;
+ }
+ if (message.tunnelDestGroup != null && message.hasOwnProperty("tunnelDestGroup"))
+ object.tunnelDestGroup = $root.google.cloud.iap.v1.TunnelDestGroup.toObject(message.tunnelDestGroup, options);
+ if (message.updateMask != null && message.hasOwnProperty("updateMask"))
+ object.updateMask = $root.google.protobuf.FieldMask.toObject(message.updateMask, options);
+ return object;
+ };
+
+ /**
+ * Converts this UpdateTunnelDestGroupRequest to JSON.
+ * @function toJSON
+ * @memberof google.cloud.iap.v1.UpdateTunnelDestGroupRequest
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ UpdateTunnelDestGroupRequest.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for UpdateTunnelDestGroupRequest
+ * @function getTypeUrl
+ * @memberof google.cloud.iap.v1.UpdateTunnelDestGroupRequest
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ UpdateTunnelDestGroupRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.cloud.iap.v1.UpdateTunnelDestGroupRequest";
+ };
+
+ return UpdateTunnelDestGroupRequest;
+ })();
+
+ v1.TunnelDestGroup = (function() {
+
+ /**
+ * Properties of a TunnelDestGroup.
+ * @memberof google.cloud.iap.v1
+ * @interface ITunnelDestGroup
+ * @property {string|null} [name] TunnelDestGroup name
+ * @property {Array.|null} [cidrs] TunnelDestGroup cidrs
+ * @property {Array.|null} [fqdns] TunnelDestGroup fqdns
+ */
+
+ /**
+ * Constructs a new TunnelDestGroup.
+ * @memberof google.cloud.iap.v1
+ * @classdesc Represents a TunnelDestGroup.
+ * @implements ITunnelDestGroup
+ * @constructor
+ * @param {google.cloud.iap.v1.ITunnelDestGroup=} [properties] Properties to set
+ */
+ function TunnelDestGroup(properties) {
+ this.cidrs = [];
+ this.fqdns = [];
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * TunnelDestGroup name.
+ * @member {string} name
+ * @memberof google.cloud.iap.v1.TunnelDestGroup
+ * @instance
+ */
+ TunnelDestGroup.prototype.name = "";
+
+ /**
+ * TunnelDestGroup cidrs.
+ * @member {Array.} cidrs
+ * @memberof google.cloud.iap.v1.TunnelDestGroup
+ * @instance
+ */
+ TunnelDestGroup.prototype.cidrs = $util.emptyArray;
+
+ /**
+ * TunnelDestGroup fqdns.
+ * @member {Array.} fqdns
+ * @memberof google.cloud.iap.v1.TunnelDestGroup
+ * @instance
+ */
+ TunnelDestGroup.prototype.fqdns = $util.emptyArray;
+
+ /**
+ * Creates a new TunnelDestGroup instance using the specified properties.
+ * @function create
+ * @memberof google.cloud.iap.v1.TunnelDestGroup
+ * @static
+ * @param {google.cloud.iap.v1.ITunnelDestGroup=} [properties] Properties to set
+ * @returns {google.cloud.iap.v1.TunnelDestGroup} TunnelDestGroup instance
+ */
+ TunnelDestGroup.create = function create(properties) {
+ return new TunnelDestGroup(properties);
+ };
+
+ /**
+ * Encodes the specified TunnelDestGroup message. Does not implicitly {@link google.cloud.iap.v1.TunnelDestGroup.verify|verify} messages.
+ * @function encode
+ * @memberof google.cloud.iap.v1.TunnelDestGroup
+ * @static
+ * @param {google.cloud.iap.v1.ITunnelDestGroup} message TunnelDestGroup message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ TunnelDestGroup.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.cidrs != null && message.cidrs.length)
+ for (var i = 0; i < message.cidrs.length; ++i)
+ writer.uint32(/* id 2, wireType 2 =*/18).string(message.cidrs[i]);
+ if (message.fqdns != null && message.fqdns.length)
+ for (var i = 0; i < message.fqdns.length; ++i)
+ writer.uint32(/* id 3, wireType 2 =*/26).string(message.fqdns[i]);
+ return writer;
+ };
+
+ /**
+ * Encodes the specified TunnelDestGroup message, length delimited. Does not implicitly {@link google.cloud.iap.v1.TunnelDestGroup.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.cloud.iap.v1.TunnelDestGroup
+ * @static
+ * @param {google.cloud.iap.v1.ITunnelDestGroup} message TunnelDestGroup message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ TunnelDestGroup.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a TunnelDestGroup message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.cloud.iap.v1.TunnelDestGroup
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.cloud.iap.v1.TunnelDestGroup} TunnelDestGroup
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ TunnelDestGroup.decode = function 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.iap.v1.TunnelDestGroup();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.name = reader.string();
+ break;
+ }
+ case 2: {
+ if (!(message.cidrs && message.cidrs.length))
+ message.cidrs = [];
+ message.cidrs.push(reader.string());
+ break;
+ }
+ case 3: {
+ if (!(message.fqdns && message.fqdns.length))
+ message.fqdns = [];
+ message.fqdns.push(reader.string());
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a TunnelDestGroup message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.cloud.iap.v1.TunnelDestGroup
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.cloud.iap.v1.TunnelDestGroup} TunnelDestGroup
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ TunnelDestGroup.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a TunnelDestGroup message.
+ * @function verify
+ * @memberof google.cloud.iap.v1.TunnelDestGroup
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ TunnelDestGroup.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.cidrs != null && message.hasOwnProperty("cidrs")) {
+ if (!Array.isArray(message.cidrs))
+ return "cidrs: array expected";
+ for (var i = 0; i < message.cidrs.length; ++i)
+ if (!$util.isString(message.cidrs[i]))
+ return "cidrs: string[] expected";
+ }
+ if (message.fqdns != null && message.hasOwnProperty("fqdns")) {
+ if (!Array.isArray(message.fqdns))
+ return "fqdns: array expected";
+ for (var i = 0; i < message.fqdns.length; ++i)
+ if (!$util.isString(message.fqdns[i]))
+ return "fqdns: string[] expected";
+ }
+ return null;
+ };
+
+ /**
+ * Creates a TunnelDestGroup message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.cloud.iap.v1.TunnelDestGroup
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.cloud.iap.v1.TunnelDestGroup} TunnelDestGroup
+ */
+ TunnelDestGroup.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.cloud.iap.v1.TunnelDestGroup)
+ return object;
+ var message = new $root.google.cloud.iap.v1.TunnelDestGroup();
+ if (object.name != null)
+ message.name = String(object.name);
+ if (object.cidrs) {
+ if (!Array.isArray(object.cidrs))
+ throw TypeError(".google.cloud.iap.v1.TunnelDestGroup.cidrs: array expected");
+ message.cidrs = [];
+ for (var i = 0; i < object.cidrs.length; ++i)
+ message.cidrs[i] = String(object.cidrs[i]);
+ }
+ if (object.fqdns) {
+ if (!Array.isArray(object.fqdns))
+ throw TypeError(".google.cloud.iap.v1.TunnelDestGroup.fqdns: array expected");
+ message.fqdns = [];
+ for (var i = 0; i < object.fqdns.length; ++i)
+ message.fqdns[i] = String(object.fqdns[i]);
+ }
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a TunnelDestGroup message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.cloud.iap.v1.TunnelDestGroup
+ * @static
+ * @param {google.cloud.iap.v1.TunnelDestGroup} message TunnelDestGroup
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ TunnelDestGroup.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.arrays || options.defaults) {
+ object.cidrs = [];
+ object.fqdns = [];
+ }
+ if (options.defaults)
+ object.name = "";
+ if (message.name != null && message.hasOwnProperty("name"))
+ object.name = message.name;
+ if (message.cidrs && message.cidrs.length) {
+ object.cidrs = [];
+ for (var j = 0; j < message.cidrs.length; ++j)
+ object.cidrs[j] = message.cidrs[j];
+ }
+ if (message.fqdns && message.fqdns.length) {
+ object.fqdns = [];
+ for (var j = 0; j < message.fqdns.length; ++j)
+ object.fqdns[j] = message.fqdns[j];
+ }
+ return object;
+ };
+
+ /**
+ * Converts this TunnelDestGroup to JSON.
+ * @function toJSON
+ * @memberof google.cloud.iap.v1.TunnelDestGroup
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ TunnelDestGroup.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for TunnelDestGroup
+ * @function getTypeUrl
+ * @memberof google.cloud.iap.v1.TunnelDestGroup
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ TunnelDestGroup.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.cloud.iap.v1.TunnelDestGroup";
+ };
+
+ return TunnelDestGroup;
+ })();
+
+ v1.IdentityAwareProxyOAuthService = (function() {
+
+ /**
+ * Constructs a new IdentityAwareProxyOAuthService service.
+ * @memberof google.cloud.iap.v1
+ * @classdesc Represents an IdentityAwareProxyOAuthService
+ * @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 IdentityAwareProxyOAuthService(rpcImpl, requestDelimited, responseDelimited) {
+ $protobuf.rpc.Service.call(this, rpcImpl, requestDelimited, responseDelimited);
+ }
+
+ (IdentityAwareProxyOAuthService.prototype = Object.create($protobuf.rpc.Service.prototype)).constructor = IdentityAwareProxyOAuthService;
+
+ /**
+ * Creates new IdentityAwareProxyOAuthService service using the specified rpc implementation.
+ * @function create
+ * @memberof google.cloud.iap.v1.IdentityAwareProxyOAuthService
+ * @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 {IdentityAwareProxyOAuthService} RPC service. Useful where requests and/or responses are streamed.
+ */
+ IdentityAwareProxyOAuthService.create = function create(rpcImpl, requestDelimited, responseDelimited) {
+ return new this(rpcImpl, requestDelimited, responseDelimited);
+ };
+
+ /**
+ * Callback as used by {@link google.cloud.iap.v1.IdentityAwareProxyOAuthService|listBrands}.
+ * @memberof google.cloud.iap.v1.IdentityAwareProxyOAuthService
+ * @typedef ListBrandsCallback
+ * @type {function}
+ * @param {Error|null} error Error, if any
+ * @param {google.cloud.iap.v1.ListBrandsResponse} [response] ListBrandsResponse
+ */
+
+ /**
+ * Calls ListBrands.
+ * @function listBrands
+ * @memberof google.cloud.iap.v1.IdentityAwareProxyOAuthService
+ * @instance
+ * @param {google.cloud.iap.v1.IListBrandsRequest} request ListBrandsRequest message or plain object
+ * @param {google.cloud.iap.v1.IdentityAwareProxyOAuthService.ListBrandsCallback} callback Node-style callback called with the error, if any, and ListBrandsResponse
+ * @returns {undefined}
+ * @variation 1
+ */
+ Object.defineProperty(IdentityAwareProxyOAuthService.prototype.listBrands = function listBrands(request, callback) {
+ return this.rpcCall(listBrands, $root.google.cloud.iap.v1.ListBrandsRequest, $root.google.cloud.iap.v1.ListBrandsResponse, request, callback);
+ }, "name", { value: "ListBrands" });
+
+ /**
+ * Calls ListBrands.
+ * @function listBrands
+ * @memberof google.cloud.iap.v1.IdentityAwareProxyOAuthService
+ * @instance
+ * @param {google.cloud.iap.v1.IListBrandsRequest} request ListBrandsRequest message or plain object
+ * @returns {Promise} Promise
+ * @variation 2
+ */
+
+ /**
+ * Callback as used by {@link google.cloud.iap.v1.IdentityAwareProxyOAuthService|createBrand}.
+ * @memberof google.cloud.iap.v1.IdentityAwareProxyOAuthService
+ * @typedef CreateBrandCallback
+ * @type {function}
+ * @param {Error|null} error Error, if any
+ * @param {google.cloud.iap.v1.Brand} [response] Brand
+ */
+
+ /**
+ * Calls CreateBrand.
+ * @function createBrand
+ * @memberof google.cloud.iap.v1.IdentityAwareProxyOAuthService
+ * @instance
+ * @param {google.cloud.iap.v1.ICreateBrandRequest} request CreateBrandRequest message or plain object
+ * @param {google.cloud.iap.v1.IdentityAwareProxyOAuthService.CreateBrandCallback} callback Node-style callback called with the error, if any, and Brand
+ * @returns {undefined}
+ * @variation 1
+ */
+ Object.defineProperty(IdentityAwareProxyOAuthService.prototype.createBrand = function createBrand(request, callback) {
+ return this.rpcCall(createBrand, $root.google.cloud.iap.v1.CreateBrandRequest, $root.google.cloud.iap.v1.Brand, request, callback);
+ }, "name", { value: "CreateBrand" });
+
+ /**
+ * Calls CreateBrand.
+ * @function createBrand
+ * @memberof google.cloud.iap.v1.IdentityAwareProxyOAuthService
+ * @instance
+ * @param {google.cloud.iap.v1.ICreateBrandRequest} request CreateBrandRequest message or plain object
+ * @returns {Promise} Promise
+ * @variation 2
+ */
+
+ /**
+ * Callback as used by {@link google.cloud.iap.v1.IdentityAwareProxyOAuthService|getBrand}.
+ * @memberof google.cloud.iap.v1.IdentityAwareProxyOAuthService
+ * @typedef GetBrandCallback
+ * @type {function}
+ * @param {Error|null} error Error, if any
+ * @param {google.cloud.iap.v1.Brand} [response] Brand
+ */
+
+ /**
+ * Calls GetBrand.
+ * @function getBrand
+ * @memberof google.cloud.iap.v1.IdentityAwareProxyOAuthService
+ * @instance
+ * @param {google.cloud.iap.v1.IGetBrandRequest} request GetBrandRequest message or plain object
+ * @param {google.cloud.iap.v1.IdentityAwareProxyOAuthService.GetBrandCallback} callback Node-style callback called with the error, if any, and Brand
+ * @returns {undefined}
+ * @variation 1
+ */
+ Object.defineProperty(IdentityAwareProxyOAuthService.prototype.getBrand = function getBrand(request, callback) {
+ return this.rpcCall(getBrand, $root.google.cloud.iap.v1.GetBrandRequest, $root.google.cloud.iap.v1.Brand, request, callback);
+ }, "name", { value: "GetBrand" });
+
+ /**
+ * Calls GetBrand.
+ * @function getBrand
+ * @memberof google.cloud.iap.v1.IdentityAwareProxyOAuthService
+ * @instance
+ * @param {google.cloud.iap.v1.IGetBrandRequest} request GetBrandRequest message or plain object
+ * @returns {Promise} Promise
+ * @variation 2
+ */
+
+ /**
+ * Callback as used by {@link google.cloud.iap.v1.IdentityAwareProxyOAuthService|createIdentityAwareProxyClient}.
+ * @memberof google.cloud.iap.v1.IdentityAwareProxyOAuthService
+ * @typedef CreateIdentityAwareProxyClientCallback
+ * @type {function}
+ * @param {Error|null} error Error, if any
+ * @param {google.cloud.iap.v1.IdentityAwareProxyClient} [response] IdentityAwareProxyClient
+ */
+
+ /**
+ * Calls CreateIdentityAwareProxyClient.
+ * @function createIdentityAwareProxyClient
+ * @memberof google.cloud.iap.v1.IdentityAwareProxyOAuthService
+ * @instance
+ * @param {google.cloud.iap.v1.ICreateIdentityAwareProxyClientRequest} request CreateIdentityAwareProxyClientRequest message or plain object
+ * @param {google.cloud.iap.v1.IdentityAwareProxyOAuthService.CreateIdentityAwareProxyClientCallback} callback Node-style callback called with the error, if any, and IdentityAwareProxyClient
+ * @returns {undefined}
+ * @variation 1
+ */
+ Object.defineProperty(IdentityAwareProxyOAuthService.prototype.createIdentityAwareProxyClient = function createIdentityAwareProxyClient(request, callback) {
+ return this.rpcCall(createIdentityAwareProxyClient, $root.google.cloud.iap.v1.CreateIdentityAwareProxyClientRequest, $root.google.cloud.iap.v1.IdentityAwareProxyClient, request, callback);
+ }, "name", { value: "CreateIdentityAwareProxyClient" });
+
+ /**
+ * Calls CreateIdentityAwareProxyClient.
+ * @function createIdentityAwareProxyClient
+ * @memberof google.cloud.iap.v1.IdentityAwareProxyOAuthService
+ * @instance
+ * @param {google.cloud.iap.v1.ICreateIdentityAwareProxyClientRequest} request CreateIdentityAwareProxyClientRequest message or plain object
+ * @returns {Promise} Promise
+ * @variation 2
+ */
+
+ /**
+ * Callback as used by {@link google.cloud.iap.v1.IdentityAwareProxyOAuthService|listIdentityAwareProxyClients}.
+ * @memberof google.cloud.iap.v1.IdentityAwareProxyOAuthService
+ * @typedef ListIdentityAwareProxyClientsCallback
+ * @type {function}
+ * @param {Error|null} error Error, if any
+ * @param {google.cloud.iap.v1.ListIdentityAwareProxyClientsResponse} [response] ListIdentityAwareProxyClientsResponse
+ */
+
+ /**
+ * Calls ListIdentityAwareProxyClients.
+ * @function listIdentityAwareProxyClients
+ * @memberof google.cloud.iap.v1.IdentityAwareProxyOAuthService
+ * @instance
+ * @param {google.cloud.iap.v1.IListIdentityAwareProxyClientsRequest} request ListIdentityAwareProxyClientsRequest message or plain object
+ * @param {google.cloud.iap.v1.IdentityAwareProxyOAuthService.ListIdentityAwareProxyClientsCallback} callback Node-style callback called with the error, if any, and ListIdentityAwareProxyClientsResponse
+ * @returns {undefined}
+ * @variation 1
+ */
+ Object.defineProperty(IdentityAwareProxyOAuthService.prototype.listIdentityAwareProxyClients = function listIdentityAwareProxyClients(request, callback) {
+ return this.rpcCall(listIdentityAwareProxyClients, $root.google.cloud.iap.v1.ListIdentityAwareProxyClientsRequest, $root.google.cloud.iap.v1.ListIdentityAwareProxyClientsResponse, request, callback);
+ }, "name", { value: "ListIdentityAwareProxyClients" });
+
+ /**
+ * Calls ListIdentityAwareProxyClients.
+ * @function listIdentityAwareProxyClients
+ * @memberof google.cloud.iap.v1.IdentityAwareProxyOAuthService
+ * @instance
+ * @param {google.cloud.iap.v1.IListIdentityAwareProxyClientsRequest} request ListIdentityAwareProxyClientsRequest message or plain object
+ * @returns {Promise} Promise
+ * @variation 2
+ */
+
+ /**
+ * Callback as used by {@link google.cloud.iap.v1.IdentityAwareProxyOAuthService|getIdentityAwareProxyClient}.
+ * @memberof google.cloud.iap.v1.IdentityAwareProxyOAuthService
+ * @typedef GetIdentityAwareProxyClientCallback
+ * @type {function}
+ * @param {Error|null} error Error, if any
+ * @param {google.cloud.iap.v1.IdentityAwareProxyClient} [response] IdentityAwareProxyClient
+ */
+
+ /**
+ * Calls GetIdentityAwareProxyClient.
+ * @function getIdentityAwareProxyClient
+ * @memberof google.cloud.iap.v1.IdentityAwareProxyOAuthService
+ * @instance
+ * @param {google.cloud.iap.v1.IGetIdentityAwareProxyClientRequest} request GetIdentityAwareProxyClientRequest message or plain object
+ * @param {google.cloud.iap.v1.IdentityAwareProxyOAuthService.GetIdentityAwareProxyClientCallback} callback Node-style callback called with the error, if any, and IdentityAwareProxyClient
+ * @returns {undefined}
+ * @variation 1
+ */
+ Object.defineProperty(IdentityAwareProxyOAuthService.prototype.getIdentityAwareProxyClient = function getIdentityAwareProxyClient(request, callback) {
+ return this.rpcCall(getIdentityAwareProxyClient, $root.google.cloud.iap.v1.GetIdentityAwareProxyClientRequest, $root.google.cloud.iap.v1.IdentityAwareProxyClient, request, callback);
+ }, "name", { value: "GetIdentityAwareProxyClient" });
+
+ /**
+ * Calls GetIdentityAwareProxyClient.
+ * @function getIdentityAwareProxyClient
+ * @memberof google.cloud.iap.v1.IdentityAwareProxyOAuthService
+ * @instance
+ * @param {google.cloud.iap.v1.IGetIdentityAwareProxyClientRequest} request GetIdentityAwareProxyClientRequest message or plain object
+ * @returns {Promise} Promise
+ * @variation 2
+ */
+
+ /**
+ * Callback as used by {@link google.cloud.iap.v1.IdentityAwareProxyOAuthService|resetIdentityAwareProxyClientSecret}.
+ * @memberof google.cloud.iap.v1.IdentityAwareProxyOAuthService
+ * @typedef ResetIdentityAwareProxyClientSecretCallback
+ * @type {function}
+ * @param {Error|null} error Error, if any
+ * @param {google.cloud.iap.v1.IdentityAwareProxyClient} [response] IdentityAwareProxyClient
+ */
+
+ /**
+ * Calls ResetIdentityAwareProxyClientSecret.
+ * @function resetIdentityAwareProxyClientSecret
+ * @memberof google.cloud.iap.v1.IdentityAwareProxyOAuthService
+ * @instance
+ * @param {google.cloud.iap.v1.IResetIdentityAwareProxyClientSecretRequest} request ResetIdentityAwareProxyClientSecretRequest message or plain object
+ * @param {google.cloud.iap.v1.IdentityAwareProxyOAuthService.ResetIdentityAwareProxyClientSecretCallback} callback Node-style callback called with the error, if any, and IdentityAwareProxyClient
+ * @returns {undefined}
+ * @variation 1
+ */
+ Object.defineProperty(IdentityAwareProxyOAuthService.prototype.resetIdentityAwareProxyClientSecret = function resetIdentityAwareProxyClientSecret(request, callback) {
+ return this.rpcCall(resetIdentityAwareProxyClientSecret, $root.google.cloud.iap.v1.ResetIdentityAwareProxyClientSecretRequest, $root.google.cloud.iap.v1.IdentityAwareProxyClient, request, callback);
+ }, "name", { value: "ResetIdentityAwareProxyClientSecret" });
+
+ /**
+ * Calls ResetIdentityAwareProxyClientSecret.
+ * @function resetIdentityAwareProxyClientSecret
+ * @memberof google.cloud.iap.v1.IdentityAwareProxyOAuthService
+ * @instance
+ * @param {google.cloud.iap.v1.IResetIdentityAwareProxyClientSecretRequest} request ResetIdentityAwareProxyClientSecretRequest message or plain object
+ * @returns {Promise} Promise
+ * @variation 2
+ */
+
+ /**
+ * Callback as used by {@link google.cloud.iap.v1.IdentityAwareProxyOAuthService|deleteIdentityAwareProxyClient}.
+ * @memberof google.cloud.iap.v1.IdentityAwareProxyOAuthService
+ * @typedef DeleteIdentityAwareProxyClientCallback
+ * @type {function}
+ * @param {Error|null} error Error, if any
+ * @param {google.protobuf.Empty} [response] Empty
+ */
+
+ /**
+ * Calls DeleteIdentityAwareProxyClient.
+ * @function deleteIdentityAwareProxyClient
+ * @memberof google.cloud.iap.v1.IdentityAwareProxyOAuthService
+ * @instance
+ * @param {google.cloud.iap.v1.IDeleteIdentityAwareProxyClientRequest} request DeleteIdentityAwareProxyClientRequest message or plain object
+ * @param {google.cloud.iap.v1.IdentityAwareProxyOAuthService.DeleteIdentityAwareProxyClientCallback} callback Node-style callback called with the error, if any, and Empty
+ * @returns {undefined}
+ * @variation 1
+ */
+ Object.defineProperty(IdentityAwareProxyOAuthService.prototype.deleteIdentityAwareProxyClient = function deleteIdentityAwareProxyClient(request, callback) {
+ return this.rpcCall(deleteIdentityAwareProxyClient, $root.google.cloud.iap.v1.DeleteIdentityAwareProxyClientRequest, $root.google.protobuf.Empty, request, callback);
+ }, "name", { value: "DeleteIdentityAwareProxyClient" });
+
+ /**
+ * Calls DeleteIdentityAwareProxyClient.
+ * @function deleteIdentityAwareProxyClient
+ * @memberof google.cloud.iap.v1.IdentityAwareProxyOAuthService
+ * @instance
+ * @param {google.cloud.iap.v1.IDeleteIdentityAwareProxyClientRequest} request DeleteIdentityAwareProxyClientRequest message or plain object
+ * @returns {Promise} Promise
+ * @variation 2
+ */
+
+ return IdentityAwareProxyOAuthService;
+ })();
+
+ v1.GetIapSettingsRequest = (function() {
+
+ /**
+ * Properties of a GetIapSettingsRequest.
+ * @memberof google.cloud.iap.v1
+ * @interface IGetIapSettingsRequest
+ * @property {string|null} [name] GetIapSettingsRequest name
+ */
+
+ /**
+ * Constructs a new GetIapSettingsRequest.
+ * @memberof google.cloud.iap.v1
+ * @classdesc Represents a GetIapSettingsRequest.
+ * @implements IGetIapSettingsRequest
+ * @constructor
+ * @param {google.cloud.iap.v1.IGetIapSettingsRequest=} [properties] Properties to set
+ */
+ function GetIapSettingsRequest(properties) {
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * GetIapSettingsRequest name.
+ * @member {string} name
+ * @memberof google.cloud.iap.v1.GetIapSettingsRequest
+ * @instance
+ */
+ GetIapSettingsRequest.prototype.name = "";
+
+ /**
+ * Creates a new GetIapSettingsRequest instance using the specified properties.
+ * @function create
+ * @memberof google.cloud.iap.v1.GetIapSettingsRequest
+ * @static
+ * @param {google.cloud.iap.v1.IGetIapSettingsRequest=} [properties] Properties to set
+ * @returns {google.cloud.iap.v1.GetIapSettingsRequest} GetIapSettingsRequest instance
+ */
+ GetIapSettingsRequest.create = function create(properties) {
+ return new GetIapSettingsRequest(properties);
+ };
+
+ /**
+ * Encodes the specified GetIapSettingsRequest message. Does not implicitly {@link google.cloud.iap.v1.GetIapSettingsRequest.verify|verify} messages.
+ * @function encode
+ * @memberof google.cloud.iap.v1.GetIapSettingsRequest
+ * @static
+ * @param {google.cloud.iap.v1.IGetIapSettingsRequest} message GetIapSettingsRequest message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ GetIapSettingsRequest.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 GetIapSettingsRequest message, length delimited. Does not implicitly {@link google.cloud.iap.v1.GetIapSettingsRequest.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.cloud.iap.v1.GetIapSettingsRequest
+ * @static
+ * @param {google.cloud.iap.v1.IGetIapSettingsRequest} message GetIapSettingsRequest message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ GetIapSettingsRequest.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a GetIapSettingsRequest message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.cloud.iap.v1.GetIapSettingsRequest
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.cloud.iap.v1.GetIapSettingsRequest} GetIapSettingsRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ GetIapSettingsRequest.decode = function 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.iap.v1.GetIapSettingsRequest();
+ 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 GetIapSettingsRequest message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.cloud.iap.v1.GetIapSettingsRequest
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.cloud.iap.v1.GetIapSettingsRequest} GetIapSettingsRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ GetIapSettingsRequest.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a GetIapSettingsRequest message.
+ * @function verify
+ * @memberof google.cloud.iap.v1.GetIapSettingsRequest
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ GetIapSettingsRequest.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 GetIapSettingsRequest message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.cloud.iap.v1.GetIapSettingsRequest
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.cloud.iap.v1.GetIapSettingsRequest} GetIapSettingsRequest
+ */
+ GetIapSettingsRequest.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.cloud.iap.v1.GetIapSettingsRequest)
+ return object;
+ var message = new $root.google.cloud.iap.v1.GetIapSettingsRequest();
+ if (object.name != null)
+ message.name = String(object.name);
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a GetIapSettingsRequest message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.cloud.iap.v1.GetIapSettingsRequest
+ * @static
+ * @param {google.cloud.iap.v1.GetIapSettingsRequest} message GetIapSettingsRequest
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ GetIapSettingsRequest.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 GetIapSettingsRequest to JSON.
+ * @function toJSON
+ * @memberof google.cloud.iap.v1.GetIapSettingsRequest
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ GetIapSettingsRequest.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for GetIapSettingsRequest
+ * @function getTypeUrl
+ * @memberof google.cloud.iap.v1.GetIapSettingsRequest
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ GetIapSettingsRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.cloud.iap.v1.GetIapSettingsRequest";
+ };
+
+ return GetIapSettingsRequest;
+ })();
+
+ v1.UpdateIapSettingsRequest = (function() {
+
+ /**
+ * Properties of an UpdateIapSettingsRequest.
+ * @memberof google.cloud.iap.v1
+ * @interface IUpdateIapSettingsRequest
+ * @property {google.cloud.iap.v1.IIapSettings|null} [iapSettings] UpdateIapSettingsRequest iapSettings
+ * @property {google.protobuf.IFieldMask|null} [updateMask] UpdateIapSettingsRequest updateMask
+ */
+
+ /**
+ * Constructs a new UpdateIapSettingsRequest.
+ * @memberof google.cloud.iap.v1
+ * @classdesc Represents an UpdateIapSettingsRequest.
+ * @implements IUpdateIapSettingsRequest
+ * @constructor
+ * @param {google.cloud.iap.v1.IUpdateIapSettingsRequest=} [properties] Properties to set
+ */
+ function UpdateIapSettingsRequest(properties) {
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * UpdateIapSettingsRequest iapSettings.
+ * @member {google.cloud.iap.v1.IIapSettings|null|undefined} iapSettings
+ * @memberof google.cloud.iap.v1.UpdateIapSettingsRequest
+ * @instance
+ */
+ UpdateIapSettingsRequest.prototype.iapSettings = null;
+
+ /**
+ * UpdateIapSettingsRequest updateMask.
+ * @member {google.protobuf.IFieldMask|null|undefined} updateMask
+ * @memberof google.cloud.iap.v1.UpdateIapSettingsRequest
+ * @instance
+ */
+ UpdateIapSettingsRequest.prototype.updateMask = null;
+
+ /**
+ * Creates a new UpdateIapSettingsRequest instance using the specified properties.
+ * @function create
+ * @memberof google.cloud.iap.v1.UpdateIapSettingsRequest
+ * @static
+ * @param {google.cloud.iap.v1.IUpdateIapSettingsRequest=} [properties] Properties to set
+ * @returns {google.cloud.iap.v1.UpdateIapSettingsRequest} UpdateIapSettingsRequest instance
+ */
+ UpdateIapSettingsRequest.create = function create(properties) {
+ return new UpdateIapSettingsRequest(properties);
+ };
+
+ /**
+ * Encodes the specified UpdateIapSettingsRequest message. Does not implicitly {@link google.cloud.iap.v1.UpdateIapSettingsRequest.verify|verify} messages.
+ * @function encode
+ * @memberof google.cloud.iap.v1.UpdateIapSettingsRequest
+ * @static
+ * @param {google.cloud.iap.v1.IUpdateIapSettingsRequest} message UpdateIapSettingsRequest message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ UpdateIapSettingsRequest.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.iapSettings != null && Object.hasOwnProperty.call(message, "iapSettings"))
+ $root.google.cloud.iap.v1.IapSettings.encode(message.iapSettings, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim();
+ 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();
+ return writer;
+ };
+
+ /**
+ * Encodes the specified UpdateIapSettingsRequest message, length delimited. Does not implicitly {@link google.cloud.iap.v1.UpdateIapSettingsRequest.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.cloud.iap.v1.UpdateIapSettingsRequest
+ * @static
+ * @param {google.cloud.iap.v1.IUpdateIapSettingsRequest} message UpdateIapSettingsRequest message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ UpdateIapSettingsRequest.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes an UpdateIapSettingsRequest message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.cloud.iap.v1.UpdateIapSettingsRequest
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.cloud.iap.v1.UpdateIapSettingsRequest} UpdateIapSettingsRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ UpdateIapSettingsRequest.decode = function 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.iap.v1.UpdateIapSettingsRequest();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.iapSettings = $root.google.cloud.iap.v1.IapSettings.decode(reader, reader.uint32());
+ break;
+ }
+ case 2: {
+ message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32());
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes an UpdateIapSettingsRequest message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.cloud.iap.v1.UpdateIapSettingsRequest
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.cloud.iap.v1.UpdateIapSettingsRequest} UpdateIapSettingsRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ UpdateIapSettingsRequest.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies an UpdateIapSettingsRequest message.
+ * @function verify
+ * @memberof google.cloud.iap.v1.UpdateIapSettingsRequest
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ UpdateIapSettingsRequest.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.iapSettings != null && message.hasOwnProperty("iapSettings")) {
+ var error = $root.google.cloud.iap.v1.IapSettings.verify(message.iapSettings);
+ if (error)
+ return "iapSettings." + error;
+ }
+ if (message.updateMask != null && message.hasOwnProperty("updateMask")) {
+ var error = $root.google.protobuf.FieldMask.verify(message.updateMask);
+ if (error)
+ return "updateMask." + error;
+ }
+ return null;
+ };
+
+ /**
+ * Creates an UpdateIapSettingsRequest message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.cloud.iap.v1.UpdateIapSettingsRequest
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.cloud.iap.v1.UpdateIapSettingsRequest} UpdateIapSettingsRequest
+ */
+ UpdateIapSettingsRequest.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.cloud.iap.v1.UpdateIapSettingsRequest)
+ return object;
+ var message = new $root.google.cloud.iap.v1.UpdateIapSettingsRequest();
+ if (object.iapSettings != null) {
+ if (typeof object.iapSettings !== "object")
+ throw TypeError(".google.cloud.iap.v1.UpdateIapSettingsRequest.iapSettings: object expected");
+ message.iapSettings = $root.google.cloud.iap.v1.IapSettings.fromObject(object.iapSettings);
+ }
+ if (object.updateMask != null) {
+ if (typeof object.updateMask !== "object")
+ throw TypeError(".google.cloud.iap.v1.UpdateIapSettingsRequest.updateMask: object expected");
+ message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask);
+ }
+ return message;
+ };
+
+ /**
+ * Creates a plain object from an UpdateIapSettingsRequest message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.cloud.iap.v1.UpdateIapSettingsRequest
+ * @static
+ * @param {google.cloud.iap.v1.UpdateIapSettingsRequest} message UpdateIapSettingsRequest
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ UpdateIapSettingsRequest.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.defaults) {
+ object.iapSettings = null;
+ object.updateMask = null;
+ }
+ if (message.iapSettings != null && message.hasOwnProperty("iapSettings"))
+ object.iapSettings = $root.google.cloud.iap.v1.IapSettings.toObject(message.iapSettings, options);
+ if (message.updateMask != null && message.hasOwnProperty("updateMask"))
+ object.updateMask = $root.google.protobuf.FieldMask.toObject(message.updateMask, options);
+ return object;
+ };
+
+ /**
+ * Converts this UpdateIapSettingsRequest to JSON.
+ * @function toJSON
+ * @memberof google.cloud.iap.v1.UpdateIapSettingsRequest
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ UpdateIapSettingsRequest.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for UpdateIapSettingsRequest
+ * @function getTypeUrl
+ * @memberof google.cloud.iap.v1.UpdateIapSettingsRequest
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ UpdateIapSettingsRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.cloud.iap.v1.UpdateIapSettingsRequest";
+ };
+
+ return UpdateIapSettingsRequest;
+ })();
+
+ v1.IapSettings = (function() {
+
+ /**
+ * Properties of an IapSettings.
+ * @memberof google.cloud.iap.v1
+ * @interface IIapSettings
+ * @property {string|null} [name] IapSettings name
+ * @property {google.cloud.iap.v1.IAccessSettings|null} [accessSettings] IapSettings accessSettings
+ * @property {google.cloud.iap.v1.IApplicationSettings|null} [applicationSettings] IapSettings applicationSettings
+ */
+
+ /**
+ * Constructs a new IapSettings.
+ * @memberof google.cloud.iap.v1
+ * @classdesc Represents an IapSettings.
+ * @implements IIapSettings
+ * @constructor
+ * @param {google.cloud.iap.v1.IIapSettings=} [properties] Properties to set
+ */
+ function IapSettings(properties) {
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * IapSettings name.
+ * @member {string} name
+ * @memberof google.cloud.iap.v1.IapSettings
+ * @instance
+ */
+ IapSettings.prototype.name = "";
+
+ /**
+ * IapSettings accessSettings.
+ * @member {google.cloud.iap.v1.IAccessSettings|null|undefined} accessSettings
+ * @memberof google.cloud.iap.v1.IapSettings
+ * @instance
+ */
+ IapSettings.prototype.accessSettings = null;
+
+ /**
+ * IapSettings applicationSettings.
+ * @member {google.cloud.iap.v1.IApplicationSettings|null|undefined} applicationSettings
+ * @memberof google.cloud.iap.v1.IapSettings
+ * @instance
+ */
+ IapSettings.prototype.applicationSettings = null;
+
+ /**
+ * Creates a new IapSettings instance using the specified properties.
+ * @function create
+ * @memberof google.cloud.iap.v1.IapSettings
+ * @static
+ * @param {google.cloud.iap.v1.IIapSettings=} [properties] Properties to set
+ * @returns {google.cloud.iap.v1.IapSettings} IapSettings instance
+ */
+ IapSettings.create = function create(properties) {
+ return new IapSettings(properties);
+ };
+
+ /**
+ * Encodes the specified IapSettings message. Does not implicitly {@link google.cloud.iap.v1.IapSettings.verify|verify} messages.
+ * @function encode
+ * @memberof google.cloud.iap.v1.IapSettings
+ * @static
+ * @param {google.cloud.iap.v1.IIapSettings} message IapSettings message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ IapSettings.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.accessSettings != null && Object.hasOwnProperty.call(message, "accessSettings"))
+ $root.google.cloud.iap.v1.AccessSettings.encode(message.accessSettings, writer.uint32(/* id 5, wireType 2 =*/42).fork()).ldelim();
+ if (message.applicationSettings != null && Object.hasOwnProperty.call(message, "applicationSettings"))
+ $root.google.cloud.iap.v1.ApplicationSettings.encode(message.applicationSettings, writer.uint32(/* id 6, wireType 2 =*/50).fork()).ldelim();
+ return writer;
+ };
+
+ /**
+ * Encodes the specified IapSettings message, length delimited. Does not implicitly {@link google.cloud.iap.v1.IapSettings.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.cloud.iap.v1.IapSettings
+ * @static
+ * @param {google.cloud.iap.v1.IIapSettings} message IapSettings message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ IapSettings.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes an IapSettings message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.cloud.iap.v1.IapSettings
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.cloud.iap.v1.IapSettings} IapSettings
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ IapSettings.decode = function 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.iap.v1.IapSettings();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.name = reader.string();
+ break;
+ }
+ case 5: {
+ message.accessSettings = $root.google.cloud.iap.v1.AccessSettings.decode(reader, reader.uint32());
+ break;
+ }
+ case 6: {
+ message.applicationSettings = $root.google.cloud.iap.v1.ApplicationSettings.decode(reader, reader.uint32());
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes an IapSettings message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.cloud.iap.v1.IapSettings
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.cloud.iap.v1.IapSettings} IapSettings
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ IapSettings.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies an IapSettings message.
+ * @function verify
+ * @memberof google.cloud.iap.v1.IapSettings
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ IapSettings.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.accessSettings != null && message.hasOwnProperty("accessSettings")) {
+ var error = $root.google.cloud.iap.v1.AccessSettings.verify(message.accessSettings);
+ if (error)
+ return "accessSettings." + error;
+ }
+ if (message.applicationSettings != null && message.hasOwnProperty("applicationSettings")) {
+ var error = $root.google.cloud.iap.v1.ApplicationSettings.verify(message.applicationSettings);
+ if (error)
+ return "applicationSettings." + error;
+ }
+ return null;
+ };
+
+ /**
+ * Creates an IapSettings message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.cloud.iap.v1.IapSettings
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.cloud.iap.v1.IapSettings} IapSettings
+ */
+ IapSettings.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.cloud.iap.v1.IapSettings)
+ return object;
+ var message = new $root.google.cloud.iap.v1.IapSettings();
+ if (object.name != null)
+ message.name = String(object.name);
+ if (object.accessSettings != null) {
+ if (typeof object.accessSettings !== "object")
+ throw TypeError(".google.cloud.iap.v1.IapSettings.accessSettings: object expected");
+ message.accessSettings = $root.google.cloud.iap.v1.AccessSettings.fromObject(object.accessSettings);
+ }
+ if (object.applicationSettings != null) {
+ if (typeof object.applicationSettings !== "object")
+ throw TypeError(".google.cloud.iap.v1.IapSettings.applicationSettings: object expected");
+ message.applicationSettings = $root.google.cloud.iap.v1.ApplicationSettings.fromObject(object.applicationSettings);
+ }
+ return message;
+ };
+
+ /**
+ * Creates a plain object from an IapSettings message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.cloud.iap.v1.IapSettings
+ * @static
+ * @param {google.cloud.iap.v1.IapSettings} message IapSettings
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ IapSettings.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.defaults) {
+ object.name = "";
+ object.accessSettings = null;
+ object.applicationSettings = null;
+ }
+ if (message.name != null && message.hasOwnProperty("name"))
+ object.name = message.name;
+ if (message.accessSettings != null && message.hasOwnProperty("accessSettings"))
+ object.accessSettings = $root.google.cloud.iap.v1.AccessSettings.toObject(message.accessSettings, options);
+ if (message.applicationSettings != null && message.hasOwnProperty("applicationSettings"))
+ object.applicationSettings = $root.google.cloud.iap.v1.ApplicationSettings.toObject(message.applicationSettings, options);
+ return object;
+ };
+
+ /**
+ * Converts this IapSettings to JSON.
+ * @function toJSON
+ * @memberof google.cloud.iap.v1.IapSettings
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ IapSettings.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for IapSettings
+ * @function getTypeUrl
+ * @memberof google.cloud.iap.v1.IapSettings
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ IapSettings.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.cloud.iap.v1.IapSettings";
+ };
+
+ return IapSettings;
+ })();
+
+ v1.AccessSettings = (function() {
+
+ /**
+ * Properties of an AccessSettings.
+ * @memberof google.cloud.iap.v1
+ * @interface IAccessSettings
+ * @property {google.cloud.iap.v1.IGcipSettings|null} [gcipSettings] AccessSettings gcipSettings
+ * @property {google.cloud.iap.v1.ICorsSettings|null} [corsSettings] AccessSettings corsSettings
+ * @property {google.cloud.iap.v1.IOAuthSettings|null} [oauthSettings] AccessSettings oauthSettings
+ * @property {google.cloud.iap.v1.IReauthSettings|null} [reauthSettings] AccessSettings reauthSettings
+ */
+
+ /**
+ * Constructs a new AccessSettings.
+ * @memberof google.cloud.iap.v1
+ * @classdesc Represents an AccessSettings.
+ * @implements IAccessSettings
+ * @constructor
+ * @param {google.cloud.iap.v1.IAccessSettings=} [properties] Properties to set
+ */
+ function AccessSettings(properties) {
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * AccessSettings gcipSettings.
+ * @member {google.cloud.iap.v1.IGcipSettings|null|undefined} gcipSettings
+ * @memberof google.cloud.iap.v1.AccessSettings
+ * @instance
+ */
+ AccessSettings.prototype.gcipSettings = null;
+
+ /**
+ * AccessSettings corsSettings.
+ * @member {google.cloud.iap.v1.ICorsSettings|null|undefined} corsSettings
+ * @memberof google.cloud.iap.v1.AccessSettings
+ * @instance
+ */
+ AccessSettings.prototype.corsSettings = null;
+
+ /**
+ * AccessSettings oauthSettings.
+ * @member {google.cloud.iap.v1.IOAuthSettings|null|undefined} oauthSettings
+ * @memberof google.cloud.iap.v1.AccessSettings
+ * @instance
+ */
+ AccessSettings.prototype.oauthSettings = null;
+
+ /**
+ * AccessSettings reauthSettings.
+ * @member {google.cloud.iap.v1.IReauthSettings|null|undefined} reauthSettings
+ * @memberof google.cloud.iap.v1.AccessSettings
+ * @instance
+ */
+ AccessSettings.prototype.reauthSettings = null;
+
+ /**
+ * Creates a new AccessSettings instance using the specified properties.
+ * @function create
+ * @memberof google.cloud.iap.v1.AccessSettings
+ * @static
+ * @param {google.cloud.iap.v1.IAccessSettings=} [properties] Properties to set
+ * @returns {google.cloud.iap.v1.AccessSettings} AccessSettings instance
+ */
+ AccessSettings.create = function create(properties) {
+ return new AccessSettings(properties);
+ };
+
+ /**
+ * Encodes the specified AccessSettings message. Does not implicitly {@link google.cloud.iap.v1.AccessSettings.verify|verify} messages.
+ * @function encode
+ * @memberof google.cloud.iap.v1.AccessSettings
+ * @static
+ * @param {google.cloud.iap.v1.IAccessSettings} message AccessSettings message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ AccessSettings.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.gcipSettings != null && Object.hasOwnProperty.call(message, "gcipSettings"))
+ $root.google.cloud.iap.v1.GcipSettings.encode(message.gcipSettings, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim();
+ if (message.corsSettings != null && Object.hasOwnProperty.call(message, "corsSettings"))
+ $root.google.cloud.iap.v1.CorsSettings.encode(message.corsSettings, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim();
+ if (message.oauthSettings != null && Object.hasOwnProperty.call(message, "oauthSettings"))
+ $root.google.cloud.iap.v1.OAuthSettings.encode(message.oauthSettings, writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim();
+ if (message.reauthSettings != null && Object.hasOwnProperty.call(message, "reauthSettings"))
+ $root.google.cloud.iap.v1.ReauthSettings.encode(message.reauthSettings, writer.uint32(/* id 6, wireType 2 =*/50).fork()).ldelim();
+ return writer;
+ };
+
+ /**
+ * Encodes the specified AccessSettings message, length delimited. Does not implicitly {@link google.cloud.iap.v1.AccessSettings.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.cloud.iap.v1.AccessSettings
+ * @static
+ * @param {google.cloud.iap.v1.IAccessSettings} message AccessSettings message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ AccessSettings.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes an AccessSettings message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.cloud.iap.v1.AccessSettings
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.cloud.iap.v1.AccessSettings} AccessSettings
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ AccessSettings.decode = function 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.iap.v1.AccessSettings();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.gcipSettings = $root.google.cloud.iap.v1.GcipSettings.decode(reader, reader.uint32());
+ break;
+ }
+ case 2: {
+ message.corsSettings = $root.google.cloud.iap.v1.CorsSettings.decode(reader, reader.uint32());
+ break;
+ }
+ case 3: {
+ message.oauthSettings = $root.google.cloud.iap.v1.OAuthSettings.decode(reader, reader.uint32());
+ break;
+ }
+ case 6: {
+ message.reauthSettings = $root.google.cloud.iap.v1.ReauthSettings.decode(reader, reader.uint32());
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes an AccessSettings message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.cloud.iap.v1.AccessSettings
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.cloud.iap.v1.AccessSettings} AccessSettings
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ AccessSettings.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies an AccessSettings message.
+ * @function verify
+ * @memberof google.cloud.iap.v1.AccessSettings
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ AccessSettings.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.gcipSettings != null && message.hasOwnProperty("gcipSettings")) {
+ var error = $root.google.cloud.iap.v1.GcipSettings.verify(message.gcipSettings);
+ if (error)
+ return "gcipSettings." + error;
+ }
+ if (message.corsSettings != null && message.hasOwnProperty("corsSettings")) {
+ var error = $root.google.cloud.iap.v1.CorsSettings.verify(message.corsSettings);
+ if (error)
+ return "corsSettings." + error;
+ }
+ if (message.oauthSettings != null && message.hasOwnProperty("oauthSettings")) {
+ var error = $root.google.cloud.iap.v1.OAuthSettings.verify(message.oauthSettings);
+ if (error)
+ return "oauthSettings." + error;
+ }
+ if (message.reauthSettings != null && message.hasOwnProperty("reauthSettings")) {
+ var error = $root.google.cloud.iap.v1.ReauthSettings.verify(message.reauthSettings);
+ if (error)
+ return "reauthSettings." + error;
+ }
+ return null;
+ };
+
+ /**
+ * Creates an AccessSettings message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.cloud.iap.v1.AccessSettings
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.cloud.iap.v1.AccessSettings} AccessSettings
+ */
+ AccessSettings.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.cloud.iap.v1.AccessSettings)
+ return object;
+ var message = new $root.google.cloud.iap.v1.AccessSettings();
+ if (object.gcipSettings != null) {
+ if (typeof object.gcipSettings !== "object")
+ throw TypeError(".google.cloud.iap.v1.AccessSettings.gcipSettings: object expected");
+ message.gcipSettings = $root.google.cloud.iap.v1.GcipSettings.fromObject(object.gcipSettings);
+ }
+ if (object.corsSettings != null) {
+ if (typeof object.corsSettings !== "object")
+ throw TypeError(".google.cloud.iap.v1.AccessSettings.corsSettings: object expected");
+ message.corsSettings = $root.google.cloud.iap.v1.CorsSettings.fromObject(object.corsSettings);
+ }
+ if (object.oauthSettings != null) {
+ if (typeof object.oauthSettings !== "object")
+ throw TypeError(".google.cloud.iap.v1.AccessSettings.oauthSettings: object expected");
+ message.oauthSettings = $root.google.cloud.iap.v1.OAuthSettings.fromObject(object.oauthSettings);
+ }
+ if (object.reauthSettings != null) {
+ if (typeof object.reauthSettings !== "object")
+ throw TypeError(".google.cloud.iap.v1.AccessSettings.reauthSettings: object expected");
+ message.reauthSettings = $root.google.cloud.iap.v1.ReauthSettings.fromObject(object.reauthSettings);
+ }
+ return message;
+ };
+
+ /**
+ * Creates a plain object from an AccessSettings message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.cloud.iap.v1.AccessSettings
+ * @static
+ * @param {google.cloud.iap.v1.AccessSettings} message AccessSettings
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ AccessSettings.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.defaults) {
+ object.gcipSettings = null;
+ object.corsSettings = null;
+ object.oauthSettings = null;
+ object.reauthSettings = null;
+ }
+ if (message.gcipSettings != null && message.hasOwnProperty("gcipSettings"))
+ object.gcipSettings = $root.google.cloud.iap.v1.GcipSettings.toObject(message.gcipSettings, options);
+ if (message.corsSettings != null && message.hasOwnProperty("corsSettings"))
+ object.corsSettings = $root.google.cloud.iap.v1.CorsSettings.toObject(message.corsSettings, options);
+ if (message.oauthSettings != null && message.hasOwnProperty("oauthSettings"))
+ object.oauthSettings = $root.google.cloud.iap.v1.OAuthSettings.toObject(message.oauthSettings, options);
+ if (message.reauthSettings != null && message.hasOwnProperty("reauthSettings"))
+ object.reauthSettings = $root.google.cloud.iap.v1.ReauthSettings.toObject(message.reauthSettings, options);
+ return object;
+ };
+
+ /**
+ * Converts this AccessSettings to JSON.
+ * @function toJSON
+ * @memberof google.cloud.iap.v1.AccessSettings
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ AccessSettings.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for AccessSettings
+ * @function getTypeUrl
+ * @memberof google.cloud.iap.v1.AccessSettings
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ AccessSettings.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.cloud.iap.v1.AccessSettings";
+ };
+
+ return AccessSettings;
+ })();
+
+ v1.GcipSettings = (function() {
+
+ /**
+ * Properties of a GcipSettings.
+ * @memberof google.cloud.iap.v1
+ * @interface IGcipSettings
+ * @property {Array.|null} [tenantIds] GcipSettings tenantIds
+ * @property {google.protobuf.IStringValue|null} [loginPageUri] GcipSettings loginPageUri
+ */
+
+ /**
+ * Constructs a new GcipSettings.
+ * @memberof google.cloud.iap.v1
+ * @classdesc Represents a GcipSettings.
+ * @implements IGcipSettings
+ * @constructor
+ * @param {google.cloud.iap.v1.IGcipSettings=} [properties] Properties to set
+ */
+ function GcipSettings(properties) {
+ this.tenantIds = [];
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * GcipSettings tenantIds.
+ * @member {Array.} tenantIds
+ * @memberof google.cloud.iap.v1.GcipSettings
+ * @instance
+ */
+ GcipSettings.prototype.tenantIds = $util.emptyArray;
+
+ /**
+ * GcipSettings loginPageUri.
+ * @member {google.protobuf.IStringValue|null|undefined} loginPageUri
+ * @memberof google.cloud.iap.v1.GcipSettings
+ * @instance
+ */
+ GcipSettings.prototype.loginPageUri = null;
+
+ /**
+ * Creates a new GcipSettings instance using the specified properties.
+ * @function create
+ * @memberof google.cloud.iap.v1.GcipSettings
+ * @static
+ * @param {google.cloud.iap.v1.IGcipSettings=} [properties] Properties to set
+ * @returns {google.cloud.iap.v1.GcipSettings} GcipSettings instance
+ */
+ GcipSettings.create = function create(properties) {
+ return new GcipSettings(properties);
+ };
+
+ /**
+ * Encodes the specified GcipSettings message. Does not implicitly {@link google.cloud.iap.v1.GcipSettings.verify|verify} messages.
+ * @function encode
+ * @memberof google.cloud.iap.v1.GcipSettings
+ * @static
+ * @param {google.cloud.iap.v1.IGcipSettings} message GcipSettings message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ GcipSettings.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.tenantIds != null && message.tenantIds.length)
+ for (var i = 0; i < message.tenantIds.length; ++i)
+ writer.uint32(/* id 1, wireType 2 =*/10).string(message.tenantIds[i]);
+ if (message.loginPageUri != null && Object.hasOwnProperty.call(message, "loginPageUri"))
+ $root.google.protobuf.StringValue.encode(message.loginPageUri, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim();
+ return writer;
+ };
+
+ /**
+ * Encodes the specified GcipSettings message, length delimited. Does not implicitly {@link google.cloud.iap.v1.GcipSettings.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.cloud.iap.v1.GcipSettings
+ * @static
+ * @param {google.cloud.iap.v1.IGcipSettings} message GcipSettings message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ GcipSettings.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a GcipSettings message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.cloud.iap.v1.GcipSettings
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.cloud.iap.v1.GcipSettings} GcipSettings
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ GcipSettings.decode = function 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.iap.v1.GcipSettings();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ if (!(message.tenantIds && message.tenantIds.length))
+ message.tenantIds = [];
+ message.tenantIds.push(reader.string());
+ break;
+ }
+ case 2: {
+ message.loginPageUri = $root.google.protobuf.StringValue.decode(reader, reader.uint32());
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a GcipSettings message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.cloud.iap.v1.GcipSettings
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.cloud.iap.v1.GcipSettings} GcipSettings
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ GcipSettings.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a GcipSettings message.
+ * @function verify
+ * @memberof google.cloud.iap.v1.GcipSettings
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ GcipSettings.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.tenantIds != null && message.hasOwnProperty("tenantIds")) {
+ if (!Array.isArray(message.tenantIds))
+ return "tenantIds: array expected";
+ for (var i = 0; i < message.tenantIds.length; ++i)
+ if (!$util.isString(message.tenantIds[i]))
+ return "tenantIds: string[] expected";
+ }
+ if (message.loginPageUri != null && message.hasOwnProperty("loginPageUri")) {
+ var error = $root.google.protobuf.StringValue.verify(message.loginPageUri);
+ if (error)
+ return "loginPageUri." + error;
+ }
+ return null;
+ };
+
+ /**
+ * Creates a GcipSettings message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.cloud.iap.v1.GcipSettings
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.cloud.iap.v1.GcipSettings} GcipSettings
+ */
+ GcipSettings.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.cloud.iap.v1.GcipSettings)
+ return object;
+ var message = new $root.google.cloud.iap.v1.GcipSettings();
+ if (object.tenantIds) {
+ if (!Array.isArray(object.tenantIds))
+ throw TypeError(".google.cloud.iap.v1.GcipSettings.tenantIds: array expected");
+ message.tenantIds = [];
+ for (var i = 0; i < object.tenantIds.length; ++i)
+ message.tenantIds[i] = String(object.tenantIds[i]);
+ }
+ if (object.loginPageUri != null) {
+ if (typeof object.loginPageUri !== "object")
+ throw TypeError(".google.cloud.iap.v1.GcipSettings.loginPageUri: object expected");
+ message.loginPageUri = $root.google.protobuf.StringValue.fromObject(object.loginPageUri);
+ }
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a GcipSettings message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.cloud.iap.v1.GcipSettings
+ * @static
+ * @param {google.cloud.iap.v1.GcipSettings} message GcipSettings
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ GcipSettings.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.arrays || options.defaults)
+ object.tenantIds = [];
+ if (options.defaults)
+ object.loginPageUri = null;
+ if (message.tenantIds && message.tenantIds.length) {
+ object.tenantIds = [];
+ for (var j = 0; j < message.tenantIds.length; ++j)
+ object.tenantIds[j] = message.tenantIds[j];
+ }
+ if (message.loginPageUri != null && message.hasOwnProperty("loginPageUri"))
+ object.loginPageUri = $root.google.protobuf.StringValue.toObject(message.loginPageUri, options);
+ return object;
+ };
+
+ /**
+ * Converts this GcipSettings to JSON.
+ * @function toJSON
+ * @memberof google.cloud.iap.v1.GcipSettings
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ GcipSettings.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for GcipSettings
+ * @function getTypeUrl
+ * @memberof google.cloud.iap.v1.GcipSettings
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ GcipSettings.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.cloud.iap.v1.GcipSettings";
+ };
+
+ return GcipSettings;
+ })();
+
+ v1.CorsSettings = (function() {
+
+ /**
+ * Properties of a CorsSettings.
+ * @memberof google.cloud.iap.v1
+ * @interface ICorsSettings
+ * @property {google.protobuf.IBoolValue|null} [allowHttpOptions] CorsSettings allowHttpOptions
+ */
+
+ /**
+ * Constructs a new CorsSettings.
+ * @memberof google.cloud.iap.v1
+ * @classdesc Represents a CorsSettings.
+ * @implements ICorsSettings
+ * @constructor
+ * @param {google.cloud.iap.v1.ICorsSettings=} [properties] Properties to set
+ */
+ function CorsSettings(properties) {
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * CorsSettings allowHttpOptions.
+ * @member {google.protobuf.IBoolValue|null|undefined} allowHttpOptions
+ * @memberof google.cloud.iap.v1.CorsSettings
+ * @instance
+ */
+ CorsSettings.prototype.allowHttpOptions = null;
+
+ /**
+ * Creates a new CorsSettings instance using the specified properties.
+ * @function create
+ * @memberof google.cloud.iap.v1.CorsSettings
+ * @static
+ * @param {google.cloud.iap.v1.ICorsSettings=} [properties] Properties to set
+ * @returns {google.cloud.iap.v1.CorsSettings} CorsSettings instance
+ */
+ CorsSettings.create = function create(properties) {
+ return new CorsSettings(properties);
+ };
+
+ /**
+ * Encodes the specified CorsSettings message. Does not implicitly {@link google.cloud.iap.v1.CorsSettings.verify|verify} messages.
+ * @function encode
+ * @memberof google.cloud.iap.v1.CorsSettings
+ * @static
+ * @param {google.cloud.iap.v1.ICorsSettings} message CorsSettings message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ CorsSettings.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.allowHttpOptions != null && Object.hasOwnProperty.call(message, "allowHttpOptions"))
+ $root.google.protobuf.BoolValue.encode(message.allowHttpOptions, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim();
+ return writer;
+ };
+
+ /**
+ * Encodes the specified CorsSettings message, length delimited. Does not implicitly {@link google.cloud.iap.v1.CorsSettings.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.cloud.iap.v1.CorsSettings
+ * @static
+ * @param {google.cloud.iap.v1.ICorsSettings} message CorsSettings message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ CorsSettings.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a CorsSettings message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.cloud.iap.v1.CorsSettings
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.cloud.iap.v1.CorsSettings} CorsSettings
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ CorsSettings.decode = function 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.iap.v1.CorsSettings();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.allowHttpOptions = $root.google.protobuf.BoolValue.decode(reader, reader.uint32());
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a CorsSettings message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.cloud.iap.v1.CorsSettings
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.cloud.iap.v1.CorsSettings} CorsSettings
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ CorsSettings.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a CorsSettings message.
+ * @function verify
+ * @memberof google.cloud.iap.v1.CorsSettings
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ CorsSettings.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.allowHttpOptions != null && message.hasOwnProperty("allowHttpOptions")) {
+ var error = $root.google.protobuf.BoolValue.verify(message.allowHttpOptions);
+ if (error)
+ return "allowHttpOptions." + error;
+ }
+ return null;
+ };
+
+ /**
+ * Creates a CorsSettings message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.cloud.iap.v1.CorsSettings
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.cloud.iap.v1.CorsSettings} CorsSettings
+ */
+ CorsSettings.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.cloud.iap.v1.CorsSettings)
+ return object;
+ var message = new $root.google.cloud.iap.v1.CorsSettings();
+ if (object.allowHttpOptions != null) {
+ if (typeof object.allowHttpOptions !== "object")
+ throw TypeError(".google.cloud.iap.v1.CorsSettings.allowHttpOptions: object expected");
+ message.allowHttpOptions = $root.google.protobuf.BoolValue.fromObject(object.allowHttpOptions);
+ }
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a CorsSettings message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.cloud.iap.v1.CorsSettings
+ * @static
+ * @param {google.cloud.iap.v1.CorsSettings} message CorsSettings
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ CorsSettings.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.defaults)
+ object.allowHttpOptions = null;
+ if (message.allowHttpOptions != null && message.hasOwnProperty("allowHttpOptions"))
+ object.allowHttpOptions = $root.google.protobuf.BoolValue.toObject(message.allowHttpOptions, options);
+ return object;
+ };
+
+ /**
+ * Converts this CorsSettings to JSON.
+ * @function toJSON
+ * @memberof google.cloud.iap.v1.CorsSettings
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ CorsSettings.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for CorsSettings
+ * @function getTypeUrl
+ * @memberof google.cloud.iap.v1.CorsSettings
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ CorsSettings.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.cloud.iap.v1.CorsSettings";
+ };
+
+ return CorsSettings;
+ })();
+
+ v1.OAuthSettings = (function() {
+
+ /**
+ * Properties of a OAuthSettings.
+ * @memberof google.cloud.iap.v1
+ * @interface IOAuthSettings
+ * @property {google.protobuf.IStringValue|null} [loginHint] OAuthSettings loginHint
+ */
+
+ /**
+ * Constructs a new OAuthSettings.
+ * @memberof google.cloud.iap.v1
+ * @classdesc Represents a OAuthSettings.
+ * @implements IOAuthSettings
+ * @constructor
+ * @param {google.cloud.iap.v1.IOAuthSettings=} [properties] Properties to set
+ */
+ function OAuthSettings(properties) {
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * OAuthSettings loginHint.
+ * @member {google.protobuf.IStringValue|null|undefined} loginHint
+ * @memberof google.cloud.iap.v1.OAuthSettings
+ * @instance
+ */
+ OAuthSettings.prototype.loginHint = null;
+
+ /**
+ * Creates a new OAuthSettings instance using the specified properties.
+ * @function create
+ * @memberof google.cloud.iap.v1.OAuthSettings
+ * @static
+ * @param {google.cloud.iap.v1.IOAuthSettings=} [properties] Properties to set
+ * @returns {google.cloud.iap.v1.OAuthSettings} OAuthSettings instance
+ */
+ OAuthSettings.create = function create(properties) {
+ return new OAuthSettings(properties);
+ };
+
+ /**
+ * Encodes the specified OAuthSettings message. Does not implicitly {@link google.cloud.iap.v1.OAuthSettings.verify|verify} messages.
+ * @function encode
+ * @memberof google.cloud.iap.v1.OAuthSettings
+ * @static
+ * @param {google.cloud.iap.v1.IOAuthSettings} message OAuthSettings message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ OAuthSettings.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.loginHint != null && Object.hasOwnProperty.call(message, "loginHint"))
+ $root.google.protobuf.StringValue.encode(message.loginHint, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim();
+ return writer;
+ };
+
+ /**
+ * Encodes the specified OAuthSettings message, length delimited. Does not implicitly {@link google.cloud.iap.v1.OAuthSettings.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.cloud.iap.v1.OAuthSettings
+ * @static
+ * @param {google.cloud.iap.v1.IOAuthSettings} message OAuthSettings message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ OAuthSettings.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a OAuthSettings message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.cloud.iap.v1.OAuthSettings
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.cloud.iap.v1.OAuthSettings} OAuthSettings
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ OAuthSettings.decode = function 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.iap.v1.OAuthSettings();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 2: {
+ message.loginHint = $root.google.protobuf.StringValue.decode(reader, reader.uint32());
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a OAuthSettings message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.cloud.iap.v1.OAuthSettings
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.cloud.iap.v1.OAuthSettings} OAuthSettings
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ OAuthSettings.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a OAuthSettings message.
+ * @function verify
+ * @memberof google.cloud.iap.v1.OAuthSettings
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ OAuthSettings.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.loginHint != null && message.hasOwnProperty("loginHint")) {
+ var error = $root.google.protobuf.StringValue.verify(message.loginHint);
+ if (error)
+ return "loginHint." + error;
+ }
+ return null;
+ };
+
+ /**
+ * Creates a OAuthSettings message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.cloud.iap.v1.OAuthSettings
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.cloud.iap.v1.OAuthSettings} OAuthSettings
+ */
+ OAuthSettings.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.cloud.iap.v1.OAuthSettings)
+ return object;
+ var message = new $root.google.cloud.iap.v1.OAuthSettings();
+ if (object.loginHint != null) {
+ if (typeof object.loginHint !== "object")
+ throw TypeError(".google.cloud.iap.v1.OAuthSettings.loginHint: object expected");
+ message.loginHint = $root.google.protobuf.StringValue.fromObject(object.loginHint);
+ }
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a OAuthSettings message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.cloud.iap.v1.OAuthSettings
+ * @static
+ * @param {google.cloud.iap.v1.OAuthSettings} message OAuthSettings
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ OAuthSettings.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.defaults)
+ object.loginHint = null;
+ if (message.loginHint != null && message.hasOwnProperty("loginHint"))
+ object.loginHint = $root.google.protobuf.StringValue.toObject(message.loginHint, options);
+ return object;
+ };
+
+ /**
+ * Converts this OAuthSettings to JSON.
+ * @function toJSON
+ * @memberof google.cloud.iap.v1.OAuthSettings
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ OAuthSettings.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for OAuthSettings
+ * @function getTypeUrl
+ * @memberof google.cloud.iap.v1.OAuthSettings
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ OAuthSettings.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.cloud.iap.v1.OAuthSettings";
+ };
+
+ return OAuthSettings;
+ })();
+
+ v1.ReauthSettings = (function() {
+
+ /**
+ * Properties of a ReauthSettings.
+ * @memberof google.cloud.iap.v1
+ * @interface IReauthSettings
+ * @property {google.cloud.iap.v1.ReauthSettings.Method|null} [method] ReauthSettings method
+ * @property {google.protobuf.IDuration|null} [maxAge] ReauthSettings maxAge
+ * @property {google.cloud.iap.v1.ReauthSettings.PolicyType|null} [policyType] ReauthSettings policyType
+ */
+
+ /**
+ * Constructs a new ReauthSettings.
+ * @memberof google.cloud.iap.v1
+ * @classdesc Represents a ReauthSettings.
+ * @implements IReauthSettings
+ * @constructor
+ * @param {google.cloud.iap.v1.IReauthSettings=} [properties] Properties to set
+ */
+ function ReauthSettings(properties) {
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * ReauthSettings method.
+ * @member {google.cloud.iap.v1.ReauthSettings.Method} method
+ * @memberof google.cloud.iap.v1.ReauthSettings
+ * @instance
+ */
+ ReauthSettings.prototype.method = 0;
+
+ /**
+ * ReauthSettings maxAge.
+ * @member {google.protobuf.IDuration|null|undefined} maxAge
+ * @memberof google.cloud.iap.v1.ReauthSettings
+ * @instance
+ */
+ ReauthSettings.prototype.maxAge = null;
+
+ /**
+ * ReauthSettings policyType.
+ * @member {google.cloud.iap.v1.ReauthSettings.PolicyType} policyType
+ * @memberof google.cloud.iap.v1.ReauthSettings
+ * @instance
+ */
+ ReauthSettings.prototype.policyType = 0;
+
+ /**
+ * Creates a new ReauthSettings instance using the specified properties.
+ * @function create
+ * @memberof google.cloud.iap.v1.ReauthSettings
+ * @static
+ * @param {google.cloud.iap.v1.IReauthSettings=} [properties] Properties to set
+ * @returns {google.cloud.iap.v1.ReauthSettings} ReauthSettings instance
+ */
+ ReauthSettings.create = function create(properties) {
+ return new ReauthSettings(properties);
+ };
+
+ /**
+ * Encodes the specified ReauthSettings message. Does not implicitly {@link google.cloud.iap.v1.ReauthSettings.verify|verify} messages.
+ * @function encode
+ * @memberof google.cloud.iap.v1.ReauthSettings
+ * @static
+ * @param {google.cloud.iap.v1.IReauthSettings} message ReauthSettings message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ ReauthSettings.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.method != null && Object.hasOwnProperty.call(message, "method"))
+ writer.uint32(/* id 1, wireType 0 =*/8).int32(message.method);
+ if (message.maxAge != null && Object.hasOwnProperty.call(message, "maxAge"))
+ $root.google.protobuf.Duration.encode(message.maxAge, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim();
+ if (message.policyType != null && Object.hasOwnProperty.call(message, "policyType"))
+ writer.uint32(/* id 3, wireType 0 =*/24).int32(message.policyType);
+ return writer;
+ };
+
+ /**
+ * Encodes the specified ReauthSettings message, length delimited. Does not implicitly {@link google.cloud.iap.v1.ReauthSettings.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.cloud.iap.v1.ReauthSettings
+ * @static
+ * @param {google.cloud.iap.v1.IReauthSettings} message ReauthSettings message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ ReauthSettings.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a ReauthSettings message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.cloud.iap.v1.ReauthSettings
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.cloud.iap.v1.ReauthSettings} ReauthSettings
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ ReauthSettings.decode = function 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.iap.v1.ReauthSettings();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.method = reader.int32();
+ break;
+ }
+ case 2: {
+ message.maxAge = $root.google.protobuf.Duration.decode(reader, reader.uint32());
+ break;
+ }
+ case 3: {
+ message.policyType = reader.int32();
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a ReauthSettings message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.cloud.iap.v1.ReauthSettings
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.cloud.iap.v1.ReauthSettings} ReauthSettings
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ ReauthSettings.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a ReauthSettings message.
+ * @function verify
+ * @memberof google.cloud.iap.v1.ReauthSettings
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ ReauthSettings.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.method != null && message.hasOwnProperty("method"))
+ switch (message.method) {
+ default:
+ return "method: enum value expected";
+ case 0:
+ case 1:
+ case 2:
+ case 3:
+ break;
+ }
+ if (message.maxAge != null && message.hasOwnProperty("maxAge")) {
+ var error = $root.google.protobuf.Duration.verify(message.maxAge);
+ if (error)
+ return "maxAge." + error;
+ }
+ if (message.policyType != null && message.hasOwnProperty("policyType"))
+ switch (message.policyType) {
+ default:
+ return "policyType: enum value expected";
+ case 0:
+ case 1:
+ case 2:
+ break;
+ }
+ return null;
+ };
+
+ /**
+ * Creates a ReauthSettings message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.cloud.iap.v1.ReauthSettings
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.cloud.iap.v1.ReauthSettings} ReauthSettings
+ */
+ ReauthSettings.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.cloud.iap.v1.ReauthSettings)
+ return object;
+ var message = new $root.google.cloud.iap.v1.ReauthSettings();
+ switch (object.method) {
+ default:
+ if (typeof object.method === "number") {
+ message.method = object.method;
+ break;
+ }
+ break;
+ case "METHOD_UNSPECIFIED":
+ case 0:
+ message.method = 0;
+ break;
+ case "LOGIN":
+ case 1:
+ message.method = 1;
+ break;
+ case "PASSWORD":
+ case 2:
+ message.method = 2;
+ break;
+ case "SECURE_KEY":
+ case 3:
+ message.method = 3;
+ break;
+ }
+ if (object.maxAge != null) {
+ if (typeof object.maxAge !== "object")
+ throw TypeError(".google.cloud.iap.v1.ReauthSettings.maxAge: object expected");
+ message.maxAge = $root.google.protobuf.Duration.fromObject(object.maxAge);
+ }
+ switch (object.policyType) {
+ default:
+ if (typeof object.policyType === "number") {
+ message.policyType = object.policyType;
+ break;
+ }
+ break;
+ case "POLICY_TYPE_UNSPECIFIED":
+ case 0:
+ message.policyType = 0;
+ break;
+ case "MINIMUM":
+ case 1:
+ message.policyType = 1;
+ break;
+ case "DEFAULT":
+ case 2:
+ message.policyType = 2;
+ break;
+ }
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a ReauthSettings message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.cloud.iap.v1.ReauthSettings
+ * @static
+ * @param {google.cloud.iap.v1.ReauthSettings} message ReauthSettings
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ ReauthSettings.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.defaults) {
+ object.method = options.enums === String ? "METHOD_UNSPECIFIED" : 0;
+ object.maxAge = null;
+ object.policyType = options.enums === String ? "POLICY_TYPE_UNSPECIFIED" : 0;
+ }
+ if (message.method != null && message.hasOwnProperty("method"))
+ object.method = options.enums === String ? $root.google.cloud.iap.v1.ReauthSettings.Method[message.method] === undefined ? message.method : $root.google.cloud.iap.v1.ReauthSettings.Method[message.method] : message.method;
+ if (message.maxAge != null && message.hasOwnProperty("maxAge"))
+ object.maxAge = $root.google.protobuf.Duration.toObject(message.maxAge, options);
+ if (message.policyType != null && message.hasOwnProperty("policyType"))
+ object.policyType = options.enums === String ? $root.google.cloud.iap.v1.ReauthSettings.PolicyType[message.policyType] === undefined ? message.policyType : $root.google.cloud.iap.v1.ReauthSettings.PolicyType[message.policyType] : message.policyType;
+ return object;
+ };
+
+ /**
+ * Converts this ReauthSettings to JSON.
+ * @function toJSON
+ * @memberof google.cloud.iap.v1.ReauthSettings
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ ReauthSettings.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for ReauthSettings
+ * @function getTypeUrl
+ * @memberof google.cloud.iap.v1.ReauthSettings
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ ReauthSettings.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.cloud.iap.v1.ReauthSettings";
+ };
+
+ /**
+ * Method enum.
+ * @name google.cloud.iap.v1.ReauthSettings.Method
+ * @enum {number}
+ * @property {number} METHOD_UNSPECIFIED=0 METHOD_UNSPECIFIED value
+ * @property {number} LOGIN=1 LOGIN value
+ * @property {number} PASSWORD=2 PASSWORD value
+ * @property {number} SECURE_KEY=3 SECURE_KEY value
+ */
+ ReauthSettings.Method = (function() {
+ var valuesById = {}, values = Object.create(valuesById);
+ values[valuesById[0] = "METHOD_UNSPECIFIED"] = 0;
+ values[valuesById[1] = "LOGIN"] = 1;
+ values[valuesById[2] = "PASSWORD"] = 2;
+ values[valuesById[3] = "SECURE_KEY"] = 3;
+ return values;
+ })();
+
+ /**
+ * PolicyType enum.
+ * @name google.cloud.iap.v1.ReauthSettings.PolicyType
+ * @enum {number}
+ * @property {number} POLICY_TYPE_UNSPECIFIED=0 POLICY_TYPE_UNSPECIFIED value
+ * @property {number} MINIMUM=1 MINIMUM value
+ * @property {number} DEFAULT=2 DEFAULT value
+ */
+ ReauthSettings.PolicyType = (function() {
+ var valuesById = {}, values = Object.create(valuesById);
+ values[valuesById[0] = "POLICY_TYPE_UNSPECIFIED"] = 0;
+ values[valuesById[1] = "MINIMUM"] = 1;
+ values[valuesById[2] = "DEFAULT"] = 2;
+ return values;
+ })();
+
+ return ReauthSettings;
+ })();
+
+ v1.ApplicationSettings = (function() {
+
+ /**
+ * Properties of an ApplicationSettings.
+ * @memberof google.cloud.iap.v1
+ * @interface IApplicationSettings
+ * @property {google.cloud.iap.v1.ICsmSettings|null} [csmSettings] ApplicationSettings csmSettings
+ * @property {google.cloud.iap.v1.IAccessDeniedPageSettings|null} [accessDeniedPageSettings] ApplicationSettings accessDeniedPageSettings
+ * @property {google.protobuf.IStringValue|null} [cookieDomain] ApplicationSettings cookieDomain
+ */
+
+ /**
+ * Constructs a new ApplicationSettings.
+ * @memberof google.cloud.iap.v1
+ * @classdesc Represents an ApplicationSettings.
+ * @implements IApplicationSettings
+ * @constructor
+ * @param {google.cloud.iap.v1.IApplicationSettings=} [properties] Properties to set
+ */
+ function ApplicationSettings(properties) {
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * ApplicationSettings csmSettings.
+ * @member {google.cloud.iap.v1.ICsmSettings|null|undefined} csmSettings
+ * @memberof google.cloud.iap.v1.ApplicationSettings
+ * @instance
+ */
+ ApplicationSettings.prototype.csmSettings = null;
+
+ /**
+ * ApplicationSettings accessDeniedPageSettings.
+ * @member {google.cloud.iap.v1.IAccessDeniedPageSettings|null|undefined} accessDeniedPageSettings
+ * @memberof google.cloud.iap.v1.ApplicationSettings
+ * @instance
+ */
+ ApplicationSettings.prototype.accessDeniedPageSettings = null;
+
+ /**
+ * ApplicationSettings cookieDomain.
+ * @member {google.protobuf.IStringValue|null|undefined} cookieDomain
+ * @memberof google.cloud.iap.v1.ApplicationSettings
+ * @instance
+ */
+ ApplicationSettings.prototype.cookieDomain = null;
+
+ /**
+ * Creates a new ApplicationSettings instance using the specified properties.
+ * @function create
+ * @memberof google.cloud.iap.v1.ApplicationSettings
+ * @static
+ * @param {google.cloud.iap.v1.IApplicationSettings=} [properties] Properties to set
+ * @returns {google.cloud.iap.v1.ApplicationSettings} ApplicationSettings instance
+ */
+ ApplicationSettings.create = function create(properties) {
+ return new ApplicationSettings(properties);
+ };
+
+ /**
+ * Encodes the specified ApplicationSettings message. Does not implicitly {@link google.cloud.iap.v1.ApplicationSettings.verify|verify} messages.
+ * @function encode
+ * @memberof google.cloud.iap.v1.ApplicationSettings
+ * @static
+ * @param {google.cloud.iap.v1.IApplicationSettings} message ApplicationSettings message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ ApplicationSettings.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.csmSettings != null && Object.hasOwnProperty.call(message, "csmSettings"))
+ $root.google.cloud.iap.v1.CsmSettings.encode(message.csmSettings, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim();
+ if (message.accessDeniedPageSettings != null && Object.hasOwnProperty.call(message, "accessDeniedPageSettings"))
+ $root.google.cloud.iap.v1.AccessDeniedPageSettings.encode(message.accessDeniedPageSettings, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim();
+ if (message.cookieDomain != null && Object.hasOwnProperty.call(message, "cookieDomain"))
+ $root.google.protobuf.StringValue.encode(message.cookieDomain, writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim();
+ return writer;
+ };
+
+ /**
+ * Encodes the specified ApplicationSettings message, length delimited. Does not implicitly {@link google.cloud.iap.v1.ApplicationSettings.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.cloud.iap.v1.ApplicationSettings
+ * @static
+ * @param {google.cloud.iap.v1.IApplicationSettings} message ApplicationSettings message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ ApplicationSettings.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes an ApplicationSettings message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.cloud.iap.v1.ApplicationSettings
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.cloud.iap.v1.ApplicationSettings} ApplicationSettings
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ ApplicationSettings.decode = function 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.iap.v1.ApplicationSettings();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.csmSettings = $root.google.cloud.iap.v1.CsmSettings.decode(reader, reader.uint32());
+ break;
+ }
+ case 2: {
+ message.accessDeniedPageSettings = $root.google.cloud.iap.v1.AccessDeniedPageSettings.decode(reader, reader.uint32());
+ break;
+ }
+ case 3: {
+ message.cookieDomain = $root.google.protobuf.StringValue.decode(reader, reader.uint32());
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes an ApplicationSettings message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.cloud.iap.v1.ApplicationSettings
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.cloud.iap.v1.ApplicationSettings} ApplicationSettings
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ ApplicationSettings.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies an ApplicationSettings message.
+ * @function verify
+ * @memberof google.cloud.iap.v1.ApplicationSettings
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ ApplicationSettings.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.csmSettings != null && message.hasOwnProperty("csmSettings")) {
+ var error = $root.google.cloud.iap.v1.CsmSettings.verify(message.csmSettings);
+ if (error)
+ return "csmSettings." + error;
+ }
+ if (message.accessDeniedPageSettings != null && message.hasOwnProperty("accessDeniedPageSettings")) {
+ var error = $root.google.cloud.iap.v1.AccessDeniedPageSettings.verify(message.accessDeniedPageSettings);
+ if (error)
+ return "accessDeniedPageSettings." + error;
+ }
+ if (message.cookieDomain != null && message.hasOwnProperty("cookieDomain")) {
+ var error = $root.google.protobuf.StringValue.verify(message.cookieDomain);
+ if (error)
+ return "cookieDomain." + error;
+ }
+ return null;
+ };
+
+ /**
+ * Creates an ApplicationSettings message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.cloud.iap.v1.ApplicationSettings
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.cloud.iap.v1.ApplicationSettings} ApplicationSettings
+ */
+ ApplicationSettings.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.cloud.iap.v1.ApplicationSettings)
+ return object;
+ var message = new $root.google.cloud.iap.v1.ApplicationSettings();
+ if (object.csmSettings != null) {
+ if (typeof object.csmSettings !== "object")
+ throw TypeError(".google.cloud.iap.v1.ApplicationSettings.csmSettings: object expected");
+ message.csmSettings = $root.google.cloud.iap.v1.CsmSettings.fromObject(object.csmSettings);
+ }
+ if (object.accessDeniedPageSettings != null) {
+ if (typeof object.accessDeniedPageSettings !== "object")
+ throw TypeError(".google.cloud.iap.v1.ApplicationSettings.accessDeniedPageSettings: object expected");
+ message.accessDeniedPageSettings = $root.google.cloud.iap.v1.AccessDeniedPageSettings.fromObject(object.accessDeniedPageSettings);
+ }
+ if (object.cookieDomain != null) {
+ if (typeof object.cookieDomain !== "object")
+ throw TypeError(".google.cloud.iap.v1.ApplicationSettings.cookieDomain: object expected");
+ message.cookieDomain = $root.google.protobuf.StringValue.fromObject(object.cookieDomain);
+ }
+ return message;
+ };
+
+ /**
+ * Creates a plain object from an ApplicationSettings message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.cloud.iap.v1.ApplicationSettings
+ * @static
+ * @param {google.cloud.iap.v1.ApplicationSettings} message ApplicationSettings
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ ApplicationSettings.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.defaults) {
+ object.csmSettings = null;
+ object.accessDeniedPageSettings = null;
+ object.cookieDomain = null;
+ }
+ if (message.csmSettings != null && message.hasOwnProperty("csmSettings"))
+ object.csmSettings = $root.google.cloud.iap.v1.CsmSettings.toObject(message.csmSettings, options);
+ if (message.accessDeniedPageSettings != null && message.hasOwnProperty("accessDeniedPageSettings"))
+ object.accessDeniedPageSettings = $root.google.cloud.iap.v1.AccessDeniedPageSettings.toObject(message.accessDeniedPageSettings, options);
+ if (message.cookieDomain != null && message.hasOwnProperty("cookieDomain"))
+ object.cookieDomain = $root.google.protobuf.StringValue.toObject(message.cookieDomain, options);
+ return object;
+ };
+
+ /**
+ * Converts this ApplicationSettings to JSON.
+ * @function toJSON
+ * @memberof google.cloud.iap.v1.ApplicationSettings
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ ApplicationSettings.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for ApplicationSettings
+ * @function getTypeUrl
+ * @memberof google.cloud.iap.v1.ApplicationSettings
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ ApplicationSettings.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.cloud.iap.v1.ApplicationSettings";
+ };
+
+ return ApplicationSettings;
+ })();
+
+ v1.CsmSettings = (function() {
+
+ /**
+ * Properties of a CsmSettings.
+ * @memberof google.cloud.iap.v1
+ * @interface ICsmSettings
+ * @property {google.protobuf.IStringValue|null} [rctokenAud] CsmSettings rctokenAud
+ */
+
+ /**
+ * Constructs a new CsmSettings.
+ * @memberof google.cloud.iap.v1
+ * @classdesc Represents a CsmSettings.
+ * @implements ICsmSettings
+ * @constructor
+ * @param {google.cloud.iap.v1.ICsmSettings=} [properties] Properties to set
+ */
+ function CsmSettings(properties) {
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * CsmSettings rctokenAud.
+ * @member {google.protobuf.IStringValue|null|undefined} rctokenAud
+ * @memberof google.cloud.iap.v1.CsmSettings
+ * @instance
+ */
+ CsmSettings.prototype.rctokenAud = null;
+
+ /**
+ * Creates a new CsmSettings instance using the specified properties.
+ * @function create
+ * @memberof google.cloud.iap.v1.CsmSettings
+ * @static
+ * @param {google.cloud.iap.v1.ICsmSettings=} [properties] Properties to set
+ * @returns {google.cloud.iap.v1.CsmSettings} CsmSettings instance
+ */
+ CsmSettings.create = function create(properties) {
+ return new CsmSettings(properties);
+ };
+
+ /**
+ * Encodes the specified CsmSettings message. Does not implicitly {@link google.cloud.iap.v1.CsmSettings.verify|verify} messages.
+ * @function encode
+ * @memberof google.cloud.iap.v1.CsmSettings
+ * @static
+ * @param {google.cloud.iap.v1.ICsmSettings} message CsmSettings message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ CsmSettings.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.rctokenAud != null && Object.hasOwnProperty.call(message, "rctokenAud"))
+ $root.google.protobuf.StringValue.encode(message.rctokenAud, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim();
+ return writer;
+ };
+
+ /**
+ * Encodes the specified CsmSettings message, length delimited. Does not implicitly {@link google.cloud.iap.v1.CsmSettings.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.cloud.iap.v1.CsmSettings
+ * @static
+ * @param {google.cloud.iap.v1.ICsmSettings} message CsmSettings message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ CsmSettings.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a CsmSettings message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.cloud.iap.v1.CsmSettings
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.cloud.iap.v1.CsmSettings} CsmSettings
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ CsmSettings.decode = function 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.iap.v1.CsmSettings();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.rctokenAud = $root.google.protobuf.StringValue.decode(reader, reader.uint32());
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a CsmSettings message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.cloud.iap.v1.CsmSettings
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.cloud.iap.v1.CsmSettings} CsmSettings
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ CsmSettings.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a CsmSettings message.
+ * @function verify
+ * @memberof google.cloud.iap.v1.CsmSettings
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ CsmSettings.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.rctokenAud != null && message.hasOwnProperty("rctokenAud")) {
+ var error = $root.google.protobuf.StringValue.verify(message.rctokenAud);
+ if (error)
+ return "rctokenAud." + error;
+ }
+ return null;
+ };
+
+ /**
+ * Creates a CsmSettings message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.cloud.iap.v1.CsmSettings
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.cloud.iap.v1.CsmSettings} CsmSettings
+ */
+ CsmSettings.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.cloud.iap.v1.CsmSettings)
+ return object;
+ var message = new $root.google.cloud.iap.v1.CsmSettings();
+ if (object.rctokenAud != null) {
+ if (typeof object.rctokenAud !== "object")
+ throw TypeError(".google.cloud.iap.v1.CsmSettings.rctokenAud: object expected");
+ message.rctokenAud = $root.google.protobuf.StringValue.fromObject(object.rctokenAud);
+ }
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a CsmSettings message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.cloud.iap.v1.CsmSettings
+ * @static
+ * @param {google.cloud.iap.v1.CsmSettings} message CsmSettings
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ CsmSettings.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.defaults)
+ object.rctokenAud = null;
+ if (message.rctokenAud != null && message.hasOwnProperty("rctokenAud"))
+ object.rctokenAud = $root.google.protobuf.StringValue.toObject(message.rctokenAud, options);
+ return object;
+ };
+
+ /**
+ * Converts this CsmSettings to JSON.
+ * @function toJSON
+ * @memberof google.cloud.iap.v1.CsmSettings
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ CsmSettings.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for CsmSettings
+ * @function getTypeUrl
+ * @memberof google.cloud.iap.v1.CsmSettings
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ CsmSettings.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.cloud.iap.v1.CsmSettings";
+ };
+
+ return CsmSettings;
+ })();
+
+ v1.AccessDeniedPageSettings = (function() {
+
+ /**
+ * Properties of an AccessDeniedPageSettings.
+ * @memberof google.cloud.iap.v1
+ * @interface IAccessDeniedPageSettings
+ * @property {google.protobuf.IStringValue|null} [accessDeniedPageUri] AccessDeniedPageSettings accessDeniedPageUri
+ * @property {google.protobuf.IBoolValue|null} [generateTroubleshootingUri] AccessDeniedPageSettings generateTroubleshootingUri
+ */
+
+ /**
+ * Constructs a new AccessDeniedPageSettings.
+ * @memberof google.cloud.iap.v1
+ * @classdesc Represents an AccessDeniedPageSettings.
+ * @implements IAccessDeniedPageSettings
+ * @constructor
+ * @param {google.cloud.iap.v1.IAccessDeniedPageSettings=} [properties] Properties to set
+ */
+ function AccessDeniedPageSettings(properties) {
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * AccessDeniedPageSettings accessDeniedPageUri.
+ * @member {google.protobuf.IStringValue|null|undefined} accessDeniedPageUri
+ * @memberof google.cloud.iap.v1.AccessDeniedPageSettings
+ * @instance
+ */
+ AccessDeniedPageSettings.prototype.accessDeniedPageUri = null;
+
+ /**
+ * AccessDeniedPageSettings generateTroubleshootingUri.
+ * @member {google.protobuf.IBoolValue|null|undefined} generateTroubleshootingUri
+ * @memberof google.cloud.iap.v1.AccessDeniedPageSettings
+ * @instance
+ */
+ AccessDeniedPageSettings.prototype.generateTroubleshootingUri = null;
+
+ /**
+ * Creates a new AccessDeniedPageSettings instance using the specified properties.
+ * @function create
+ * @memberof google.cloud.iap.v1.AccessDeniedPageSettings
+ * @static
+ * @param {google.cloud.iap.v1.IAccessDeniedPageSettings=} [properties] Properties to set
+ * @returns {google.cloud.iap.v1.AccessDeniedPageSettings} AccessDeniedPageSettings instance
+ */
+ AccessDeniedPageSettings.create = function create(properties) {
+ return new AccessDeniedPageSettings(properties);
+ };
+
+ /**
+ * Encodes the specified AccessDeniedPageSettings message. Does not implicitly {@link google.cloud.iap.v1.AccessDeniedPageSettings.verify|verify} messages.
+ * @function encode
+ * @memberof google.cloud.iap.v1.AccessDeniedPageSettings
+ * @static
+ * @param {google.cloud.iap.v1.IAccessDeniedPageSettings} message AccessDeniedPageSettings message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ AccessDeniedPageSettings.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.accessDeniedPageUri != null && Object.hasOwnProperty.call(message, "accessDeniedPageUri"))
+ $root.google.protobuf.StringValue.encode(message.accessDeniedPageUri, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim();
+ if (message.generateTroubleshootingUri != null && Object.hasOwnProperty.call(message, "generateTroubleshootingUri"))
+ $root.google.protobuf.BoolValue.encode(message.generateTroubleshootingUri, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim();
+ return writer;
+ };
+
+ /**
+ * Encodes the specified AccessDeniedPageSettings message, length delimited. Does not implicitly {@link google.cloud.iap.v1.AccessDeniedPageSettings.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.cloud.iap.v1.AccessDeniedPageSettings
+ * @static
+ * @param {google.cloud.iap.v1.IAccessDeniedPageSettings} message AccessDeniedPageSettings message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ AccessDeniedPageSettings.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes an AccessDeniedPageSettings message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.cloud.iap.v1.AccessDeniedPageSettings
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.cloud.iap.v1.AccessDeniedPageSettings} AccessDeniedPageSettings
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ AccessDeniedPageSettings.decode = function 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.iap.v1.AccessDeniedPageSettings();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.accessDeniedPageUri = $root.google.protobuf.StringValue.decode(reader, reader.uint32());
+ break;
+ }
+ case 2: {
+ message.generateTroubleshootingUri = $root.google.protobuf.BoolValue.decode(reader, reader.uint32());
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes an AccessDeniedPageSettings message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.cloud.iap.v1.AccessDeniedPageSettings
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.cloud.iap.v1.AccessDeniedPageSettings} AccessDeniedPageSettings
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ AccessDeniedPageSettings.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies an AccessDeniedPageSettings message.
+ * @function verify
+ * @memberof google.cloud.iap.v1.AccessDeniedPageSettings
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ AccessDeniedPageSettings.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.accessDeniedPageUri != null && message.hasOwnProperty("accessDeniedPageUri")) {
+ var error = $root.google.protobuf.StringValue.verify(message.accessDeniedPageUri);
+ if (error)
+ return "accessDeniedPageUri." + error;
+ }
+ if (message.generateTroubleshootingUri != null && message.hasOwnProperty("generateTroubleshootingUri")) {
+ var error = $root.google.protobuf.BoolValue.verify(message.generateTroubleshootingUri);
+ if (error)
+ return "generateTroubleshootingUri." + error;
+ }
+ return null;
+ };
+
+ /**
+ * Creates an AccessDeniedPageSettings message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.cloud.iap.v1.AccessDeniedPageSettings
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.cloud.iap.v1.AccessDeniedPageSettings} AccessDeniedPageSettings
+ */
+ AccessDeniedPageSettings.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.cloud.iap.v1.AccessDeniedPageSettings)
+ return object;
+ var message = new $root.google.cloud.iap.v1.AccessDeniedPageSettings();
+ if (object.accessDeniedPageUri != null) {
+ if (typeof object.accessDeniedPageUri !== "object")
+ throw TypeError(".google.cloud.iap.v1.AccessDeniedPageSettings.accessDeniedPageUri: object expected");
+ message.accessDeniedPageUri = $root.google.protobuf.StringValue.fromObject(object.accessDeniedPageUri);
+ }
+ if (object.generateTroubleshootingUri != null) {
+ if (typeof object.generateTroubleshootingUri !== "object")
+ throw TypeError(".google.cloud.iap.v1.AccessDeniedPageSettings.generateTroubleshootingUri: object expected");
+ message.generateTroubleshootingUri = $root.google.protobuf.BoolValue.fromObject(object.generateTroubleshootingUri);
+ }
+ return message;
+ };
+
+ /**
+ * Creates a plain object from an AccessDeniedPageSettings message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.cloud.iap.v1.AccessDeniedPageSettings
+ * @static
+ * @param {google.cloud.iap.v1.AccessDeniedPageSettings} message AccessDeniedPageSettings
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ AccessDeniedPageSettings.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.defaults) {
+ object.accessDeniedPageUri = null;
+ object.generateTroubleshootingUri = null;
+ }
+ if (message.accessDeniedPageUri != null && message.hasOwnProperty("accessDeniedPageUri"))
+ object.accessDeniedPageUri = $root.google.protobuf.StringValue.toObject(message.accessDeniedPageUri, options);
+ if (message.generateTroubleshootingUri != null && message.hasOwnProperty("generateTroubleshootingUri"))
+ object.generateTroubleshootingUri = $root.google.protobuf.BoolValue.toObject(message.generateTroubleshootingUri, options);
+ return object;
+ };
+
+ /**
+ * Converts this AccessDeniedPageSettings to JSON.
+ * @function toJSON
+ * @memberof google.cloud.iap.v1.AccessDeniedPageSettings
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ AccessDeniedPageSettings.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for AccessDeniedPageSettings
+ * @function getTypeUrl
+ * @memberof google.cloud.iap.v1.AccessDeniedPageSettings
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ AccessDeniedPageSettings.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.cloud.iap.v1.AccessDeniedPageSettings";
+ };
+
+ return AccessDeniedPageSettings;
+ })();
+
+ v1.ListBrandsRequest = (function() {
+
+ /**
+ * Properties of a ListBrandsRequest.
+ * @memberof google.cloud.iap.v1
+ * @interface IListBrandsRequest
+ * @property {string|null} [parent] ListBrandsRequest parent
+ */
+
+ /**
+ * Constructs a new ListBrandsRequest.
+ * @memberof google.cloud.iap.v1
+ * @classdesc Represents a ListBrandsRequest.
+ * @implements IListBrandsRequest
+ * @constructor
+ * @param {google.cloud.iap.v1.IListBrandsRequest=} [properties] Properties to set
+ */
+ function ListBrandsRequest(properties) {
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * ListBrandsRequest parent.
+ * @member {string} parent
+ * @memberof google.cloud.iap.v1.ListBrandsRequest
+ * @instance
+ */
+ ListBrandsRequest.prototype.parent = "";
+
+ /**
+ * Creates a new ListBrandsRequest instance using the specified properties.
+ * @function create
+ * @memberof google.cloud.iap.v1.ListBrandsRequest
+ * @static
+ * @param {google.cloud.iap.v1.IListBrandsRequest=} [properties] Properties to set
+ * @returns {google.cloud.iap.v1.ListBrandsRequest} ListBrandsRequest instance
+ */
+ ListBrandsRequest.create = function create(properties) {
+ return new ListBrandsRequest(properties);
+ };
+
+ /**
+ * Encodes the specified ListBrandsRequest message. Does not implicitly {@link google.cloud.iap.v1.ListBrandsRequest.verify|verify} messages.
+ * @function encode
+ * @memberof google.cloud.iap.v1.ListBrandsRequest
+ * @static
+ * @param {google.cloud.iap.v1.IListBrandsRequest} message ListBrandsRequest message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ ListBrandsRequest.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);
+ return writer;
+ };
+
+ /**
+ * Encodes the specified ListBrandsRequest message, length delimited. Does not implicitly {@link google.cloud.iap.v1.ListBrandsRequest.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.cloud.iap.v1.ListBrandsRequest
+ * @static
+ * @param {google.cloud.iap.v1.IListBrandsRequest} message ListBrandsRequest message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ ListBrandsRequest.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a ListBrandsRequest message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.cloud.iap.v1.ListBrandsRequest
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.cloud.iap.v1.ListBrandsRequest} ListBrandsRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ ListBrandsRequest.decode = function 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.iap.v1.ListBrandsRequest();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.parent = reader.string();
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a ListBrandsRequest message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.cloud.iap.v1.ListBrandsRequest
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.cloud.iap.v1.ListBrandsRequest} ListBrandsRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ ListBrandsRequest.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a ListBrandsRequest message.
+ * @function verify
+ * @memberof google.cloud.iap.v1.ListBrandsRequest
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ ListBrandsRequest.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";
+ return null;
+ };
+
+ /**
+ * Creates a ListBrandsRequest message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.cloud.iap.v1.ListBrandsRequest
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.cloud.iap.v1.ListBrandsRequest} ListBrandsRequest
+ */
+ ListBrandsRequest.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.cloud.iap.v1.ListBrandsRequest)
+ return object;
+ var message = new $root.google.cloud.iap.v1.ListBrandsRequest();
+ if (object.parent != null)
+ message.parent = String(object.parent);
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a ListBrandsRequest message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.cloud.iap.v1.ListBrandsRequest
+ * @static
+ * @param {google.cloud.iap.v1.ListBrandsRequest} message ListBrandsRequest
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ ListBrandsRequest.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.defaults)
+ object.parent = "";
+ if (message.parent != null && message.hasOwnProperty("parent"))
+ object.parent = message.parent;
+ return object;
+ };
+
+ /**
+ * Converts this ListBrandsRequest to JSON.
+ * @function toJSON
+ * @memberof google.cloud.iap.v1.ListBrandsRequest
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ ListBrandsRequest.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for ListBrandsRequest
+ * @function getTypeUrl
+ * @memberof google.cloud.iap.v1.ListBrandsRequest
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ ListBrandsRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.cloud.iap.v1.ListBrandsRequest";
+ };
+
+ return ListBrandsRequest;
+ })();
+
+ v1.ListBrandsResponse = (function() {
+
+ /**
+ * Properties of a ListBrandsResponse.
+ * @memberof google.cloud.iap.v1
+ * @interface IListBrandsResponse
+ * @property {Array.|null} [brands] ListBrandsResponse brands
+ */
+
+ /**
+ * Constructs a new ListBrandsResponse.
+ * @memberof google.cloud.iap.v1
+ * @classdesc Represents a ListBrandsResponse.
+ * @implements IListBrandsResponse
+ * @constructor
+ * @param {google.cloud.iap.v1.IListBrandsResponse=} [properties] Properties to set
+ */
+ function ListBrandsResponse(properties) {
+ this.brands = [];
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * ListBrandsResponse brands.
+ * @member {Array.} brands
+ * @memberof google.cloud.iap.v1.ListBrandsResponse
+ * @instance
+ */
+ ListBrandsResponse.prototype.brands = $util.emptyArray;
+
+ /**
+ * Creates a new ListBrandsResponse instance using the specified properties.
+ * @function create
+ * @memberof google.cloud.iap.v1.ListBrandsResponse
+ * @static
+ * @param {google.cloud.iap.v1.IListBrandsResponse=} [properties] Properties to set
+ * @returns {google.cloud.iap.v1.ListBrandsResponse} ListBrandsResponse instance
+ */
+ ListBrandsResponse.create = function create(properties) {
+ return new ListBrandsResponse(properties);
+ };
+
+ /**
+ * Encodes the specified ListBrandsResponse message. Does not implicitly {@link google.cloud.iap.v1.ListBrandsResponse.verify|verify} messages.
+ * @function encode
+ * @memberof google.cloud.iap.v1.ListBrandsResponse
+ * @static
+ * @param {google.cloud.iap.v1.IListBrandsResponse} message ListBrandsResponse message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ ListBrandsResponse.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.brands != null && message.brands.length)
+ for (var i = 0; i < message.brands.length; ++i)
+ $root.google.cloud.iap.v1.Brand.encode(message.brands[i], writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim();
+ return writer;
+ };
+
+ /**
+ * Encodes the specified ListBrandsResponse message, length delimited. Does not implicitly {@link google.cloud.iap.v1.ListBrandsResponse.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.cloud.iap.v1.ListBrandsResponse
+ * @static
+ * @param {google.cloud.iap.v1.IListBrandsResponse} message ListBrandsResponse message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ ListBrandsResponse.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a ListBrandsResponse message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.cloud.iap.v1.ListBrandsResponse
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.cloud.iap.v1.ListBrandsResponse} ListBrandsResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ ListBrandsResponse.decode = function 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.iap.v1.ListBrandsResponse();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ if (!(message.brands && message.brands.length))
+ message.brands = [];
+ message.brands.push($root.google.cloud.iap.v1.Brand.decode(reader, reader.uint32()));
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a ListBrandsResponse message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.cloud.iap.v1.ListBrandsResponse
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.cloud.iap.v1.ListBrandsResponse} ListBrandsResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ ListBrandsResponse.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a ListBrandsResponse message.
+ * @function verify
+ * @memberof google.cloud.iap.v1.ListBrandsResponse
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ ListBrandsResponse.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.brands != null && message.hasOwnProperty("brands")) {
+ if (!Array.isArray(message.brands))
+ return "brands: array expected";
+ for (var i = 0; i < message.brands.length; ++i) {
+ var error = $root.google.cloud.iap.v1.Brand.verify(message.brands[i]);
+ if (error)
+ return "brands." + error;
+ }
+ }
+ return null;
+ };
+
+ /**
+ * Creates a ListBrandsResponse message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.cloud.iap.v1.ListBrandsResponse
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.cloud.iap.v1.ListBrandsResponse} ListBrandsResponse
+ */
+ ListBrandsResponse.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.cloud.iap.v1.ListBrandsResponse)
+ return object;
+ var message = new $root.google.cloud.iap.v1.ListBrandsResponse();
+ if (object.brands) {
+ if (!Array.isArray(object.brands))
+ throw TypeError(".google.cloud.iap.v1.ListBrandsResponse.brands: array expected");
+ message.brands = [];
+ for (var i = 0; i < object.brands.length; ++i) {
+ if (typeof object.brands[i] !== "object")
+ throw TypeError(".google.cloud.iap.v1.ListBrandsResponse.brands: object expected");
+ message.brands[i] = $root.google.cloud.iap.v1.Brand.fromObject(object.brands[i]);
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a ListBrandsResponse message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.cloud.iap.v1.ListBrandsResponse
+ * @static
+ * @param {google.cloud.iap.v1.ListBrandsResponse} message ListBrandsResponse
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ ListBrandsResponse.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.arrays || options.defaults)
+ object.brands = [];
+ if (message.brands && message.brands.length) {
+ object.brands = [];
+ for (var j = 0; j < message.brands.length; ++j)
+ object.brands[j] = $root.google.cloud.iap.v1.Brand.toObject(message.brands[j], options);
+ }
+ return object;
+ };
+
+ /**
+ * Converts this ListBrandsResponse to JSON.
+ * @function toJSON
+ * @memberof google.cloud.iap.v1.ListBrandsResponse
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ ListBrandsResponse.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for ListBrandsResponse
+ * @function getTypeUrl
+ * @memberof google.cloud.iap.v1.ListBrandsResponse
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ ListBrandsResponse.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.cloud.iap.v1.ListBrandsResponse";
+ };
+
+ return ListBrandsResponse;
+ })();
+
+ v1.CreateBrandRequest = (function() {
+
+ /**
+ * Properties of a CreateBrandRequest.
+ * @memberof google.cloud.iap.v1
+ * @interface ICreateBrandRequest
+ * @property {string|null} [parent] CreateBrandRequest parent
+ * @property {google.cloud.iap.v1.IBrand|null} [brand] CreateBrandRequest brand
+ */
+
+ /**
+ * Constructs a new CreateBrandRequest.
+ * @memberof google.cloud.iap.v1
+ * @classdesc Represents a CreateBrandRequest.
+ * @implements ICreateBrandRequest
+ * @constructor
+ * @param {google.cloud.iap.v1.ICreateBrandRequest=} [properties] Properties to set
+ */
+ function CreateBrandRequest(properties) {
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * CreateBrandRequest parent.
+ * @member {string} parent
+ * @memberof google.cloud.iap.v1.CreateBrandRequest
+ * @instance
+ */
+ CreateBrandRequest.prototype.parent = "";
+
+ /**
+ * CreateBrandRequest brand.
+ * @member {google.cloud.iap.v1.IBrand|null|undefined} brand
+ * @memberof google.cloud.iap.v1.CreateBrandRequest
+ * @instance
+ */
+ CreateBrandRequest.prototype.brand = null;
+
+ /**
+ * Creates a new CreateBrandRequest instance using the specified properties.
+ * @function create
+ * @memberof google.cloud.iap.v1.CreateBrandRequest
+ * @static
+ * @param {google.cloud.iap.v1.ICreateBrandRequest=} [properties] Properties to set
+ * @returns {google.cloud.iap.v1.CreateBrandRequest} CreateBrandRequest instance
+ */
+ CreateBrandRequest.create = function create(properties) {
+ return new CreateBrandRequest(properties);
+ };
+
+ /**
+ * Encodes the specified CreateBrandRequest message. Does not implicitly {@link google.cloud.iap.v1.CreateBrandRequest.verify|verify} messages.
+ * @function encode
+ * @memberof google.cloud.iap.v1.CreateBrandRequest
+ * @static
+ * @param {google.cloud.iap.v1.ICreateBrandRequest} message CreateBrandRequest message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ CreateBrandRequest.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.brand != null && Object.hasOwnProperty.call(message, "brand"))
+ $root.google.cloud.iap.v1.Brand.encode(message.brand, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim();
+ return writer;
+ };
+
+ /**
+ * Encodes the specified CreateBrandRequest message, length delimited. Does not implicitly {@link google.cloud.iap.v1.CreateBrandRequest.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.cloud.iap.v1.CreateBrandRequest
+ * @static
+ * @param {google.cloud.iap.v1.ICreateBrandRequest} message CreateBrandRequest message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ CreateBrandRequest.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a CreateBrandRequest message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.cloud.iap.v1.CreateBrandRequest
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.cloud.iap.v1.CreateBrandRequest} CreateBrandRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ CreateBrandRequest.decode = function 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.iap.v1.CreateBrandRequest();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.parent = reader.string();
+ break;
+ }
+ case 2: {
+ message.brand = $root.google.cloud.iap.v1.Brand.decode(reader, reader.uint32());
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a CreateBrandRequest message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.cloud.iap.v1.CreateBrandRequest
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.cloud.iap.v1.CreateBrandRequest} CreateBrandRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ CreateBrandRequest.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a CreateBrandRequest message.
+ * @function verify
+ * @memberof google.cloud.iap.v1.CreateBrandRequest
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ CreateBrandRequest.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.brand != null && message.hasOwnProperty("brand")) {
+ var error = $root.google.cloud.iap.v1.Brand.verify(message.brand);
+ if (error)
+ return "brand." + error;
+ }
+ return null;
+ };
+
+ /**
+ * Creates a CreateBrandRequest message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.cloud.iap.v1.CreateBrandRequest
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.cloud.iap.v1.CreateBrandRequest} CreateBrandRequest
+ */
+ CreateBrandRequest.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.cloud.iap.v1.CreateBrandRequest)
+ return object;
+ var message = new $root.google.cloud.iap.v1.CreateBrandRequest();
+ if (object.parent != null)
+ message.parent = String(object.parent);
+ if (object.brand != null) {
+ if (typeof object.brand !== "object")
+ throw TypeError(".google.cloud.iap.v1.CreateBrandRequest.brand: object expected");
+ message.brand = $root.google.cloud.iap.v1.Brand.fromObject(object.brand);
+ }
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a CreateBrandRequest message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.cloud.iap.v1.CreateBrandRequest
+ * @static
+ * @param {google.cloud.iap.v1.CreateBrandRequest} message CreateBrandRequest
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ CreateBrandRequest.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.defaults) {
+ object.parent = "";
+ object.brand = null;
+ }
+ if (message.parent != null && message.hasOwnProperty("parent"))
+ object.parent = message.parent;
+ if (message.brand != null && message.hasOwnProperty("brand"))
+ object.brand = $root.google.cloud.iap.v1.Brand.toObject(message.brand, options);
+ return object;
+ };
+
+ /**
+ * Converts this CreateBrandRequest to JSON.
+ * @function toJSON
+ * @memberof google.cloud.iap.v1.CreateBrandRequest
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ CreateBrandRequest.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for CreateBrandRequest
+ * @function getTypeUrl
+ * @memberof google.cloud.iap.v1.CreateBrandRequest
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ CreateBrandRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.cloud.iap.v1.CreateBrandRequest";
+ };
+
+ return CreateBrandRequest;
+ })();
+
+ v1.GetBrandRequest = (function() {
+
+ /**
+ * Properties of a GetBrandRequest.
+ * @memberof google.cloud.iap.v1
+ * @interface IGetBrandRequest
+ * @property {string|null} [name] GetBrandRequest name
+ */
+
+ /**
+ * Constructs a new GetBrandRequest.
+ * @memberof google.cloud.iap.v1
+ * @classdesc Represents a GetBrandRequest.
+ * @implements IGetBrandRequest
+ * @constructor
+ * @param {google.cloud.iap.v1.IGetBrandRequest=} [properties] Properties to set
+ */
+ function GetBrandRequest(properties) {
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * GetBrandRequest name.
+ * @member {string} name
+ * @memberof google.cloud.iap.v1.GetBrandRequest
+ * @instance
+ */
+ GetBrandRequest.prototype.name = "";
+
+ /**
+ * Creates a new GetBrandRequest instance using the specified properties.
+ * @function create
+ * @memberof google.cloud.iap.v1.GetBrandRequest
+ * @static
+ * @param {google.cloud.iap.v1.IGetBrandRequest=} [properties] Properties to set
+ * @returns {google.cloud.iap.v1.GetBrandRequest} GetBrandRequest instance
+ */
+ GetBrandRequest.create = function create(properties) {
+ return new GetBrandRequest(properties);
+ };
+
+ /**
+ * Encodes the specified GetBrandRequest message. Does not implicitly {@link google.cloud.iap.v1.GetBrandRequest.verify|verify} messages.
+ * @function encode
+ * @memberof google.cloud.iap.v1.GetBrandRequest
+ * @static
+ * @param {google.cloud.iap.v1.IGetBrandRequest} message GetBrandRequest message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ GetBrandRequest.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 GetBrandRequest message, length delimited. Does not implicitly {@link google.cloud.iap.v1.GetBrandRequest.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.cloud.iap.v1.GetBrandRequest
+ * @static
+ * @param {google.cloud.iap.v1.IGetBrandRequest} message GetBrandRequest message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ GetBrandRequest.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a GetBrandRequest message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.cloud.iap.v1.GetBrandRequest
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.cloud.iap.v1.GetBrandRequest} GetBrandRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ GetBrandRequest.decode = function 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.iap.v1.GetBrandRequest();
+ 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 GetBrandRequest message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.cloud.iap.v1.GetBrandRequest
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.cloud.iap.v1.GetBrandRequest} GetBrandRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ GetBrandRequest.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a GetBrandRequest message.
+ * @function verify
+ * @memberof google.cloud.iap.v1.GetBrandRequest
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ GetBrandRequest.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 GetBrandRequest message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.cloud.iap.v1.GetBrandRequest
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.cloud.iap.v1.GetBrandRequest} GetBrandRequest
+ */
+ GetBrandRequest.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.cloud.iap.v1.GetBrandRequest)
+ return object;
+ var message = new $root.google.cloud.iap.v1.GetBrandRequest();
+ if (object.name != null)
+ message.name = String(object.name);
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a GetBrandRequest message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.cloud.iap.v1.GetBrandRequest
+ * @static
+ * @param {google.cloud.iap.v1.GetBrandRequest} message GetBrandRequest
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ GetBrandRequest.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 GetBrandRequest to JSON.
+ * @function toJSON
+ * @memberof google.cloud.iap.v1.GetBrandRequest
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ GetBrandRequest.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for GetBrandRequest
+ * @function getTypeUrl
+ * @memberof google.cloud.iap.v1.GetBrandRequest
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ GetBrandRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.cloud.iap.v1.GetBrandRequest";
+ };
+
+ return GetBrandRequest;
+ })();
+
+ v1.ListIdentityAwareProxyClientsRequest = (function() {
+
+ /**
+ * Properties of a ListIdentityAwareProxyClientsRequest.
+ * @memberof google.cloud.iap.v1
+ * @interface IListIdentityAwareProxyClientsRequest
+ * @property {string|null} [parent] ListIdentityAwareProxyClientsRequest parent
+ * @property {number|null} [pageSize] ListIdentityAwareProxyClientsRequest pageSize
+ * @property {string|null} [pageToken] ListIdentityAwareProxyClientsRequest pageToken
+ */
+
+ /**
+ * Constructs a new ListIdentityAwareProxyClientsRequest.
+ * @memberof google.cloud.iap.v1
+ * @classdesc Represents a ListIdentityAwareProxyClientsRequest.
+ * @implements IListIdentityAwareProxyClientsRequest
+ * @constructor
+ * @param {google.cloud.iap.v1.IListIdentityAwareProxyClientsRequest=} [properties] Properties to set
+ */
+ function ListIdentityAwareProxyClientsRequest(properties) {
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * ListIdentityAwareProxyClientsRequest parent.
+ * @member {string} parent
+ * @memberof google.cloud.iap.v1.ListIdentityAwareProxyClientsRequest
+ * @instance
+ */
+ ListIdentityAwareProxyClientsRequest.prototype.parent = "";
+
+ /**
+ * ListIdentityAwareProxyClientsRequest pageSize.
+ * @member {number} pageSize
+ * @memberof google.cloud.iap.v1.ListIdentityAwareProxyClientsRequest
+ * @instance
+ */
+ ListIdentityAwareProxyClientsRequest.prototype.pageSize = 0;
+
+ /**
+ * ListIdentityAwareProxyClientsRequest pageToken.
+ * @member {string} pageToken
+ * @memberof google.cloud.iap.v1.ListIdentityAwareProxyClientsRequest
+ * @instance
+ */
+ ListIdentityAwareProxyClientsRequest.prototype.pageToken = "";
+
+ /**
+ * Creates a new ListIdentityAwareProxyClientsRequest instance using the specified properties.
+ * @function create
+ * @memberof google.cloud.iap.v1.ListIdentityAwareProxyClientsRequest
+ * @static
+ * @param {google.cloud.iap.v1.IListIdentityAwareProxyClientsRequest=} [properties] Properties to set
+ * @returns {google.cloud.iap.v1.ListIdentityAwareProxyClientsRequest} ListIdentityAwareProxyClientsRequest instance
+ */
+ ListIdentityAwareProxyClientsRequest.create = function create(properties) {
+ return new ListIdentityAwareProxyClientsRequest(properties);
+ };
+
+ /**
+ * Encodes the specified ListIdentityAwareProxyClientsRequest message. Does not implicitly {@link google.cloud.iap.v1.ListIdentityAwareProxyClientsRequest.verify|verify} messages.
+ * @function encode
+ * @memberof google.cloud.iap.v1.ListIdentityAwareProxyClientsRequest
+ * @static
+ * @param {google.cloud.iap.v1.IListIdentityAwareProxyClientsRequest} message ListIdentityAwareProxyClientsRequest message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ ListIdentityAwareProxyClientsRequest.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);
+ return writer;
+ };
+
+ /**
+ * Encodes the specified ListIdentityAwareProxyClientsRequest message, length delimited. Does not implicitly {@link google.cloud.iap.v1.ListIdentityAwareProxyClientsRequest.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.cloud.iap.v1.ListIdentityAwareProxyClientsRequest
+ * @static
+ * @param {google.cloud.iap.v1.IListIdentityAwareProxyClientsRequest} message ListIdentityAwareProxyClientsRequest message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ ListIdentityAwareProxyClientsRequest.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a ListIdentityAwareProxyClientsRequest message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.cloud.iap.v1.ListIdentityAwareProxyClientsRequest
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.cloud.iap.v1.ListIdentityAwareProxyClientsRequest} ListIdentityAwareProxyClientsRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ ListIdentityAwareProxyClientsRequest.decode = function 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.iap.v1.ListIdentityAwareProxyClientsRequest();
+ 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;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a ListIdentityAwareProxyClientsRequest message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.cloud.iap.v1.ListIdentityAwareProxyClientsRequest
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.cloud.iap.v1.ListIdentityAwareProxyClientsRequest} ListIdentityAwareProxyClientsRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ ListIdentityAwareProxyClientsRequest.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a ListIdentityAwareProxyClientsRequest message.
+ * @function verify
+ * @memberof google.cloud.iap.v1.ListIdentityAwareProxyClientsRequest
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ ListIdentityAwareProxyClientsRequest.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";
+ return null;
+ };
+
+ /**
+ * Creates a ListIdentityAwareProxyClientsRequest message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.cloud.iap.v1.ListIdentityAwareProxyClientsRequest
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.cloud.iap.v1.ListIdentityAwareProxyClientsRequest} ListIdentityAwareProxyClientsRequest
+ */
+ ListIdentityAwareProxyClientsRequest.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.cloud.iap.v1.ListIdentityAwareProxyClientsRequest)
+ return object;
+ var message = new $root.google.cloud.iap.v1.ListIdentityAwareProxyClientsRequest();
+ 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);
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a ListIdentityAwareProxyClientsRequest message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.cloud.iap.v1.ListIdentityAwareProxyClientsRequest
+ * @static
+ * @param {google.cloud.iap.v1.ListIdentityAwareProxyClientsRequest} message ListIdentityAwareProxyClientsRequest
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ ListIdentityAwareProxyClientsRequest.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.defaults) {
+ object.parent = "";
+ object.pageSize = 0;
+ object.pageToken = "";
+ }
+ 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;
+ return object;
+ };
+
+ /**
+ * Converts this ListIdentityAwareProxyClientsRequest to JSON.
+ * @function toJSON
+ * @memberof google.cloud.iap.v1.ListIdentityAwareProxyClientsRequest
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ ListIdentityAwareProxyClientsRequest.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for ListIdentityAwareProxyClientsRequest
+ * @function getTypeUrl
+ * @memberof google.cloud.iap.v1.ListIdentityAwareProxyClientsRequest
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ ListIdentityAwareProxyClientsRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.cloud.iap.v1.ListIdentityAwareProxyClientsRequest";
+ };
+
+ return ListIdentityAwareProxyClientsRequest;
+ })();
+
+ v1.ListIdentityAwareProxyClientsResponse = (function() {
+
+ /**
+ * Properties of a ListIdentityAwareProxyClientsResponse.
+ * @memberof google.cloud.iap.v1
+ * @interface IListIdentityAwareProxyClientsResponse
+ * @property {Array.|null} [identityAwareProxyClients] ListIdentityAwareProxyClientsResponse identityAwareProxyClients
+ * @property {string|null} [nextPageToken] ListIdentityAwareProxyClientsResponse nextPageToken
+ */
+
+ /**
+ * Constructs a new ListIdentityAwareProxyClientsResponse.
+ * @memberof google.cloud.iap.v1
+ * @classdesc Represents a ListIdentityAwareProxyClientsResponse.
+ * @implements IListIdentityAwareProxyClientsResponse
+ * @constructor
+ * @param {google.cloud.iap.v1.IListIdentityAwareProxyClientsResponse=} [properties] Properties to set
+ */
+ function ListIdentityAwareProxyClientsResponse(properties) {
+ this.identityAwareProxyClients = [];
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * ListIdentityAwareProxyClientsResponse identityAwareProxyClients.
+ * @member {Array.} identityAwareProxyClients
+ * @memberof google.cloud.iap.v1.ListIdentityAwareProxyClientsResponse
+ * @instance
+ */
+ ListIdentityAwareProxyClientsResponse.prototype.identityAwareProxyClients = $util.emptyArray;
+
+ /**
+ * ListIdentityAwareProxyClientsResponse nextPageToken.
+ * @member {string} nextPageToken
+ * @memberof google.cloud.iap.v1.ListIdentityAwareProxyClientsResponse
+ * @instance
+ */
+ ListIdentityAwareProxyClientsResponse.prototype.nextPageToken = "";
+
+ /**
+ * Creates a new ListIdentityAwareProxyClientsResponse instance using the specified properties.
+ * @function create
+ * @memberof google.cloud.iap.v1.ListIdentityAwareProxyClientsResponse
+ * @static
+ * @param {google.cloud.iap.v1.IListIdentityAwareProxyClientsResponse=} [properties] Properties to set
+ * @returns {google.cloud.iap.v1.ListIdentityAwareProxyClientsResponse} ListIdentityAwareProxyClientsResponse instance
+ */
+ ListIdentityAwareProxyClientsResponse.create = function create(properties) {
+ return new ListIdentityAwareProxyClientsResponse(properties);
+ };
+
+ /**
+ * Encodes the specified ListIdentityAwareProxyClientsResponse message. Does not implicitly {@link google.cloud.iap.v1.ListIdentityAwareProxyClientsResponse.verify|verify} messages.
+ * @function encode
+ * @memberof google.cloud.iap.v1.ListIdentityAwareProxyClientsResponse
+ * @static
+ * @param {google.cloud.iap.v1.IListIdentityAwareProxyClientsResponse} message ListIdentityAwareProxyClientsResponse message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ ListIdentityAwareProxyClientsResponse.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.identityAwareProxyClients != null && message.identityAwareProxyClients.length)
+ for (var i = 0; i < message.identityAwareProxyClients.length; ++i)
+ $root.google.cloud.iap.v1.IdentityAwareProxyClient.encode(message.identityAwareProxyClients[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 ListIdentityAwareProxyClientsResponse message, length delimited. Does not implicitly {@link google.cloud.iap.v1.ListIdentityAwareProxyClientsResponse.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.cloud.iap.v1.ListIdentityAwareProxyClientsResponse
+ * @static
+ * @param {google.cloud.iap.v1.IListIdentityAwareProxyClientsResponse} message ListIdentityAwareProxyClientsResponse message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ ListIdentityAwareProxyClientsResponse.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a ListIdentityAwareProxyClientsResponse message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.cloud.iap.v1.ListIdentityAwareProxyClientsResponse
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.cloud.iap.v1.ListIdentityAwareProxyClientsResponse} ListIdentityAwareProxyClientsResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ ListIdentityAwareProxyClientsResponse.decode = function 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.iap.v1.ListIdentityAwareProxyClientsResponse();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ if (!(message.identityAwareProxyClients && message.identityAwareProxyClients.length))
+ message.identityAwareProxyClients = [];
+ message.identityAwareProxyClients.push($root.google.cloud.iap.v1.IdentityAwareProxyClient.decode(reader, reader.uint32()));
+ break;
+ }
+ case 2: {
+ message.nextPageToken = reader.string();
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a ListIdentityAwareProxyClientsResponse message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.cloud.iap.v1.ListIdentityAwareProxyClientsResponse
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.cloud.iap.v1.ListIdentityAwareProxyClientsResponse} ListIdentityAwareProxyClientsResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ ListIdentityAwareProxyClientsResponse.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a ListIdentityAwareProxyClientsResponse message.
+ * @function verify
+ * @memberof google.cloud.iap.v1.ListIdentityAwareProxyClientsResponse
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ ListIdentityAwareProxyClientsResponse.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.identityAwareProxyClients != null && message.hasOwnProperty("identityAwareProxyClients")) {
+ if (!Array.isArray(message.identityAwareProxyClients))
+ return "identityAwareProxyClients: array expected";
+ for (var i = 0; i < message.identityAwareProxyClients.length; ++i) {
+ var error = $root.google.cloud.iap.v1.IdentityAwareProxyClient.verify(message.identityAwareProxyClients[i]);
+ if (error)
+ return "identityAwareProxyClients." + error;
+ }
+ }
+ if (message.nextPageToken != null && message.hasOwnProperty("nextPageToken"))
+ if (!$util.isString(message.nextPageToken))
+ return "nextPageToken: string expected";
+ return null;
+ };
+
+ /**
+ * Creates a ListIdentityAwareProxyClientsResponse message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.cloud.iap.v1.ListIdentityAwareProxyClientsResponse
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.cloud.iap.v1.ListIdentityAwareProxyClientsResponse} ListIdentityAwareProxyClientsResponse
+ */
+ ListIdentityAwareProxyClientsResponse.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.cloud.iap.v1.ListIdentityAwareProxyClientsResponse)
+ return object;
+ var message = new $root.google.cloud.iap.v1.ListIdentityAwareProxyClientsResponse();
+ if (object.identityAwareProxyClients) {
+ if (!Array.isArray(object.identityAwareProxyClients))
+ throw TypeError(".google.cloud.iap.v1.ListIdentityAwareProxyClientsResponse.identityAwareProxyClients: array expected");
+ message.identityAwareProxyClients = [];
+ for (var i = 0; i < object.identityAwareProxyClients.length; ++i) {
+ if (typeof object.identityAwareProxyClients[i] !== "object")
+ throw TypeError(".google.cloud.iap.v1.ListIdentityAwareProxyClientsResponse.identityAwareProxyClients: object expected");
+ message.identityAwareProxyClients[i] = $root.google.cloud.iap.v1.IdentityAwareProxyClient.fromObject(object.identityAwareProxyClients[i]);
+ }
+ }
+ if (object.nextPageToken != null)
+ message.nextPageToken = String(object.nextPageToken);
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a ListIdentityAwareProxyClientsResponse message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.cloud.iap.v1.ListIdentityAwareProxyClientsResponse
+ * @static
+ * @param {google.cloud.iap.v1.ListIdentityAwareProxyClientsResponse} message ListIdentityAwareProxyClientsResponse
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ ListIdentityAwareProxyClientsResponse.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.arrays || options.defaults)
+ object.identityAwareProxyClients = [];
+ if (options.defaults)
+ object.nextPageToken = "";
+ if (message.identityAwareProxyClients && message.identityAwareProxyClients.length) {
+ object.identityAwareProxyClients = [];
+ for (var j = 0; j < message.identityAwareProxyClients.length; ++j)
+ object.identityAwareProxyClients[j] = $root.google.cloud.iap.v1.IdentityAwareProxyClient.toObject(message.identityAwareProxyClients[j], options);
+ }
+ if (message.nextPageToken != null && message.hasOwnProperty("nextPageToken"))
+ object.nextPageToken = message.nextPageToken;
+ return object;
+ };
+
+ /**
+ * Converts this ListIdentityAwareProxyClientsResponse to JSON.
+ * @function toJSON
+ * @memberof google.cloud.iap.v1.ListIdentityAwareProxyClientsResponse
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ ListIdentityAwareProxyClientsResponse.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for ListIdentityAwareProxyClientsResponse
+ * @function getTypeUrl
+ * @memberof google.cloud.iap.v1.ListIdentityAwareProxyClientsResponse
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ ListIdentityAwareProxyClientsResponse.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.cloud.iap.v1.ListIdentityAwareProxyClientsResponse";
+ };
+
+ return ListIdentityAwareProxyClientsResponse;
+ })();
+
+ v1.CreateIdentityAwareProxyClientRequest = (function() {
+
+ /**
+ * Properties of a CreateIdentityAwareProxyClientRequest.
+ * @memberof google.cloud.iap.v1
+ * @interface ICreateIdentityAwareProxyClientRequest
+ * @property {string|null} [parent] CreateIdentityAwareProxyClientRequest parent
+ * @property {google.cloud.iap.v1.IIdentityAwareProxyClient|null} [identityAwareProxyClient] CreateIdentityAwareProxyClientRequest identityAwareProxyClient
+ */
+
+ /**
+ * Constructs a new CreateIdentityAwareProxyClientRequest.
+ * @memberof google.cloud.iap.v1
+ * @classdesc Represents a CreateIdentityAwareProxyClientRequest.
+ * @implements ICreateIdentityAwareProxyClientRequest
+ * @constructor
+ * @param {google.cloud.iap.v1.ICreateIdentityAwareProxyClientRequest=} [properties] Properties to set
+ */
+ function CreateIdentityAwareProxyClientRequest(properties) {
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * CreateIdentityAwareProxyClientRequest parent.
+ * @member {string} parent
+ * @memberof google.cloud.iap.v1.CreateIdentityAwareProxyClientRequest
+ * @instance
+ */
+ CreateIdentityAwareProxyClientRequest.prototype.parent = "";
+
+ /**
+ * CreateIdentityAwareProxyClientRequest identityAwareProxyClient.
+ * @member {google.cloud.iap.v1.IIdentityAwareProxyClient|null|undefined} identityAwareProxyClient
+ * @memberof google.cloud.iap.v1.CreateIdentityAwareProxyClientRequest
+ * @instance
+ */
+ CreateIdentityAwareProxyClientRequest.prototype.identityAwareProxyClient = null;
+
+ /**
+ * Creates a new CreateIdentityAwareProxyClientRequest instance using the specified properties.
+ * @function create
+ * @memberof google.cloud.iap.v1.CreateIdentityAwareProxyClientRequest
+ * @static
+ * @param {google.cloud.iap.v1.ICreateIdentityAwareProxyClientRequest=} [properties] Properties to set
+ * @returns {google.cloud.iap.v1.CreateIdentityAwareProxyClientRequest} CreateIdentityAwareProxyClientRequest instance
+ */
+ CreateIdentityAwareProxyClientRequest.create = function create(properties) {
+ return new CreateIdentityAwareProxyClientRequest(properties);
+ };
+
+ /**
+ * Encodes the specified CreateIdentityAwareProxyClientRequest message. Does not implicitly {@link google.cloud.iap.v1.CreateIdentityAwareProxyClientRequest.verify|verify} messages.
+ * @function encode
+ * @memberof google.cloud.iap.v1.CreateIdentityAwareProxyClientRequest
+ * @static
+ * @param {google.cloud.iap.v1.ICreateIdentityAwareProxyClientRequest} message CreateIdentityAwareProxyClientRequest message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ CreateIdentityAwareProxyClientRequest.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.identityAwareProxyClient != null && Object.hasOwnProperty.call(message, "identityAwareProxyClient"))
+ $root.google.cloud.iap.v1.IdentityAwareProxyClient.encode(message.identityAwareProxyClient, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim();
+ return writer;
+ };
+
+ /**
+ * Encodes the specified CreateIdentityAwareProxyClientRequest message, length delimited. Does not implicitly {@link google.cloud.iap.v1.CreateIdentityAwareProxyClientRequest.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.cloud.iap.v1.CreateIdentityAwareProxyClientRequest
+ * @static
+ * @param {google.cloud.iap.v1.ICreateIdentityAwareProxyClientRequest} message CreateIdentityAwareProxyClientRequest message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ CreateIdentityAwareProxyClientRequest.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a CreateIdentityAwareProxyClientRequest message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.cloud.iap.v1.CreateIdentityAwareProxyClientRequest
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.cloud.iap.v1.CreateIdentityAwareProxyClientRequest} CreateIdentityAwareProxyClientRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ CreateIdentityAwareProxyClientRequest.decode = function 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.iap.v1.CreateIdentityAwareProxyClientRequest();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.parent = reader.string();
+ break;
+ }
+ case 2: {
+ message.identityAwareProxyClient = $root.google.cloud.iap.v1.IdentityAwareProxyClient.decode(reader, reader.uint32());
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a CreateIdentityAwareProxyClientRequest message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.cloud.iap.v1.CreateIdentityAwareProxyClientRequest
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.cloud.iap.v1.CreateIdentityAwareProxyClientRequest} CreateIdentityAwareProxyClientRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ CreateIdentityAwareProxyClientRequest.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a CreateIdentityAwareProxyClientRequest message.
+ * @function verify
+ * @memberof google.cloud.iap.v1.CreateIdentityAwareProxyClientRequest
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ CreateIdentityAwareProxyClientRequest.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.identityAwareProxyClient != null && message.hasOwnProperty("identityAwareProxyClient")) {
+ var error = $root.google.cloud.iap.v1.IdentityAwareProxyClient.verify(message.identityAwareProxyClient);
+ if (error)
+ return "identityAwareProxyClient." + error;
+ }
+ return null;
+ };
+
+ /**
+ * Creates a CreateIdentityAwareProxyClientRequest message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.cloud.iap.v1.CreateIdentityAwareProxyClientRequest
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.cloud.iap.v1.CreateIdentityAwareProxyClientRequest} CreateIdentityAwareProxyClientRequest
+ */
+ CreateIdentityAwareProxyClientRequest.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.cloud.iap.v1.CreateIdentityAwareProxyClientRequest)
+ return object;
+ var message = new $root.google.cloud.iap.v1.CreateIdentityAwareProxyClientRequest();
+ if (object.parent != null)
+ message.parent = String(object.parent);
+ if (object.identityAwareProxyClient != null) {
+ if (typeof object.identityAwareProxyClient !== "object")
+ throw TypeError(".google.cloud.iap.v1.CreateIdentityAwareProxyClientRequest.identityAwareProxyClient: object expected");
+ message.identityAwareProxyClient = $root.google.cloud.iap.v1.IdentityAwareProxyClient.fromObject(object.identityAwareProxyClient);
+ }
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a CreateIdentityAwareProxyClientRequest message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.cloud.iap.v1.CreateIdentityAwareProxyClientRequest
+ * @static
+ * @param {google.cloud.iap.v1.CreateIdentityAwareProxyClientRequest} message CreateIdentityAwareProxyClientRequest
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ CreateIdentityAwareProxyClientRequest.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.defaults) {
+ object.parent = "";
+ object.identityAwareProxyClient = null;
+ }
+ if (message.parent != null && message.hasOwnProperty("parent"))
+ object.parent = message.parent;
+ if (message.identityAwareProxyClient != null && message.hasOwnProperty("identityAwareProxyClient"))
+ object.identityAwareProxyClient = $root.google.cloud.iap.v1.IdentityAwareProxyClient.toObject(message.identityAwareProxyClient, options);
+ return object;
+ };
+
+ /**
+ * Converts this CreateIdentityAwareProxyClientRequest to JSON.
+ * @function toJSON
+ * @memberof google.cloud.iap.v1.CreateIdentityAwareProxyClientRequest
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ CreateIdentityAwareProxyClientRequest.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for CreateIdentityAwareProxyClientRequest
+ * @function getTypeUrl
+ * @memberof google.cloud.iap.v1.CreateIdentityAwareProxyClientRequest
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ CreateIdentityAwareProxyClientRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.cloud.iap.v1.CreateIdentityAwareProxyClientRequest";
+ };
+
+ return CreateIdentityAwareProxyClientRequest;
+ })();
+
+ v1.GetIdentityAwareProxyClientRequest = (function() {
+
+ /**
+ * Properties of a GetIdentityAwareProxyClientRequest.
+ * @memberof google.cloud.iap.v1
+ * @interface IGetIdentityAwareProxyClientRequest
+ * @property {string|null} [name] GetIdentityAwareProxyClientRequest name
+ */
+
+ /**
+ * Constructs a new GetIdentityAwareProxyClientRequest.
+ * @memberof google.cloud.iap.v1
+ * @classdesc Represents a GetIdentityAwareProxyClientRequest.
+ * @implements IGetIdentityAwareProxyClientRequest
+ * @constructor
+ * @param {google.cloud.iap.v1.IGetIdentityAwareProxyClientRequest=} [properties] Properties to set
+ */
+ function GetIdentityAwareProxyClientRequest(properties) {
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * GetIdentityAwareProxyClientRequest name.
+ * @member {string} name
+ * @memberof google.cloud.iap.v1.GetIdentityAwareProxyClientRequest
+ * @instance
+ */
+ GetIdentityAwareProxyClientRequest.prototype.name = "";
+
+ /**
+ * Creates a new GetIdentityAwareProxyClientRequest instance using the specified properties.
+ * @function create
+ * @memberof google.cloud.iap.v1.GetIdentityAwareProxyClientRequest
+ * @static
+ * @param {google.cloud.iap.v1.IGetIdentityAwareProxyClientRequest=} [properties] Properties to set
+ * @returns {google.cloud.iap.v1.GetIdentityAwareProxyClientRequest} GetIdentityAwareProxyClientRequest instance
+ */
+ GetIdentityAwareProxyClientRequest.create = function create(properties) {
+ return new GetIdentityAwareProxyClientRequest(properties);
+ };
+
+ /**
+ * Encodes the specified GetIdentityAwareProxyClientRequest message. Does not implicitly {@link google.cloud.iap.v1.GetIdentityAwareProxyClientRequest.verify|verify} messages.
+ * @function encode
+ * @memberof google.cloud.iap.v1.GetIdentityAwareProxyClientRequest
+ * @static
+ * @param {google.cloud.iap.v1.IGetIdentityAwareProxyClientRequest} message GetIdentityAwareProxyClientRequest message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ GetIdentityAwareProxyClientRequest.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 GetIdentityAwareProxyClientRequest message, length delimited. Does not implicitly {@link google.cloud.iap.v1.GetIdentityAwareProxyClientRequest.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.cloud.iap.v1.GetIdentityAwareProxyClientRequest
+ * @static
+ * @param {google.cloud.iap.v1.IGetIdentityAwareProxyClientRequest} message GetIdentityAwareProxyClientRequest message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ GetIdentityAwareProxyClientRequest.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a GetIdentityAwareProxyClientRequest message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.cloud.iap.v1.GetIdentityAwareProxyClientRequest
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.cloud.iap.v1.GetIdentityAwareProxyClientRequest} GetIdentityAwareProxyClientRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ GetIdentityAwareProxyClientRequest.decode = function 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.iap.v1.GetIdentityAwareProxyClientRequest();
+ 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 GetIdentityAwareProxyClientRequest message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.cloud.iap.v1.GetIdentityAwareProxyClientRequest
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.cloud.iap.v1.GetIdentityAwareProxyClientRequest} GetIdentityAwareProxyClientRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ GetIdentityAwareProxyClientRequest.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a GetIdentityAwareProxyClientRequest message.
+ * @function verify
+ * @memberof google.cloud.iap.v1.GetIdentityAwareProxyClientRequest
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ GetIdentityAwareProxyClientRequest.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 GetIdentityAwareProxyClientRequest message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.cloud.iap.v1.GetIdentityAwareProxyClientRequest
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.cloud.iap.v1.GetIdentityAwareProxyClientRequest} GetIdentityAwareProxyClientRequest
+ */
+ GetIdentityAwareProxyClientRequest.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.cloud.iap.v1.GetIdentityAwareProxyClientRequest)
+ return object;
+ var message = new $root.google.cloud.iap.v1.GetIdentityAwareProxyClientRequest();
+ if (object.name != null)
+ message.name = String(object.name);
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a GetIdentityAwareProxyClientRequest message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.cloud.iap.v1.GetIdentityAwareProxyClientRequest
+ * @static
+ * @param {google.cloud.iap.v1.GetIdentityAwareProxyClientRequest} message GetIdentityAwareProxyClientRequest
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ GetIdentityAwareProxyClientRequest.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 GetIdentityAwareProxyClientRequest to JSON.
+ * @function toJSON
+ * @memberof google.cloud.iap.v1.GetIdentityAwareProxyClientRequest
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ GetIdentityAwareProxyClientRequest.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for GetIdentityAwareProxyClientRequest
+ * @function getTypeUrl
+ * @memberof google.cloud.iap.v1.GetIdentityAwareProxyClientRequest
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ GetIdentityAwareProxyClientRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.cloud.iap.v1.GetIdentityAwareProxyClientRequest";
+ };
+
+ return GetIdentityAwareProxyClientRequest;
+ })();
+
+ v1.ResetIdentityAwareProxyClientSecretRequest = (function() {
+
+ /**
+ * Properties of a ResetIdentityAwareProxyClientSecretRequest.
+ * @memberof google.cloud.iap.v1
+ * @interface IResetIdentityAwareProxyClientSecretRequest
+ * @property {string|null} [name] ResetIdentityAwareProxyClientSecretRequest name
+ */
+
+ /**
+ * Constructs a new ResetIdentityAwareProxyClientSecretRequest.
+ * @memberof google.cloud.iap.v1
+ * @classdesc Represents a ResetIdentityAwareProxyClientSecretRequest.
+ * @implements IResetIdentityAwareProxyClientSecretRequest
+ * @constructor
+ * @param {google.cloud.iap.v1.IResetIdentityAwareProxyClientSecretRequest=} [properties] Properties to set
+ */
+ function ResetIdentityAwareProxyClientSecretRequest(properties) {
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * ResetIdentityAwareProxyClientSecretRequest name.
+ * @member {string} name
+ * @memberof google.cloud.iap.v1.ResetIdentityAwareProxyClientSecretRequest
+ * @instance
+ */
+ ResetIdentityAwareProxyClientSecretRequest.prototype.name = "";
+
+ /**
+ * Creates a new ResetIdentityAwareProxyClientSecretRequest instance using the specified properties.
+ * @function create
+ * @memberof google.cloud.iap.v1.ResetIdentityAwareProxyClientSecretRequest
+ * @static
+ * @param {google.cloud.iap.v1.IResetIdentityAwareProxyClientSecretRequest=} [properties] Properties to set
+ * @returns {google.cloud.iap.v1.ResetIdentityAwareProxyClientSecretRequest} ResetIdentityAwareProxyClientSecretRequest instance
+ */
+ ResetIdentityAwareProxyClientSecretRequest.create = function create(properties) {
+ return new ResetIdentityAwareProxyClientSecretRequest(properties);
+ };
+
+ /**
+ * Encodes the specified ResetIdentityAwareProxyClientSecretRequest message. Does not implicitly {@link google.cloud.iap.v1.ResetIdentityAwareProxyClientSecretRequest.verify|verify} messages.
+ * @function encode
+ * @memberof google.cloud.iap.v1.ResetIdentityAwareProxyClientSecretRequest
+ * @static
+ * @param {google.cloud.iap.v1.IResetIdentityAwareProxyClientSecretRequest} message ResetIdentityAwareProxyClientSecretRequest message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ ResetIdentityAwareProxyClientSecretRequest.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 ResetIdentityAwareProxyClientSecretRequest message, length delimited. Does not implicitly {@link google.cloud.iap.v1.ResetIdentityAwareProxyClientSecretRequest.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.cloud.iap.v1.ResetIdentityAwareProxyClientSecretRequest
+ * @static
+ * @param {google.cloud.iap.v1.IResetIdentityAwareProxyClientSecretRequest} message ResetIdentityAwareProxyClientSecretRequest message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ ResetIdentityAwareProxyClientSecretRequest.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a ResetIdentityAwareProxyClientSecretRequest message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.cloud.iap.v1.ResetIdentityAwareProxyClientSecretRequest
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.cloud.iap.v1.ResetIdentityAwareProxyClientSecretRequest} ResetIdentityAwareProxyClientSecretRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ ResetIdentityAwareProxyClientSecretRequest.decode = function 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.iap.v1.ResetIdentityAwareProxyClientSecretRequest();
+ 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 ResetIdentityAwareProxyClientSecretRequest message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.cloud.iap.v1.ResetIdentityAwareProxyClientSecretRequest
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.cloud.iap.v1.ResetIdentityAwareProxyClientSecretRequest} ResetIdentityAwareProxyClientSecretRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ ResetIdentityAwareProxyClientSecretRequest.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a ResetIdentityAwareProxyClientSecretRequest message.
+ * @function verify
+ * @memberof google.cloud.iap.v1.ResetIdentityAwareProxyClientSecretRequest
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ ResetIdentityAwareProxyClientSecretRequest.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 ResetIdentityAwareProxyClientSecretRequest message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.cloud.iap.v1.ResetIdentityAwareProxyClientSecretRequest
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.cloud.iap.v1.ResetIdentityAwareProxyClientSecretRequest} ResetIdentityAwareProxyClientSecretRequest
+ */
+ ResetIdentityAwareProxyClientSecretRequest.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.cloud.iap.v1.ResetIdentityAwareProxyClientSecretRequest)
+ return object;
+ var message = new $root.google.cloud.iap.v1.ResetIdentityAwareProxyClientSecretRequest();
+ if (object.name != null)
+ message.name = String(object.name);
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a ResetIdentityAwareProxyClientSecretRequest message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.cloud.iap.v1.ResetIdentityAwareProxyClientSecretRequest
+ * @static
+ * @param {google.cloud.iap.v1.ResetIdentityAwareProxyClientSecretRequest} message ResetIdentityAwareProxyClientSecretRequest
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ ResetIdentityAwareProxyClientSecretRequest.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 ResetIdentityAwareProxyClientSecretRequest to JSON.
+ * @function toJSON
+ * @memberof google.cloud.iap.v1.ResetIdentityAwareProxyClientSecretRequest
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ ResetIdentityAwareProxyClientSecretRequest.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for ResetIdentityAwareProxyClientSecretRequest
+ * @function getTypeUrl
+ * @memberof google.cloud.iap.v1.ResetIdentityAwareProxyClientSecretRequest
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ ResetIdentityAwareProxyClientSecretRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.cloud.iap.v1.ResetIdentityAwareProxyClientSecretRequest";
+ };
+
+ return ResetIdentityAwareProxyClientSecretRequest;
+ })();
+
+ v1.DeleteIdentityAwareProxyClientRequest = (function() {
+
+ /**
+ * Properties of a DeleteIdentityAwareProxyClientRequest.
+ * @memberof google.cloud.iap.v1
+ * @interface IDeleteIdentityAwareProxyClientRequest
+ * @property {string|null} [name] DeleteIdentityAwareProxyClientRequest name
+ */
+
+ /**
+ * Constructs a new DeleteIdentityAwareProxyClientRequest.
+ * @memberof google.cloud.iap.v1
+ * @classdesc Represents a DeleteIdentityAwareProxyClientRequest.
+ * @implements IDeleteIdentityAwareProxyClientRequest
+ * @constructor
+ * @param {google.cloud.iap.v1.IDeleteIdentityAwareProxyClientRequest=} [properties] Properties to set
+ */
+ function DeleteIdentityAwareProxyClientRequest(properties) {
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * DeleteIdentityAwareProxyClientRequest name.
+ * @member {string} name
+ * @memberof google.cloud.iap.v1.DeleteIdentityAwareProxyClientRequest
+ * @instance
+ */
+ DeleteIdentityAwareProxyClientRequest.prototype.name = "";
+
+ /**
+ * Creates a new DeleteIdentityAwareProxyClientRequest instance using the specified properties.
+ * @function create
+ * @memberof google.cloud.iap.v1.DeleteIdentityAwareProxyClientRequest
+ * @static
+ * @param {google.cloud.iap.v1.IDeleteIdentityAwareProxyClientRequest=} [properties] Properties to set
+ * @returns {google.cloud.iap.v1.DeleteIdentityAwareProxyClientRequest} DeleteIdentityAwareProxyClientRequest instance
+ */
+ DeleteIdentityAwareProxyClientRequest.create = function create(properties) {
+ return new DeleteIdentityAwareProxyClientRequest(properties);
+ };
+
+ /**
+ * Encodes the specified DeleteIdentityAwareProxyClientRequest message. Does not implicitly {@link google.cloud.iap.v1.DeleteIdentityAwareProxyClientRequest.verify|verify} messages.
+ * @function encode
+ * @memberof google.cloud.iap.v1.DeleteIdentityAwareProxyClientRequest
+ * @static
+ * @param {google.cloud.iap.v1.IDeleteIdentityAwareProxyClientRequest} message DeleteIdentityAwareProxyClientRequest message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ DeleteIdentityAwareProxyClientRequest.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 DeleteIdentityAwareProxyClientRequest message, length delimited. Does not implicitly {@link google.cloud.iap.v1.DeleteIdentityAwareProxyClientRequest.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.cloud.iap.v1.DeleteIdentityAwareProxyClientRequest
+ * @static
+ * @param {google.cloud.iap.v1.IDeleteIdentityAwareProxyClientRequest} message DeleteIdentityAwareProxyClientRequest message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ DeleteIdentityAwareProxyClientRequest.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a DeleteIdentityAwareProxyClientRequest message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.cloud.iap.v1.DeleteIdentityAwareProxyClientRequest
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.cloud.iap.v1.DeleteIdentityAwareProxyClientRequest} DeleteIdentityAwareProxyClientRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ DeleteIdentityAwareProxyClientRequest.decode = function 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.iap.v1.DeleteIdentityAwareProxyClientRequest();
+ 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 DeleteIdentityAwareProxyClientRequest message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.cloud.iap.v1.DeleteIdentityAwareProxyClientRequest
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.cloud.iap.v1.DeleteIdentityAwareProxyClientRequest} DeleteIdentityAwareProxyClientRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ DeleteIdentityAwareProxyClientRequest.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a DeleteIdentityAwareProxyClientRequest message.
+ * @function verify
+ * @memberof google.cloud.iap.v1.DeleteIdentityAwareProxyClientRequest
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ DeleteIdentityAwareProxyClientRequest.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 DeleteIdentityAwareProxyClientRequest message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.cloud.iap.v1.DeleteIdentityAwareProxyClientRequest
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.cloud.iap.v1.DeleteIdentityAwareProxyClientRequest} DeleteIdentityAwareProxyClientRequest
+ */
+ DeleteIdentityAwareProxyClientRequest.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.cloud.iap.v1.DeleteIdentityAwareProxyClientRequest)
+ return object;
+ var message = new $root.google.cloud.iap.v1.DeleteIdentityAwareProxyClientRequest();
+ if (object.name != null)
+ message.name = String(object.name);
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a DeleteIdentityAwareProxyClientRequest message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.cloud.iap.v1.DeleteIdentityAwareProxyClientRequest
+ * @static
+ * @param {google.cloud.iap.v1.DeleteIdentityAwareProxyClientRequest} message DeleteIdentityAwareProxyClientRequest
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ DeleteIdentityAwareProxyClientRequest.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 DeleteIdentityAwareProxyClientRequest to JSON.
+ * @function toJSON
+ * @memberof google.cloud.iap.v1.DeleteIdentityAwareProxyClientRequest
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ DeleteIdentityAwareProxyClientRequest.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for DeleteIdentityAwareProxyClientRequest
+ * @function getTypeUrl
+ * @memberof google.cloud.iap.v1.DeleteIdentityAwareProxyClientRequest
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ DeleteIdentityAwareProxyClientRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.cloud.iap.v1.DeleteIdentityAwareProxyClientRequest";
+ };
+
+ return DeleteIdentityAwareProxyClientRequest;
+ })();
+
+ v1.Brand = (function() {
+
+ /**
+ * Properties of a Brand.
+ * @memberof google.cloud.iap.v1
+ * @interface IBrand
+ * @property {string|null} [name] Brand name
+ * @property {string|null} [supportEmail] Brand supportEmail
+ * @property {string|null} [applicationTitle] Brand applicationTitle
+ * @property {boolean|null} [orgInternalOnly] Brand orgInternalOnly
+ */
+
+ /**
+ * Constructs a new Brand.
+ * @memberof google.cloud.iap.v1
+ * @classdesc Represents a Brand.
+ * @implements IBrand
+ * @constructor
+ * @param {google.cloud.iap.v1.IBrand=} [properties] Properties to set
+ */
+ function Brand(properties) {
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * Brand name.
+ * @member {string} name
+ * @memberof google.cloud.iap.v1.Brand
+ * @instance
+ */
+ Brand.prototype.name = "";
+
+ /**
+ * Brand supportEmail.
+ * @member {string} supportEmail
+ * @memberof google.cloud.iap.v1.Brand
+ * @instance
+ */
+ Brand.prototype.supportEmail = "";
+
+ /**
+ * Brand applicationTitle.
+ * @member {string} applicationTitle
+ * @memberof google.cloud.iap.v1.Brand
+ * @instance
+ */
+ Brand.prototype.applicationTitle = "";
+
+ /**
+ * Brand orgInternalOnly.
+ * @member {boolean} orgInternalOnly
+ * @memberof google.cloud.iap.v1.Brand
+ * @instance
+ */
+ Brand.prototype.orgInternalOnly = false;
+
+ /**
+ * Creates a new Brand instance using the specified properties.
+ * @function create
+ * @memberof google.cloud.iap.v1.Brand
+ * @static
+ * @param {google.cloud.iap.v1.IBrand=} [properties] Properties to set
+ * @returns {google.cloud.iap.v1.Brand} Brand instance
+ */
+ Brand.create = function create(properties) {
+ return new Brand(properties);
+ };
+
+ /**
+ * Encodes the specified Brand message. Does not implicitly {@link google.cloud.iap.v1.Brand.verify|verify} messages.
+ * @function encode
+ * @memberof google.cloud.iap.v1.Brand
+ * @static
+ * @param {google.cloud.iap.v1.IBrand} message Brand message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ Brand.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.supportEmail != null && Object.hasOwnProperty.call(message, "supportEmail"))
+ writer.uint32(/* id 2, wireType 2 =*/18).string(message.supportEmail);
+ if (message.applicationTitle != null && Object.hasOwnProperty.call(message, "applicationTitle"))
+ writer.uint32(/* id 3, wireType 2 =*/26).string(message.applicationTitle);
+ if (message.orgInternalOnly != null && Object.hasOwnProperty.call(message, "orgInternalOnly"))
+ writer.uint32(/* id 4, wireType 0 =*/32).bool(message.orgInternalOnly);
+ return writer;
+ };
+
+ /**
+ * Encodes the specified Brand message, length delimited. Does not implicitly {@link google.cloud.iap.v1.Brand.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.cloud.iap.v1.Brand
+ * @static
+ * @param {google.cloud.iap.v1.IBrand} message Brand message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ Brand.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a Brand message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.cloud.iap.v1.Brand
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.cloud.iap.v1.Brand} Brand
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ Brand.decode = function 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.iap.v1.Brand();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.name = reader.string();
+ break;
+ }
+ case 2: {
+ message.supportEmail = reader.string();
+ break;
+ }
+ case 3: {
+ message.applicationTitle = reader.string();
+ break;
+ }
+ case 4: {
+ message.orgInternalOnly = reader.bool();
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a Brand message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.cloud.iap.v1.Brand
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.cloud.iap.v1.Brand} Brand
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ Brand.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a Brand message.
+ * @function verify
+ * @memberof google.cloud.iap.v1.Brand
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ Brand.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.supportEmail != null && message.hasOwnProperty("supportEmail"))
+ if (!$util.isString(message.supportEmail))
+ return "supportEmail: string expected";
+ if (message.applicationTitle != null && message.hasOwnProperty("applicationTitle"))
+ if (!$util.isString(message.applicationTitle))
+ return "applicationTitle: string expected";
+ if (message.orgInternalOnly != null && message.hasOwnProperty("orgInternalOnly"))
+ if (typeof message.orgInternalOnly !== "boolean")
+ return "orgInternalOnly: boolean expected";
+ return null;
+ };
+
+ /**
+ * Creates a Brand message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.cloud.iap.v1.Brand
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.cloud.iap.v1.Brand} Brand
+ */
+ Brand.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.cloud.iap.v1.Brand)
+ return object;
+ var message = new $root.google.cloud.iap.v1.Brand();
+ if (object.name != null)
+ message.name = String(object.name);
+ if (object.supportEmail != null)
+ message.supportEmail = String(object.supportEmail);
+ if (object.applicationTitle != null)
+ message.applicationTitle = String(object.applicationTitle);
+ if (object.orgInternalOnly != null)
+ message.orgInternalOnly = Boolean(object.orgInternalOnly);
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a Brand message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.cloud.iap.v1.Brand
+ * @static
+ * @param {google.cloud.iap.v1.Brand} message Brand
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ Brand.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.defaults) {
+ object.name = "";
+ object.supportEmail = "";
+ object.applicationTitle = "";
+ object.orgInternalOnly = false;
+ }
+ if (message.name != null && message.hasOwnProperty("name"))
+ object.name = message.name;
+ if (message.supportEmail != null && message.hasOwnProperty("supportEmail"))
+ object.supportEmail = message.supportEmail;
+ if (message.applicationTitle != null && message.hasOwnProperty("applicationTitle"))
+ object.applicationTitle = message.applicationTitle;
+ if (message.orgInternalOnly != null && message.hasOwnProperty("orgInternalOnly"))
+ object.orgInternalOnly = message.orgInternalOnly;
+ return object;
+ };
+
+ /**
+ * Converts this Brand to JSON.
+ * @function toJSON
+ * @memberof google.cloud.iap.v1.Brand
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ Brand.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for Brand
+ * @function getTypeUrl
+ * @memberof google.cloud.iap.v1.Brand
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ Brand.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.cloud.iap.v1.Brand";
+ };
+
+ return Brand;
+ })();
+
+ v1.IdentityAwareProxyClient = (function() {
+
+ /**
+ * Properties of an IdentityAwareProxyClient.
+ * @memberof google.cloud.iap.v1
+ * @interface IIdentityAwareProxyClient
+ * @property {string|null} [name] IdentityAwareProxyClient name
+ * @property {string|null} [secret] IdentityAwareProxyClient secret
+ * @property {string|null} [displayName] IdentityAwareProxyClient displayName
+ */
+
+ /**
+ * Constructs a new IdentityAwareProxyClient.
+ * @memberof google.cloud.iap.v1
+ * @classdesc Represents an IdentityAwareProxyClient.
+ * @implements IIdentityAwareProxyClient
+ * @constructor
+ * @param {google.cloud.iap.v1.IIdentityAwareProxyClient=} [properties] Properties to set
+ */
+ function IdentityAwareProxyClient(properties) {
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * IdentityAwareProxyClient name.
+ * @member {string} name
+ * @memberof google.cloud.iap.v1.IdentityAwareProxyClient
+ * @instance
+ */
+ IdentityAwareProxyClient.prototype.name = "";
+
+ /**
+ * IdentityAwareProxyClient secret.
+ * @member {string} secret
+ * @memberof google.cloud.iap.v1.IdentityAwareProxyClient
+ * @instance
+ */
+ IdentityAwareProxyClient.prototype.secret = "";
+
+ /**
+ * IdentityAwareProxyClient displayName.
+ * @member {string} displayName
+ * @memberof google.cloud.iap.v1.IdentityAwareProxyClient
+ * @instance
+ */
+ IdentityAwareProxyClient.prototype.displayName = "";
+
+ /**
+ * Creates a new IdentityAwareProxyClient instance using the specified properties.
+ * @function create
+ * @memberof google.cloud.iap.v1.IdentityAwareProxyClient
+ * @static
+ * @param {google.cloud.iap.v1.IIdentityAwareProxyClient=} [properties] Properties to set
+ * @returns {google.cloud.iap.v1.IdentityAwareProxyClient} IdentityAwareProxyClient instance
+ */
+ IdentityAwareProxyClient.create = function create(properties) {
+ return new IdentityAwareProxyClient(properties);
+ };
+
+ /**
+ * Encodes the specified IdentityAwareProxyClient message. Does not implicitly {@link google.cloud.iap.v1.IdentityAwareProxyClient.verify|verify} messages.
+ * @function encode
+ * @memberof google.cloud.iap.v1.IdentityAwareProxyClient
+ * @static
+ * @param {google.cloud.iap.v1.IIdentityAwareProxyClient} message IdentityAwareProxyClient message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ IdentityAwareProxyClient.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.secret != null && Object.hasOwnProperty.call(message, "secret"))
+ writer.uint32(/* id 2, wireType 2 =*/18).string(message.secret);
+ if (message.displayName != null && Object.hasOwnProperty.call(message, "displayName"))
+ writer.uint32(/* id 3, wireType 2 =*/26).string(message.displayName);
+ return writer;
+ };
+
+ /**
+ * Encodes the specified IdentityAwareProxyClient message, length delimited. Does not implicitly {@link google.cloud.iap.v1.IdentityAwareProxyClient.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.cloud.iap.v1.IdentityAwareProxyClient
+ * @static
+ * @param {google.cloud.iap.v1.IIdentityAwareProxyClient} message IdentityAwareProxyClient message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ IdentityAwareProxyClient.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes an IdentityAwareProxyClient message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.cloud.iap.v1.IdentityAwareProxyClient
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.cloud.iap.v1.IdentityAwareProxyClient} IdentityAwareProxyClient
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ IdentityAwareProxyClient.decode = function 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.iap.v1.IdentityAwareProxyClient();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.name = reader.string();
+ break;
+ }
+ case 2: {
+ message.secret = reader.string();
+ break;
+ }
+ case 3: {
+ message.displayName = reader.string();
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes an IdentityAwareProxyClient message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.cloud.iap.v1.IdentityAwareProxyClient
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.cloud.iap.v1.IdentityAwareProxyClient} IdentityAwareProxyClient
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ IdentityAwareProxyClient.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies an IdentityAwareProxyClient message.
+ * @function verify
+ * @memberof google.cloud.iap.v1.IdentityAwareProxyClient
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ IdentityAwareProxyClient.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.secret != null && message.hasOwnProperty("secret"))
+ if (!$util.isString(message.secret))
+ return "secret: string expected";
+ if (message.displayName != null && message.hasOwnProperty("displayName"))
+ if (!$util.isString(message.displayName))
+ return "displayName: string expected";
+ return null;
+ };
+
+ /**
+ * Creates an IdentityAwareProxyClient message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.cloud.iap.v1.IdentityAwareProxyClient
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.cloud.iap.v1.IdentityAwareProxyClient} IdentityAwareProxyClient
+ */
+ IdentityAwareProxyClient.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.cloud.iap.v1.IdentityAwareProxyClient)
+ return object;
+ var message = new $root.google.cloud.iap.v1.IdentityAwareProxyClient();
+ if (object.name != null)
+ message.name = String(object.name);
+ if (object.secret != null)
+ message.secret = String(object.secret);
+ if (object.displayName != null)
+ message.displayName = String(object.displayName);
+ return message;
+ };
+
+ /**
+ * Creates a plain object from an IdentityAwareProxyClient message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.cloud.iap.v1.IdentityAwareProxyClient
+ * @static
+ * @param {google.cloud.iap.v1.IdentityAwareProxyClient} message IdentityAwareProxyClient
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ IdentityAwareProxyClient.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.defaults) {
+ object.name = "";
+ object.secret = "";
+ object.displayName = "";
+ }
+ if (message.name != null && message.hasOwnProperty("name"))
+ object.name = message.name;
+ if (message.secret != null && message.hasOwnProperty("secret"))
+ object.secret = message.secret;
+ if (message.displayName != null && message.hasOwnProperty("displayName"))
+ object.displayName = message.displayName;
+ return object;
+ };
+
+ /**
+ * Converts this IdentityAwareProxyClient to JSON.
+ * @function toJSON
+ * @memberof google.cloud.iap.v1.IdentityAwareProxyClient
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ IdentityAwareProxyClient.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for IdentityAwareProxyClient
+ * @function getTypeUrl
+ * @memberof google.cloud.iap.v1.IdentityAwareProxyClient
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ IdentityAwareProxyClient.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.cloud.iap.v1.IdentityAwareProxyClient";
+ };
+
+ return IdentityAwareProxyClient;
+ })();
+
+ return v1;
+ })();
+
+ iap.v1beta1 = (function() {
+
+ /**
+ * Namespace v1beta1.
+ * @memberof google.cloud.iap
+ * @namespace
+ */
+ var v1beta1 = {};
+
+ v1beta1.IdentityAwareProxyAdminV1Beta1 = (function() {
+
+ /**
+ * Constructs a new IdentityAwareProxyAdminV1Beta1 service.
+ * @memberof google.cloud.iap.v1beta1
+ * @classdesc Represents an IdentityAwareProxyAdminV1Beta1
+ * @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 IdentityAwareProxyAdminV1Beta1(rpcImpl, requestDelimited, responseDelimited) {
+ $protobuf.rpc.Service.call(this, rpcImpl, requestDelimited, responseDelimited);
+ }
+
+ (IdentityAwareProxyAdminV1Beta1.prototype = Object.create($protobuf.rpc.Service.prototype)).constructor = IdentityAwareProxyAdminV1Beta1;
+
+ /**
+ * Creates new IdentityAwareProxyAdminV1Beta1 service using the specified rpc implementation.
+ * @function create
+ * @memberof google.cloud.iap.v1beta1.IdentityAwareProxyAdminV1Beta1
+ * @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 {IdentityAwareProxyAdminV1Beta1} RPC service. Useful where requests and/or responses are streamed.
+ */
+ IdentityAwareProxyAdminV1Beta1.create = function create(rpcImpl, requestDelimited, responseDelimited) {
+ return new this(rpcImpl, requestDelimited, responseDelimited);
+ };
+
+ /**
+ * Callback as used by {@link google.cloud.iap.v1beta1.IdentityAwareProxyAdminV1Beta1|setIamPolicy}.
+ * @memberof google.cloud.iap.v1beta1.IdentityAwareProxyAdminV1Beta1
+ * @typedef SetIamPolicyCallback
+ * @type {function}
+ * @param {Error|null} error Error, if any
+ * @param {google.iam.v1.Policy} [response] Policy
+ */
+
+ /**
+ * Calls SetIamPolicy.
+ * @function setIamPolicy
+ * @memberof google.cloud.iap.v1beta1.IdentityAwareProxyAdminV1Beta1
+ * @instance
+ * @param {google.iam.v1.ISetIamPolicyRequest} request SetIamPolicyRequest message or plain object
+ * @param {google.cloud.iap.v1beta1.IdentityAwareProxyAdminV1Beta1.SetIamPolicyCallback} callback Node-style callback called with the error, if any, and Policy
+ * @returns {undefined}
+ * @variation 1
+ */
+ Object.defineProperty(IdentityAwareProxyAdminV1Beta1.prototype.setIamPolicy = function setIamPolicy(request, callback) {
+ return this.rpcCall(setIamPolicy, $root.google.iam.v1.SetIamPolicyRequest, $root.google.iam.v1.Policy, request, callback);
+ }, "name", { value: "SetIamPolicy" });
+
+ /**
+ * Calls SetIamPolicy.
+ * @function setIamPolicy
+ * @memberof google.cloud.iap.v1beta1.IdentityAwareProxyAdminV1Beta1
+ * @instance
+ * @param {google.iam.v1.ISetIamPolicyRequest} request SetIamPolicyRequest message or plain object
+ * @returns {Promise} Promise
+ * @variation 2
+ */
+
+ /**
+ * Callback as used by {@link google.cloud.iap.v1beta1.IdentityAwareProxyAdminV1Beta1|getIamPolicy}.
+ * @memberof google.cloud.iap.v1beta1.IdentityAwareProxyAdminV1Beta1
+ * @typedef GetIamPolicyCallback
+ * @type {function}
+ * @param {Error|null} error Error, if any
+ * @param {google.iam.v1.Policy} [response] Policy
+ */
+
+ /**
+ * Calls GetIamPolicy.
+ * @function getIamPolicy
+ * @memberof google.cloud.iap.v1beta1.IdentityAwareProxyAdminV1Beta1
+ * @instance
+ * @param {google.iam.v1.IGetIamPolicyRequest} request GetIamPolicyRequest message or plain object
+ * @param {google.cloud.iap.v1beta1.IdentityAwareProxyAdminV1Beta1.GetIamPolicyCallback} callback Node-style callback called with the error, if any, and Policy
+ * @returns {undefined}
+ * @variation 1
+ */
+ Object.defineProperty(IdentityAwareProxyAdminV1Beta1.prototype.getIamPolicy = function getIamPolicy(request, callback) {
+ return this.rpcCall(getIamPolicy, $root.google.iam.v1.GetIamPolicyRequest, $root.google.iam.v1.Policy, request, callback);
+ }, "name", { value: "GetIamPolicy" });
+
+ /**
+ * Calls GetIamPolicy.
+ * @function getIamPolicy
+ * @memberof google.cloud.iap.v1beta1.IdentityAwareProxyAdminV1Beta1
+ * @instance
+ * @param {google.iam.v1.IGetIamPolicyRequest} request GetIamPolicyRequest message or plain object
+ * @returns {Promise} Promise
+ * @variation 2
+ */
+
+ /**
+ * Callback as used by {@link google.cloud.iap.v1beta1.IdentityAwareProxyAdminV1Beta1|testIamPermissions}.
+ * @memberof google.cloud.iap.v1beta1.IdentityAwareProxyAdminV1Beta1
+ * @typedef TestIamPermissionsCallback
+ * @type {function}
+ * @param {Error|null} error Error, if any
+ * @param {google.iam.v1.TestIamPermissionsResponse} [response] TestIamPermissionsResponse
+ */
+
+ /**
+ * Calls TestIamPermissions.
+ * @function testIamPermissions
+ * @memberof google.cloud.iap.v1beta1.IdentityAwareProxyAdminV1Beta1
+ * @instance
+ * @param {google.iam.v1.ITestIamPermissionsRequest} request TestIamPermissionsRequest message or plain object
+ * @param {google.cloud.iap.v1beta1.IdentityAwareProxyAdminV1Beta1.TestIamPermissionsCallback} callback Node-style callback called with the error, if any, and TestIamPermissionsResponse
+ * @returns {undefined}
+ * @variation 1
+ */
+ Object.defineProperty(IdentityAwareProxyAdminV1Beta1.prototype.testIamPermissions = function testIamPermissions(request, callback) {
+ return this.rpcCall(testIamPermissions, $root.google.iam.v1.TestIamPermissionsRequest, $root.google.iam.v1.TestIamPermissionsResponse, request, callback);
+ }, "name", { value: "TestIamPermissions" });
+
+ /**
+ * Calls TestIamPermissions.
+ * @function testIamPermissions
+ * @memberof google.cloud.iap.v1beta1.IdentityAwareProxyAdminV1Beta1
+ * @instance
+ * @param {google.iam.v1.ITestIamPermissionsRequest} request TestIamPermissionsRequest message or plain object
+ * @returns {Promise} Promise
+ * @variation 2
+ */
+
+ return IdentityAwareProxyAdminV1Beta1;
+ })();
+
+ return v1beta1;
+ })();
+
+ return iap;
+ })();
+
+ 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);
+ };
+
+ /**
+ * 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;
+ })();
+
+ 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
+ */
+ 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.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);
+ };
+
+ /**
+ * 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;
+ })();
+
+ 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);
+ };
+
+ /**
+ * 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;
+ })();
+
+ /**
+ * 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 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) {
+ default:
+ if (typeof object.history === "number") {
+ message.history = object.history;
+ break;
+ }
+ break;
+ 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:
+ if (typeof object.style[i] === "number") {
+ message.style[i] = object.style[i];
+ break;
+ }
+ 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] === 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"))
+ 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]] === undefined ? message.style[j] : $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);
+ };
+
+ /**
+ * 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
+ * @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);
+ };
+
+ /**
+ * 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;
+ })();
+
+ 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);
+ };
+
+ /**
+ * 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;
+ })();
+
+ 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
+ * @property {string|null} [edition] FileDescriptorProto edition
+ */
+
+ /**
+ * 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 = "";
+
+ /**
+ * FileDescriptorProto edition.
+ * @member {string} edition
+ * @memberof google.protobuf.FileDescriptorProto
+ * @instance
+ */
+ FileDescriptorProto.prototype.edition = "";
+
+ /**
+ * 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);
+ if (message.edition != null && Object.hasOwnProperty.call(message, "edition"))
+ writer.uint32(/* id 13, wireType 2 =*/106).string(message.edition);
+ 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;
+ }
+ case 13: {
+ message.edition = 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";
+ if (message.edition != null && message.hasOwnProperty("edition"))
+ if (!$util.isString(message.edition))
+ return "edition: 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);
+ if (object.edition != null)
+ message.edition = String(object.edition);
+ 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 = "";
+ object.edition = "";
+ }
+ 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;
+ if (message.edition != null && message.hasOwnProperty("edition"))
+ object.edition = message.edition;
+ 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);
+ };
+
+ /**
+ * 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;
+ })();
+
+ 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);
+ };
+
+ /**
+ * 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() {
+
+ /**
+ * 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);
+ };
+
+ /**
+ * 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;
+ })();
+
+ 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.