diff --git a/.release-please-manifest.json b/.release-please-manifest.json
index 93e60e1c383..9fcb07ae188 100644
--- a/.release-please-manifest.json
+++ b/.release-please-manifest.json
@@ -1,6 +1,7 @@
{
"packages/gapic-node-templating": "0.0.0",
"packages/google-api-apikeys": "0.1.3",
+ "packages/google-cloud-apigateway": "2.1.2",
"packages/google-api-serviceusage": "2.1.2",
"packages/google-api-servicecontrol": "2.0.3",
"packages/google-appengine": "2.1.2",
diff --git a/packages/google-cloud-apigateway/.OwlBot.yaml b/packages/google-cloud-apigateway/.OwlBot.yaml
new file mode 100644
index 00000000000..179b8d2b897
--- /dev/null
+++ b/packages/google-cloud-apigateway/.OwlBot.yaml
@@ -0,0 +1,23 @@
+# Copyright 2021 Google LLC
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+deep-remove-regex:
+ - /owl-bot-staging
+
+deep-copy-regex:
+ - source: /google/cloud/apigateway/(.*)/.*-nodejs
+ dest: /owl-bot-staging/google-cloud-apigateway/$1
+
+begin-after-commit-hash: f899f4fc473f95086eba7fb43b28794417e24aa0
+
diff --git a/packages/google-cloud-apigateway/.eslintignore b/packages/google-cloud-apigateway/.eslintignore
new file mode 100644
index 00000000000..ea5b04aebe6
--- /dev/null
+++ b/packages/google-cloud-apigateway/.eslintignore
@@ -0,0 +1,7 @@
+**/node_modules
+**/coverage
+test/fixtures
+build/
+docs/
+protos/
+samples/generated/
diff --git a/packages/google-cloud-apigateway/.eslintrc.json b/packages/google-cloud-apigateway/.eslintrc.json
new file mode 100644
index 00000000000..78215349546
--- /dev/null
+++ b/packages/google-cloud-apigateway/.eslintrc.json
@@ -0,0 +1,3 @@
+{
+ "extends": "./node_modules/gts"
+}
diff --git a/packages/google-cloud-apigateway/.gitattributes b/packages/google-cloud-apigateway/.gitattributes
new file mode 100644
index 00000000000..33739cb74e4
--- /dev/null
+++ b/packages/google-cloud-apigateway/.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-apigateway/.gitignore b/packages/google-cloud-apigateway/.gitignore
new file mode 100644
index 00000000000..5d32b23782f
--- /dev/null
+++ b/packages/google-cloud-apigateway/.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-apigateway/.jsdoc.js b/packages/google-cloud-apigateway/.jsdoc.js
new file mode 100644
index 00000000000..61752b5a362
--- /dev/null
+++ b/packages/google-cloud-apigateway/.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/api-gateway',
+ theme: 'lumen',
+ default: {
+ outputSourceFiles: false
+ }
+ },
+ markdown: {
+ idInHeadings: true
+ }
+};
diff --git a/packages/google-cloud-apigateway/.mocharc.js b/packages/google-cloud-apigateway/.mocharc.js
new file mode 100644
index 00000000000..cdb7b752160
--- /dev/null
+++ b/packages/google-cloud-apigateway/.mocharc.js
@@ -0,0 +1,29 @@
+// Copyright 2022 Google LLC
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+const config = {
+ "enable-source-maps": true,
+ "throw-deprecation": true,
+ "timeout": 10000,
+ "recursive": true
+}
+if (process.env.MOCHA_THROW_DEPRECATION === 'false') {
+ delete config['throw-deprecation'];
+}
+if (process.env.MOCHA_REPORTER) {
+ config.reporter = process.env.MOCHA_REPORTER;
+}
+if (process.env.MOCHA_REPORTER_OUTPUT) {
+ config['reporter-option'] = `output=${process.env.MOCHA_REPORTER_OUTPUT}`;
+}
+module.exports = config
diff --git a/packages/google-cloud-apigateway/.nycrc b/packages/google-cloud-apigateway/.nycrc
new file mode 100644
index 00000000000..b18d5472b62
--- /dev/null
+++ b/packages/google-cloud-apigateway/.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-apigateway/.prettierignore b/packages/google-cloud-apigateway/.prettierignore
new file mode 100644
index 00000000000..9340ad9b86d
--- /dev/null
+++ b/packages/google-cloud-apigateway/.prettierignore
@@ -0,0 +1,6 @@
+**/node_modules
+**/coverage
+test/fixtures
+build/
+docs/
+protos/
diff --git a/packages/google-cloud-apigateway/.prettierrc.js b/packages/google-cloud-apigateway/.prettierrc.js
new file mode 100644
index 00000000000..d546a4ad546
--- /dev/null
+++ b/packages/google-cloud-apigateway/.prettierrc.js
@@ -0,0 +1,17 @@
+// Copyright 2022 Google LLC
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// https://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+module.exports = {
+ ...require('gts/.prettierrc.json')
+}
diff --git a/packages/google-cloud-apigateway/.repo-metadata.json b/packages/google-cloud-apigateway/.repo-metadata.json
new file mode 100644
index 00000000000..1129ee06e43
--- /dev/null
+++ b/packages/google-cloud-apigateway/.repo-metadata.json
@@ -0,0 +1,16 @@
+{
+ "requires_billing": true,
+ "name": "api-gateway",
+ "client_documentation": "https://cloud.google.com/nodejs/docs/reference/api-gateway/latest",
+ "api_id": "apigateway.googleapis.com",
+ "issue_tracker": "https://github.com/googleapis/google-cloud-node/issues",
+ "distribution_name": "@google-cloud/api-gateway",
+ "language": "nodejs",
+ "release_level": "stable",
+ "product_documentation": "https://cloud.google.com/api-gateway/docs",
+ "name_pretty": "API Gateway",
+ "repo": "googleapis/google-cloud-node",
+ "default_version": "v1",
+ "api_shortname": "apigateway",
+ "library_type": "GAPIC_AUTO"
+}
diff --git a/packages/google-cloud-apigateway/CHANGELOG.md b/packages/google-cloud-apigateway/CHANGELOG.md
new file mode 100644
index 00000000000..be39dea6b04
--- /dev/null
+++ b/packages/google-cloud-apigateway/CHANGELOG.md
@@ -0,0 +1,123 @@
+# Changelog
+
+## [2.1.2](https://github.com/googleapis/nodejs-api-gateway/compare/v2.1.1...v2.1.2) (2022-11-11)
+
+
+### Bug Fixes
+
+* Allow passing gax instance to client constructor ([#128](https://github.com/googleapis/nodejs-api-gateway/issues/128)) ([d164e0d](https://github.com/googleapis/nodejs-api-gateway/commit/d164e0d73efc730aa20df74a6333e7b139076225))
+* **deps:** Use google-gax v3.5.2 ([#136](https://github.com/googleapis/nodejs-api-gateway/issues/136)) ([225bccf](https://github.com/googleapis/nodejs-api-gateway/commit/225bccfd96bdde4329c8481f104379e2293139f0))
+* Do not import the whole google-gax from proto JS ([#1553](https://github.com/googleapis/nodejs-api-gateway/issues/1553)) ([#127](https://github.com/googleapis/nodejs-api-gateway/issues/127)) ([ca45455](https://github.com/googleapis/nodejs-api-gateway/commit/ca45455b795e42a95b6e1f814a821467d612bc8d))
+* Preserve default values in x-goog-request-params header ([#130](https://github.com/googleapis/nodejs-api-gateway/issues/130)) ([a3e409a](https://github.com/googleapis/nodejs-api-gateway/commit/a3e409abde922fb3adc6eb1888e8a954702cfed2))
+* Regenerated protos JS and TS definitions ([#139](https://github.com/googleapis/nodejs-api-gateway/issues/139)) ([924cd81](https://github.com/googleapis/nodejs-api-gateway/commit/924cd8179365dc4364d5431e6e7abab31f6d2bee))
+* use google-gax v3.3.0 ([ca45455](https://github.com/googleapis/nodejs-api-gateway/commit/ca45455b795e42a95b6e1f814a821467d612bc8d))
+
+## [2.1.1](https://github.com/googleapis/nodejs-api-gateway/compare/v2.1.0...v2.1.1) (2022-08-23)
+
+
+### Bug Fixes
+
+* better support for fallback mode ([#123](https://github.com/googleapis/nodejs-api-gateway/issues/123)) ([a5cf1d1](https://github.com/googleapis/nodejs-api-gateway/commit/a5cf1d1322bd1f7c70e995b15ce81f54ad5b10de))
+* change import long to require ([#124](https://github.com/googleapis/nodejs-api-gateway/issues/124)) ([6edc9af](https://github.com/googleapis/nodejs-api-gateway/commit/6edc9af8b60cf5bf6494dbc9560ffe1962c268b3))
+* remove pip install statements ([#1546](https://github.com/googleapis/nodejs-api-gateway/issues/1546)) ([#126](https://github.com/googleapis/nodejs-api-gateway/issues/126)) ([bde7a85](https://github.com/googleapis/nodejs-api-gateway/commit/bde7a858a9fdb90614a0a5996c525214053e6cb7))
+
+## [2.1.0](https://github.com/googleapis/nodejs-api-gateway/compare/v2.0.0...v2.1.0) (2022-06-29)
+
+
+### Features
+
+* support regapic LRO ([#116](https://github.com/googleapis/nodejs-api-gateway/issues/116)) ([b3761fc](https://github.com/googleapis/nodejs-api-gateway/commit/b3761fc10fc5f3160ac29dbebfd86fda99de00e6))
+
+## [2.0.0](https://github.com/googleapis/nodejs-api-gateway/compare/v1.2.1...v2.0.0) (2022-05-20)
+
+
+### ⚠ BREAKING CHANGES
+
+* update library to use Node 12 (#109)
+
+### Build System
+
+* update library to use Node 12 ([#109](https://github.com/googleapis/nodejs-api-gateway/issues/109)) ([b5a07ad](https://github.com/googleapis/nodejs-api-gateway/commit/b5a07ad01f8a9d74a8a713ff412ef165f5f494d8))
+
+### [1.2.1](https://github.com/googleapis/nodejs-api-gateway/compare/v1.2.0...v1.2.1) (2022-01-12)
+
+
+### Bug Fixes
+
+* **apigateway:** add ancillary service bindings to service_yaml ([#84](https://github.com/googleapis/nodejs-api-gateway/issues/84)) ([801a824](https://github.com/googleapis/nodejs-api-gateway/commit/801a82482addc0acb8485c484b050cd34e39d270))
+
+## [1.2.0](https://www.github.com/googleapis/nodejs-api-gateway/compare/v1.1.6...v1.2.0) (2021-08-23)
+
+
+### Features
+
+* turns on self-signed JWT feature flag ([#60](https://www.github.com/googleapis/nodejs-api-gateway/issues/60)) ([2f86035](https://www.github.com/googleapis/nodejs-api-gateway/commit/2f86035d2a76604b0e4dad97272781e25e4fe899))
+
+### [1.1.6](https://www.github.com/googleapis/nodejs-api-gateway/compare/v1.1.5...v1.1.6) (2021-08-17)
+
+
+### Bug Fixes
+
+* **deps:** google-gax v2.24.1 ([#58](https://www.github.com/googleapis/nodejs-api-gateway/issues/58)) ([e5f8604](https://www.github.com/googleapis/nodejs-api-gateway/commit/e5f8604007dfcc0c58c016a0253b9b65616a5ae4))
+
+### [1.1.5](https://www.github.com/googleapis/nodejs-api-gateway/compare/v1.1.4...v1.1.5) (2021-08-09)
+
+
+### Bug Fixes
+
+* **build:** migrate to using main branch ([#56](https://www.github.com/googleapis/nodejs-api-gateway/issues/56)) ([e7b3909](https://www.github.com/googleapis/nodejs-api-gateway/commit/e7b3909be004b229ae1151514b8b108286a0d6a5))
+
+### [1.1.4](https://www.github.com/googleapis/nodejs-api-gateway/compare/v1.1.3...v1.1.4) (2021-07-16)
+
+
+### Bug Fixes
+
+* Updating WORKSPACE files to use the newest version of the Typescript generator. ([#48](https://www.github.com/googleapis/nodejs-api-gateway/issues/48)) ([92a65a5](https://www.github.com/googleapis/nodejs-api-gateway/commit/92a65a5be258a685cbed2780f70db0ecf91b65fd))
+
+### [1.1.3](https://www.github.com/googleapis/nodejs-api-gateway/compare/v1.1.2...v1.1.3) (2021-07-12)
+
+
+### Bug Fixes
+
+* **deps:** google-gax v2.17.1 ([#46](https://www.github.com/googleapis/nodejs-api-gateway/issues/46)) ([d0d953e](https://www.github.com/googleapis/nodejs-api-gateway/commit/d0d953e87e8fe2d04f64e82923396da9b38925ad))
+
+### [1.1.2](https://www.github.com/googleapis/nodejs-api-gateway/compare/v1.1.1...v1.1.2) (2021-06-29)
+
+
+### Bug Fixes
+
+* **deps:** google-gax v2.17.0 with mTLS ([#44](https://www.github.com/googleapis/nodejs-api-gateway/issues/44)) ([669d327](https://www.github.com/googleapis/nodejs-api-gateway/commit/669d32783d642d1bd6b2ee743200f2002878ab79))
+* make request optional in all cases ([#40](https://www.github.com/googleapis/nodejs-api-gateway/issues/40)) ([9e00d1a](https://www.github.com/googleapis/nodejs-api-gateway/commit/9e00d1a4f8207880ceefa0717ddd68a1d61f45e6))
+
+### [1.1.1](https://www.github.com/googleapis/nodejs-api-gateway/compare/v1.1.0...v1.1.1) (2021-05-25)
+
+
+### Bug Fixes
+
+* GoogleAdsError missing using generator version after 1.3.0 ([#33](https://www.github.com/googleapis/nodejs-api-gateway/issues/33)) ([d58a7f6](https://www.github.com/googleapis/nodejs-api-gateway/commit/d58a7f6ac39c050cacb82367588a536df5b94090))
+
+## [1.1.0](https://www.github.com/googleapis/nodejs-api-gateway/compare/v1.0.1...v1.1.0) (2021-05-24)
+
+
+### Features
+
+* bump release level to GA ([#30](https://www.github.com/googleapis/nodejs-api-gateway/issues/30)) ([17d6485](https://www.github.com/googleapis/nodejs-api-gateway/commit/17d6485a5061f8c1f14e835d335b88e6bc427ff0))
+
+### [1.0.1](https://www.github.com/googleapis/nodejs-api-gateway/compare/v1.0.0...v1.0.1) (2021-05-12)
+
+
+### Bug Fixes
+
+* **deps:** require google-gax v2.12.0 ([#23](https://www.github.com/googleapis/nodejs-api-gateway/issues/23)) ([9d7920e](https://www.github.com/googleapis/nodejs-api-gateway/commit/9d7920ea5e76253e1a042f29ff67dc5c36df0015))
+* use require() to load JSON protos ([#26](https://www.github.com/googleapis/nodejs-api-gateway/issues/26)) ([e343ef1](https://www.github.com/googleapis/nodejs-api-gateway/commit/e343ef1bf9c8d34ec4f1a0281ed40ff4184c976f))
+
+## 1.0.0 (2021-03-06)
+
+
+### ⚠ BREAKING CHANGES
+
+* initial generation of library (#1)
+
+### Features
+
+* initial generation of library ([#1](https://www.github.com/googleapis/nodejs-api-gateway/issues/1)) ([f2cd6e9](https://www.github.com/googleapis/nodejs-api-gateway/commit/f2cd6e9d92551ef6cdbc34a51ab9cf660e1de54d))
diff --git a/packages/google-cloud-apigateway/CODE_OF_CONDUCT.md b/packages/google-cloud-apigateway/CODE_OF_CONDUCT.md
new file mode 100644
index 00000000000..2add2547a81
--- /dev/null
+++ b/packages/google-cloud-apigateway/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-apigateway/CONTRIBUTING.md b/packages/google-cloud-apigateway/CONTRIBUTING.md
new file mode 100644
index 00000000000..3823c7242c6
--- /dev/null
+++ b/packages/google-cloud-apigateway/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 API Gateway 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=apigateway.googleapis.com
+[auth]: https://cloud.google.com/docs/authentication/getting-started
\ No newline at end of file
diff --git a/packages/google-cloud-apigateway/LICENSE b/packages/google-cloud-apigateway/LICENSE
new file mode 100644
index 00000000000..d6456956733
--- /dev/null
+++ b/packages/google-cloud-apigateway/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-apigateway/README.md b/packages/google-cloud-apigateway/README.md
new file mode 100644
index 00000000000..03e3a5d58c6
--- /dev/null
+++ b/packages/google-cloud-apigateway/README.md
@@ -0,0 +1,172 @@
+[//]: # "This README.md file is auto-generated, all changes to this file will be lost."
+[//]: # "To regenerate it, use `python -m synthtool`."
+
+
+# [API Gateway: Node.js Client](https://github.com/googleapis/google-cloud-node)
+
+[![release level](https://img.shields.io/badge/release%20level-stable-brightgreen.svg?style=flat)](https://cloud.google.com/terms/launch-stages)
+[![npm version](https://img.shields.io/npm/v/@google-cloud/api-gateway.svg)](https://www.npmjs.org/package/@google-cloud/api-gateway)
+
+
+
+
+Apigateway client for Node.js
+
+
+A comprehensive list of changes in each version may be found in
+[the CHANGELOG](https://github.com/googleapis/google-cloud-node/tree/main/packages/google-cloud-apigateway/CHANGELOG.md).
+
+* [API Gateway Node.js Client API Reference][client-docs]
+* [API Gateway Documentation][product-docs]
+* [github.com/googleapis/google-cloud-node/packages/google-cloud-apigateway](https://github.com/googleapis/google-cloud-node/tree/main/packages/google-cloud-apigateway)
+
+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 API Gateway 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/api-gateway
+```
+
+
+### Using the client library
+
+```javascript
+/**
+ * TODO(developer): Uncomment these variables before running the sample.
+ */
+// const projectId = 'my-project';
+const {ApiGatewayServiceClient} = require('@google-cloud/api-gateway');
+const client = new ApiGatewayServiceClient();
+async function listApis() {
+ const [apis] = await client.listApis({
+ parent: `projects/${projectId}/locations/global`,
+ });
+ for (const api of apis) {
+ console.info(`name: ${api.name}`);
+ }
+}
+listApis();
+
+```
+
+
+
+## Samples
+
+Samples are in the [`samples/`](https://github.com/googleapis/google-cloud-node/tree/main/samples) directory. Each sample's `README.md` has instructions for running its sample.
+
+| Sample | Source Code | Try it |
+| --------------------------- | --------------------------------- | ------ |
+| Api_gateway_service.create_api | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-apigateway/samples/generated/v1/api_gateway_service.create_api.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-apigateway/samples/generated/v1/api_gateway_service.create_api.js,samples/README.md) |
+| Api_gateway_service.create_api_config | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-apigateway/samples/generated/v1/api_gateway_service.create_api_config.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-apigateway/samples/generated/v1/api_gateway_service.create_api_config.js,samples/README.md) |
+| Api_gateway_service.create_gateway | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-apigateway/samples/generated/v1/api_gateway_service.create_gateway.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-apigateway/samples/generated/v1/api_gateway_service.create_gateway.js,samples/README.md) |
+| Api_gateway_service.delete_api | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-apigateway/samples/generated/v1/api_gateway_service.delete_api.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-apigateway/samples/generated/v1/api_gateway_service.delete_api.js,samples/README.md) |
+| Api_gateway_service.delete_api_config | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-apigateway/samples/generated/v1/api_gateway_service.delete_api_config.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-apigateway/samples/generated/v1/api_gateway_service.delete_api_config.js,samples/README.md) |
+| Api_gateway_service.delete_gateway | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-apigateway/samples/generated/v1/api_gateway_service.delete_gateway.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-apigateway/samples/generated/v1/api_gateway_service.delete_gateway.js,samples/README.md) |
+| Api_gateway_service.get_api | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-apigateway/samples/generated/v1/api_gateway_service.get_api.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-apigateway/samples/generated/v1/api_gateway_service.get_api.js,samples/README.md) |
+| Api_gateway_service.get_api_config | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-apigateway/samples/generated/v1/api_gateway_service.get_api_config.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-apigateway/samples/generated/v1/api_gateway_service.get_api_config.js,samples/README.md) |
+| Api_gateway_service.get_gateway | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-apigateway/samples/generated/v1/api_gateway_service.get_gateway.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-apigateway/samples/generated/v1/api_gateway_service.get_gateway.js,samples/README.md) |
+| Api_gateway_service.list_api_configs | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-apigateway/samples/generated/v1/api_gateway_service.list_api_configs.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-apigateway/samples/generated/v1/api_gateway_service.list_api_configs.js,samples/README.md) |
+| Api_gateway_service.list_apis | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-apigateway/samples/generated/v1/api_gateway_service.list_apis.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-apigateway/samples/generated/v1/api_gateway_service.list_apis.js,samples/README.md) |
+| Api_gateway_service.list_gateways | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-apigateway/samples/generated/v1/api_gateway_service.list_gateways.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-apigateway/samples/generated/v1/api_gateway_service.list_gateways.js,samples/README.md) |
+| Api_gateway_service.update_api | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-apigateway/samples/generated/v1/api_gateway_service.update_api.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-apigateway/samples/generated/v1/api_gateway_service.update_api.js,samples/README.md) |
+| Api_gateway_service.update_api_config | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-apigateway/samples/generated/v1/api_gateway_service.update_api_config.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-apigateway/samples/generated/v1/api_gateway_service.update_api_config.js,samples/README.md) |
+| Api_gateway_service.update_gateway | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-apigateway/samples/generated/v1/api_gateway_service.update_gateway.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-apigateway/samples/generated/v1/api_gateway_service.update_gateway.js,samples/README.md) |
+| Quickstart | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-apigateway/samples/quickstart.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-apigateway/samples/quickstart.js,samples/README.md) |
+| Quickstart.test | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-apigateway/samples/test/quickstart.test.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-apigateway/samples/test/quickstart.test.js,samples/README.md) |
+
+
+
+The [API Gateway 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/api-gateway@legacy-8` installs client libraries
+for versions compatible with Node.js 8.
+
+## Versioning
+
+This library follows [Semantic Versioning](http://semver.org/).
+
+
+
+This library is considered to be **stable**. The code surface will not change in backwards-incompatible ways
+unless absolutely necessary (e.g. because of critical security issues) or with
+an extensive deprecation period. Issues and requests against **stable** libraries
+are addressed with the highest priority.
+
+
+
+
+
+
+More Information: [Google Cloud Platform Launch Stages][launch_stages]
+
+[launch_stages]: https://cloud.google.com/terms/launch-stages
+
+## Contributing
+
+Contributions welcome! See the [Contributing Guide](https://github.com/googleapis/google-cloud-node/blob/main/CONTRIBUTING.md).
+
+Please note that this `README.md`, the `samples/README.md`,
+and a variety of configuration files in this repository (including `.nycrc` and `tsconfig.json`)
+are generated from a central template. To edit one of these files, make an edit
+to its templates in
+[directory](https://github.com/googleapis/synthtool).
+
+## License
+
+Apache Version 2.0
+
+See [LICENSE](https://github.com/googleapis/google-cloud-node/blob/main/LICENSE)
+
+[client-docs]: https://cloud.google.com/nodejs/docs/reference/api-gateway/latest
+[product-docs]: https://cloud.google.com/api-gateway/docs
+[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=apigateway.googleapis.com
+[auth]: https://cloud.google.com/docs/authentication/getting-started
diff --git a/packages/google-cloud-apigateway/linkinator.config.json b/packages/google-cloud-apigateway/linkinator.config.json
new file mode 100644
index 00000000000..befd23c8633
--- /dev/null
+++ b/packages/google-cloud-apigateway/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-apigateway/package.json b/packages/google-cloud-apigateway/package.json
new file mode 100644
index 00000000000..9915df3f986
--- /dev/null
+++ b/packages/google-cloud-apigateway/package.json
@@ -0,0 +1,71 @@
+{
+ "name": "@google-cloud/api-gateway",
+ "version": "2.1.2",
+ "description": "Apigateway client for Node.js",
+ "repository": {
+ "type": "git",
+ "directory": "packages/google-cloud-apigateway",
+ "url": "https://github.com/googleapis/google-cloud-node.git"
+ },
+ "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 apigateway",
+ "apigateway",
+ "api gateway 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",
+ "prelint": "cd samples; npm link ../; npm i",
+ "lint": "gts check",
+ "prepare": "npm run compile-protos && npm run compile",
+ "samples-test": "npm run compile && cd samples/ && npm link ../ && npm i && npm test",
+ "system-test": "npm run compile && c8 mocha build/system-test",
+ "test": "c8 mocha build/test"
+ },
+ "dependencies": {
+ "google-gax": "^3.5.2"
+ },
+ "devDependencies": {
+ "@types/mocha": "^9.0.0",
+ "@types/node": "^18.0.0",
+ "@types/sinon": "^10.0.0",
+ "c8": "^7.3.5",
+ "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.0.0",
+ "typescript": "^4.6.4",
+ "webpack": "^5.9.0",
+ "webpack-cli": "^4.2.0"
+ },
+ "engines": {
+ "node": ">=12.0.0"
+ },
+ "homepage": "https://github.com/googleapis/google-cloud-node/tree/main/packages/google-cloud-apigateway"
+}
diff --git a/packages/google-cloud-apigateway/protos/google/cloud/apigateway/v1/apigateway.proto b/packages/google-cloud-apigateway/protos/google/cloud/apigateway/v1/apigateway.proto
new file mode 100644
index 00000000000..d1dccc740b6
--- /dev/null
+++ b/packages/google-cloud-apigateway/protos/google/cloud/apigateway/v1/apigateway.proto
@@ -0,0 +1,632 @@
+// 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.apigateway.v1;
+
+import "google/api/field_behavior.proto";
+import "google/api/resource.proto";
+import "google/protobuf/field_mask.proto";
+import "google/protobuf/timestamp.proto";
+
+option csharp_namespace = "Google.Cloud.ApiGateway.V1";
+option go_package = "google.golang.org/genproto/googleapis/cloud/apigateway/v1;apigateway";
+option java_multiple_files = true;
+option java_package = "com.google.cloud.apigateway.v1";
+option php_namespace = "Google\\Cloud\\ApiGateway\\V1";
+option ruby_package = "Google::Cloud::ApiGateway::V1";
+option (google.api.resource_definition) = {
+ type: "iam.googleapis.com/ServiceAccount"
+ pattern: "projects/{project}/serviceAccounts/{service_account}"
+};
+option (google.api.resource_definition) = {
+ type: "servicemanagement.googleapis.com/ManagedService"
+ pattern: "services/{service}"
+};
+option (google.api.resource_definition) = {
+ type: "servicemanagement.googleapis.com/Service"
+ pattern: "services/{service}/configs/{config}"
+};
+
+// An API that can be served by one or more Gateways.
+message Api {
+ option (google.api.resource) = {
+ type: "apigateway.googleapis.com/Api"
+ pattern: "projects/{project}/locations/global/apis/{api}"
+ };
+
+ // All the possible API states.
+ enum State {
+ // API does not have a state yet.
+ STATE_UNSPECIFIED = 0;
+
+ // API is being created.
+ CREATING = 1;
+
+ // API is active.
+ ACTIVE = 2;
+
+ // API creation failed.
+ FAILED = 3;
+
+ // API is being deleted.
+ DELETING = 4;
+
+ // API is being updated.
+ UPDATING = 5;
+ }
+
+ // Output only. Resource name of the API.
+ // Format: projects/{project}/locations/global/apis/{api}
+ string name = 1 [(google.api.field_behavior) = OUTPUT_ONLY];
+
+ // Output only. Created time.
+ google.protobuf.Timestamp create_time = 2 [(google.api.field_behavior) = OUTPUT_ONLY];
+
+ // Output only. Updated time.
+ google.protobuf.Timestamp update_time = 3 [(google.api.field_behavior) = OUTPUT_ONLY];
+
+ // Optional. Resource labels to represent user-provided metadata.
+ // Refer to cloud documentation on labels for more details.
+ // https://cloud.google.com/compute/docs/labeling-resources
+ map labels = 4 [(google.api.field_behavior) = OPTIONAL];
+
+ // Optional. Display name.
+ string display_name = 5 [(google.api.field_behavior) = OPTIONAL];
+
+ // Optional. Immutable. The name of a Google Managed Service (
+ // https://cloud.google.com/service-infrastructure/docs/glossary#managed). If
+ // not specified, a new Service will automatically be created in the same
+ // project as this API.
+ string managed_service = 7 [
+ (google.api.field_behavior) = IMMUTABLE,
+ (google.api.field_behavior) = OPTIONAL,
+ (google.api.resource_reference) = {
+ type: "servicemanagement.googleapis.com/ManagedService"
+ }
+ ];
+
+ // Output only. State of the API.
+ State state = 12 [(google.api.field_behavior) = OUTPUT_ONLY];
+}
+
+// An API Configuration is a combination of settings for both the Managed
+// Service and Gateways serving this API Config.
+message ApiConfig {
+ option (google.api.resource) = {
+ type: "apigateway.googleapis.com/ApiConfig"
+ pattern: "projects/{project}/locations/global/apis/{api}/configs/{api_config}"
+ };
+
+ // A lightweight description of a file.
+ message File {
+ // The file path (full or relative path). This is typically the path of the
+ // file when it is uploaded.
+ string path = 1;
+
+ // The bytes that constitute the file.
+ bytes contents = 2;
+ }
+
+ // An OpenAPI Specification Document describing an API.
+ message OpenApiDocument {
+ // The OpenAPI Specification document file.
+ File document = 1;
+ }
+
+ // A gRPC service definition.
+ message GrpcServiceDefinition {
+ // Input only. File descriptor set, generated by protoc.
+ //
+ // To generate, use protoc with imports and source info included.
+ // For an example test.proto file, the following command would put the value
+ // in a new file named out.pb.
+ //
+ // $ protoc --include_imports --include_source_info test.proto -o out.pb
+ File file_descriptor_set = 1 [(google.api.field_behavior) = INPUT_ONLY];
+
+ // Optional. Uncompiled proto files associated with the descriptor set, used for
+ // display purposes (server-side compilation is not supported). These
+ // should match the inputs to 'protoc' command used to generate
+ // file_descriptor_set.
+ repeated File source = 2 [(google.api.field_behavior) = OPTIONAL];
+ }
+
+ // All the possible API Config states.
+ enum State {
+ // API Config does not have a state yet.
+ STATE_UNSPECIFIED = 0;
+
+ // API Config is being created and deployed to the API Controller.
+ CREATING = 1;
+
+ // API Config is ready for use by Gateways.
+ ACTIVE = 2;
+
+ // API Config creation failed.
+ FAILED = 3;
+
+ // API Config is being deleted.
+ DELETING = 4;
+
+ // API Config is being updated.
+ UPDATING = 5;
+
+ // API Config settings are being activated in downstream systems.
+ // API Configs in this state cannot be used by Gateways.
+ ACTIVATING = 6;
+ }
+
+ // Output only. Resource name of the API Config.
+ // Format: projects/{project}/locations/global/apis/{api}/configs/{api_config}
+ string name = 1 [(google.api.field_behavior) = OUTPUT_ONLY];
+
+ // Output only. Created time.
+ google.protobuf.Timestamp create_time = 2 [(google.api.field_behavior) = OUTPUT_ONLY];
+
+ // Output only. Updated time.
+ google.protobuf.Timestamp update_time = 3 [(google.api.field_behavior) = OUTPUT_ONLY];
+
+ // Optional. Resource labels to represent user-provided metadata.
+ // Refer to cloud documentation on labels for more details.
+ // https://cloud.google.com/compute/docs/labeling-resources
+ map labels = 4 [(google.api.field_behavior) = OPTIONAL];
+
+ // Optional. Display name.
+ string display_name = 5 [(google.api.field_behavior) = OPTIONAL];
+
+ // Immutable. The Google Cloud IAM Service Account that Gateways serving this config
+ // should use to authenticate to other services. This may either be the
+ // Service Account's email
+ // (`{ACCOUNT_ID}@{PROJECT}.iam.gserviceaccount.com`) or its full resource
+ // name (`projects/{PROJECT}/accounts/{UNIQUE_ID}`). This is most often used
+ // when the service is a GCP resource such as a Cloud Run Service or an
+ // IAP-secured service.
+ string gateway_service_account = 14 [
+ (google.api.field_behavior) = IMMUTABLE,
+ (google.api.resource_reference) = {
+ type: "iam.googleapis.com/ServiceAccount"
+ }
+ ];
+
+ // Output only. The ID of the associated Service Config (
+ // https://cloud.google.com/service-infrastructure/docs/glossary#config).
+ string service_config_id = 12 [
+ (google.api.field_behavior) = OUTPUT_ONLY,
+ (google.api.resource_reference) = {
+ type: "servicemanagement.googleapis.com/Service"
+ }
+ ];
+
+ // Output only. State of the API Config.
+ State state = 8 [(google.api.field_behavior) = OUTPUT_ONLY];
+
+ // Optional. OpenAPI specification documents. If specified, grpc_services and
+ // managed_service_configs must not be included.
+ repeated OpenApiDocument openapi_documents = 9 [(google.api.field_behavior) = OPTIONAL];
+
+ // Optional. gRPC service definition files. If specified, openapi_documents must
+ // not be included.
+ repeated GrpcServiceDefinition grpc_services = 10 [(google.api.field_behavior) = OPTIONAL];
+
+ // Optional. Service Configuration files. At least one must be included when using gRPC
+ // service definitions. See
+ // https://cloud.google.com/endpoints/docs/grpc/grpc-service-config#service_configuration_overview
+ // for the expected file contents.
+ //
+ // If multiple files are specified, the files are merged with the following
+ // rules:
+ // * All singular scalar fields are merged using "last one wins" semantics in
+ // the order of the files uploaded.
+ // * Repeated fields are concatenated.
+ // * Singular embedded messages are merged using these rules for nested
+ // fields.
+ repeated File managed_service_configs = 11 [(google.api.field_behavior) = OPTIONAL];
+}
+
+// A Gateway is an API-aware HTTP proxy. It performs API-Method and/or
+// API-Consumer specific actions based on an API Config such as authentication,
+// policy enforcement, and backend selection.
+message Gateway {
+ option (google.api.resource) = {
+ type: "apigateway.googleapis.com/Gateway"
+ pattern: "projects/{project}/locations/{location}/gateways/{gateway}"
+ };
+
+ // All the possible Gateway states.
+ enum State {
+ // Gateway does not have a state yet.
+ STATE_UNSPECIFIED = 0;
+
+ // Gateway is being created.
+ CREATING = 1;
+
+ // Gateway is running and ready for requests.
+ ACTIVE = 2;
+
+ // Gateway creation failed.
+ FAILED = 3;
+
+ // Gateway is being deleted.
+ DELETING = 4;
+
+ // Gateway is being updated.
+ UPDATING = 5;
+ }
+
+ // Output only. Resource name of the Gateway.
+ // Format: projects/{project}/locations/{location}/gateways/{gateway}
+ string name = 1 [(google.api.field_behavior) = OUTPUT_ONLY];
+
+ // Output only. Created time.
+ google.protobuf.Timestamp create_time = 2 [(google.api.field_behavior) = OUTPUT_ONLY];
+
+ // Output only. Updated time.
+ google.protobuf.Timestamp update_time = 3 [(google.api.field_behavior) = OUTPUT_ONLY];
+
+ // Optional. Resource labels to represent user-provided metadata.
+ // Refer to cloud documentation on labels for more details.
+ // https://cloud.google.com/compute/docs/labeling-resources
+ map labels = 4 [(google.api.field_behavior) = OPTIONAL];
+
+ // Optional. Display name.
+ string display_name = 5 [(google.api.field_behavior) = OPTIONAL];
+
+ // Required. Resource name of the API Config for this Gateway.
+ // Format: projects/{project}/locations/global/apis/{api}/configs/{apiConfig}
+ string api_config = 6 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "apigateway.googleapis.com/ApiConfig"
+ }
+ ];
+
+ // Output only. The current state of the Gateway.
+ State state = 7 [(google.api.field_behavior) = OUTPUT_ONLY];
+
+ // Output only. The default API Gateway host name of the form
+ // `{gateway_id}-{hash}.{region_code}.gateway.dev`.
+ string default_hostname = 9 [(google.api.field_behavior) = OUTPUT_ONLY];
+}
+
+// Request message for ApiGatewayService.ListGateways
+message ListGatewaysRequest {
+ // Required. Parent resource of the Gateway, of the form:
+ // `projects/*/locations/*`
+ string parent = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "locations.googleapis.com/Location"
+ }
+ ];
+
+ // Page size.
+ int32 page_size = 2;
+
+ // Page token.
+ string page_token = 3;
+
+ // Filter.
+ string filter = 4;
+
+ // Order by parameters.
+ string order_by = 5;
+}
+
+// Response message for ApiGatewayService.ListGateways
+message ListGatewaysResponse {
+ // Gateways.
+ repeated Gateway gateways = 1;
+
+ // Next page token.
+ string next_page_token = 2;
+
+ // Locations that could not be reached.
+ repeated string unreachable_locations = 3;
+}
+
+// Request message for ApiGatewayService.GetGateway
+message GetGatewayRequest {
+ // Required. Resource name of the form:
+ // `projects/*/locations/*/gateways/*`
+ string name = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "apigateway.googleapis.com/Gateway"
+ }
+ ];
+}
+
+// Request message for ApiGatewayService.CreateGateway
+message CreateGatewayRequest {
+ // Required. Parent resource of the Gateway, of the form:
+ // `projects/*/locations/*`
+ string parent = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "locations.googleapis.com/Location"
+ }
+ ];
+
+ // Required. Identifier to assign to the Gateway. Must be unique within scope of
+ // the parent resource.
+ string gateway_id = 2 [(google.api.field_behavior) = REQUIRED];
+
+ // Required. Gateway resource.
+ Gateway gateway = 3 [(google.api.field_behavior) = REQUIRED];
+}
+
+// Request message for ApiGatewayService.UpdateGateway
+message UpdateGatewayRequest {
+ // Field mask is used to specify the fields to be overwritten in the
+ // Gateway resource by the update.
+ // The fields specified in the update_mask are relative to the resource, not
+ // the full request. A field will be overwritten if it is in the mask. If the
+ // user does not provide a mask then all fields will be overwritten.
+ google.protobuf.FieldMask update_mask = 1;
+
+ // Required. Gateway resource.
+ Gateway gateway = 2 [(google.api.field_behavior) = REQUIRED];
+}
+
+// Request message for ApiGatewayService.DeleteGateway
+message DeleteGatewayRequest {
+ // Required. Resource name of the form:
+ // `projects/*/locations/*/gateways/*`
+ string name = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "apigateway.googleapis.com/Gateway"
+ }
+ ];
+}
+
+// Request message for ApiGatewayService.ListApis
+message ListApisRequest {
+ // Required. Parent resource of the API, of the form:
+ // `projects/*/locations/global`
+ string parent = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "locations.googleapis.com/Location"
+ }
+ ];
+
+ // Page size.
+ int32 page_size = 2;
+
+ // Page token.
+ string page_token = 3;
+
+ // Filter.
+ string filter = 4;
+
+ // Order by parameters.
+ string order_by = 5;
+}
+
+// Response message for ApiGatewayService.ListApis
+message ListApisResponse {
+ // APIs.
+ repeated Api apis = 1;
+
+ // Next page token.
+ string next_page_token = 2;
+
+ // Locations that could not be reached.
+ repeated string unreachable_locations = 3;
+}
+
+// Request message for ApiGatewayService.GetApi
+message GetApiRequest {
+ // Required. Resource name of the form:
+ // `projects/*/locations/global/apis/*`
+ string name = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "apigateway.googleapis.com/Api"
+ }
+ ];
+}
+
+// Request message for ApiGatewayService.CreateApi
+message CreateApiRequest {
+ // Required. Parent resource of the API, of the form:
+ // `projects/*/locations/global`
+ string parent = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "locations.googleapis.com/Location"
+ }
+ ];
+
+ // Required. Identifier to assign to the API. Must be unique within scope of
+ // the parent resource.
+ string api_id = 2 [(google.api.field_behavior) = REQUIRED];
+
+ // Required. API resource.
+ Api api = 3 [(google.api.field_behavior) = REQUIRED];
+}
+
+// Request message for ApiGatewayService.UpdateApi
+message UpdateApiRequest {
+ // Field mask is used to specify the fields to be overwritten in the
+ // Api resource by the update.
+ // The fields specified in the update_mask are relative to the resource, not
+ // the full request. A field will be overwritten if it is in the mask. If the
+ // user does not provide a mask then all fields will be overwritten.
+ google.protobuf.FieldMask update_mask = 1;
+
+ // Required. API resource.
+ Api api = 2 [(google.api.field_behavior) = REQUIRED];
+}
+
+// Request message for ApiGatewayService.DeleteApi
+message DeleteApiRequest {
+ // Required. Resource name of the form:
+ // `projects/*/locations/global/apis/*`
+ string name = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "apigateway.googleapis.com/Api"
+ }
+ ];
+}
+
+// Request message for ApiGatewayService.ListApiConfigs
+message ListApiConfigsRequest {
+ // Required. Parent resource of the API Config, of the form:
+ // `projects/*/locations/global/apis/*`
+ string parent = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "apigateway.googleapis.com/Api"
+ }
+ ];
+
+ // Page size.
+ int32 page_size = 2;
+
+ // Page token.
+ string page_token = 3;
+
+ // Filter.
+ string filter = 4;
+
+ // Order by parameters.
+ string order_by = 5;
+}
+
+// Response message for ApiGatewayService.ListApiConfigs
+message ListApiConfigsResponse {
+ // API Configs.
+ repeated ApiConfig api_configs = 1;
+
+ // Next page token.
+ string next_page_token = 2;
+
+ // Locations that could not be reached.
+ repeated string unreachable_locations = 3;
+}
+
+// Request message for ApiGatewayService.GetApiConfig
+message GetApiConfigRequest {
+ // Enum to control which fields should be included in the response.
+ enum ConfigView {
+ CONFIG_VIEW_UNSPECIFIED = 0;
+
+ // Do not include configuration source files.
+ BASIC = 1;
+
+ // Include configuration source files.
+ FULL = 2;
+ }
+
+ // Required. Resource name of the form:
+ // `projects/*/locations/global/apis/*/configs/*`
+ string name = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "apigateway.googleapis.com/ApiConfig"
+ }
+ ];
+
+ // Specifies which fields of the API Config are returned in the response.
+ // Defaults to `BASIC` view.
+ ConfigView view = 3;
+}
+
+// Request message for ApiGatewayService.CreateApiConfig
+message CreateApiConfigRequest {
+ // Required. Parent resource of the API Config, of the form:
+ // `projects/*/locations/global/apis/*`
+ string parent = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "apigateway.googleapis.com/Api"
+ }
+ ];
+
+ // Required. Identifier to assign to the API Config. Must be unique within scope of
+ // the parent resource.
+ string api_config_id = 2 [(google.api.field_behavior) = REQUIRED];
+
+ // Required. API resource.
+ ApiConfig api_config = 3 [(google.api.field_behavior) = REQUIRED];
+}
+
+// Request message for ApiGatewayService.UpdateApiConfig
+message UpdateApiConfigRequest {
+ // Field mask is used to specify the fields to be overwritten in the
+ // ApiConfig resource by the update.
+ // The fields specified in the update_mask are relative to the resource, not
+ // the full request. A field will be overwritten if it is in the mask. If the
+ // user does not provide a mask then all fields will be overwritten.
+ google.protobuf.FieldMask update_mask = 1;
+
+ // Required. API Config resource.
+ ApiConfig api_config = 2 [(google.api.field_behavior) = REQUIRED];
+}
+
+// Request message for ApiGatewayService.DeleteApiConfig
+message DeleteApiConfigRequest {
+ // Required. Resource name of the form:
+ // `projects/*/locations/global/apis/*/configs/*`
+ string name = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "apigateway.googleapis.com/ApiConfig"
+ }
+ ];
+}
+
+// Represents the metadata of the long-running operation.
+message OperationMetadata {
+ // Diagnostic information from configuration processing.
+ message Diagnostic {
+ // Location of the diagnostic.
+ string location = 1;
+
+ // The diagnostic message.
+ string message = 2;
+ }
+
+ // Output only. The time the operation was created.
+ google.protobuf.Timestamp create_time = 1 [(google.api.field_behavior) = OUTPUT_ONLY];
+
+ // Output only. The time the operation finished running.
+ google.protobuf.Timestamp end_time = 2 [(google.api.field_behavior) = OUTPUT_ONLY];
+
+ // Output only. Server-defined resource path for the target of the operation.
+ string target = 3 [(google.api.field_behavior) = OUTPUT_ONLY];
+
+ // Output only. Name of the verb executed by the operation.
+ string verb = 4 [(google.api.field_behavior) = OUTPUT_ONLY];
+
+ // Output only. Human-readable status of the operation, if any.
+ string status_message = 5 [(google.api.field_behavior) = OUTPUT_ONLY];
+
+ // Output only. Identifies whether the user has requested cancellation
+ // of the operation. Operations that have successfully been cancelled
+ // have [Operation.error][] value with a [google.rpc.Status.code][google.rpc.Status.code] of 1,
+ // corresponding to `Code.CANCELLED`.
+ bool requested_cancellation = 6 [(google.api.field_behavior) = OUTPUT_ONLY];
+
+ // Output only. API version used to start the operation.
+ string api_version = 7 [(google.api.field_behavior) = OUTPUT_ONLY];
+
+ // Output only. Diagnostics generated during processing of configuration source files.
+ repeated Diagnostic diagnostics = 8 [(google.api.field_behavior) = OUTPUT_ONLY];
+}
diff --git a/packages/google-cloud-apigateway/protos/google/cloud/apigateway/v1/apigateway_service.proto b/packages/google-cloud-apigateway/protos/google/cloud/apigateway/v1/apigateway_service.proto
new file mode 100644
index 00000000000..0738d7081bf
--- /dev/null
+++ b/packages/google-cloud-apigateway/protos/google/cloud/apigateway/v1/apigateway_service.proto
@@ -0,0 +1,197 @@
+// Copyright 2020 Google LLC
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+syntax = "proto3";
+
+package google.cloud.apigateway.v1;
+
+import "google/api/annotations.proto";
+import "google/api/client.proto";
+import "google/cloud/apigateway/v1/apigateway.proto";
+import "google/longrunning/operations.proto";
+
+option csharp_namespace = "Google.Cloud.ApiGateway.V1";
+option go_package = "google.golang.org/genproto/googleapis/cloud/apigateway/v1;apigateway";
+option java_multiple_files = true;
+option java_package = "com.google.cloud.apigateway.v1";
+option php_namespace = "Google\\Cloud\\ApiGateway\\V1";
+option ruby_package = "Google::Cloud::ApiGateway::V1";
+
+// The API Gateway Service is the interface for managing API Gateways.
+service ApiGatewayService {
+ option (google.api.default_host) = "apigateway.googleapis.com";
+ option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/cloud-platform";
+
+ // Lists Gateways in a given project and location.
+ rpc ListGateways(ListGatewaysRequest) returns (ListGatewaysResponse) {
+ option (google.api.http) = {
+ get: "/v1/{parent=projects/*/locations/*}/gateways"
+ };
+ option (google.api.method_signature) = "parent";
+ }
+
+ // Gets details of a single Gateway.
+ rpc GetGateway(GetGatewayRequest) returns (Gateway) {
+ option (google.api.http) = {
+ get: "/v1/{name=projects/*/locations/*/gateways/*}"
+ };
+ option (google.api.method_signature) = "name";
+ }
+
+ // Creates a new Gateway in a given project and location.
+ rpc CreateGateway(CreateGatewayRequest) returns (google.longrunning.Operation) {
+ option (google.api.http) = {
+ post: "/v1/{parent=projects/*/locations/*}/gateways"
+ body: "gateway"
+ };
+ option (google.api.method_signature) = "parent,gateway,gateway_id";
+ option (google.longrunning.operation_info) = {
+ response_type: "Gateway"
+ metadata_type: "OperationMetadata"
+ };
+ }
+
+ // Updates the parameters of a single Gateway.
+ rpc UpdateGateway(UpdateGatewayRequest) returns (google.longrunning.Operation) {
+ option (google.api.http) = {
+ patch: "/v1/{gateway.name=projects/*/locations/*/gateways/*}"
+ body: "gateway"
+ };
+ option (google.api.method_signature) = "gateway,update_mask";
+ option (google.longrunning.operation_info) = {
+ response_type: "Gateway"
+ metadata_type: "OperationMetadata"
+ };
+ }
+
+ // Deletes a single Gateway.
+ rpc DeleteGateway(DeleteGatewayRequest) returns (google.longrunning.Operation) {
+ option (google.api.http) = {
+ delete: "/v1/{name=projects/*/locations/*/gateways/*}"
+ };
+ option (google.api.method_signature) = "name";
+ option (google.longrunning.operation_info) = {
+ response_type: "google.protobuf.Empty"
+ metadata_type: "OperationMetadata"
+ };
+ }
+
+ // Lists Apis in a given project and location.
+ rpc ListApis(ListApisRequest) returns (ListApisResponse) {
+ option (google.api.http) = {
+ get: "/v1/{parent=projects/*/locations/*}/apis"
+ };
+ option (google.api.method_signature) = "parent";
+ }
+
+ // Gets details of a single Api.
+ rpc GetApi(GetApiRequest) returns (Api) {
+ option (google.api.http) = {
+ get: "/v1/{name=projects/*/locations/*/apis/*}"
+ };
+ option (google.api.method_signature) = "name";
+ }
+
+ // Creates a new Api in a given project and location.
+ rpc CreateApi(CreateApiRequest) returns (google.longrunning.Operation) {
+ option (google.api.http) = {
+ post: "/v1/{parent=projects/*/locations/*}/apis"
+ body: "api"
+ };
+ option (google.api.method_signature) = "parent,api,api_id";
+ option (google.longrunning.operation_info) = {
+ response_type: "Api"
+ metadata_type: "OperationMetadata"
+ };
+ }
+
+ // Updates the parameters of a single Api.
+ rpc UpdateApi(UpdateApiRequest) returns (google.longrunning.Operation) {
+ option (google.api.http) = {
+ patch: "/v1/{api.name=projects/*/locations/*/apis/*}"
+ body: "api"
+ };
+ option (google.api.method_signature) = "api,update_mask";
+ option (google.longrunning.operation_info) = {
+ response_type: "Api"
+ metadata_type: "OperationMetadata"
+ };
+ }
+
+ // Deletes a single Api.
+ rpc DeleteApi(DeleteApiRequest) returns (google.longrunning.Operation) {
+ option (google.api.http) = {
+ delete: "/v1/{name=projects/*/locations/*/apis/*}"
+ };
+ option (google.api.method_signature) = "name";
+ option (google.longrunning.operation_info) = {
+ response_type: "google.protobuf.Empty"
+ metadata_type: "OperationMetadata"
+ };
+ }
+
+ // Lists ApiConfigs in a given project and location.
+ rpc ListApiConfigs(ListApiConfigsRequest) returns (ListApiConfigsResponse) {
+ option (google.api.http) = {
+ get: "/v1/{parent=projects/*/locations/*/apis/*}/configs"
+ };
+ option (google.api.method_signature) = "parent";
+ }
+
+ // Gets details of a single ApiConfig.
+ rpc GetApiConfig(GetApiConfigRequest) returns (ApiConfig) {
+ option (google.api.http) = {
+ get: "/v1/{name=projects/*/locations/*/apis/*/configs/*}"
+ };
+ option (google.api.method_signature) = "name";
+ }
+
+ // Creates a new ApiConfig in a given project and location.
+ rpc CreateApiConfig(CreateApiConfigRequest) returns (google.longrunning.Operation) {
+ option (google.api.http) = {
+ post: "/v1/{parent=projects/*/locations/*/apis/*}/configs"
+ body: "api_config"
+ };
+ option (google.api.method_signature) = "parent,api_config,api_config_id";
+ option (google.longrunning.operation_info) = {
+ response_type: "ApiConfig"
+ metadata_type: "OperationMetadata"
+ };
+ }
+
+ // Updates the parameters of a single ApiConfig.
+ rpc UpdateApiConfig(UpdateApiConfigRequest) returns (google.longrunning.Operation) {
+ option (google.api.http) = {
+ patch: "/v1/{api_config.name=projects/*/locations/*/apis/*/configs/*}"
+ body: "api_config"
+ };
+ option (google.api.method_signature) = "api_config,update_mask";
+ option (google.longrunning.operation_info) = {
+ response_type: "ApiConfig"
+ metadata_type: "OperationMetadata"
+ };
+ }
+
+ // Deletes a single ApiConfig.
+ rpc DeleteApiConfig(DeleteApiConfigRequest) returns (google.longrunning.Operation) {
+ option (google.api.http) = {
+ delete: "/v1/{name=projects/*/locations/*/apis/*/configs/*}"
+ };
+ option (google.api.method_signature) = "name";
+ option (google.longrunning.operation_info) = {
+ response_type: "google.protobuf.Empty"
+ metadata_type: "OperationMetadata"
+ };
+ }
+}
diff --git a/packages/google-cloud-apigateway/protos/protos.d.ts b/packages/google-cloud-apigateway/protos/protos.d.ts
new file mode 100644
index 00000000000..027afd06a71
--- /dev/null
+++ b/packages/google-cloud-apigateway/protos/protos.d.ts
@@ -0,0 +1,8871 @@
+// 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 apigateway. */
+ namespace apigateway {
+
+ /** Namespace v1. */
+ namespace v1 {
+
+ /** Properties of an Api. */
+ interface IApi {
+
+ /** Api name */
+ name?: (string|null);
+
+ /** Api createTime */
+ createTime?: (google.protobuf.ITimestamp|null);
+
+ /** Api updateTime */
+ updateTime?: (google.protobuf.ITimestamp|null);
+
+ /** Api labels */
+ labels?: ({ [k: string]: string }|null);
+
+ /** Api displayName */
+ displayName?: (string|null);
+
+ /** Api managedService */
+ managedService?: (string|null);
+
+ /** Api state */
+ state?: (google.cloud.apigateway.v1.Api.State|keyof typeof google.cloud.apigateway.v1.Api.State|null);
+ }
+
+ /** Represents an Api. */
+ class Api implements IApi {
+
+ /**
+ * Constructs a new Api.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.apigateway.v1.IApi);
+
+ /** Api name. */
+ public name: string;
+
+ /** Api createTime. */
+ public createTime?: (google.protobuf.ITimestamp|null);
+
+ /** Api updateTime. */
+ public updateTime?: (google.protobuf.ITimestamp|null);
+
+ /** Api labels. */
+ public labels: { [k: string]: string };
+
+ /** Api displayName. */
+ public displayName: string;
+
+ /** Api managedService. */
+ public managedService: string;
+
+ /** Api state. */
+ public state: (google.cloud.apigateway.v1.Api.State|keyof typeof google.cloud.apigateway.v1.Api.State);
+
+ /**
+ * Creates a new Api instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Api instance
+ */
+ public static create(properties?: google.cloud.apigateway.v1.IApi): google.cloud.apigateway.v1.Api;
+
+ /**
+ * Encodes the specified Api message. Does not implicitly {@link google.cloud.apigateway.v1.Api.verify|verify} messages.
+ * @param message Api message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.apigateway.v1.IApi, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Api message, length delimited. Does not implicitly {@link google.cloud.apigateway.v1.Api.verify|verify} messages.
+ * @param message Api message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.apigateway.v1.IApi, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an Api message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Api
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.apigateway.v1.Api;
+
+ /**
+ * Decodes an Api message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Api
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.apigateway.v1.Api;
+
+ /**
+ * Verifies an Api message.
+ * @param message Plain 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 Api message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Api
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.apigateway.v1.Api;
+
+ /**
+ * Creates a plain object from an Api message. Also converts values to other types if specified.
+ * @param message Api
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.apigateway.v1.Api, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Api to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Api
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace Api {
+
+ /** State enum. */
+ enum State {
+ STATE_UNSPECIFIED = 0,
+ CREATING = 1,
+ ACTIVE = 2,
+ FAILED = 3,
+ DELETING = 4,
+ UPDATING = 5
+ }
+ }
+
+ /** Properties of an ApiConfig. */
+ interface IApiConfig {
+
+ /** ApiConfig name */
+ name?: (string|null);
+
+ /** ApiConfig createTime */
+ createTime?: (google.protobuf.ITimestamp|null);
+
+ /** ApiConfig updateTime */
+ updateTime?: (google.protobuf.ITimestamp|null);
+
+ /** ApiConfig labels */
+ labels?: ({ [k: string]: string }|null);
+
+ /** ApiConfig displayName */
+ displayName?: (string|null);
+
+ /** ApiConfig gatewayServiceAccount */
+ gatewayServiceAccount?: (string|null);
+
+ /** ApiConfig serviceConfigId */
+ serviceConfigId?: (string|null);
+
+ /** ApiConfig state */
+ state?: (google.cloud.apigateway.v1.ApiConfig.State|keyof typeof google.cloud.apigateway.v1.ApiConfig.State|null);
+
+ /** ApiConfig openapiDocuments */
+ openapiDocuments?: (google.cloud.apigateway.v1.ApiConfig.IOpenApiDocument[]|null);
+
+ /** ApiConfig grpcServices */
+ grpcServices?: (google.cloud.apigateway.v1.ApiConfig.IGrpcServiceDefinition[]|null);
+
+ /** ApiConfig managedServiceConfigs */
+ managedServiceConfigs?: (google.cloud.apigateway.v1.ApiConfig.IFile[]|null);
+ }
+
+ /** Represents an ApiConfig. */
+ class ApiConfig implements IApiConfig {
+
+ /**
+ * Constructs a new ApiConfig.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.apigateway.v1.IApiConfig);
+
+ /** ApiConfig name. */
+ public name: string;
+
+ /** ApiConfig createTime. */
+ public createTime?: (google.protobuf.ITimestamp|null);
+
+ /** ApiConfig updateTime. */
+ public updateTime?: (google.protobuf.ITimestamp|null);
+
+ /** ApiConfig labels. */
+ public labels: { [k: string]: string };
+
+ /** ApiConfig displayName. */
+ public displayName: string;
+
+ /** ApiConfig gatewayServiceAccount. */
+ public gatewayServiceAccount: string;
+
+ /** ApiConfig serviceConfigId. */
+ public serviceConfigId: string;
+
+ /** ApiConfig state. */
+ public state: (google.cloud.apigateway.v1.ApiConfig.State|keyof typeof google.cloud.apigateway.v1.ApiConfig.State);
+
+ /** ApiConfig openapiDocuments. */
+ public openapiDocuments: google.cloud.apigateway.v1.ApiConfig.IOpenApiDocument[];
+
+ /** ApiConfig grpcServices. */
+ public grpcServices: google.cloud.apigateway.v1.ApiConfig.IGrpcServiceDefinition[];
+
+ /** ApiConfig managedServiceConfigs. */
+ public managedServiceConfigs: google.cloud.apigateway.v1.ApiConfig.IFile[];
+
+ /**
+ * Creates a new ApiConfig instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ApiConfig instance
+ */
+ public static create(properties?: google.cloud.apigateway.v1.IApiConfig): google.cloud.apigateway.v1.ApiConfig;
+
+ /**
+ * Encodes the specified ApiConfig message. Does not implicitly {@link google.cloud.apigateway.v1.ApiConfig.verify|verify} messages.
+ * @param message ApiConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.apigateway.v1.IApiConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ApiConfig message, length delimited. Does not implicitly {@link google.cloud.apigateway.v1.ApiConfig.verify|verify} messages.
+ * @param message ApiConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.apigateway.v1.IApiConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an ApiConfig message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ApiConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.apigateway.v1.ApiConfig;
+
+ /**
+ * Decodes an ApiConfig message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ApiConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.apigateway.v1.ApiConfig;
+
+ /**
+ * Verifies an ApiConfig message.
+ * @param message Plain 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 ApiConfig message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ApiConfig
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.apigateway.v1.ApiConfig;
+
+ /**
+ * Creates a plain object from an ApiConfig message. Also converts values to other types if specified.
+ * @param message ApiConfig
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.apigateway.v1.ApiConfig, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ApiConfig to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ApiConfig
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace ApiConfig {
+
+ /** Properties of a File. */
+ interface IFile {
+
+ /** File path */
+ path?: (string|null);
+
+ /** File contents */
+ contents?: (Uint8Array|string|null);
+ }
+
+ /** Represents a File. */
+ class File implements IFile {
+
+ /**
+ * Constructs a new File.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.apigateway.v1.ApiConfig.IFile);
+
+ /** File path. */
+ public path: string;
+
+ /** File contents. */
+ public contents: (Uint8Array|string);
+
+ /**
+ * Creates a new File instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns File instance
+ */
+ public static create(properties?: google.cloud.apigateway.v1.ApiConfig.IFile): google.cloud.apigateway.v1.ApiConfig.File;
+
+ /**
+ * Encodes the specified File message. Does not implicitly {@link google.cloud.apigateway.v1.ApiConfig.File.verify|verify} messages.
+ * @param message File message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.apigateway.v1.ApiConfig.IFile, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified File message, length delimited. Does not implicitly {@link google.cloud.apigateway.v1.ApiConfig.File.verify|verify} messages.
+ * @param message File message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.apigateway.v1.ApiConfig.IFile, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a File message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns File
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.apigateway.v1.ApiConfig.File;
+
+ /**
+ * Decodes a File message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns File
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.apigateway.v1.ApiConfig.File;
+
+ /**
+ * Verifies a File message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a File message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns File
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.apigateway.v1.ApiConfig.File;
+
+ /**
+ * Creates a plain object from a File message. Also converts values to other types if specified.
+ * @param message File
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.apigateway.v1.ApiConfig.File, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this File to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for File
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an OpenApiDocument. */
+ interface IOpenApiDocument {
+
+ /** OpenApiDocument document */
+ document?: (google.cloud.apigateway.v1.ApiConfig.IFile|null);
+ }
+
+ /** Represents an OpenApiDocument. */
+ class OpenApiDocument implements IOpenApiDocument {
+
+ /**
+ * Constructs a new OpenApiDocument.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.apigateway.v1.ApiConfig.IOpenApiDocument);
+
+ /** OpenApiDocument document. */
+ public document?: (google.cloud.apigateway.v1.ApiConfig.IFile|null);
+
+ /**
+ * Creates a new OpenApiDocument instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns OpenApiDocument instance
+ */
+ public static create(properties?: google.cloud.apigateway.v1.ApiConfig.IOpenApiDocument): google.cloud.apigateway.v1.ApiConfig.OpenApiDocument;
+
+ /**
+ * Encodes the specified OpenApiDocument message. Does not implicitly {@link google.cloud.apigateway.v1.ApiConfig.OpenApiDocument.verify|verify} messages.
+ * @param message OpenApiDocument message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.apigateway.v1.ApiConfig.IOpenApiDocument, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified OpenApiDocument message, length delimited. Does not implicitly {@link google.cloud.apigateway.v1.ApiConfig.OpenApiDocument.verify|verify} messages.
+ * @param message OpenApiDocument message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.apigateway.v1.ApiConfig.IOpenApiDocument, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an OpenApiDocument message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns OpenApiDocument
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.apigateway.v1.ApiConfig.OpenApiDocument;
+
+ /**
+ * Decodes an OpenApiDocument message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns OpenApiDocument
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.apigateway.v1.ApiConfig.OpenApiDocument;
+
+ /**
+ * Verifies an OpenApiDocument message.
+ * @param message Plain 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 OpenApiDocument message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns OpenApiDocument
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.apigateway.v1.ApiConfig.OpenApiDocument;
+
+ /**
+ * Creates a plain object from an OpenApiDocument message. Also converts values to other types if specified.
+ * @param message OpenApiDocument
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.apigateway.v1.ApiConfig.OpenApiDocument, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this OpenApiDocument to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for OpenApiDocument
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a GrpcServiceDefinition. */
+ interface IGrpcServiceDefinition {
+
+ /** GrpcServiceDefinition fileDescriptorSet */
+ fileDescriptorSet?: (google.cloud.apigateway.v1.ApiConfig.IFile|null);
+
+ /** GrpcServiceDefinition source */
+ source?: (google.cloud.apigateway.v1.ApiConfig.IFile[]|null);
+ }
+
+ /** Represents a GrpcServiceDefinition. */
+ class GrpcServiceDefinition implements IGrpcServiceDefinition {
+
+ /**
+ * Constructs a new GrpcServiceDefinition.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.apigateway.v1.ApiConfig.IGrpcServiceDefinition);
+
+ /** GrpcServiceDefinition fileDescriptorSet. */
+ public fileDescriptorSet?: (google.cloud.apigateway.v1.ApiConfig.IFile|null);
+
+ /** GrpcServiceDefinition source. */
+ public source: google.cloud.apigateway.v1.ApiConfig.IFile[];
+
+ /**
+ * Creates a new GrpcServiceDefinition instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns GrpcServiceDefinition instance
+ */
+ public static create(properties?: google.cloud.apigateway.v1.ApiConfig.IGrpcServiceDefinition): google.cloud.apigateway.v1.ApiConfig.GrpcServiceDefinition;
+
+ /**
+ * Encodes the specified GrpcServiceDefinition message. Does not implicitly {@link google.cloud.apigateway.v1.ApiConfig.GrpcServiceDefinition.verify|verify} messages.
+ * @param message GrpcServiceDefinition message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.apigateway.v1.ApiConfig.IGrpcServiceDefinition, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified GrpcServiceDefinition message, length delimited. Does not implicitly {@link google.cloud.apigateway.v1.ApiConfig.GrpcServiceDefinition.verify|verify} messages.
+ * @param message GrpcServiceDefinition message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.apigateway.v1.ApiConfig.IGrpcServiceDefinition, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a GrpcServiceDefinition message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns GrpcServiceDefinition
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.apigateway.v1.ApiConfig.GrpcServiceDefinition;
+
+ /**
+ * Decodes a GrpcServiceDefinition message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns GrpcServiceDefinition
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.apigateway.v1.ApiConfig.GrpcServiceDefinition;
+
+ /**
+ * Verifies a GrpcServiceDefinition message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a GrpcServiceDefinition message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns GrpcServiceDefinition
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.apigateway.v1.ApiConfig.GrpcServiceDefinition;
+
+ /**
+ * Creates a plain object from a GrpcServiceDefinition message. Also converts values to other types if specified.
+ * @param message GrpcServiceDefinition
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.apigateway.v1.ApiConfig.GrpcServiceDefinition, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this GrpcServiceDefinition to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for GrpcServiceDefinition
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** State enum. */
+ enum State {
+ STATE_UNSPECIFIED = 0,
+ CREATING = 1,
+ ACTIVE = 2,
+ FAILED = 3,
+ DELETING = 4,
+ UPDATING = 5,
+ ACTIVATING = 6
+ }
+ }
+
+ /** Properties of a Gateway. */
+ interface IGateway {
+
+ /** Gateway name */
+ name?: (string|null);
+
+ /** Gateway createTime */
+ createTime?: (google.protobuf.ITimestamp|null);
+
+ /** Gateway updateTime */
+ updateTime?: (google.protobuf.ITimestamp|null);
+
+ /** Gateway labels */
+ labels?: ({ [k: string]: string }|null);
+
+ /** Gateway displayName */
+ displayName?: (string|null);
+
+ /** Gateway apiConfig */
+ apiConfig?: (string|null);
+
+ /** Gateway state */
+ state?: (google.cloud.apigateway.v1.Gateway.State|keyof typeof google.cloud.apigateway.v1.Gateway.State|null);
+
+ /** Gateway defaultHostname */
+ defaultHostname?: (string|null);
+ }
+
+ /** Represents a Gateway. */
+ class Gateway implements IGateway {
+
+ /**
+ * Constructs a new Gateway.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.apigateway.v1.IGateway);
+
+ /** Gateway name. */
+ public name: string;
+
+ /** Gateway createTime. */
+ public createTime?: (google.protobuf.ITimestamp|null);
+
+ /** Gateway updateTime. */
+ public updateTime?: (google.protobuf.ITimestamp|null);
+
+ /** Gateway labels. */
+ public labels: { [k: string]: string };
+
+ /** Gateway displayName. */
+ public displayName: string;
+
+ /** Gateway apiConfig. */
+ public apiConfig: string;
+
+ /** Gateway state. */
+ public state: (google.cloud.apigateway.v1.Gateway.State|keyof typeof google.cloud.apigateway.v1.Gateway.State);
+
+ /** Gateway defaultHostname. */
+ public defaultHostname: string;
+
+ /**
+ * Creates a new Gateway instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Gateway instance
+ */
+ public static create(properties?: google.cloud.apigateway.v1.IGateway): google.cloud.apigateway.v1.Gateway;
+
+ /**
+ * Encodes the specified Gateway message. Does not implicitly {@link google.cloud.apigateway.v1.Gateway.verify|verify} messages.
+ * @param message Gateway message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.apigateway.v1.IGateway, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Gateway message, length delimited. Does not implicitly {@link google.cloud.apigateway.v1.Gateway.verify|verify} messages.
+ * @param message Gateway message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.apigateway.v1.IGateway, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Gateway message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Gateway
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.apigateway.v1.Gateway;
+
+ /**
+ * Decodes a Gateway message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Gateway
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.apigateway.v1.Gateway;
+
+ /**
+ * Verifies a Gateway message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a Gateway message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Gateway
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.apigateway.v1.Gateway;
+
+ /**
+ * Creates a plain object from a Gateway message. Also converts values to other types if specified.
+ * @param message Gateway
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.apigateway.v1.Gateway, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Gateway to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Gateway
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace Gateway {
+
+ /** State enum. */
+ enum State {
+ STATE_UNSPECIFIED = 0,
+ CREATING = 1,
+ ACTIVE = 2,
+ FAILED = 3,
+ DELETING = 4,
+ UPDATING = 5
+ }
+ }
+
+ /** Properties of a ListGatewaysRequest. */
+ interface IListGatewaysRequest {
+
+ /** ListGatewaysRequest parent */
+ parent?: (string|null);
+
+ /** ListGatewaysRequest pageSize */
+ pageSize?: (number|null);
+
+ /** ListGatewaysRequest pageToken */
+ pageToken?: (string|null);
+
+ /** ListGatewaysRequest filter */
+ filter?: (string|null);
+
+ /** ListGatewaysRequest orderBy */
+ orderBy?: (string|null);
+ }
+
+ /** Represents a ListGatewaysRequest. */
+ class ListGatewaysRequest implements IListGatewaysRequest {
+
+ /**
+ * Constructs a new ListGatewaysRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.apigateway.v1.IListGatewaysRequest);
+
+ /** ListGatewaysRequest parent. */
+ public parent: string;
+
+ /** ListGatewaysRequest pageSize. */
+ public pageSize: number;
+
+ /** ListGatewaysRequest pageToken. */
+ public pageToken: string;
+
+ /** ListGatewaysRequest filter. */
+ public filter: string;
+
+ /** ListGatewaysRequest orderBy. */
+ public orderBy: string;
+
+ /**
+ * Creates a new ListGatewaysRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ListGatewaysRequest instance
+ */
+ public static create(properties?: google.cloud.apigateway.v1.IListGatewaysRequest): google.cloud.apigateway.v1.ListGatewaysRequest;
+
+ /**
+ * Encodes the specified ListGatewaysRequest message. Does not implicitly {@link google.cloud.apigateway.v1.ListGatewaysRequest.verify|verify} messages.
+ * @param message ListGatewaysRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.apigateway.v1.IListGatewaysRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ListGatewaysRequest message, length delimited. Does not implicitly {@link google.cloud.apigateway.v1.ListGatewaysRequest.verify|verify} messages.
+ * @param message ListGatewaysRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.apigateway.v1.IListGatewaysRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ListGatewaysRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ListGatewaysRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.apigateway.v1.ListGatewaysRequest;
+
+ /**
+ * Decodes a ListGatewaysRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ListGatewaysRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.apigateway.v1.ListGatewaysRequest;
+
+ /**
+ * Verifies a ListGatewaysRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ListGatewaysRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ListGatewaysRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.apigateway.v1.ListGatewaysRequest;
+
+ /**
+ * Creates a plain object from a ListGatewaysRequest message. Also converts values to other types if specified.
+ * @param message ListGatewaysRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.apigateway.v1.ListGatewaysRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ListGatewaysRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ListGatewaysRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ListGatewaysResponse. */
+ interface IListGatewaysResponse {
+
+ /** ListGatewaysResponse gateways */
+ gateways?: (google.cloud.apigateway.v1.IGateway[]|null);
+
+ /** ListGatewaysResponse nextPageToken */
+ nextPageToken?: (string|null);
+
+ /** ListGatewaysResponse unreachableLocations */
+ unreachableLocations?: (string[]|null);
+ }
+
+ /** Represents a ListGatewaysResponse. */
+ class ListGatewaysResponse implements IListGatewaysResponse {
+
+ /**
+ * Constructs a new ListGatewaysResponse.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.apigateway.v1.IListGatewaysResponse);
+
+ /** ListGatewaysResponse gateways. */
+ public gateways: google.cloud.apigateway.v1.IGateway[];
+
+ /** ListGatewaysResponse nextPageToken. */
+ public nextPageToken: string;
+
+ /** ListGatewaysResponse unreachableLocations. */
+ public unreachableLocations: string[];
+
+ /**
+ * Creates a new ListGatewaysResponse instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ListGatewaysResponse instance
+ */
+ public static create(properties?: google.cloud.apigateway.v1.IListGatewaysResponse): google.cloud.apigateway.v1.ListGatewaysResponse;
+
+ /**
+ * Encodes the specified ListGatewaysResponse message. Does not implicitly {@link google.cloud.apigateway.v1.ListGatewaysResponse.verify|verify} messages.
+ * @param message ListGatewaysResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.apigateway.v1.IListGatewaysResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ListGatewaysResponse message, length delimited. Does not implicitly {@link google.cloud.apigateway.v1.ListGatewaysResponse.verify|verify} messages.
+ * @param message ListGatewaysResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.apigateway.v1.IListGatewaysResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ListGatewaysResponse message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ListGatewaysResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.apigateway.v1.ListGatewaysResponse;
+
+ /**
+ * Decodes a ListGatewaysResponse message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ListGatewaysResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.apigateway.v1.ListGatewaysResponse;
+
+ /**
+ * Verifies a ListGatewaysResponse message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ListGatewaysResponse message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ListGatewaysResponse
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.apigateway.v1.ListGatewaysResponse;
+
+ /**
+ * Creates a plain object from a ListGatewaysResponse message. Also converts values to other types if specified.
+ * @param message ListGatewaysResponse
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.apigateway.v1.ListGatewaysResponse, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ListGatewaysResponse to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ListGatewaysResponse
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a GetGatewayRequest. */
+ interface IGetGatewayRequest {
+
+ /** GetGatewayRequest name */
+ name?: (string|null);
+ }
+
+ /** Represents a GetGatewayRequest. */
+ class GetGatewayRequest implements IGetGatewayRequest {
+
+ /**
+ * Constructs a new GetGatewayRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.apigateway.v1.IGetGatewayRequest);
+
+ /** GetGatewayRequest name. */
+ public name: string;
+
+ /**
+ * Creates a new GetGatewayRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns GetGatewayRequest instance
+ */
+ public static create(properties?: google.cloud.apigateway.v1.IGetGatewayRequest): google.cloud.apigateway.v1.GetGatewayRequest;
+
+ /**
+ * Encodes the specified GetGatewayRequest message. Does not implicitly {@link google.cloud.apigateway.v1.GetGatewayRequest.verify|verify} messages.
+ * @param message GetGatewayRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.apigateway.v1.IGetGatewayRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified GetGatewayRequest message, length delimited. Does not implicitly {@link google.cloud.apigateway.v1.GetGatewayRequest.verify|verify} messages.
+ * @param message GetGatewayRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.apigateway.v1.IGetGatewayRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a GetGatewayRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns GetGatewayRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.apigateway.v1.GetGatewayRequest;
+
+ /**
+ * Decodes a GetGatewayRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns GetGatewayRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.apigateway.v1.GetGatewayRequest;
+
+ /**
+ * Verifies a GetGatewayRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a GetGatewayRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns GetGatewayRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.apigateway.v1.GetGatewayRequest;
+
+ /**
+ * Creates a plain object from a GetGatewayRequest message. Also converts values to other types if specified.
+ * @param message GetGatewayRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.apigateway.v1.GetGatewayRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this GetGatewayRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for GetGatewayRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a CreateGatewayRequest. */
+ interface ICreateGatewayRequest {
+
+ /** CreateGatewayRequest parent */
+ parent?: (string|null);
+
+ /** CreateGatewayRequest gatewayId */
+ gatewayId?: (string|null);
+
+ /** CreateGatewayRequest gateway */
+ gateway?: (google.cloud.apigateway.v1.IGateway|null);
+ }
+
+ /** Represents a CreateGatewayRequest. */
+ class CreateGatewayRequest implements ICreateGatewayRequest {
+
+ /**
+ * Constructs a new CreateGatewayRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.apigateway.v1.ICreateGatewayRequest);
+
+ /** CreateGatewayRequest parent. */
+ public parent: string;
+
+ /** CreateGatewayRequest gatewayId. */
+ public gatewayId: string;
+
+ /** CreateGatewayRequest gateway. */
+ public gateway?: (google.cloud.apigateway.v1.IGateway|null);
+
+ /**
+ * Creates a new CreateGatewayRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns CreateGatewayRequest instance
+ */
+ public static create(properties?: google.cloud.apigateway.v1.ICreateGatewayRequest): google.cloud.apigateway.v1.CreateGatewayRequest;
+
+ /**
+ * Encodes the specified CreateGatewayRequest message. Does not implicitly {@link google.cloud.apigateway.v1.CreateGatewayRequest.verify|verify} messages.
+ * @param message CreateGatewayRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.apigateway.v1.ICreateGatewayRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified CreateGatewayRequest message, length delimited. Does not implicitly {@link google.cloud.apigateway.v1.CreateGatewayRequest.verify|verify} messages.
+ * @param message CreateGatewayRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.apigateway.v1.ICreateGatewayRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a CreateGatewayRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns CreateGatewayRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.apigateway.v1.CreateGatewayRequest;
+
+ /**
+ * Decodes a CreateGatewayRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns CreateGatewayRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.apigateway.v1.CreateGatewayRequest;
+
+ /**
+ * Verifies a CreateGatewayRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a CreateGatewayRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns CreateGatewayRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.apigateway.v1.CreateGatewayRequest;
+
+ /**
+ * Creates a plain object from a CreateGatewayRequest message. Also converts values to other types if specified.
+ * @param message CreateGatewayRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.apigateway.v1.CreateGatewayRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this CreateGatewayRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for CreateGatewayRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an UpdateGatewayRequest. */
+ interface IUpdateGatewayRequest {
+
+ /** UpdateGatewayRequest updateMask */
+ updateMask?: (google.protobuf.IFieldMask|null);
+
+ /** UpdateGatewayRequest gateway */
+ gateway?: (google.cloud.apigateway.v1.IGateway|null);
+ }
+
+ /** Represents an UpdateGatewayRequest. */
+ class UpdateGatewayRequest implements IUpdateGatewayRequest {
+
+ /**
+ * Constructs a new UpdateGatewayRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.apigateway.v1.IUpdateGatewayRequest);
+
+ /** UpdateGatewayRequest updateMask. */
+ public updateMask?: (google.protobuf.IFieldMask|null);
+
+ /** UpdateGatewayRequest gateway. */
+ public gateway?: (google.cloud.apigateway.v1.IGateway|null);
+
+ /**
+ * Creates a new UpdateGatewayRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns UpdateGatewayRequest instance
+ */
+ public static create(properties?: google.cloud.apigateway.v1.IUpdateGatewayRequest): google.cloud.apigateway.v1.UpdateGatewayRequest;
+
+ /**
+ * Encodes the specified UpdateGatewayRequest message. Does not implicitly {@link google.cloud.apigateway.v1.UpdateGatewayRequest.verify|verify} messages.
+ * @param message UpdateGatewayRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.apigateway.v1.IUpdateGatewayRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified UpdateGatewayRequest message, length delimited. Does not implicitly {@link google.cloud.apigateway.v1.UpdateGatewayRequest.verify|verify} messages.
+ * @param message UpdateGatewayRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.apigateway.v1.IUpdateGatewayRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an UpdateGatewayRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns UpdateGatewayRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.apigateway.v1.UpdateGatewayRequest;
+
+ /**
+ * Decodes an UpdateGatewayRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns UpdateGatewayRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.apigateway.v1.UpdateGatewayRequest;
+
+ /**
+ * Verifies an UpdateGatewayRequest message.
+ * @param message Plain 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 UpdateGatewayRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns UpdateGatewayRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.apigateway.v1.UpdateGatewayRequest;
+
+ /**
+ * Creates a plain object from an UpdateGatewayRequest message. Also converts values to other types if specified.
+ * @param message UpdateGatewayRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.apigateway.v1.UpdateGatewayRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this UpdateGatewayRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for UpdateGatewayRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a DeleteGatewayRequest. */
+ interface IDeleteGatewayRequest {
+
+ /** DeleteGatewayRequest name */
+ name?: (string|null);
+ }
+
+ /** Represents a DeleteGatewayRequest. */
+ class DeleteGatewayRequest implements IDeleteGatewayRequest {
+
+ /**
+ * Constructs a new DeleteGatewayRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.apigateway.v1.IDeleteGatewayRequest);
+
+ /** DeleteGatewayRequest name. */
+ public name: string;
+
+ /**
+ * Creates a new DeleteGatewayRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns DeleteGatewayRequest instance
+ */
+ public static create(properties?: google.cloud.apigateway.v1.IDeleteGatewayRequest): google.cloud.apigateway.v1.DeleteGatewayRequest;
+
+ /**
+ * Encodes the specified DeleteGatewayRequest message. Does not implicitly {@link google.cloud.apigateway.v1.DeleteGatewayRequest.verify|verify} messages.
+ * @param message DeleteGatewayRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.apigateway.v1.IDeleteGatewayRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified DeleteGatewayRequest message, length delimited. Does not implicitly {@link google.cloud.apigateway.v1.DeleteGatewayRequest.verify|verify} messages.
+ * @param message DeleteGatewayRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.apigateway.v1.IDeleteGatewayRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a DeleteGatewayRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns DeleteGatewayRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.apigateway.v1.DeleteGatewayRequest;
+
+ /**
+ * Decodes a DeleteGatewayRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns DeleteGatewayRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.apigateway.v1.DeleteGatewayRequest;
+
+ /**
+ * Verifies a DeleteGatewayRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a DeleteGatewayRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns DeleteGatewayRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.apigateway.v1.DeleteGatewayRequest;
+
+ /**
+ * Creates a plain object from a DeleteGatewayRequest message. Also converts values to other types if specified.
+ * @param message DeleteGatewayRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.apigateway.v1.DeleteGatewayRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this DeleteGatewayRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for DeleteGatewayRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ListApisRequest. */
+ interface IListApisRequest {
+
+ /** ListApisRequest parent */
+ parent?: (string|null);
+
+ /** ListApisRequest pageSize */
+ pageSize?: (number|null);
+
+ /** ListApisRequest pageToken */
+ pageToken?: (string|null);
+
+ /** ListApisRequest filter */
+ filter?: (string|null);
+
+ /** ListApisRequest orderBy */
+ orderBy?: (string|null);
+ }
+
+ /** Represents a ListApisRequest. */
+ class ListApisRequest implements IListApisRequest {
+
+ /**
+ * Constructs a new ListApisRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.apigateway.v1.IListApisRequest);
+
+ /** ListApisRequest parent. */
+ public parent: string;
+
+ /** ListApisRequest pageSize. */
+ public pageSize: number;
+
+ /** ListApisRequest pageToken. */
+ public pageToken: string;
+
+ /** ListApisRequest filter. */
+ public filter: string;
+
+ /** ListApisRequest orderBy. */
+ public orderBy: string;
+
+ /**
+ * Creates a new ListApisRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ListApisRequest instance
+ */
+ public static create(properties?: google.cloud.apigateway.v1.IListApisRequest): google.cloud.apigateway.v1.ListApisRequest;
+
+ /**
+ * Encodes the specified ListApisRequest message. Does not implicitly {@link google.cloud.apigateway.v1.ListApisRequest.verify|verify} messages.
+ * @param message ListApisRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.apigateway.v1.IListApisRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ListApisRequest message, length delimited. Does not implicitly {@link google.cloud.apigateway.v1.ListApisRequest.verify|verify} messages.
+ * @param message ListApisRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.apigateway.v1.IListApisRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ListApisRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ListApisRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.apigateway.v1.ListApisRequest;
+
+ /**
+ * Decodes a ListApisRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ListApisRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.apigateway.v1.ListApisRequest;
+
+ /**
+ * Verifies a ListApisRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ListApisRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ListApisRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.apigateway.v1.ListApisRequest;
+
+ /**
+ * Creates a plain object from a ListApisRequest message. Also converts values to other types if specified.
+ * @param message ListApisRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.apigateway.v1.ListApisRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ListApisRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ListApisRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ListApisResponse. */
+ interface IListApisResponse {
+
+ /** ListApisResponse apis */
+ apis?: (google.cloud.apigateway.v1.IApi[]|null);
+
+ /** ListApisResponse nextPageToken */
+ nextPageToken?: (string|null);
+
+ /** ListApisResponse unreachableLocations */
+ unreachableLocations?: (string[]|null);
+ }
+
+ /** Represents a ListApisResponse. */
+ class ListApisResponse implements IListApisResponse {
+
+ /**
+ * Constructs a new ListApisResponse.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.apigateway.v1.IListApisResponse);
+
+ /** ListApisResponse apis. */
+ public apis: google.cloud.apigateway.v1.IApi[];
+
+ /** ListApisResponse nextPageToken. */
+ public nextPageToken: string;
+
+ /** ListApisResponse unreachableLocations. */
+ public unreachableLocations: string[];
+
+ /**
+ * Creates a new ListApisResponse instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ListApisResponse instance
+ */
+ public static create(properties?: google.cloud.apigateway.v1.IListApisResponse): google.cloud.apigateway.v1.ListApisResponse;
+
+ /**
+ * Encodes the specified ListApisResponse message. Does not implicitly {@link google.cloud.apigateway.v1.ListApisResponse.verify|verify} messages.
+ * @param message ListApisResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.apigateway.v1.IListApisResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ListApisResponse message, length delimited. Does not implicitly {@link google.cloud.apigateway.v1.ListApisResponse.verify|verify} messages.
+ * @param message ListApisResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.apigateway.v1.IListApisResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ListApisResponse message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ListApisResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.apigateway.v1.ListApisResponse;
+
+ /**
+ * Decodes a ListApisResponse message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ListApisResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.apigateway.v1.ListApisResponse;
+
+ /**
+ * Verifies a ListApisResponse message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ListApisResponse message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ListApisResponse
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.apigateway.v1.ListApisResponse;
+
+ /**
+ * Creates a plain object from a ListApisResponse message. Also converts values to other types if specified.
+ * @param message ListApisResponse
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.apigateway.v1.ListApisResponse, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ListApisResponse to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ListApisResponse
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a GetApiRequest. */
+ interface IGetApiRequest {
+
+ /** GetApiRequest name */
+ name?: (string|null);
+ }
+
+ /** Represents a GetApiRequest. */
+ class GetApiRequest implements IGetApiRequest {
+
+ /**
+ * Constructs a new GetApiRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.apigateway.v1.IGetApiRequest);
+
+ /** GetApiRequest name. */
+ public name: string;
+
+ /**
+ * Creates a new GetApiRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns GetApiRequest instance
+ */
+ public static create(properties?: google.cloud.apigateway.v1.IGetApiRequest): google.cloud.apigateway.v1.GetApiRequest;
+
+ /**
+ * Encodes the specified GetApiRequest message. Does not implicitly {@link google.cloud.apigateway.v1.GetApiRequest.verify|verify} messages.
+ * @param message GetApiRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.apigateway.v1.IGetApiRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified GetApiRequest message, length delimited. Does not implicitly {@link google.cloud.apigateway.v1.GetApiRequest.verify|verify} messages.
+ * @param message GetApiRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.apigateway.v1.IGetApiRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a GetApiRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns GetApiRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.apigateway.v1.GetApiRequest;
+
+ /**
+ * Decodes a GetApiRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns GetApiRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.apigateway.v1.GetApiRequest;
+
+ /**
+ * Verifies a GetApiRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a GetApiRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns GetApiRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.apigateway.v1.GetApiRequest;
+
+ /**
+ * Creates a plain object from a GetApiRequest message. Also converts values to other types if specified.
+ * @param message GetApiRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.apigateway.v1.GetApiRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this GetApiRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for GetApiRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a CreateApiRequest. */
+ interface ICreateApiRequest {
+
+ /** CreateApiRequest parent */
+ parent?: (string|null);
+
+ /** CreateApiRequest apiId */
+ apiId?: (string|null);
+
+ /** CreateApiRequest api */
+ api?: (google.cloud.apigateway.v1.IApi|null);
+ }
+
+ /** Represents a CreateApiRequest. */
+ class CreateApiRequest implements ICreateApiRequest {
+
+ /**
+ * Constructs a new CreateApiRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.apigateway.v1.ICreateApiRequest);
+
+ /** CreateApiRequest parent. */
+ public parent: string;
+
+ /** CreateApiRequest apiId. */
+ public apiId: string;
+
+ /** CreateApiRequest api. */
+ public api?: (google.cloud.apigateway.v1.IApi|null);
+
+ /**
+ * Creates a new CreateApiRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns CreateApiRequest instance
+ */
+ public static create(properties?: google.cloud.apigateway.v1.ICreateApiRequest): google.cloud.apigateway.v1.CreateApiRequest;
+
+ /**
+ * Encodes the specified CreateApiRequest message. Does not implicitly {@link google.cloud.apigateway.v1.CreateApiRequest.verify|verify} messages.
+ * @param message CreateApiRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.apigateway.v1.ICreateApiRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified CreateApiRequest message, length delimited. Does not implicitly {@link google.cloud.apigateway.v1.CreateApiRequest.verify|verify} messages.
+ * @param message CreateApiRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.apigateway.v1.ICreateApiRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a CreateApiRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns CreateApiRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.apigateway.v1.CreateApiRequest;
+
+ /**
+ * Decodes a CreateApiRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns CreateApiRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.apigateway.v1.CreateApiRequest;
+
+ /**
+ * Verifies a CreateApiRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a CreateApiRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns CreateApiRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.apigateway.v1.CreateApiRequest;
+
+ /**
+ * Creates a plain object from a CreateApiRequest message. Also converts values to other types if specified.
+ * @param message CreateApiRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.apigateway.v1.CreateApiRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this CreateApiRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for CreateApiRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an UpdateApiRequest. */
+ interface IUpdateApiRequest {
+
+ /** UpdateApiRequest updateMask */
+ updateMask?: (google.protobuf.IFieldMask|null);
+
+ /** UpdateApiRequest api */
+ api?: (google.cloud.apigateway.v1.IApi|null);
+ }
+
+ /** Represents an UpdateApiRequest. */
+ class UpdateApiRequest implements IUpdateApiRequest {
+
+ /**
+ * Constructs a new UpdateApiRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.apigateway.v1.IUpdateApiRequest);
+
+ /** UpdateApiRequest updateMask. */
+ public updateMask?: (google.protobuf.IFieldMask|null);
+
+ /** UpdateApiRequest api. */
+ public api?: (google.cloud.apigateway.v1.IApi|null);
+
+ /**
+ * Creates a new UpdateApiRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns UpdateApiRequest instance
+ */
+ public static create(properties?: google.cloud.apigateway.v1.IUpdateApiRequest): google.cloud.apigateway.v1.UpdateApiRequest;
+
+ /**
+ * Encodes the specified UpdateApiRequest message. Does not implicitly {@link google.cloud.apigateway.v1.UpdateApiRequest.verify|verify} messages.
+ * @param message UpdateApiRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.apigateway.v1.IUpdateApiRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified UpdateApiRequest message, length delimited. Does not implicitly {@link google.cloud.apigateway.v1.UpdateApiRequest.verify|verify} messages.
+ * @param message UpdateApiRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.apigateway.v1.IUpdateApiRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an UpdateApiRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns UpdateApiRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.apigateway.v1.UpdateApiRequest;
+
+ /**
+ * Decodes an UpdateApiRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns UpdateApiRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.apigateway.v1.UpdateApiRequest;
+
+ /**
+ * Verifies an UpdateApiRequest message.
+ * @param message Plain 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 UpdateApiRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns UpdateApiRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.apigateway.v1.UpdateApiRequest;
+
+ /**
+ * Creates a plain object from an UpdateApiRequest message. Also converts values to other types if specified.
+ * @param message UpdateApiRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.apigateway.v1.UpdateApiRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this UpdateApiRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for UpdateApiRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a DeleteApiRequest. */
+ interface IDeleteApiRequest {
+
+ /** DeleteApiRequest name */
+ name?: (string|null);
+ }
+
+ /** Represents a DeleteApiRequest. */
+ class DeleteApiRequest implements IDeleteApiRequest {
+
+ /**
+ * Constructs a new DeleteApiRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.apigateway.v1.IDeleteApiRequest);
+
+ /** DeleteApiRequest name. */
+ public name: string;
+
+ /**
+ * Creates a new DeleteApiRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns DeleteApiRequest instance
+ */
+ public static create(properties?: google.cloud.apigateway.v1.IDeleteApiRequest): google.cloud.apigateway.v1.DeleteApiRequest;
+
+ /**
+ * Encodes the specified DeleteApiRequest message. Does not implicitly {@link google.cloud.apigateway.v1.DeleteApiRequest.verify|verify} messages.
+ * @param message DeleteApiRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.apigateway.v1.IDeleteApiRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified DeleteApiRequest message, length delimited. Does not implicitly {@link google.cloud.apigateway.v1.DeleteApiRequest.verify|verify} messages.
+ * @param message DeleteApiRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.apigateway.v1.IDeleteApiRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a DeleteApiRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns DeleteApiRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.apigateway.v1.DeleteApiRequest;
+
+ /**
+ * Decodes a DeleteApiRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns DeleteApiRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.apigateway.v1.DeleteApiRequest;
+
+ /**
+ * Verifies a DeleteApiRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a DeleteApiRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns DeleteApiRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.apigateway.v1.DeleteApiRequest;
+
+ /**
+ * Creates a plain object from a DeleteApiRequest message. Also converts values to other types if specified.
+ * @param message DeleteApiRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.apigateway.v1.DeleteApiRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this DeleteApiRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for DeleteApiRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ListApiConfigsRequest. */
+ interface IListApiConfigsRequest {
+
+ /** ListApiConfigsRequest parent */
+ parent?: (string|null);
+
+ /** ListApiConfigsRequest pageSize */
+ pageSize?: (number|null);
+
+ /** ListApiConfigsRequest pageToken */
+ pageToken?: (string|null);
+
+ /** ListApiConfigsRequest filter */
+ filter?: (string|null);
+
+ /** ListApiConfigsRequest orderBy */
+ orderBy?: (string|null);
+ }
+
+ /** Represents a ListApiConfigsRequest. */
+ class ListApiConfigsRequest implements IListApiConfigsRequest {
+
+ /**
+ * Constructs a new ListApiConfigsRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.apigateway.v1.IListApiConfigsRequest);
+
+ /** ListApiConfigsRequest parent. */
+ public parent: string;
+
+ /** ListApiConfigsRequest pageSize. */
+ public pageSize: number;
+
+ /** ListApiConfigsRequest pageToken. */
+ public pageToken: string;
+
+ /** ListApiConfigsRequest filter. */
+ public filter: string;
+
+ /** ListApiConfigsRequest orderBy. */
+ public orderBy: string;
+
+ /**
+ * Creates a new ListApiConfigsRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ListApiConfigsRequest instance
+ */
+ public static create(properties?: google.cloud.apigateway.v1.IListApiConfigsRequest): google.cloud.apigateway.v1.ListApiConfigsRequest;
+
+ /**
+ * Encodes the specified ListApiConfigsRequest message. Does not implicitly {@link google.cloud.apigateway.v1.ListApiConfigsRequest.verify|verify} messages.
+ * @param message ListApiConfigsRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.apigateway.v1.IListApiConfigsRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ListApiConfigsRequest message, length delimited. Does not implicitly {@link google.cloud.apigateway.v1.ListApiConfigsRequest.verify|verify} messages.
+ * @param message ListApiConfigsRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.apigateway.v1.IListApiConfigsRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ListApiConfigsRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ListApiConfigsRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.apigateway.v1.ListApiConfigsRequest;
+
+ /**
+ * Decodes a ListApiConfigsRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ListApiConfigsRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.apigateway.v1.ListApiConfigsRequest;
+
+ /**
+ * Verifies a ListApiConfigsRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ListApiConfigsRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ListApiConfigsRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.apigateway.v1.ListApiConfigsRequest;
+
+ /**
+ * Creates a plain object from a ListApiConfigsRequest message. Also converts values to other types if specified.
+ * @param message ListApiConfigsRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.apigateway.v1.ListApiConfigsRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ListApiConfigsRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ListApiConfigsRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ListApiConfigsResponse. */
+ interface IListApiConfigsResponse {
+
+ /** ListApiConfigsResponse apiConfigs */
+ apiConfigs?: (google.cloud.apigateway.v1.IApiConfig[]|null);
+
+ /** ListApiConfigsResponse nextPageToken */
+ nextPageToken?: (string|null);
+
+ /** ListApiConfigsResponse unreachableLocations */
+ unreachableLocations?: (string[]|null);
+ }
+
+ /** Represents a ListApiConfigsResponse. */
+ class ListApiConfigsResponse implements IListApiConfigsResponse {
+
+ /**
+ * Constructs a new ListApiConfigsResponse.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.apigateway.v1.IListApiConfigsResponse);
+
+ /** ListApiConfigsResponse apiConfigs. */
+ public apiConfigs: google.cloud.apigateway.v1.IApiConfig[];
+
+ /** ListApiConfigsResponse nextPageToken. */
+ public nextPageToken: string;
+
+ /** ListApiConfigsResponse unreachableLocations. */
+ public unreachableLocations: string[];
+
+ /**
+ * Creates a new ListApiConfigsResponse instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ListApiConfigsResponse instance
+ */
+ public static create(properties?: google.cloud.apigateway.v1.IListApiConfigsResponse): google.cloud.apigateway.v1.ListApiConfigsResponse;
+
+ /**
+ * Encodes the specified ListApiConfigsResponse message. Does not implicitly {@link google.cloud.apigateway.v1.ListApiConfigsResponse.verify|verify} messages.
+ * @param message ListApiConfigsResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.apigateway.v1.IListApiConfigsResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ListApiConfigsResponse message, length delimited. Does not implicitly {@link google.cloud.apigateway.v1.ListApiConfigsResponse.verify|verify} messages.
+ * @param message ListApiConfigsResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.apigateway.v1.IListApiConfigsResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ListApiConfigsResponse message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ListApiConfigsResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.apigateway.v1.ListApiConfigsResponse;
+
+ /**
+ * Decodes a ListApiConfigsResponse message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ListApiConfigsResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.apigateway.v1.ListApiConfigsResponse;
+
+ /**
+ * Verifies a ListApiConfigsResponse message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ListApiConfigsResponse message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ListApiConfigsResponse
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.apigateway.v1.ListApiConfigsResponse;
+
+ /**
+ * Creates a plain object from a ListApiConfigsResponse message. Also converts values to other types if specified.
+ * @param message ListApiConfigsResponse
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.apigateway.v1.ListApiConfigsResponse, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ListApiConfigsResponse to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ListApiConfigsResponse
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a GetApiConfigRequest. */
+ interface IGetApiConfigRequest {
+
+ /** GetApiConfigRequest name */
+ name?: (string|null);
+
+ /** GetApiConfigRequest view */
+ view?: (google.cloud.apigateway.v1.GetApiConfigRequest.ConfigView|keyof typeof google.cloud.apigateway.v1.GetApiConfigRequest.ConfigView|null);
+ }
+
+ /** Represents a GetApiConfigRequest. */
+ class GetApiConfigRequest implements IGetApiConfigRequest {
+
+ /**
+ * Constructs a new GetApiConfigRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.apigateway.v1.IGetApiConfigRequest);
+
+ /** GetApiConfigRequest name. */
+ public name: string;
+
+ /** GetApiConfigRequest view. */
+ public view: (google.cloud.apigateway.v1.GetApiConfigRequest.ConfigView|keyof typeof google.cloud.apigateway.v1.GetApiConfigRequest.ConfigView);
+
+ /**
+ * Creates a new GetApiConfigRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns GetApiConfigRequest instance
+ */
+ public static create(properties?: google.cloud.apigateway.v1.IGetApiConfigRequest): google.cloud.apigateway.v1.GetApiConfigRequest;
+
+ /**
+ * Encodes the specified GetApiConfigRequest message. Does not implicitly {@link google.cloud.apigateway.v1.GetApiConfigRequest.verify|verify} messages.
+ * @param message GetApiConfigRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.apigateway.v1.IGetApiConfigRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified GetApiConfigRequest message, length delimited. Does not implicitly {@link google.cloud.apigateway.v1.GetApiConfigRequest.verify|verify} messages.
+ * @param message GetApiConfigRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.apigateway.v1.IGetApiConfigRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a GetApiConfigRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns GetApiConfigRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.apigateway.v1.GetApiConfigRequest;
+
+ /**
+ * Decodes a GetApiConfigRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns GetApiConfigRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.apigateway.v1.GetApiConfigRequest;
+
+ /**
+ * Verifies a GetApiConfigRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a GetApiConfigRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns GetApiConfigRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.apigateway.v1.GetApiConfigRequest;
+
+ /**
+ * Creates a plain object from a GetApiConfigRequest message. Also converts values to other types if specified.
+ * @param message GetApiConfigRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.apigateway.v1.GetApiConfigRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this GetApiConfigRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for GetApiConfigRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace GetApiConfigRequest {
+
+ /** ConfigView enum. */
+ enum ConfigView {
+ CONFIG_VIEW_UNSPECIFIED = 0,
+ BASIC = 1,
+ FULL = 2
+ }
+ }
+
+ /** Properties of a CreateApiConfigRequest. */
+ interface ICreateApiConfigRequest {
+
+ /** CreateApiConfigRequest parent */
+ parent?: (string|null);
+
+ /** CreateApiConfigRequest apiConfigId */
+ apiConfigId?: (string|null);
+
+ /** CreateApiConfigRequest apiConfig */
+ apiConfig?: (google.cloud.apigateway.v1.IApiConfig|null);
+ }
+
+ /** Represents a CreateApiConfigRequest. */
+ class CreateApiConfigRequest implements ICreateApiConfigRequest {
+
+ /**
+ * Constructs a new CreateApiConfigRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.apigateway.v1.ICreateApiConfigRequest);
+
+ /** CreateApiConfigRequest parent. */
+ public parent: string;
+
+ /** CreateApiConfigRequest apiConfigId. */
+ public apiConfigId: string;
+
+ /** CreateApiConfigRequest apiConfig. */
+ public apiConfig?: (google.cloud.apigateway.v1.IApiConfig|null);
+
+ /**
+ * Creates a new CreateApiConfigRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns CreateApiConfigRequest instance
+ */
+ public static create(properties?: google.cloud.apigateway.v1.ICreateApiConfigRequest): google.cloud.apigateway.v1.CreateApiConfigRequest;
+
+ /**
+ * Encodes the specified CreateApiConfigRequest message. Does not implicitly {@link google.cloud.apigateway.v1.CreateApiConfigRequest.verify|verify} messages.
+ * @param message CreateApiConfigRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.apigateway.v1.ICreateApiConfigRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified CreateApiConfigRequest message, length delimited. Does not implicitly {@link google.cloud.apigateway.v1.CreateApiConfigRequest.verify|verify} messages.
+ * @param message CreateApiConfigRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.apigateway.v1.ICreateApiConfigRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a CreateApiConfigRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns CreateApiConfigRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.apigateway.v1.CreateApiConfigRequest;
+
+ /**
+ * Decodes a CreateApiConfigRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns CreateApiConfigRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.apigateway.v1.CreateApiConfigRequest;
+
+ /**
+ * Verifies a CreateApiConfigRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a CreateApiConfigRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns CreateApiConfigRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.apigateway.v1.CreateApiConfigRequest;
+
+ /**
+ * Creates a plain object from a CreateApiConfigRequest message. Also converts values to other types if specified.
+ * @param message CreateApiConfigRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.apigateway.v1.CreateApiConfigRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this CreateApiConfigRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for CreateApiConfigRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an UpdateApiConfigRequest. */
+ interface IUpdateApiConfigRequest {
+
+ /** UpdateApiConfigRequest updateMask */
+ updateMask?: (google.protobuf.IFieldMask|null);
+
+ /** UpdateApiConfigRequest apiConfig */
+ apiConfig?: (google.cloud.apigateway.v1.IApiConfig|null);
+ }
+
+ /** Represents an UpdateApiConfigRequest. */
+ class UpdateApiConfigRequest implements IUpdateApiConfigRequest {
+
+ /**
+ * Constructs a new UpdateApiConfigRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.apigateway.v1.IUpdateApiConfigRequest);
+
+ /** UpdateApiConfigRequest updateMask. */
+ public updateMask?: (google.protobuf.IFieldMask|null);
+
+ /** UpdateApiConfigRequest apiConfig. */
+ public apiConfig?: (google.cloud.apigateway.v1.IApiConfig|null);
+
+ /**
+ * Creates a new UpdateApiConfigRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns UpdateApiConfigRequest instance
+ */
+ public static create(properties?: google.cloud.apigateway.v1.IUpdateApiConfigRequest): google.cloud.apigateway.v1.UpdateApiConfigRequest;
+
+ /**
+ * Encodes the specified UpdateApiConfigRequest message. Does not implicitly {@link google.cloud.apigateway.v1.UpdateApiConfigRequest.verify|verify} messages.
+ * @param message UpdateApiConfigRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.apigateway.v1.IUpdateApiConfigRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified UpdateApiConfigRequest message, length delimited. Does not implicitly {@link google.cloud.apigateway.v1.UpdateApiConfigRequest.verify|verify} messages.
+ * @param message UpdateApiConfigRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.apigateway.v1.IUpdateApiConfigRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an UpdateApiConfigRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns UpdateApiConfigRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.apigateway.v1.UpdateApiConfigRequest;
+
+ /**
+ * Decodes an UpdateApiConfigRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns UpdateApiConfigRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.apigateway.v1.UpdateApiConfigRequest;
+
+ /**
+ * Verifies an UpdateApiConfigRequest message.
+ * @param message Plain 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 UpdateApiConfigRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns UpdateApiConfigRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.apigateway.v1.UpdateApiConfigRequest;
+
+ /**
+ * Creates a plain object from an UpdateApiConfigRequest message. Also converts values to other types if specified.
+ * @param message UpdateApiConfigRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.apigateway.v1.UpdateApiConfigRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this UpdateApiConfigRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for UpdateApiConfigRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a DeleteApiConfigRequest. */
+ interface IDeleteApiConfigRequest {
+
+ /** DeleteApiConfigRequest name */
+ name?: (string|null);
+ }
+
+ /** Represents a DeleteApiConfigRequest. */
+ class DeleteApiConfigRequest implements IDeleteApiConfigRequest {
+
+ /**
+ * Constructs a new DeleteApiConfigRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.apigateway.v1.IDeleteApiConfigRequest);
+
+ /** DeleteApiConfigRequest name. */
+ public name: string;
+
+ /**
+ * Creates a new DeleteApiConfigRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns DeleteApiConfigRequest instance
+ */
+ public static create(properties?: google.cloud.apigateway.v1.IDeleteApiConfigRequest): google.cloud.apigateway.v1.DeleteApiConfigRequest;
+
+ /**
+ * Encodes the specified DeleteApiConfigRequest message. Does not implicitly {@link google.cloud.apigateway.v1.DeleteApiConfigRequest.verify|verify} messages.
+ * @param message DeleteApiConfigRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.apigateway.v1.IDeleteApiConfigRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified DeleteApiConfigRequest message, length delimited. Does not implicitly {@link google.cloud.apigateway.v1.DeleteApiConfigRequest.verify|verify} messages.
+ * @param message DeleteApiConfigRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.apigateway.v1.IDeleteApiConfigRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a DeleteApiConfigRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns DeleteApiConfigRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.apigateway.v1.DeleteApiConfigRequest;
+
+ /**
+ * Decodes a DeleteApiConfigRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns DeleteApiConfigRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.apigateway.v1.DeleteApiConfigRequest;
+
+ /**
+ * Verifies a DeleteApiConfigRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a DeleteApiConfigRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns DeleteApiConfigRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.apigateway.v1.DeleteApiConfigRequest;
+
+ /**
+ * Creates a plain object from a DeleteApiConfigRequest message. Also converts values to other types if specified.
+ * @param message DeleteApiConfigRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.apigateway.v1.DeleteApiConfigRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this DeleteApiConfigRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for DeleteApiConfigRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an OperationMetadata. */
+ interface IOperationMetadata {
+
+ /** OperationMetadata createTime */
+ createTime?: (google.protobuf.ITimestamp|null);
+
+ /** OperationMetadata endTime */
+ endTime?: (google.protobuf.ITimestamp|null);
+
+ /** OperationMetadata target */
+ target?: (string|null);
+
+ /** OperationMetadata verb */
+ verb?: (string|null);
+
+ /** OperationMetadata statusMessage */
+ statusMessage?: (string|null);
+
+ /** OperationMetadata requestedCancellation */
+ requestedCancellation?: (boolean|null);
+
+ /** OperationMetadata apiVersion */
+ apiVersion?: (string|null);
+
+ /** OperationMetadata diagnostics */
+ diagnostics?: (google.cloud.apigateway.v1.OperationMetadata.IDiagnostic[]|null);
+ }
+
+ /** Represents an OperationMetadata. */
+ class OperationMetadata implements IOperationMetadata {
+
+ /**
+ * Constructs a new OperationMetadata.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.apigateway.v1.IOperationMetadata);
+
+ /** OperationMetadata createTime. */
+ public createTime?: (google.protobuf.ITimestamp|null);
+
+ /** OperationMetadata endTime. */
+ public endTime?: (google.protobuf.ITimestamp|null);
+
+ /** OperationMetadata target. */
+ public target: string;
+
+ /** OperationMetadata verb. */
+ public verb: string;
+
+ /** OperationMetadata statusMessage. */
+ public statusMessage: string;
+
+ /** OperationMetadata requestedCancellation. */
+ public requestedCancellation: boolean;
+
+ /** OperationMetadata apiVersion. */
+ public apiVersion: string;
+
+ /** OperationMetadata diagnostics. */
+ public diagnostics: google.cloud.apigateway.v1.OperationMetadata.IDiagnostic[];
+
+ /**
+ * Creates a new OperationMetadata instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns OperationMetadata instance
+ */
+ public static create(properties?: google.cloud.apigateway.v1.IOperationMetadata): google.cloud.apigateway.v1.OperationMetadata;
+
+ /**
+ * Encodes the specified OperationMetadata message. Does not implicitly {@link google.cloud.apigateway.v1.OperationMetadata.verify|verify} messages.
+ * @param message OperationMetadata message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.apigateway.v1.IOperationMetadata, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified OperationMetadata message, length delimited. Does not implicitly {@link google.cloud.apigateway.v1.OperationMetadata.verify|verify} messages.
+ * @param message OperationMetadata message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.apigateway.v1.IOperationMetadata, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an OperationMetadata message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns OperationMetadata
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.apigateway.v1.OperationMetadata;
+
+ /**
+ * Decodes an OperationMetadata message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns OperationMetadata
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.apigateway.v1.OperationMetadata;
+
+ /**
+ * Verifies an OperationMetadata message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates an OperationMetadata message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns OperationMetadata
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.apigateway.v1.OperationMetadata;
+
+ /**
+ * Creates a plain object from an OperationMetadata message. Also converts values to other types if specified.
+ * @param message OperationMetadata
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.apigateway.v1.OperationMetadata, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this OperationMetadata to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for OperationMetadata
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace OperationMetadata {
+
+ /** Properties of a Diagnostic. */
+ interface IDiagnostic {
+
+ /** Diagnostic location */
+ location?: (string|null);
+
+ /** Diagnostic message */
+ message?: (string|null);
+ }
+
+ /** Represents a Diagnostic. */
+ class Diagnostic implements IDiagnostic {
+
+ /**
+ * Constructs a new Diagnostic.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.apigateway.v1.OperationMetadata.IDiagnostic);
+
+ /** Diagnostic location. */
+ public location: string;
+
+ /** Diagnostic message. */
+ public message: string;
+
+ /**
+ * Creates a new Diagnostic instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Diagnostic instance
+ */
+ public static create(properties?: google.cloud.apigateway.v1.OperationMetadata.IDiagnostic): google.cloud.apigateway.v1.OperationMetadata.Diagnostic;
+
+ /**
+ * Encodes the specified Diagnostic message. Does not implicitly {@link google.cloud.apigateway.v1.OperationMetadata.Diagnostic.verify|verify} messages.
+ * @param message Diagnostic message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.apigateway.v1.OperationMetadata.IDiagnostic, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Diagnostic message, length delimited. Does not implicitly {@link google.cloud.apigateway.v1.OperationMetadata.Diagnostic.verify|verify} messages.
+ * @param message Diagnostic message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.apigateway.v1.OperationMetadata.IDiagnostic, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Diagnostic message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Diagnostic
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.apigateway.v1.OperationMetadata.Diagnostic;
+
+ /**
+ * Decodes a Diagnostic message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Diagnostic
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.apigateway.v1.OperationMetadata.Diagnostic;
+
+ /**
+ * Verifies a Diagnostic message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a Diagnostic message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Diagnostic
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.apigateway.v1.OperationMetadata.Diagnostic;
+
+ /**
+ * Creates a plain object from a Diagnostic message. Also converts values to other types if specified.
+ * @param message Diagnostic
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.apigateway.v1.OperationMetadata.Diagnostic, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Diagnostic to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Diagnostic
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+ }
+
+ /** Represents an ApiGatewayService */
+ class ApiGatewayService extends $protobuf.rpc.Service {
+
+ /**
+ * Constructs a new ApiGatewayService 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 ApiGatewayService 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): ApiGatewayService;
+
+ /**
+ * Calls ListGateways.
+ * @param request ListGatewaysRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and ListGatewaysResponse
+ */
+ public listGateways(request: google.cloud.apigateway.v1.IListGatewaysRequest, callback: google.cloud.apigateway.v1.ApiGatewayService.ListGatewaysCallback): void;
+
+ /**
+ * Calls ListGateways.
+ * @param request ListGatewaysRequest message or plain object
+ * @returns Promise
+ */
+ public listGateways(request: google.cloud.apigateway.v1.IListGatewaysRequest): Promise;
+
+ /**
+ * Calls GetGateway.
+ * @param request GetGatewayRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Gateway
+ */
+ public getGateway(request: google.cloud.apigateway.v1.IGetGatewayRequest, callback: google.cloud.apigateway.v1.ApiGatewayService.GetGatewayCallback): void;
+
+ /**
+ * Calls GetGateway.
+ * @param request GetGatewayRequest message or plain object
+ * @returns Promise
+ */
+ public getGateway(request: google.cloud.apigateway.v1.IGetGatewayRequest): Promise;
+
+ /**
+ * Calls CreateGateway.
+ * @param request CreateGatewayRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Operation
+ */
+ public createGateway(request: google.cloud.apigateway.v1.ICreateGatewayRequest, callback: google.cloud.apigateway.v1.ApiGatewayService.CreateGatewayCallback): void;
+
+ /**
+ * Calls CreateGateway.
+ * @param request CreateGatewayRequest message or plain object
+ * @returns Promise
+ */
+ public createGateway(request: google.cloud.apigateway.v1.ICreateGatewayRequest): Promise;
+
+ /**
+ * Calls UpdateGateway.
+ * @param request UpdateGatewayRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Operation
+ */
+ public updateGateway(request: google.cloud.apigateway.v1.IUpdateGatewayRequest, callback: google.cloud.apigateway.v1.ApiGatewayService.UpdateGatewayCallback): void;
+
+ /**
+ * Calls UpdateGateway.
+ * @param request UpdateGatewayRequest message or plain object
+ * @returns Promise
+ */
+ public updateGateway(request: google.cloud.apigateway.v1.IUpdateGatewayRequest): Promise;
+
+ /**
+ * Calls DeleteGateway.
+ * @param request DeleteGatewayRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Operation
+ */
+ public deleteGateway(request: google.cloud.apigateway.v1.IDeleteGatewayRequest, callback: google.cloud.apigateway.v1.ApiGatewayService.DeleteGatewayCallback): void;
+
+ /**
+ * Calls DeleteGateway.
+ * @param request DeleteGatewayRequest message or plain object
+ * @returns Promise
+ */
+ public deleteGateway(request: google.cloud.apigateway.v1.IDeleteGatewayRequest): Promise;
+
+ /**
+ * Calls ListApis.
+ * @param request ListApisRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and ListApisResponse
+ */
+ public listApis(request: google.cloud.apigateway.v1.IListApisRequest, callback: google.cloud.apigateway.v1.ApiGatewayService.ListApisCallback): void;
+
+ /**
+ * Calls ListApis.
+ * @param request ListApisRequest message or plain object
+ * @returns Promise
+ */
+ public listApis(request: google.cloud.apigateway.v1.IListApisRequest): Promise;
+
+ /**
+ * Calls GetApi.
+ * @param request GetApiRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Api
+ */
+ public getApi(request: google.cloud.apigateway.v1.IGetApiRequest, callback: google.cloud.apigateway.v1.ApiGatewayService.GetApiCallback): void;
+
+ /**
+ * Calls GetApi.
+ * @param request GetApiRequest message or plain object
+ * @returns Promise
+ */
+ public getApi(request: google.cloud.apigateway.v1.IGetApiRequest): Promise;
+
+ /**
+ * Calls CreateApi.
+ * @param request CreateApiRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Operation
+ */
+ public createApi(request: google.cloud.apigateway.v1.ICreateApiRequest, callback: google.cloud.apigateway.v1.ApiGatewayService.CreateApiCallback): void;
+
+ /**
+ * Calls CreateApi.
+ * @param request CreateApiRequest message or plain object
+ * @returns Promise
+ */
+ public createApi(request: google.cloud.apigateway.v1.ICreateApiRequest): Promise;
+
+ /**
+ * Calls UpdateApi.
+ * @param request UpdateApiRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Operation
+ */
+ public updateApi(request: google.cloud.apigateway.v1.IUpdateApiRequest, callback: google.cloud.apigateway.v1.ApiGatewayService.UpdateApiCallback): void;
+
+ /**
+ * Calls UpdateApi.
+ * @param request UpdateApiRequest message or plain object
+ * @returns Promise
+ */
+ public updateApi(request: google.cloud.apigateway.v1.IUpdateApiRequest): Promise;
+
+ /**
+ * Calls DeleteApi.
+ * @param request DeleteApiRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Operation
+ */
+ public deleteApi(request: google.cloud.apigateway.v1.IDeleteApiRequest, callback: google.cloud.apigateway.v1.ApiGatewayService.DeleteApiCallback): void;
+
+ /**
+ * Calls DeleteApi.
+ * @param request DeleteApiRequest message or plain object
+ * @returns Promise
+ */
+ public deleteApi(request: google.cloud.apigateway.v1.IDeleteApiRequest): Promise;
+
+ /**
+ * Calls ListApiConfigs.
+ * @param request ListApiConfigsRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and ListApiConfigsResponse
+ */
+ public listApiConfigs(request: google.cloud.apigateway.v1.IListApiConfigsRequest, callback: google.cloud.apigateway.v1.ApiGatewayService.ListApiConfigsCallback): void;
+
+ /**
+ * Calls ListApiConfigs.
+ * @param request ListApiConfigsRequest message or plain object
+ * @returns Promise
+ */
+ public listApiConfigs(request: google.cloud.apigateway.v1.IListApiConfigsRequest): Promise;
+
+ /**
+ * Calls GetApiConfig.
+ * @param request GetApiConfigRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and ApiConfig
+ */
+ public getApiConfig(request: google.cloud.apigateway.v1.IGetApiConfigRequest, callback: google.cloud.apigateway.v1.ApiGatewayService.GetApiConfigCallback): void;
+
+ /**
+ * Calls GetApiConfig.
+ * @param request GetApiConfigRequest message or plain object
+ * @returns Promise
+ */
+ public getApiConfig(request: google.cloud.apigateway.v1.IGetApiConfigRequest): Promise;
+
+ /**
+ * Calls CreateApiConfig.
+ * @param request CreateApiConfigRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Operation
+ */
+ public createApiConfig(request: google.cloud.apigateway.v1.ICreateApiConfigRequest, callback: google.cloud.apigateway.v1.ApiGatewayService.CreateApiConfigCallback): void;
+
+ /**
+ * Calls CreateApiConfig.
+ * @param request CreateApiConfigRequest message or plain object
+ * @returns Promise
+ */
+ public createApiConfig(request: google.cloud.apigateway.v1.ICreateApiConfigRequest): Promise;
+
+ /**
+ * Calls UpdateApiConfig.
+ * @param request UpdateApiConfigRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Operation
+ */
+ public updateApiConfig(request: google.cloud.apigateway.v1.IUpdateApiConfigRequest, callback: google.cloud.apigateway.v1.ApiGatewayService.UpdateApiConfigCallback): void;
+
+ /**
+ * Calls UpdateApiConfig.
+ * @param request UpdateApiConfigRequest message or plain object
+ * @returns Promise
+ */
+ public updateApiConfig(request: google.cloud.apigateway.v1.IUpdateApiConfigRequest): Promise;
+
+ /**
+ * Calls DeleteApiConfig.
+ * @param request DeleteApiConfigRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Operation
+ */
+ public deleteApiConfig(request: google.cloud.apigateway.v1.IDeleteApiConfigRequest, callback: google.cloud.apigateway.v1.ApiGatewayService.DeleteApiConfigCallback): void;
+
+ /**
+ * Calls DeleteApiConfig.
+ * @param request DeleteApiConfigRequest message or plain object
+ * @returns Promise
+ */
+ public deleteApiConfig(request: google.cloud.apigateway.v1.IDeleteApiConfigRequest): Promise;
+ }
+
+ namespace ApiGatewayService {
+
+ /**
+ * Callback as used by {@link google.cloud.apigateway.v1.ApiGatewayService|listGateways}.
+ * @param error Error, if any
+ * @param [response] ListGatewaysResponse
+ */
+ type ListGatewaysCallback = (error: (Error|null), response?: google.cloud.apigateway.v1.ListGatewaysResponse) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.apigateway.v1.ApiGatewayService|getGateway}.
+ * @param error Error, if any
+ * @param [response] Gateway
+ */
+ type GetGatewayCallback = (error: (Error|null), response?: google.cloud.apigateway.v1.Gateway) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.apigateway.v1.ApiGatewayService|createGateway}.
+ * @param error Error, if any
+ * @param [response] Operation
+ */
+ type CreateGatewayCallback = (error: (Error|null), response?: google.longrunning.Operation) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.apigateway.v1.ApiGatewayService|updateGateway}.
+ * @param error Error, if any
+ * @param [response] Operation
+ */
+ type UpdateGatewayCallback = (error: (Error|null), response?: google.longrunning.Operation) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.apigateway.v1.ApiGatewayService|deleteGateway}.
+ * @param error Error, if any
+ * @param [response] Operation
+ */
+ type DeleteGatewayCallback = (error: (Error|null), response?: google.longrunning.Operation) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.apigateway.v1.ApiGatewayService|listApis}.
+ * @param error Error, if any
+ * @param [response] ListApisResponse
+ */
+ type ListApisCallback = (error: (Error|null), response?: google.cloud.apigateway.v1.ListApisResponse) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.apigateway.v1.ApiGatewayService|getApi}.
+ * @param error Error, if any
+ * @param [response] Api
+ */
+ type GetApiCallback = (error: (Error|null), response?: google.cloud.apigateway.v1.Api) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.apigateway.v1.ApiGatewayService|createApi}.
+ * @param error Error, if any
+ * @param [response] Operation
+ */
+ type CreateApiCallback = (error: (Error|null), response?: google.longrunning.Operation) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.apigateway.v1.ApiGatewayService|updateApi}.
+ * @param error Error, if any
+ * @param [response] Operation
+ */
+ type UpdateApiCallback = (error: (Error|null), response?: google.longrunning.Operation) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.apigateway.v1.ApiGatewayService|deleteApi}.
+ * @param error Error, if any
+ * @param [response] Operation
+ */
+ type DeleteApiCallback = (error: (Error|null), response?: google.longrunning.Operation) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.apigateway.v1.ApiGatewayService|listApiConfigs}.
+ * @param error Error, if any
+ * @param [response] ListApiConfigsResponse
+ */
+ type ListApiConfigsCallback = (error: (Error|null), response?: google.cloud.apigateway.v1.ListApiConfigsResponse) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.apigateway.v1.ApiGatewayService|getApiConfig}.
+ * @param error Error, if any
+ * @param [response] ApiConfig
+ */
+ type GetApiConfigCallback = (error: (Error|null), response?: google.cloud.apigateway.v1.ApiConfig) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.apigateway.v1.ApiGatewayService|createApiConfig}.
+ * @param error Error, if any
+ * @param [response] Operation
+ */
+ type CreateApiConfigCallback = (error: (Error|null), response?: google.longrunning.Operation) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.apigateway.v1.ApiGatewayService|updateApiConfig}.
+ * @param error Error, if any
+ * @param [response] Operation
+ */
+ type UpdateApiConfigCallback = (error: (Error|null), response?: google.longrunning.Operation) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.apigateway.v1.ApiGatewayService|deleteApiConfig}.
+ * @param error Error, if any
+ * @param [response] Operation
+ */
+ type DeleteApiConfigCallback = (error: (Error|null), response?: google.longrunning.Operation) => void;
+ }
+ }
+ }
+ }
+
+ /** Namespace api. */
+ namespace api {
+
+ /** FieldBehavior enum. */
+ enum FieldBehavior {
+ FIELD_BEHAVIOR_UNSPECIFIED = 0,
+ OPTIONAL = 1,
+ REQUIRED = 2,
+ OUTPUT_ONLY = 3,
+ INPUT_ONLY = 4,
+ IMMUTABLE = 5,
+ UNORDERED_LIST = 6,
+ NON_EMPTY_DEFAULT = 7
+ }
+
+ /** Properties of a ResourceDescriptor. */
+ interface IResourceDescriptor {
+
+ /** ResourceDescriptor type */
+ type?: (string|null);
+
+ /** ResourceDescriptor pattern */
+ pattern?: (string[]|null);
+
+ /** ResourceDescriptor nameField */
+ nameField?: (string|null);
+
+ /** ResourceDescriptor history */
+ history?: (google.api.ResourceDescriptor.History|keyof typeof google.api.ResourceDescriptor.History|null);
+
+ /** ResourceDescriptor plural */
+ plural?: (string|null);
+
+ /** ResourceDescriptor singular */
+ singular?: (string|null);
+
+ /** ResourceDescriptor style */
+ style?: (google.api.ResourceDescriptor.Style[]|null);
+ }
+
+ /** Represents a ResourceDescriptor. */
+ class ResourceDescriptor implements IResourceDescriptor {
+
+ /**
+ * Constructs a new ResourceDescriptor.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.api.IResourceDescriptor);
+
+ /** ResourceDescriptor type. */
+ public type: string;
+
+ /** ResourceDescriptor pattern. */
+ public pattern: string[];
+
+ /** ResourceDescriptor nameField. */
+ public nameField: string;
+
+ /** ResourceDescriptor history. */
+ public history: (google.api.ResourceDescriptor.History|keyof typeof google.api.ResourceDescriptor.History);
+
+ /** ResourceDescriptor plural. */
+ public plural: string;
+
+ /** ResourceDescriptor singular. */
+ public singular: string;
+
+ /** ResourceDescriptor style. */
+ public style: google.api.ResourceDescriptor.Style[];
+
+ /**
+ * Creates a new ResourceDescriptor instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ResourceDescriptor instance
+ */
+ public static create(properties?: google.api.IResourceDescriptor): google.api.ResourceDescriptor;
+
+ /**
+ * Encodes the specified ResourceDescriptor message. Does not implicitly {@link google.api.ResourceDescriptor.verify|verify} messages.
+ * @param message ResourceDescriptor message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.api.IResourceDescriptor, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ResourceDescriptor message, length delimited. Does not implicitly {@link google.api.ResourceDescriptor.verify|verify} messages.
+ * @param message ResourceDescriptor message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.api.IResourceDescriptor, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ResourceDescriptor message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ResourceDescriptor
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.api.ResourceDescriptor;
+
+ /**
+ * Decodes a ResourceDescriptor message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ResourceDescriptor
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.api.ResourceDescriptor;
+
+ /**
+ * Verifies a ResourceDescriptor message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ResourceDescriptor message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ResourceDescriptor
+ */
+ public static fromObject(object: { [k: string]: any }): google.api.ResourceDescriptor;
+
+ /**
+ * Creates a plain object from a ResourceDescriptor message. Also converts values to other types if specified.
+ * @param message ResourceDescriptor
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.api.ResourceDescriptor, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ResourceDescriptor to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * 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;
+ }
+
+ /** Properties of a Http. */
+ interface IHttp {
+
+ /** Http rules */
+ rules?: (google.api.IHttpRule[]|null);
+
+ /** Http fullyDecodeReservedExpansion */
+ fullyDecodeReservedExpansion?: (boolean|null);
+ }
+
+ /** Represents a Http. */
+ class Http implements IHttp {
+
+ /**
+ * Constructs a new Http.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.api.IHttp);
+
+ /** Http rules. */
+ public rules: google.api.IHttpRule[];
+
+ /** Http fullyDecodeReservedExpansion. */
+ public fullyDecodeReservedExpansion: boolean;
+
+ /**
+ * Creates a new Http instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Http instance
+ */
+ public static create(properties?: google.api.IHttp): google.api.Http;
+
+ /**
+ * Encodes the specified Http message. Does not implicitly {@link google.api.Http.verify|verify} messages.
+ * @param message Http message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.api.IHttp, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Http message, length delimited. Does not implicitly {@link google.api.Http.verify|verify} messages.
+ * @param message Http message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.api.IHttp, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Http message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Http
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.api.Http;
+
+ /**
+ * Decodes a Http message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Http
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.api.Http;
+
+ /**
+ * Verifies a Http message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a Http message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Http
+ */
+ public static fromObject(object: { [k: string]: any }): google.api.Http;
+
+ /**
+ * Creates a plain object from a Http message. Also converts values to other types if specified.
+ * @param message Http
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.api.Http, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Http to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Http
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a HttpRule. */
+ interface IHttpRule {
+
+ /** HttpRule selector */
+ selector?: (string|null);
+
+ /** HttpRule get */
+ get?: (string|null);
+
+ /** HttpRule put */
+ put?: (string|null);
+
+ /** HttpRule post */
+ post?: (string|null);
+
+ /** HttpRule delete */
+ "delete"?: (string|null);
+
+ /** HttpRule patch */
+ patch?: (string|null);
+
+ /** HttpRule custom */
+ custom?: (google.api.ICustomHttpPattern|null);
+
+ /** HttpRule body */
+ body?: (string|null);
+
+ /** HttpRule responseBody */
+ responseBody?: (string|null);
+
+ /** HttpRule additionalBindings */
+ additionalBindings?: (google.api.IHttpRule[]|null);
+ }
+
+ /** Represents a HttpRule. */
+ class HttpRule implements IHttpRule {
+
+ /**
+ * Constructs a new HttpRule.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.api.IHttpRule);
+
+ /** HttpRule selector. */
+ public selector: string;
+
+ /** HttpRule get. */
+ public get?: (string|null);
+
+ /** HttpRule put. */
+ public put?: (string|null);
+
+ /** HttpRule post. */
+ public post?: (string|null);
+
+ /** HttpRule delete. */
+ public delete?: (string|null);
+
+ /** HttpRule patch. */
+ public patch?: (string|null);
+
+ /** HttpRule custom. */
+ public custom?: (google.api.ICustomHttpPattern|null);
+
+ /** HttpRule body. */
+ public body: string;
+
+ /** HttpRule responseBody. */
+ public responseBody: string;
+
+ /** HttpRule additionalBindings. */
+ public additionalBindings: google.api.IHttpRule[];
+
+ /** HttpRule pattern. */
+ public pattern?: ("get"|"put"|"post"|"delete"|"patch"|"custom");
+
+ /**
+ * Creates a new HttpRule instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns HttpRule instance
+ */
+ public static create(properties?: google.api.IHttpRule): google.api.HttpRule;
+
+ /**
+ * Encodes the specified HttpRule message. Does not implicitly {@link google.api.HttpRule.verify|verify} messages.
+ * @param message HttpRule message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.api.IHttpRule, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified HttpRule message, length delimited. Does not implicitly {@link google.api.HttpRule.verify|verify} messages.
+ * @param message HttpRule message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.api.IHttpRule, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a HttpRule message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns HttpRule
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.api.HttpRule;
+
+ /**
+ * Decodes a HttpRule message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns HttpRule
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.api.HttpRule;
+
+ /**
+ * Verifies a HttpRule message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a HttpRule message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns HttpRule
+ */
+ public static fromObject(object: { [k: string]: any }): google.api.HttpRule;
+
+ /**
+ * Creates a plain object from a HttpRule message. Also converts values to other types if specified.
+ * @param message HttpRule
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.api.HttpRule, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this HttpRule to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for HttpRule
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a CustomHttpPattern. */
+ interface ICustomHttpPattern {
+
+ /** CustomHttpPattern kind */
+ kind?: (string|null);
+
+ /** CustomHttpPattern path */
+ path?: (string|null);
+ }
+
+ /** Represents a CustomHttpPattern. */
+ class CustomHttpPattern implements ICustomHttpPattern {
+
+ /**
+ * Constructs a new CustomHttpPattern.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.api.ICustomHttpPattern);
+
+ /** CustomHttpPattern kind. */
+ public kind: string;
+
+ /** CustomHttpPattern path. */
+ public path: string;
+
+ /**
+ * Creates a new CustomHttpPattern instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns CustomHttpPattern instance
+ */
+ public static create(properties?: google.api.ICustomHttpPattern): google.api.CustomHttpPattern;
+
+ /**
+ * Encodes the specified CustomHttpPattern message. Does not implicitly {@link google.api.CustomHttpPattern.verify|verify} messages.
+ * @param message CustomHttpPattern message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.api.ICustomHttpPattern, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified CustomHttpPattern message, length delimited. Does not implicitly {@link google.api.CustomHttpPattern.verify|verify} messages.
+ * @param message CustomHttpPattern message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.api.ICustomHttpPattern, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a CustomHttpPattern message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns CustomHttpPattern
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.api.CustomHttpPattern;
+
+ /**
+ * Decodes a CustomHttpPattern message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns CustomHttpPattern
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.api.CustomHttpPattern;
+
+ /**
+ * Verifies a CustomHttpPattern message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a CustomHttpPattern message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns CustomHttpPattern
+ */
+ public static fromObject(object: { [k: string]: any }): google.api.CustomHttpPattern;
+
+ /**
+ * Creates a plain object from a CustomHttpPattern message. Also converts values to other types if specified.
+ * @param message CustomHttpPattern
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.api.CustomHttpPattern, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this CustomHttpPattern to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for CustomHttpPattern
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+ }
+
+ /** Namespace protobuf. */
+ namespace protobuf {
+
+ /** Properties of a FileDescriptorSet. */
+ interface IFileDescriptorSet {
+
+ /** FileDescriptorSet file */
+ file?: (google.protobuf.IFileDescriptorProto[]|null);
+ }
+
+ /** Represents a FileDescriptorSet. */
+ class FileDescriptorSet implements IFileDescriptorSet {
+
+ /**
+ * Constructs a new FileDescriptorSet.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.IFileDescriptorSet);
+
+ /** FileDescriptorSet file. */
+ public file: google.protobuf.IFileDescriptorProto[];
+
+ /**
+ * Creates a new FileDescriptorSet instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns FileDescriptorSet instance
+ */
+ public static create(properties?: google.protobuf.IFileDescriptorSet): google.protobuf.FileDescriptorSet;
+
+ /**
+ * Encodes the specified FileDescriptorSet message. Does not implicitly {@link google.protobuf.FileDescriptorSet.verify|verify} messages.
+ * @param message FileDescriptorSet message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.IFileDescriptorSet, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified FileDescriptorSet message, length delimited. Does not implicitly {@link google.protobuf.FileDescriptorSet.verify|verify} messages.
+ * @param message FileDescriptorSet message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.IFileDescriptorSet, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a FileDescriptorSet message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns FileDescriptorSet
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.FileDescriptorSet;
+
+ /**
+ * Decodes a FileDescriptorSet message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns FileDescriptorSet
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.FileDescriptorSet;
+
+ /**
+ * Verifies a FileDescriptorSet message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a FileDescriptorSet message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns FileDescriptorSet
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.FileDescriptorSet;
+
+ /**
+ * Creates a plain object from a FileDescriptorSet message. Also converts values to other types if specified.
+ * @param message FileDescriptorSet
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.FileDescriptorSet, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this FileDescriptorSet to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for FileDescriptorSet
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a FileDescriptorProto. */
+ interface IFileDescriptorProto {
+
+ /** FileDescriptorProto name */
+ name?: (string|null);
+
+ /** FileDescriptorProto package */
+ "package"?: (string|null);
+
+ /** FileDescriptorProto dependency */
+ dependency?: (string[]|null);
+
+ /** FileDescriptorProto publicDependency */
+ publicDependency?: (number[]|null);
+
+ /** FileDescriptorProto weakDependency */
+ weakDependency?: (number[]|null);
+
+ /** FileDescriptorProto messageType */
+ messageType?: (google.protobuf.IDescriptorProto[]|null);
+
+ /** FileDescriptorProto enumType */
+ enumType?: (google.protobuf.IEnumDescriptorProto[]|null);
+
+ /** FileDescriptorProto service */
+ service?: (google.protobuf.IServiceDescriptorProto[]|null);
+
+ /** FileDescriptorProto extension */
+ extension?: (google.protobuf.IFieldDescriptorProto[]|null);
+
+ /** FileDescriptorProto options */
+ options?: (google.protobuf.IFileOptions|null);
+
+ /** FileDescriptorProto sourceCodeInfo */
+ sourceCodeInfo?: (google.protobuf.ISourceCodeInfo|null);
+
+ /** FileDescriptorProto syntax */
+ syntax?: (string|null);
+
+ /** FileDescriptorProto edition */
+ edition?: (string|null);
+ }
+
+ /** Represents a FileDescriptorProto. */
+ class FileDescriptorProto implements IFileDescriptorProto {
+
+ /**
+ * Constructs a new FileDescriptorProto.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.IFileDescriptorProto);
+
+ /** FileDescriptorProto name. */
+ public name: string;
+
+ /** FileDescriptorProto package. */
+ public package: string;
+
+ /** FileDescriptorProto dependency. */
+ public dependency: string[];
+
+ /** FileDescriptorProto publicDependency. */
+ public publicDependency: number[];
+
+ /** FileDescriptorProto weakDependency. */
+ public weakDependency: number[];
+
+ /** FileDescriptorProto messageType. */
+ public messageType: google.protobuf.IDescriptorProto[];
+
+ /** FileDescriptorProto enumType. */
+ public enumType: google.protobuf.IEnumDescriptorProto[];
+
+ /** FileDescriptorProto service. */
+ public service: google.protobuf.IServiceDescriptorProto[];
+
+ /** FileDescriptorProto extension. */
+ public extension: google.protobuf.IFieldDescriptorProto[];
+
+ /** FileDescriptorProto options. */
+ public options?: (google.protobuf.IFileOptions|null);
+
+ /** FileDescriptorProto sourceCodeInfo. */
+ public sourceCodeInfo?: (google.protobuf.ISourceCodeInfo|null);
+
+ /** FileDescriptorProto syntax. */
+ public syntax: string;
+
+ /** FileDescriptorProto edition. */
+ public edition: string;
+
+ /**
+ * Creates a new FileDescriptorProto instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns FileDescriptorProto instance
+ */
+ public static create(properties?: google.protobuf.IFileDescriptorProto): google.protobuf.FileDescriptorProto;
+
+ /**
+ * Encodes the specified FileDescriptorProto message. Does not implicitly {@link google.protobuf.FileDescriptorProto.verify|verify} messages.
+ * @param message FileDescriptorProto message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.IFileDescriptorProto, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified FileDescriptorProto message, length delimited. Does not implicitly {@link google.protobuf.FileDescriptorProto.verify|verify} messages.
+ * @param message FileDescriptorProto message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.IFileDescriptorProto, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a FileDescriptorProto message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns FileDescriptorProto
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.FileDescriptorProto;
+
+ /**
+ * Decodes a FileDescriptorProto message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns FileDescriptorProto
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.FileDescriptorProto;
+
+ /**
+ * Verifies a FileDescriptorProto message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a FileDescriptorProto message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns FileDescriptorProto
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.FileDescriptorProto;
+
+ /**
+ * Creates a plain object from a FileDescriptorProto message. Also converts values to other types if specified.
+ * @param message FileDescriptorProto
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.FileDescriptorProto, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this FileDescriptorProto to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for FileDescriptorProto
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a DescriptorProto. */
+ interface IDescriptorProto {
+
+ /** DescriptorProto name */
+ name?: (string|null);
+
+ /** DescriptorProto field */
+ field?: (google.protobuf.IFieldDescriptorProto[]|null);
+
+ /** DescriptorProto extension */
+ extension?: (google.protobuf.IFieldDescriptorProto[]|null);
+
+ /** DescriptorProto nestedType */
+ nestedType?: (google.protobuf.IDescriptorProto[]|null);
+
+ /** DescriptorProto enumType */
+ enumType?: (google.protobuf.IEnumDescriptorProto[]|null);
+
+ /** DescriptorProto extensionRange */
+ extensionRange?: (google.protobuf.DescriptorProto.IExtensionRange[]|null);
+
+ /** DescriptorProto oneofDecl */
+ oneofDecl?: (google.protobuf.IOneofDescriptorProto[]|null);
+
+ /** DescriptorProto options */
+ options?: (google.protobuf.IMessageOptions|null);
+
+ /** DescriptorProto reservedRange */
+ reservedRange?: (google.protobuf.DescriptorProto.IReservedRange[]|null);
+
+ /** DescriptorProto reservedName */
+ reservedName?: (string[]|null);
+ }
+
+ /** Represents a DescriptorProto. */
+ class DescriptorProto implements IDescriptorProto {
+
+ /**
+ * Constructs a new DescriptorProto.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.IDescriptorProto);
+
+ /** DescriptorProto name. */
+ public name: string;
+
+ /** DescriptorProto field. */
+ public field: google.protobuf.IFieldDescriptorProto[];
+
+ /** DescriptorProto extension. */
+ public extension: google.protobuf.IFieldDescriptorProto[];
+
+ /** DescriptorProto nestedType. */
+ public nestedType: google.protobuf.IDescriptorProto[];
+
+ /** DescriptorProto enumType. */
+ public enumType: google.protobuf.IEnumDescriptorProto[];
+
+ /** DescriptorProto extensionRange. */
+ public extensionRange: google.protobuf.DescriptorProto.IExtensionRange[];
+
+ /** DescriptorProto oneofDecl. */
+ public oneofDecl: google.protobuf.IOneofDescriptorProto[];
+
+ /** DescriptorProto options. */
+ public options?: (google.protobuf.IMessageOptions|null);
+
+ /** DescriptorProto reservedRange. */
+ public reservedRange: google.protobuf.DescriptorProto.IReservedRange[];
+
+ /** DescriptorProto reservedName. */
+ public reservedName: string[];
+
+ /**
+ * Creates a new DescriptorProto instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns DescriptorProto instance
+ */
+ public static create(properties?: google.protobuf.IDescriptorProto): google.protobuf.DescriptorProto;
+
+ /**
+ * Encodes the specified DescriptorProto message. Does not implicitly {@link google.protobuf.DescriptorProto.verify|verify} messages.
+ * @param message DescriptorProto message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.IDescriptorProto, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified DescriptorProto message, length delimited. Does not implicitly {@link google.protobuf.DescriptorProto.verify|verify} messages.
+ * @param message DescriptorProto message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.IDescriptorProto, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a DescriptorProto message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns DescriptorProto
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.DescriptorProto;
+
+ /**
+ * Decodes a DescriptorProto message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns DescriptorProto
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.DescriptorProto;
+
+ /**
+ * Verifies a DescriptorProto message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a DescriptorProto message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns DescriptorProto
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.DescriptorProto;
+
+ /**
+ * Creates a plain object from a DescriptorProto message. Also converts values to other types if specified.
+ * @param message DescriptorProto
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.DescriptorProto, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this DescriptorProto to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for DescriptorProto
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace DescriptorProto {
+
+ /** Properties of an ExtensionRange. */
+ interface IExtensionRange {
+
+ /** ExtensionRange start */
+ start?: (number|null);
+
+ /** ExtensionRange end */
+ end?: (number|null);
+
+ /** ExtensionRange options */
+ options?: (google.protobuf.IExtensionRangeOptions|null);
+ }
+
+ /** Represents an ExtensionRange. */
+ class ExtensionRange implements IExtensionRange {
+
+ /**
+ * Constructs a new ExtensionRange.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.DescriptorProto.IExtensionRange);
+
+ /** ExtensionRange start. */
+ public start: number;
+
+ /** ExtensionRange end. */
+ public end: number;
+
+ /** ExtensionRange options. */
+ public options?: (google.protobuf.IExtensionRangeOptions|null);
+
+ /**
+ * Creates a new ExtensionRange instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ExtensionRange instance
+ */
+ public static create(properties?: google.protobuf.DescriptorProto.IExtensionRange): google.protobuf.DescriptorProto.ExtensionRange;
+
+ /**
+ * Encodes the specified ExtensionRange message. Does not implicitly {@link google.protobuf.DescriptorProto.ExtensionRange.verify|verify} messages.
+ * @param message ExtensionRange message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.DescriptorProto.IExtensionRange, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ExtensionRange message, length delimited. Does not implicitly {@link google.protobuf.DescriptorProto.ExtensionRange.verify|verify} messages.
+ * @param message ExtensionRange message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.DescriptorProto.IExtensionRange, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an ExtensionRange message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ExtensionRange
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.DescriptorProto.ExtensionRange;
+
+ /**
+ * Decodes an ExtensionRange message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ExtensionRange
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.DescriptorProto.ExtensionRange;
+
+ /**
+ * Verifies an ExtensionRange message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates an ExtensionRange message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ExtensionRange
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.DescriptorProto.ExtensionRange;
+
+ /**
+ * Creates a plain object from an ExtensionRange message. Also converts values to other types if specified.
+ * @param message ExtensionRange
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.DescriptorProto.ExtensionRange, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ExtensionRange to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ExtensionRange
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ReservedRange. */
+ interface IReservedRange {
+
+ /** ReservedRange start */
+ start?: (number|null);
+
+ /** ReservedRange end */
+ end?: (number|null);
+ }
+
+ /** Represents a ReservedRange. */
+ class ReservedRange implements IReservedRange {
+
+ /**
+ * Constructs a new ReservedRange.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.DescriptorProto.IReservedRange);
+
+ /** ReservedRange start. */
+ public start: number;
+
+ /** ReservedRange end. */
+ public end: number;
+
+ /**
+ * Creates a new ReservedRange instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ReservedRange instance
+ */
+ public static create(properties?: google.protobuf.DescriptorProto.IReservedRange): google.protobuf.DescriptorProto.ReservedRange;
+
+ /**
+ * Encodes the specified ReservedRange message. Does not implicitly {@link google.protobuf.DescriptorProto.ReservedRange.verify|verify} messages.
+ * @param message ReservedRange message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.DescriptorProto.IReservedRange, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ReservedRange message, length delimited. Does not implicitly {@link google.protobuf.DescriptorProto.ReservedRange.verify|verify} messages.
+ * @param message ReservedRange message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.DescriptorProto.IReservedRange, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ReservedRange message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ReservedRange
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.DescriptorProto.ReservedRange;
+
+ /**
+ * Decodes a ReservedRange message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ReservedRange
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.DescriptorProto.ReservedRange;
+
+ /**
+ * Verifies a ReservedRange message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ReservedRange message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ReservedRange
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.DescriptorProto.ReservedRange;
+
+ /**
+ * Creates a plain object from a ReservedRange message. Also converts values to other types if specified.
+ * @param message ReservedRange
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.DescriptorProto.ReservedRange, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ReservedRange to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ReservedRange
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+ }
+
+ /** Properties of an ExtensionRangeOptions. */
+ interface IExtensionRangeOptions {
+
+ /** ExtensionRangeOptions uninterpretedOption */
+ uninterpretedOption?: (google.protobuf.IUninterpretedOption[]|null);
+ }
+
+ /** Represents an ExtensionRangeOptions. */
+ class ExtensionRangeOptions implements IExtensionRangeOptions {
+
+ /**
+ * Constructs a new ExtensionRangeOptions.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.IExtensionRangeOptions);
+
+ /** ExtensionRangeOptions uninterpretedOption. */
+ public uninterpretedOption: google.protobuf.IUninterpretedOption[];
+
+ /**
+ * Creates a new ExtensionRangeOptions instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ExtensionRangeOptions instance
+ */
+ public static create(properties?: google.protobuf.IExtensionRangeOptions): google.protobuf.ExtensionRangeOptions;
+
+ /**
+ * Encodes the specified ExtensionRangeOptions message. Does not implicitly {@link google.protobuf.ExtensionRangeOptions.verify|verify} messages.
+ * @param message ExtensionRangeOptions message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.IExtensionRangeOptions, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ExtensionRangeOptions message, length delimited. Does not implicitly {@link google.protobuf.ExtensionRangeOptions.verify|verify} messages.
+ * @param message ExtensionRangeOptions message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.IExtensionRangeOptions, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an ExtensionRangeOptions message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ExtensionRangeOptions
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.ExtensionRangeOptions;
+
+ /**
+ * Decodes an ExtensionRangeOptions message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ExtensionRangeOptions
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.ExtensionRangeOptions;
+
+ /**
+ * Verifies an ExtensionRangeOptions message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates an ExtensionRangeOptions message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ExtensionRangeOptions
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.ExtensionRangeOptions;
+
+ /**
+ * Creates a plain object from an ExtensionRangeOptions message. Also converts values to other types if specified.
+ * @param message ExtensionRangeOptions
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.ExtensionRangeOptions, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ExtensionRangeOptions to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ExtensionRangeOptions
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a FieldDescriptorProto. */
+ interface IFieldDescriptorProto {
+
+ /** FieldDescriptorProto name */
+ name?: (string|null);
+
+ /** FieldDescriptorProto number */
+ number?: (number|null);
+
+ /** FieldDescriptorProto label */
+ label?: (google.protobuf.FieldDescriptorProto.Label|keyof typeof google.protobuf.FieldDescriptorProto.Label|null);
+
+ /** FieldDescriptorProto type */
+ type?: (google.protobuf.FieldDescriptorProto.Type|keyof typeof google.protobuf.FieldDescriptorProto.Type|null);
+
+ /** FieldDescriptorProto typeName */
+ typeName?: (string|null);
+
+ /** FieldDescriptorProto extendee */
+ extendee?: (string|null);
+
+ /** FieldDescriptorProto defaultValue */
+ defaultValue?: (string|null);
+
+ /** FieldDescriptorProto oneofIndex */
+ oneofIndex?: (number|null);
+
+ /** FieldDescriptorProto jsonName */
+ jsonName?: (string|null);
+
+ /** FieldDescriptorProto options */
+ options?: (google.protobuf.IFieldOptions|null);
+
+ /** FieldDescriptorProto proto3Optional */
+ proto3Optional?: (boolean|null);
+ }
+
+ /** Represents a FieldDescriptorProto. */
+ class FieldDescriptorProto implements IFieldDescriptorProto {
+
+ /**
+ * Constructs a new FieldDescriptorProto.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.IFieldDescriptorProto);
+
+ /** FieldDescriptorProto name. */
+ public name: string;
+
+ /** FieldDescriptorProto number. */
+ public number: number;
+
+ /** FieldDescriptorProto label. */
+ public label: (google.protobuf.FieldDescriptorProto.Label|keyof typeof google.protobuf.FieldDescriptorProto.Label);
+
+ /** FieldDescriptorProto type. */
+ public type: (google.protobuf.FieldDescriptorProto.Type|keyof typeof google.protobuf.FieldDescriptorProto.Type);
+
+ /** FieldDescriptorProto typeName. */
+ public typeName: string;
+
+ /** FieldDescriptorProto extendee. */
+ public extendee: string;
+
+ /** FieldDescriptorProto defaultValue. */
+ public defaultValue: string;
+
+ /** FieldDescriptorProto oneofIndex. */
+ public oneofIndex: number;
+
+ /** FieldDescriptorProto jsonName. */
+ public jsonName: string;
+
+ /** FieldDescriptorProto options. */
+ public options?: (google.protobuf.IFieldOptions|null);
+
+ /** FieldDescriptorProto proto3Optional. */
+ public proto3Optional: boolean;
+
+ /**
+ * Creates a new FieldDescriptorProto instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns FieldDescriptorProto instance
+ */
+ public static create(properties?: google.protobuf.IFieldDescriptorProto): google.protobuf.FieldDescriptorProto;
+
+ /**
+ * Encodes the specified FieldDescriptorProto message. Does not implicitly {@link google.protobuf.FieldDescriptorProto.verify|verify} messages.
+ * @param message FieldDescriptorProto message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.IFieldDescriptorProto, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified FieldDescriptorProto message, length delimited. Does not implicitly {@link google.protobuf.FieldDescriptorProto.verify|verify} messages.
+ * @param message FieldDescriptorProto message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.IFieldDescriptorProto, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a FieldDescriptorProto message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns FieldDescriptorProto
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.FieldDescriptorProto;
+
+ /**
+ * Decodes a FieldDescriptorProto message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns FieldDescriptorProto
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.FieldDescriptorProto;
+
+ /**
+ * Verifies a FieldDescriptorProto message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a FieldDescriptorProto message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns FieldDescriptorProto
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.FieldDescriptorProto;
+
+ /**
+ * Creates a plain object from a FieldDescriptorProto message. Also converts values to other types if specified.
+ * @param message FieldDescriptorProto
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.FieldDescriptorProto, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this FieldDescriptorProto to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for FieldDescriptorProto
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace FieldDescriptorProto {
+
+ /** Type enum. */
+ enum Type {
+ TYPE_DOUBLE = 1,
+ TYPE_FLOAT = 2,
+ TYPE_INT64 = 3,
+ TYPE_UINT64 = 4,
+ TYPE_INT32 = 5,
+ TYPE_FIXED64 = 6,
+ TYPE_FIXED32 = 7,
+ TYPE_BOOL = 8,
+ TYPE_STRING = 9,
+ TYPE_GROUP = 10,
+ TYPE_MESSAGE = 11,
+ TYPE_BYTES = 12,
+ TYPE_UINT32 = 13,
+ TYPE_ENUM = 14,
+ TYPE_SFIXED32 = 15,
+ TYPE_SFIXED64 = 16,
+ TYPE_SINT32 = 17,
+ TYPE_SINT64 = 18
+ }
+
+ /** Label enum. */
+ enum Label {
+ LABEL_OPTIONAL = 1,
+ LABEL_REQUIRED = 2,
+ LABEL_REPEATED = 3
+ }
+ }
+
+ /** Properties of an OneofDescriptorProto. */
+ interface IOneofDescriptorProto {
+
+ /** OneofDescriptorProto name */
+ name?: (string|null);
+
+ /** OneofDescriptorProto options */
+ options?: (google.protobuf.IOneofOptions|null);
+ }
+
+ /** Represents an OneofDescriptorProto. */
+ class OneofDescriptorProto implements IOneofDescriptorProto {
+
+ /**
+ * Constructs a new OneofDescriptorProto.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.IOneofDescriptorProto);
+
+ /** OneofDescriptorProto name. */
+ public name: string;
+
+ /** OneofDescriptorProto options. */
+ public options?: (google.protobuf.IOneofOptions|null);
+
+ /**
+ * Creates a new OneofDescriptorProto instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns OneofDescriptorProto instance
+ */
+ public static create(properties?: google.protobuf.IOneofDescriptorProto): google.protobuf.OneofDescriptorProto;
+
+ /**
+ * Encodes the specified OneofDescriptorProto message. Does not implicitly {@link google.protobuf.OneofDescriptorProto.verify|verify} messages.
+ * @param message OneofDescriptorProto message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.IOneofDescriptorProto, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified OneofDescriptorProto message, length delimited. Does not implicitly {@link google.protobuf.OneofDescriptorProto.verify|verify} messages.
+ * @param message OneofDescriptorProto message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.IOneofDescriptorProto, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an OneofDescriptorProto message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns OneofDescriptorProto
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.OneofDescriptorProto;
+
+ /**
+ * Decodes an OneofDescriptorProto message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns OneofDescriptorProto
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.OneofDescriptorProto;
+
+ /**
+ * Verifies an OneofDescriptorProto message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates an OneofDescriptorProto message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns OneofDescriptorProto
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.OneofDescriptorProto;
+
+ /**
+ * Creates a plain object from an OneofDescriptorProto message. Also converts values to other types if specified.
+ * @param message OneofDescriptorProto
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.OneofDescriptorProto, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this OneofDescriptorProto to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for OneofDescriptorProto
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an EnumDescriptorProto. */
+ interface IEnumDescriptorProto {
+
+ /** EnumDescriptorProto name */
+ name?: (string|null);
+
+ /** EnumDescriptorProto value */
+ value?: (google.protobuf.IEnumValueDescriptorProto[]|null);
+
+ /** EnumDescriptorProto options */
+ options?: (google.protobuf.IEnumOptions|null);
+
+ /** EnumDescriptorProto reservedRange */
+ reservedRange?: (google.protobuf.EnumDescriptorProto.IEnumReservedRange[]|null);
+
+ /** EnumDescriptorProto reservedName */
+ reservedName?: (string[]|null);
+ }
+
+ /** Represents an EnumDescriptorProto. */
+ class EnumDescriptorProto implements IEnumDescriptorProto {
+
+ /**
+ * Constructs a new EnumDescriptorProto.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.IEnumDescriptorProto);
+
+ /** EnumDescriptorProto name. */
+ public name: string;
+
+ /** EnumDescriptorProto value. */
+ public value: google.protobuf.IEnumValueDescriptorProto[];
+
+ /** EnumDescriptorProto options. */
+ public options?: (google.protobuf.IEnumOptions|null);
+
+ /** EnumDescriptorProto reservedRange. */
+ public reservedRange: google.protobuf.EnumDescriptorProto.IEnumReservedRange[];
+
+ /** EnumDescriptorProto reservedName. */
+ public reservedName: string[];
+
+ /**
+ * Creates a new EnumDescriptorProto instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns EnumDescriptorProto instance
+ */
+ public static create(properties?: google.protobuf.IEnumDescriptorProto): google.protobuf.EnumDescriptorProto;
+
+ /**
+ * Encodes the specified EnumDescriptorProto message. Does not implicitly {@link google.protobuf.EnumDescriptorProto.verify|verify} messages.
+ * @param message EnumDescriptorProto message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.IEnumDescriptorProto, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified EnumDescriptorProto message, length delimited. Does not implicitly {@link google.protobuf.EnumDescriptorProto.verify|verify} messages.
+ * @param message EnumDescriptorProto message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.IEnumDescriptorProto, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an EnumDescriptorProto message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns EnumDescriptorProto
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.EnumDescriptorProto;
+
+ /**
+ * Decodes an EnumDescriptorProto message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns EnumDescriptorProto
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.EnumDescriptorProto;
+
+ /**
+ * Verifies an EnumDescriptorProto message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates an EnumDescriptorProto message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns EnumDescriptorProto
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.EnumDescriptorProto;
+
+ /**
+ * Creates a plain object from an EnumDescriptorProto message. Also converts values to other types if specified.
+ * @param message EnumDescriptorProto
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.EnumDescriptorProto, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this EnumDescriptorProto to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for EnumDescriptorProto
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace EnumDescriptorProto {
+
+ /** Properties of an EnumReservedRange. */
+ interface IEnumReservedRange {
+
+ /** EnumReservedRange start */
+ start?: (number|null);
+
+ /** EnumReservedRange end */
+ end?: (number|null);
+ }
+
+ /** Represents an EnumReservedRange. */
+ class EnumReservedRange implements IEnumReservedRange {
+
+ /**
+ * Constructs a new EnumReservedRange.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.EnumDescriptorProto.IEnumReservedRange);
+
+ /** EnumReservedRange start. */
+ public start: number;
+
+ /** EnumReservedRange end. */
+ public end: number;
+
+ /**
+ * Creates a new EnumReservedRange instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns EnumReservedRange instance
+ */
+ public static create(properties?: google.protobuf.EnumDescriptorProto.IEnumReservedRange): google.protobuf.EnumDescriptorProto.EnumReservedRange;
+
+ /**
+ * Encodes the specified EnumReservedRange message. Does not implicitly {@link google.protobuf.EnumDescriptorProto.EnumReservedRange.verify|verify} messages.
+ * @param message EnumReservedRange message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.EnumDescriptorProto.IEnumReservedRange, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified EnumReservedRange message, length delimited. Does not implicitly {@link google.protobuf.EnumDescriptorProto.EnumReservedRange.verify|verify} messages.
+ * @param message EnumReservedRange message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.EnumDescriptorProto.IEnumReservedRange, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an EnumReservedRange message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns EnumReservedRange
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.EnumDescriptorProto.EnumReservedRange;
+
+ /**
+ * Decodes an EnumReservedRange message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns EnumReservedRange
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.EnumDescriptorProto.EnumReservedRange;
+
+ /**
+ * Verifies an EnumReservedRange message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates an EnumReservedRange message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns EnumReservedRange
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.EnumDescriptorProto.EnumReservedRange;
+
+ /**
+ * Creates a plain object from an EnumReservedRange message. Also converts values to other types if specified.
+ * @param message EnumReservedRange
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.EnumDescriptorProto.EnumReservedRange, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this EnumReservedRange to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for EnumReservedRange
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+ }
+
+ /** Properties of an EnumValueDescriptorProto. */
+ interface IEnumValueDescriptorProto {
+
+ /** EnumValueDescriptorProto name */
+ name?: (string|null);
+
+ /** EnumValueDescriptorProto number */
+ number?: (number|null);
+
+ /** EnumValueDescriptorProto options */
+ options?: (google.protobuf.IEnumValueOptions|null);
+ }
+
+ /** Represents an EnumValueDescriptorProto. */
+ class EnumValueDescriptorProto implements IEnumValueDescriptorProto {
+
+ /**
+ * Constructs a new EnumValueDescriptorProto.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.IEnumValueDescriptorProto);
+
+ /** EnumValueDescriptorProto name. */
+ public name: string;
+
+ /** EnumValueDescriptorProto number. */
+ public number: number;
+
+ /** EnumValueDescriptorProto options. */
+ public options?: (google.protobuf.IEnumValueOptions|null);
+
+ /**
+ * Creates a new EnumValueDescriptorProto instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns EnumValueDescriptorProto instance
+ */
+ public static create(properties?: google.protobuf.IEnumValueDescriptorProto): google.protobuf.EnumValueDescriptorProto;
+
+ /**
+ * Encodes the specified EnumValueDescriptorProto message. Does not implicitly {@link google.protobuf.EnumValueDescriptorProto.verify|verify} messages.
+ * @param message EnumValueDescriptorProto message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.IEnumValueDescriptorProto, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified EnumValueDescriptorProto message, length delimited. Does not implicitly {@link google.protobuf.EnumValueDescriptorProto.verify|verify} messages.
+ * @param message EnumValueDescriptorProto message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.IEnumValueDescriptorProto, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an EnumValueDescriptorProto message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns EnumValueDescriptorProto
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.EnumValueDescriptorProto;
+
+ /**
+ * Decodes an EnumValueDescriptorProto message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns EnumValueDescriptorProto
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.EnumValueDescriptorProto;
+
+ /**
+ * Verifies an EnumValueDescriptorProto message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates an EnumValueDescriptorProto message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns EnumValueDescriptorProto
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.EnumValueDescriptorProto;
+
+ /**
+ * Creates a plain object from an EnumValueDescriptorProto message. Also converts values to other types if specified.
+ * @param message EnumValueDescriptorProto
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.EnumValueDescriptorProto, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this EnumValueDescriptorProto to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for EnumValueDescriptorProto
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ServiceDescriptorProto. */
+ interface IServiceDescriptorProto {
+
+ /** ServiceDescriptorProto name */
+ name?: (string|null);
+
+ /** ServiceDescriptorProto method */
+ method?: (google.protobuf.IMethodDescriptorProto[]|null);
+
+ /** ServiceDescriptorProto options */
+ options?: (google.protobuf.IServiceOptions|null);
+ }
+
+ /** Represents a ServiceDescriptorProto. */
+ class ServiceDescriptorProto implements IServiceDescriptorProto {
+
+ /**
+ * Constructs a new ServiceDescriptorProto.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.IServiceDescriptorProto);
+
+ /** ServiceDescriptorProto name. */
+ public name: string;
+
+ /** ServiceDescriptorProto method. */
+ public method: google.protobuf.IMethodDescriptorProto[];
+
+ /** ServiceDescriptorProto options. */
+ public options?: (google.protobuf.IServiceOptions|null);
+
+ /**
+ * Creates a new ServiceDescriptorProto instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ServiceDescriptorProto instance
+ */
+ public static create(properties?: google.protobuf.IServiceDescriptorProto): google.protobuf.ServiceDescriptorProto;
+
+ /**
+ * Encodes the specified ServiceDescriptorProto message. Does not implicitly {@link google.protobuf.ServiceDescriptorProto.verify|verify} messages.
+ * @param message ServiceDescriptorProto message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.IServiceDescriptorProto, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ServiceDescriptorProto message, length delimited. Does not implicitly {@link google.protobuf.ServiceDescriptorProto.verify|verify} messages.
+ * @param message ServiceDescriptorProto message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.IServiceDescriptorProto, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ServiceDescriptorProto message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ServiceDescriptorProto
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.ServiceDescriptorProto;
+
+ /**
+ * Decodes a ServiceDescriptorProto message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ServiceDescriptorProto
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.ServiceDescriptorProto;
+
+ /**
+ * Verifies a ServiceDescriptorProto message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ServiceDescriptorProto message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ServiceDescriptorProto
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.ServiceDescriptorProto;
+
+ /**
+ * Creates a plain object from a ServiceDescriptorProto message. Also converts values to other types if specified.
+ * @param message ServiceDescriptorProto
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.ServiceDescriptorProto, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ServiceDescriptorProto to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ServiceDescriptorProto
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a MethodDescriptorProto. */
+ interface IMethodDescriptorProto {
+
+ /** MethodDescriptorProto name */
+ name?: (string|null);
+
+ /** MethodDescriptorProto inputType */
+ inputType?: (string|null);
+
+ /** MethodDescriptorProto outputType */
+ outputType?: (string|null);
+
+ /** MethodDescriptorProto options */
+ options?: (google.protobuf.IMethodOptions|null);
+
+ /** MethodDescriptorProto clientStreaming */
+ clientStreaming?: (boolean|null);
+
+ /** MethodDescriptorProto serverStreaming */
+ serverStreaming?: (boolean|null);
+ }
+
+ /** Represents a MethodDescriptorProto. */
+ class MethodDescriptorProto implements IMethodDescriptorProto {
+
+ /**
+ * Constructs a new MethodDescriptorProto.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.IMethodDescriptorProto);
+
+ /** MethodDescriptorProto name. */
+ public name: string;
+
+ /** MethodDescriptorProto inputType. */
+ public inputType: string;
+
+ /** MethodDescriptorProto outputType. */
+ public outputType: string;
+
+ /** MethodDescriptorProto options. */
+ public options?: (google.protobuf.IMethodOptions|null);
+
+ /** MethodDescriptorProto clientStreaming. */
+ public clientStreaming: boolean;
+
+ /** MethodDescriptorProto serverStreaming. */
+ public serverStreaming: boolean;
+
+ /**
+ * Creates a new MethodDescriptorProto instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns MethodDescriptorProto instance
+ */
+ public static create(properties?: google.protobuf.IMethodDescriptorProto): google.protobuf.MethodDescriptorProto;
+
+ /**
+ * Encodes the specified MethodDescriptorProto message. Does not implicitly {@link google.protobuf.MethodDescriptorProto.verify|verify} messages.
+ * @param message MethodDescriptorProto message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.IMethodDescriptorProto, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified MethodDescriptorProto message, length delimited. Does not implicitly {@link google.protobuf.MethodDescriptorProto.verify|verify} messages.
+ * @param message MethodDescriptorProto message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.IMethodDescriptorProto, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a MethodDescriptorProto message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns MethodDescriptorProto
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.MethodDescriptorProto;
+
+ /**
+ * Decodes a MethodDescriptorProto message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns MethodDescriptorProto
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.MethodDescriptorProto;
+
+ /**
+ * Verifies a MethodDescriptorProto message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a MethodDescriptorProto message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns MethodDescriptorProto
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.MethodDescriptorProto;
+
+ /**
+ * Creates a plain object from a MethodDescriptorProto message. Also converts values to other types if specified.
+ * @param message MethodDescriptorProto
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.MethodDescriptorProto, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this MethodDescriptorProto to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for MethodDescriptorProto
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a FileOptions. */
+ interface IFileOptions {
+
+ /** FileOptions javaPackage */
+ javaPackage?: (string|null);
+
+ /** FileOptions javaOuterClassname */
+ javaOuterClassname?: (string|null);
+
+ /** FileOptions javaMultipleFiles */
+ javaMultipleFiles?: (boolean|null);
+
+ /** FileOptions javaGenerateEqualsAndHash */
+ javaGenerateEqualsAndHash?: (boolean|null);
+
+ /** FileOptions javaStringCheckUtf8 */
+ javaStringCheckUtf8?: (boolean|null);
+
+ /** FileOptions optimizeFor */
+ optimizeFor?: (google.protobuf.FileOptions.OptimizeMode|keyof typeof google.protobuf.FileOptions.OptimizeMode|null);
+
+ /** FileOptions goPackage */
+ goPackage?: (string|null);
+
+ /** FileOptions ccGenericServices */
+ ccGenericServices?: (boolean|null);
+
+ /** FileOptions javaGenericServices */
+ javaGenericServices?: (boolean|null);
+
+ /** FileOptions pyGenericServices */
+ pyGenericServices?: (boolean|null);
+
+ /** FileOptions phpGenericServices */
+ phpGenericServices?: (boolean|null);
+
+ /** FileOptions deprecated */
+ deprecated?: (boolean|null);
+
+ /** FileOptions ccEnableArenas */
+ ccEnableArenas?: (boolean|null);
+
+ /** FileOptions objcClassPrefix */
+ objcClassPrefix?: (string|null);
+
+ /** FileOptions csharpNamespace */
+ csharpNamespace?: (string|null);
+
+ /** FileOptions swiftPrefix */
+ swiftPrefix?: (string|null);
+
+ /** FileOptions phpClassPrefix */
+ phpClassPrefix?: (string|null);
+
+ /** FileOptions phpNamespace */
+ phpNamespace?: (string|null);
+
+ /** FileOptions phpMetadataNamespace */
+ phpMetadataNamespace?: (string|null);
+
+ /** FileOptions rubyPackage */
+ rubyPackage?: (string|null);
+
+ /** FileOptions uninterpretedOption */
+ uninterpretedOption?: (google.protobuf.IUninterpretedOption[]|null);
+
+ /** FileOptions .google.api.resourceDefinition */
+ ".google.api.resourceDefinition"?: (google.api.IResourceDescriptor[]|null);
+ }
+
+ /** Represents a FileOptions. */
+ class FileOptions implements IFileOptions {
+
+ /**
+ * Constructs a new FileOptions.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.IFileOptions);
+
+ /** FileOptions javaPackage. */
+ public javaPackage: string;
+
+ /** FileOptions javaOuterClassname. */
+ public javaOuterClassname: string;
+
+ /** FileOptions javaMultipleFiles. */
+ public javaMultipleFiles: boolean;
+
+ /** FileOptions javaGenerateEqualsAndHash. */
+ public javaGenerateEqualsAndHash: boolean;
+
+ /** FileOptions javaStringCheckUtf8. */
+ public javaStringCheckUtf8: boolean;
+
+ /** FileOptions optimizeFor. */
+ public optimizeFor: (google.protobuf.FileOptions.OptimizeMode|keyof typeof google.protobuf.FileOptions.OptimizeMode);
+
+ /** FileOptions goPackage. */
+ public goPackage: string;
+
+ /** FileOptions ccGenericServices. */
+ public ccGenericServices: boolean;
+
+ /** FileOptions javaGenericServices. */
+ public javaGenericServices: boolean;
+
+ /** FileOptions pyGenericServices. */
+ public pyGenericServices: boolean;
+
+ /** FileOptions phpGenericServices. */
+ public phpGenericServices: boolean;
+
+ /** FileOptions deprecated. */
+ public deprecated: boolean;
+
+ /** FileOptions ccEnableArenas. */
+ public ccEnableArenas: boolean;
+
+ /** FileOptions objcClassPrefix. */
+ public objcClassPrefix: string;
+
+ /** FileOptions csharpNamespace. */
+ public csharpNamespace: string;
+
+ /** FileOptions swiftPrefix. */
+ public swiftPrefix: string;
+
+ /** FileOptions phpClassPrefix. */
+ public phpClassPrefix: string;
+
+ /** FileOptions phpNamespace. */
+ public phpNamespace: string;
+
+ /** FileOptions phpMetadataNamespace. */
+ public phpMetadataNamespace: string;
+
+ /** FileOptions rubyPackage. */
+ public rubyPackage: string;
+
+ /** FileOptions uninterpretedOption. */
+ public uninterpretedOption: google.protobuf.IUninterpretedOption[];
+
+ /**
+ * Creates a new FileOptions instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns FileOptions instance
+ */
+ public static create(properties?: google.protobuf.IFileOptions): google.protobuf.FileOptions;
+
+ /**
+ * Encodes the specified FileOptions message. Does not implicitly {@link google.protobuf.FileOptions.verify|verify} messages.
+ * @param message FileOptions message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.IFileOptions, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified FileOptions message, length delimited. Does not implicitly {@link google.protobuf.FileOptions.verify|verify} messages.
+ * @param message FileOptions message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.IFileOptions, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a FileOptions message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns FileOptions
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.FileOptions;
+
+ /**
+ * Decodes a FileOptions message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns FileOptions
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.FileOptions;
+
+ /**
+ * Verifies a FileOptions message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a FileOptions message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns FileOptions
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.FileOptions;
+
+ /**
+ * Creates a plain object from a FileOptions message. Also converts values to other types if specified.
+ * @param message FileOptions
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.FileOptions, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this FileOptions to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for FileOptions
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace FileOptions {
+
+ /** OptimizeMode enum. */
+ enum OptimizeMode {
+ SPEED = 1,
+ CODE_SIZE = 2,
+ LITE_RUNTIME = 3
+ }
+ }
+
+ /** Properties of a MessageOptions. */
+ interface IMessageOptions {
+
+ /** MessageOptions messageSetWireFormat */
+ messageSetWireFormat?: (boolean|null);
+
+ /** MessageOptions noStandardDescriptorAccessor */
+ noStandardDescriptorAccessor?: (boolean|null);
+
+ /** MessageOptions deprecated */
+ deprecated?: (boolean|null);
+
+ /** MessageOptions mapEntry */
+ mapEntry?: (boolean|null);
+
+ /** MessageOptions uninterpretedOption */
+ uninterpretedOption?: (google.protobuf.IUninterpretedOption[]|null);
+
+ /** MessageOptions .google.api.resource */
+ ".google.api.resource"?: (google.api.IResourceDescriptor|null);
+ }
+
+ /** Represents a MessageOptions. */
+ class MessageOptions implements IMessageOptions {
+
+ /**
+ * Constructs a new MessageOptions.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.IMessageOptions);
+
+ /** MessageOptions messageSetWireFormat. */
+ public messageSetWireFormat: boolean;
+
+ /** MessageOptions noStandardDescriptorAccessor. */
+ public noStandardDescriptorAccessor: boolean;
+
+ /** MessageOptions deprecated. */
+ public deprecated: boolean;
+
+ /** MessageOptions mapEntry. */
+ public mapEntry: boolean;
+
+ /** MessageOptions uninterpretedOption. */
+ public uninterpretedOption: google.protobuf.IUninterpretedOption[];
+
+ /**
+ * Creates a new MessageOptions instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns MessageOptions instance
+ */
+ public static create(properties?: google.protobuf.IMessageOptions): google.protobuf.MessageOptions;
+
+ /**
+ * Encodes the specified MessageOptions message. Does not implicitly {@link google.protobuf.MessageOptions.verify|verify} messages.
+ * @param message MessageOptions message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.IMessageOptions, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified MessageOptions message, length delimited. Does not implicitly {@link google.protobuf.MessageOptions.verify|verify} messages.
+ * @param message MessageOptions message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.IMessageOptions, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a MessageOptions message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns MessageOptions
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.MessageOptions;
+
+ /**
+ * Decodes a MessageOptions message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns MessageOptions
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.MessageOptions;
+
+ /**
+ * Verifies a MessageOptions message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a MessageOptions message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns MessageOptions
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.MessageOptions;
+
+ /**
+ * Creates a plain object from a MessageOptions message. Also converts values to other types if specified.
+ * @param message MessageOptions
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.MessageOptions, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this MessageOptions to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for MessageOptions
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a FieldOptions. */
+ interface IFieldOptions {
+
+ /** FieldOptions ctype */
+ ctype?: (google.protobuf.FieldOptions.CType|keyof typeof google.protobuf.FieldOptions.CType|null);
+
+ /** FieldOptions packed */
+ packed?: (boolean|null);
+
+ /** FieldOptions jstype */
+ jstype?: (google.protobuf.FieldOptions.JSType|keyof typeof google.protobuf.FieldOptions.JSType|null);
+
+ /** FieldOptions lazy */
+ lazy?: (boolean|null);
+
+ /** FieldOptions unverifiedLazy */
+ unverifiedLazy?: (boolean|null);
+
+ /** FieldOptions deprecated */
+ deprecated?: (boolean|null);
+
+ /** FieldOptions weak */
+ weak?: (boolean|null);
+
+ /** FieldOptions uninterpretedOption */
+ uninterpretedOption?: (google.protobuf.IUninterpretedOption[]|null);
+
+ /** FieldOptions .google.api.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);
+
+ /** MethodOptions .google.longrunning.operationInfo */
+ ".google.longrunning.operationInfo"?: (google.longrunning.IOperationInfo|null);
+ }
+
+ /** Represents a MethodOptions. */
+ class MethodOptions implements IMethodOptions {
+
+ /**
+ * Constructs a new MethodOptions.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.IMethodOptions);
+
+ /** MethodOptions deprecated. */
+ public deprecated: boolean;
+
+ /** MethodOptions idempotencyLevel. */
+ public idempotencyLevel: (google.protobuf.MethodOptions.IdempotencyLevel|keyof typeof google.protobuf.MethodOptions.IdempotencyLevel);
+
+ /** MethodOptions uninterpretedOption. */
+ public uninterpretedOption: google.protobuf.IUninterpretedOption[];
+
+ /**
+ * Creates a new MethodOptions instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns MethodOptions instance
+ */
+ public static create(properties?: google.protobuf.IMethodOptions): google.protobuf.MethodOptions;
+
+ /**
+ * Encodes the specified MethodOptions message. Does not implicitly {@link google.protobuf.MethodOptions.verify|verify} messages.
+ * @param message MethodOptions message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.IMethodOptions, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified MethodOptions message, length delimited. Does not implicitly {@link google.protobuf.MethodOptions.verify|verify} messages.
+ * @param message MethodOptions message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.IMethodOptions, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a MethodOptions message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns MethodOptions
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.MethodOptions;
+
+ /**
+ * Decodes a MethodOptions message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns MethodOptions
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.MethodOptions;
+
+ /**
+ * Verifies a MethodOptions message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a MethodOptions message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns MethodOptions
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.MethodOptions;
+
+ /**
+ * Creates a plain object from a MethodOptions message. Also converts values to other types if specified.
+ * @param message MethodOptions
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.MethodOptions, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this MethodOptions to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for MethodOptions
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace MethodOptions {
+
+ /** IdempotencyLevel enum. */
+ enum IdempotencyLevel {
+ IDEMPOTENCY_UNKNOWN = 0,
+ NO_SIDE_EFFECTS = 1,
+ IDEMPOTENT = 2
+ }
+ }
+
+ /** Properties of an UninterpretedOption. */
+ interface IUninterpretedOption {
+
+ /** UninterpretedOption name */
+ name?: (google.protobuf.UninterpretedOption.INamePart[]|null);
+
+ /** UninterpretedOption identifierValue */
+ identifierValue?: (string|null);
+
+ /** UninterpretedOption positiveIntValue */
+ positiveIntValue?: (number|Long|string|null);
+
+ /** UninterpretedOption negativeIntValue */
+ negativeIntValue?: (number|Long|string|null);
+
+ /** UninterpretedOption doubleValue */
+ doubleValue?: (number|null);
+
+ /** UninterpretedOption stringValue */
+ stringValue?: (Uint8Array|string|null);
+
+ /** UninterpretedOption aggregateValue */
+ aggregateValue?: (string|null);
+ }
+
+ /** Represents an UninterpretedOption. */
+ class UninterpretedOption implements IUninterpretedOption {
+
+ /**
+ * Constructs a new UninterpretedOption.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.IUninterpretedOption);
+
+ /** UninterpretedOption name. */
+ public name: google.protobuf.UninterpretedOption.INamePart[];
+
+ /** UninterpretedOption identifierValue. */
+ public identifierValue: string;
+
+ /** UninterpretedOption positiveIntValue. */
+ public positiveIntValue: (number|Long|string);
+
+ /** UninterpretedOption negativeIntValue. */
+ public negativeIntValue: (number|Long|string);
+
+ /** UninterpretedOption doubleValue. */
+ public doubleValue: number;
+
+ /** UninterpretedOption stringValue. */
+ public stringValue: (Uint8Array|string);
+
+ /** UninterpretedOption aggregateValue. */
+ public aggregateValue: string;
+
+ /**
+ * Creates a new UninterpretedOption instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns UninterpretedOption instance
+ */
+ public static create(properties?: google.protobuf.IUninterpretedOption): google.protobuf.UninterpretedOption;
+
+ /**
+ * Encodes the specified UninterpretedOption message. Does not implicitly {@link google.protobuf.UninterpretedOption.verify|verify} messages.
+ * @param message UninterpretedOption message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.IUninterpretedOption, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified UninterpretedOption message, length delimited. Does not implicitly {@link google.protobuf.UninterpretedOption.verify|verify} messages.
+ * @param message UninterpretedOption message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.IUninterpretedOption, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an UninterpretedOption message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns UninterpretedOption
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.UninterpretedOption;
+
+ /**
+ * Decodes an UninterpretedOption message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns UninterpretedOption
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.UninterpretedOption;
+
+ /**
+ * Verifies an UninterpretedOption message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates an UninterpretedOption message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns UninterpretedOption
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.UninterpretedOption;
+
+ /**
+ * Creates a plain object from an UninterpretedOption message. Also converts values to other types if specified.
+ * @param message UninterpretedOption
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.UninterpretedOption, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this UninterpretedOption to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for UninterpretedOption
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace UninterpretedOption {
+
+ /** Properties of a NamePart. */
+ interface INamePart {
+
+ /** NamePart namePart */
+ namePart: string;
+
+ /** NamePart isExtension */
+ isExtension: boolean;
+ }
+
+ /** Represents a NamePart. */
+ class NamePart implements INamePart {
+
+ /**
+ * Constructs a new NamePart.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.UninterpretedOption.INamePart);
+
+ /** NamePart namePart. */
+ public namePart: string;
+
+ /** NamePart isExtension. */
+ public isExtension: boolean;
+
+ /**
+ * Creates a new NamePart instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns NamePart instance
+ */
+ public static create(properties?: google.protobuf.UninterpretedOption.INamePart): google.protobuf.UninterpretedOption.NamePart;
+
+ /**
+ * Encodes the specified NamePart message. Does not implicitly {@link google.protobuf.UninterpretedOption.NamePart.verify|verify} messages.
+ * @param message NamePart message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.UninterpretedOption.INamePart, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified NamePart message, length delimited. Does not implicitly {@link google.protobuf.UninterpretedOption.NamePart.verify|verify} messages.
+ * @param message NamePart message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.UninterpretedOption.INamePart, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a NamePart message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns NamePart
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.UninterpretedOption.NamePart;
+
+ /**
+ * Decodes a NamePart message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns NamePart
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.UninterpretedOption.NamePart;
+
+ /**
+ * Verifies a NamePart message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a NamePart message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns NamePart
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.UninterpretedOption.NamePart;
+
+ /**
+ * Creates a plain object from a NamePart message. Also converts values to other types if specified.
+ * @param message NamePart
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.UninterpretedOption.NamePart, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this NamePart to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for NamePart
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+ }
+
+ /** Properties of a SourceCodeInfo. */
+ interface ISourceCodeInfo {
+
+ /** SourceCodeInfo location */
+ location?: (google.protobuf.SourceCodeInfo.ILocation[]|null);
+ }
+
+ /** Represents a SourceCodeInfo. */
+ class SourceCodeInfo implements ISourceCodeInfo {
+
+ /**
+ * Constructs a new SourceCodeInfo.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.ISourceCodeInfo);
+
+ /** SourceCodeInfo location. */
+ public location: google.protobuf.SourceCodeInfo.ILocation[];
+
+ /**
+ * Creates a new SourceCodeInfo instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns SourceCodeInfo instance
+ */
+ public static create(properties?: google.protobuf.ISourceCodeInfo): google.protobuf.SourceCodeInfo;
+
+ /**
+ * Encodes the specified SourceCodeInfo message. Does not implicitly {@link google.protobuf.SourceCodeInfo.verify|verify} messages.
+ * @param message SourceCodeInfo message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.ISourceCodeInfo, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified SourceCodeInfo message, length delimited. Does not implicitly {@link google.protobuf.SourceCodeInfo.verify|verify} messages.
+ * @param message SourceCodeInfo message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.ISourceCodeInfo, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a SourceCodeInfo message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns SourceCodeInfo
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.SourceCodeInfo;
+
+ /**
+ * Decodes a SourceCodeInfo message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns SourceCodeInfo
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.SourceCodeInfo;
+
+ /**
+ * Verifies a SourceCodeInfo message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a SourceCodeInfo message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns SourceCodeInfo
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.SourceCodeInfo;
+
+ /**
+ * Creates a plain object from a SourceCodeInfo message. Also converts values to other types if specified.
+ * @param message SourceCodeInfo
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.SourceCodeInfo, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this SourceCodeInfo to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for SourceCodeInfo
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace SourceCodeInfo {
+
+ /** Properties of a Location. */
+ interface ILocation {
+
+ /** Location path */
+ path?: (number[]|null);
+
+ /** Location span */
+ span?: (number[]|null);
+
+ /** Location leadingComments */
+ leadingComments?: (string|null);
+
+ /** Location trailingComments */
+ trailingComments?: (string|null);
+
+ /** Location leadingDetachedComments */
+ leadingDetachedComments?: (string[]|null);
+ }
+
+ /** Represents a Location. */
+ class Location implements ILocation {
+
+ /**
+ * Constructs a new Location.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.SourceCodeInfo.ILocation);
+
+ /** Location path. */
+ public path: number[];
+
+ /** Location span. */
+ public span: number[];
+
+ /** Location leadingComments. */
+ public leadingComments: string;
+
+ /** Location trailingComments. */
+ public trailingComments: string;
+
+ /** Location leadingDetachedComments. */
+ public leadingDetachedComments: string[];
+
+ /**
+ * Creates a new Location instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Location instance
+ */
+ public static create(properties?: google.protobuf.SourceCodeInfo.ILocation): google.protobuf.SourceCodeInfo.Location;
+
+ /**
+ * Encodes the specified Location message. Does not implicitly {@link google.protobuf.SourceCodeInfo.Location.verify|verify} messages.
+ * @param message Location message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.SourceCodeInfo.ILocation, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Location message, length delimited. Does not implicitly {@link google.protobuf.SourceCodeInfo.Location.verify|verify} messages.
+ * @param message Location message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.SourceCodeInfo.ILocation, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Location message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Location
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.SourceCodeInfo.Location;
+
+ /**
+ * Decodes a Location message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Location
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.SourceCodeInfo.Location;
+
+ /**
+ * Verifies a Location message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a Location message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Location
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.SourceCodeInfo.Location;
+
+ /**
+ * Creates a plain object from a Location message. Also converts values to other types if specified.
+ * @param message Location
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.SourceCodeInfo.Location, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Location to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Location
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+ }
+
+ /** Properties of a GeneratedCodeInfo. */
+ interface IGeneratedCodeInfo {
+
+ /** GeneratedCodeInfo annotation */
+ annotation?: (google.protobuf.GeneratedCodeInfo.IAnnotation[]|null);
+ }
+
+ /** Represents a GeneratedCodeInfo. */
+ class GeneratedCodeInfo implements IGeneratedCodeInfo {
+
+ /**
+ * Constructs a new GeneratedCodeInfo.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.IGeneratedCodeInfo);
+
+ /** GeneratedCodeInfo annotation. */
+ public annotation: google.protobuf.GeneratedCodeInfo.IAnnotation[];
+
+ /**
+ * Creates a new GeneratedCodeInfo instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns GeneratedCodeInfo instance
+ */
+ public static create(properties?: google.protobuf.IGeneratedCodeInfo): google.protobuf.GeneratedCodeInfo;
+
+ /**
+ * Encodes the specified GeneratedCodeInfo message. Does not implicitly {@link google.protobuf.GeneratedCodeInfo.verify|verify} messages.
+ * @param message GeneratedCodeInfo message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.IGeneratedCodeInfo, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified GeneratedCodeInfo message, length delimited. Does not implicitly {@link google.protobuf.GeneratedCodeInfo.verify|verify} messages.
+ * @param message GeneratedCodeInfo message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.IGeneratedCodeInfo, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a GeneratedCodeInfo message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns GeneratedCodeInfo
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.GeneratedCodeInfo;
+
+ /**
+ * Decodes a GeneratedCodeInfo message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns GeneratedCodeInfo
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.GeneratedCodeInfo;
+
+ /**
+ * Verifies a GeneratedCodeInfo message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a GeneratedCodeInfo message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns GeneratedCodeInfo
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.GeneratedCodeInfo;
+
+ /**
+ * Creates a plain object from a GeneratedCodeInfo message. Also converts values to other types if specified.
+ * @param message GeneratedCodeInfo
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.GeneratedCodeInfo, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this GeneratedCodeInfo to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for GeneratedCodeInfo
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace GeneratedCodeInfo {
+
+ /** Properties of an Annotation. */
+ interface IAnnotation {
+
+ /** Annotation path */
+ path?: (number[]|null);
+
+ /** Annotation sourceFile */
+ sourceFile?: (string|null);
+
+ /** Annotation begin */
+ begin?: (number|null);
+
+ /** Annotation end */
+ end?: (number|null);
+
+ /** Annotation semantic */
+ semantic?: (google.protobuf.GeneratedCodeInfo.Annotation.Semantic|keyof typeof google.protobuf.GeneratedCodeInfo.Annotation.Semantic|null);
+ }
+
+ /** Represents an Annotation. */
+ class Annotation implements IAnnotation {
+
+ /**
+ * Constructs a new Annotation.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.GeneratedCodeInfo.IAnnotation);
+
+ /** Annotation path. */
+ public path: number[];
+
+ /** Annotation sourceFile. */
+ public sourceFile: string;
+
+ /** Annotation begin. */
+ public begin: number;
+
+ /** Annotation end. */
+ public end: number;
+
+ /** Annotation semantic. */
+ public semantic: (google.protobuf.GeneratedCodeInfo.Annotation.Semantic|keyof typeof google.protobuf.GeneratedCodeInfo.Annotation.Semantic);
+
+ /**
+ * Creates a new Annotation instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Annotation instance
+ */
+ public static create(properties?: google.protobuf.GeneratedCodeInfo.IAnnotation): google.protobuf.GeneratedCodeInfo.Annotation;
+
+ /**
+ * Encodes the specified Annotation message. Does not implicitly {@link google.protobuf.GeneratedCodeInfo.Annotation.verify|verify} messages.
+ * @param message Annotation message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.GeneratedCodeInfo.IAnnotation, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Annotation message, length delimited. Does not implicitly {@link google.protobuf.GeneratedCodeInfo.Annotation.verify|verify} messages.
+ * @param message Annotation message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.GeneratedCodeInfo.IAnnotation, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an Annotation message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Annotation
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.GeneratedCodeInfo.Annotation;
+
+ /**
+ * Decodes an Annotation message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Annotation
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.GeneratedCodeInfo.Annotation;
+
+ /**
+ * Verifies an Annotation message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates an Annotation message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Annotation
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.GeneratedCodeInfo.Annotation;
+
+ /**
+ * Creates a plain object from an Annotation message. Also converts values to other types if specified.
+ * @param message Annotation
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.GeneratedCodeInfo.Annotation, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Annotation to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Annotation
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace Annotation {
+
+ /** Semantic enum. */
+ enum Semantic {
+ NONE = 0,
+ SET = 1,
+ ALIAS = 2
+ }
+ }
+ }
+
+ /** Properties of a 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 Timestamp. */
+ interface ITimestamp {
+
+ /** Timestamp seconds */
+ seconds?: (number|Long|string|null);
+
+ /** Timestamp nanos */
+ nanos?: (number|null);
+ }
+
+ /** Represents a Timestamp. */
+ class Timestamp implements ITimestamp {
+
+ /**
+ * Constructs a new Timestamp.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.ITimestamp);
+
+ /** Timestamp seconds. */
+ public seconds: (number|Long|string);
+
+ /** Timestamp nanos. */
+ public nanos: number;
+
+ /**
+ * Creates a new Timestamp instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Timestamp instance
+ */
+ public static create(properties?: google.protobuf.ITimestamp): google.protobuf.Timestamp;
+
+ /**
+ * Encodes the specified Timestamp message. Does not implicitly {@link google.protobuf.Timestamp.verify|verify} messages.
+ * @param message Timestamp message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.ITimestamp, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Timestamp message, length delimited. Does not implicitly {@link google.protobuf.Timestamp.verify|verify} messages.
+ * @param message Timestamp message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.ITimestamp, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Timestamp message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Timestamp
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.Timestamp;
+
+ /**
+ * Decodes a Timestamp message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Timestamp
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.Timestamp;
+
+ /**
+ * Verifies a Timestamp message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a Timestamp message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Timestamp
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.Timestamp;
+
+ /**
+ * Creates a plain object from a Timestamp message. Also converts values to other types if specified.
+ * @param message Timestamp
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.Timestamp, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Timestamp to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Timestamp
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an Any. */
+ interface IAny {
+
+ /** Any type_url */
+ type_url?: (string|null);
+
+ /** Any value */
+ value?: (Uint8Array|string|null);
+ }
+
+ /** Represents an Any. */
+ class Any implements IAny {
+
+ /**
+ * Constructs a new Any.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.IAny);
+
+ /** Any type_url. */
+ public type_url: string;
+
+ /** Any value. */
+ public value: (Uint8Array|string);
+
+ /**
+ * Creates a new Any instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Any instance
+ */
+ public static create(properties?: google.protobuf.IAny): google.protobuf.Any;
+
+ /**
+ * Encodes the specified Any message. Does not implicitly {@link google.protobuf.Any.verify|verify} messages.
+ * @param message Any message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.IAny, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Any message, length delimited. Does not implicitly {@link google.protobuf.Any.verify|verify} messages.
+ * @param message Any message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.IAny, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an Any message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Any
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.Any;
+
+ /**
+ * Decodes an Any message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Any
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.Any;
+
+ /**
+ * Verifies an Any message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates an Any message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Any
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.Any;
+
+ /**
+ * Creates a plain object from an Any message. Also converts values to other types if specified.
+ * @param message Any
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.Any, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Any to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Any
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a 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;
+ }
+ }
+
+ /** Namespace longrunning. */
+ namespace longrunning {
+
+ /** Represents an Operations */
+ class Operations extends $protobuf.rpc.Service {
+
+ /**
+ * Constructs a new Operations service.
+ * @param rpcImpl RPC implementation
+ * @param [requestDelimited=false] Whether requests are length-delimited
+ * @param [responseDelimited=false] Whether responses are length-delimited
+ */
+ constructor(rpcImpl: $protobuf.RPCImpl, requestDelimited?: boolean, responseDelimited?: boolean);
+
+ /**
+ * Creates new Operations service using the specified rpc implementation.
+ * @param rpcImpl RPC implementation
+ * @param [requestDelimited=false] Whether requests are length-delimited
+ * @param [responseDelimited=false] Whether responses are length-delimited
+ * @returns RPC service. Useful where requests and/or responses are streamed.
+ */
+ public static create(rpcImpl: $protobuf.RPCImpl, requestDelimited?: boolean, responseDelimited?: boolean): Operations;
+
+ /**
+ * Calls ListOperations.
+ * @param request ListOperationsRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and ListOperationsResponse
+ */
+ public listOperations(request: google.longrunning.IListOperationsRequest, callback: google.longrunning.Operations.ListOperationsCallback): void;
+
+ /**
+ * Calls ListOperations.
+ * @param request ListOperationsRequest message or plain object
+ * @returns Promise
+ */
+ public listOperations(request: google.longrunning.IListOperationsRequest): Promise;
+
+ /**
+ * Calls GetOperation.
+ * @param request GetOperationRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Operation
+ */
+ public getOperation(request: google.longrunning.IGetOperationRequest, callback: google.longrunning.Operations.GetOperationCallback): void;
+
+ /**
+ * Calls GetOperation.
+ * @param request GetOperationRequest message or plain object
+ * @returns Promise
+ */
+ public getOperation(request: google.longrunning.IGetOperationRequest): Promise;
+
+ /**
+ * Calls DeleteOperation.
+ * @param request DeleteOperationRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Empty
+ */
+ public deleteOperation(request: google.longrunning.IDeleteOperationRequest, callback: google.longrunning.Operations.DeleteOperationCallback): void;
+
+ /**
+ * Calls DeleteOperation.
+ * @param request DeleteOperationRequest message or plain object
+ * @returns Promise
+ */
+ public deleteOperation(request: google.longrunning.IDeleteOperationRequest): Promise;
+
+ /**
+ * Calls CancelOperation.
+ * @param request CancelOperationRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Empty
+ */
+ public cancelOperation(request: google.longrunning.ICancelOperationRequest, callback: google.longrunning.Operations.CancelOperationCallback): void;
+
+ /**
+ * Calls CancelOperation.
+ * @param request CancelOperationRequest message or plain object
+ * @returns Promise
+ */
+ public cancelOperation(request: google.longrunning.ICancelOperationRequest): Promise;
+
+ /**
+ * Calls WaitOperation.
+ * @param request WaitOperationRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Operation
+ */
+ public waitOperation(request: google.longrunning.IWaitOperationRequest, callback: google.longrunning.Operations.WaitOperationCallback): void;
+
+ /**
+ * Calls WaitOperation.
+ * @param request WaitOperationRequest message or plain object
+ * @returns Promise
+ */
+ public waitOperation(request: google.longrunning.IWaitOperationRequest): Promise;
+ }
+
+ namespace Operations {
+
+ /**
+ * Callback as used by {@link google.longrunning.Operations|listOperations}.
+ * @param error Error, if any
+ * @param [response] ListOperationsResponse
+ */
+ type ListOperationsCallback = (error: (Error|null), response?: google.longrunning.ListOperationsResponse) => void;
+
+ /**
+ * Callback as used by {@link google.longrunning.Operations|getOperation}.
+ * @param error Error, if any
+ * @param [response] Operation
+ */
+ type GetOperationCallback = (error: (Error|null), response?: google.longrunning.Operation) => void;
+
+ /**
+ * Callback as used by {@link google.longrunning.Operations|deleteOperation}.
+ * @param error Error, if any
+ * @param [response] Empty
+ */
+ type DeleteOperationCallback = (error: (Error|null), response?: google.protobuf.Empty) => void;
+
+ /**
+ * Callback as used by {@link google.longrunning.Operations|cancelOperation}.
+ * @param error Error, if any
+ * @param [response] Empty
+ */
+ type CancelOperationCallback = (error: (Error|null), response?: google.protobuf.Empty) => void;
+
+ /**
+ * Callback as used by {@link google.longrunning.Operations|waitOperation}.
+ * @param error Error, if any
+ * @param [response] Operation
+ */
+ type WaitOperationCallback = (error: (Error|null), response?: google.longrunning.Operation) => void;
+ }
+
+ /** Properties of an Operation. */
+ interface IOperation {
+
+ /** Operation name */
+ name?: (string|null);
+
+ /** Operation metadata */
+ metadata?: (google.protobuf.IAny|null);
+
+ /** Operation done */
+ done?: (boolean|null);
+
+ /** Operation error */
+ error?: (google.rpc.IStatus|null);
+
+ /** Operation response */
+ response?: (google.protobuf.IAny|null);
+ }
+
+ /** Represents an Operation. */
+ class Operation implements IOperation {
+
+ /**
+ * Constructs a new Operation.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.longrunning.IOperation);
+
+ /** Operation name. */
+ public name: string;
+
+ /** Operation metadata. */
+ public metadata?: (google.protobuf.IAny|null);
+
+ /** Operation done. */
+ public done: boolean;
+
+ /** Operation error. */
+ public error?: (google.rpc.IStatus|null);
+
+ /** Operation response. */
+ public response?: (google.protobuf.IAny|null);
+
+ /** Operation result. */
+ public result?: ("error"|"response");
+
+ /**
+ * Creates a new Operation instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Operation instance
+ */
+ public static create(properties?: google.longrunning.IOperation): google.longrunning.Operation;
+
+ /**
+ * Encodes the specified Operation message. Does not implicitly {@link google.longrunning.Operation.verify|verify} messages.
+ * @param message Operation message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.longrunning.IOperation, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Operation message, length delimited. Does not implicitly {@link google.longrunning.Operation.verify|verify} messages.
+ * @param message Operation message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.longrunning.IOperation, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an Operation message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Operation
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.longrunning.Operation;
+
+ /**
+ * Decodes an Operation message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Operation
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.longrunning.Operation;
+
+ /**
+ * Verifies an Operation message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates an Operation message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Operation
+ */
+ public static fromObject(object: { [k: string]: any }): google.longrunning.Operation;
+
+ /**
+ * Creates a plain object from an Operation message. Also converts values to other types if specified.
+ * @param message Operation
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.longrunning.Operation, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Operation to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Operation
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a GetOperationRequest. */
+ interface IGetOperationRequest {
+
+ /** GetOperationRequest name */
+ name?: (string|null);
+ }
+
+ /** Represents a GetOperationRequest. */
+ class GetOperationRequest implements IGetOperationRequest {
+
+ /**
+ * Constructs a new GetOperationRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.longrunning.IGetOperationRequest);
+
+ /** GetOperationRequest name. */
+ public name: string;
+
+ /**
+ * Creates a new GetOperationRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns GetOperationRequest instance
+ */
+ public static create(properties?: google.longrunning.IGetOperationRequest): google.longrunning.GetOperationRequest;
+
+ /**
+ * Encodes the specified GetOperationRequest message. Does not implicitly {@link google.longrunning.GetOperationRequest.verify|verify} messages.
+ * @param message GetOperationRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.longrunning.IGetOperationRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified GetOperationRequest message, length delimited. Does not implicitly {@link google.longrunning.GetOperationRequest.verify|verify} messages.
+ * @param message GetOperationRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.longrunning.IGetOperationRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a GetOperationRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns GetOperationRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.longrunning.GetOperationRequest;
+
+ /**
+ * Decodes a GetOperationRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns GetOperationRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.longrunning.GetOperationRequest;
+
+ /**
+ * Verifies a GetOperationRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a GetOperationRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns GetOperationRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.longrunning.GetOperationRequest;
+
+ /**
+ * Creates a plain object from a GetOperationRequest message. Also converts values to other types if specified.
+ * @param message GetOperationRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.longrunning.GetOperationRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this GetOperationRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for GetOperationRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ListOperationsRequest. */
+ interface IListOperationsRequest {
+
+ /** ListOperationsRequest name */
+ name?: (string|null);
+
+ /** ListOperationsRequest filter */
+ filter?: (string|null);
+
+ /** ListOperationsRequest pageSize */
+ pageSize?: (number|null);
+
+ /** ListOperationsRequest pageToken */
+ pageToken?: (string|null);
+ }
+
+ /** Represents a ListOperationsRequest. */
+ class ListOperationsRequest implements IListOperationsRequest {
+
+ /**
+ * Constructs a new ListOperationsRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.longrunning.IListOperationsRequest);
+
+ /** ListOperationsRequest name. */
+ public name: string;
+
+ /** ListOperationsRequest filter. */
+ public filter: string;
+
+ /** ListOperationsRequest pageSize. */
+ public pageSize: number;
+
+ /** ListOperationsRequest pageToken. */
+ public pageToken: string;
+
+ /**
+ * Creates a new ListOperationsRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ListOperationsRequest instance
+ */
+ public static create(properties?: google.longrunning.IListOperationsRequest): google.longrunning.ListOperationsRequest;
+
+ /**
+ * Encodes the specified ListOperationsRequest message. Does not implicitly {@link google.longrunning.ListOperationsRequest.verify|verify} messages.
+ * @param message ListOperationsRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.longrunning.IListOperationsRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ListOperationsRequest message, length delimited. Does not implicitly {@link google.longrunning.ListOperationsRequest.verify|verify} messages.
+ * @param message ListOperationsRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.longrunning.IListOperationsRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ListOperationsRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ListOperationsRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.longrunning.ListOperationsRequest;
+
+ /**
+ * Decodes a ListOperationsRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ListOperationsRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.longrunning.ListOperationsRequest;
+
+ /**
+ * Verifies a ListOperationsRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ListOperationsRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ListOperationsRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.longrunning.ListOperationsRequest;
+
+ /**
+ * Creates a plain object from a ListOperationsRequest message. Also converts values to other types if specified.
+ * @param message ListOperationsRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.longrunning.ListOperationsRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ListOperationsRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ListOperationsRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ListOperationsResponse. */
+ interface IListOperationsResponse {
+
+ /** ListOperationsResponse operations */
+ operations?: (google.longrunning.IOperation[]|null);
+
+ /** ListOperationsResponse nextPageToken */
+ nextPageToken?: (string|null);
+ }
+
+ /** Represents a ListOperationsResponse. */
+ class ListOperationsResponse implements IListOperationsResponse {
+
+ /**
+ * Constructs a new ListOperationsResponse.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.longrunning.IListOperationsResponse);
+
+ /** ListOperationsResponse operations. */
+ public operations: google.longrunning.IOperation[];
+
+ /** ListOperationsResponse nextPageToken. */
+ public nextPageToken: string;
+
+ /**
+ * Creates a new ListOperationsResponse instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ListOperationsResponse instance
+ */
+ public static create(properties?: google.longrunning.IListOperationsResponse): google.longrunning.ListOperationsResponse;
+
+ /**
+ * Encodes the specified ListOperationsResponse message. Does not implicitly {@link google.longrunning.ListOperationsResponse.verify|verify} messages.
+ * @param message ListOperationsResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.longrunning.IListOperationsResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ListOperationsResponse message, length delimited. Does not implicitly {@link google.longrunning.ListOperationsResponse.verify|verify} messages.
+ * @param message ListOperationsResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.longrunning.IListOperationsResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ListOperationsResponse message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ListOperationsResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.longrunning.ListOperationsResponse;
+
+ /**
+ * Decodes a ListOperationsResponse message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ListOperationsResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.longrunning.ListOperationsResponse;
+
+ /**
+ * Verifies a ListOperationsResponse message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ListOperationsResponse message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ListOperationsResponse
+ */
+ public static fromObject(object: { [k: string]: any }): google.longrunning.ListOperationsResponse;
+
+ /**
+ * Creates a plain object from a ListOperationsResponse message. Also converts values to other types if specified.
+ * @param message ListOperationsResponse
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.longrunning.ListOperationsResponse, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ListOperationsResponse to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ListOperationsResponse
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a CancelOperationRequest. */
+ interface ICancelOperationRequest {
+
+ /** CancelOperationRequest name */
+ name?: (string|null);
+ }
+
+ /** Represents a CancelOperationRequest. */
+ class CancelOperationRequest implements ICancelOperationRequest {
+
+ /**
+ * Constructs a new CancelOperationRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.longrunning.ICancelOperationRequest);
+
+ /** CancelOperationRequest name. */
+ public name: string;
+
+ /**
+ * Creates a new CancelOperationRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns CancelOperationRequest instance
+ */
+ public static create(properties?: google.longrunning.ICancelOperationRequest): google.longrunning.CancelOperationRequest;
+
+ /**
+ * Encodes the specified CancelOperationRequest message. Does not implicitly {@link google.longrunning.CancelOperationRequest.verify|verify} messages.
+ * @param message CancelOperationRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.longrunning.ICancelOperationRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified CancelOperationRequest message, length delimited. Does not implicitly {@link google.longrunning.CancelOperationRequest.verify|verify} messages.
+ * @param message CancelOperationRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.longrunning.ICancelOperationRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a CancelOperationRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns CancelOperationRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.longrunning.CancelOperationRequest;
+
+ /**
+ * Decodes a CancelOperationRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns CancelOperationRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.longrunning.CancelOperationRequest;
+
+ /**
+ * Verifies a CancelOperationRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a CancelOperationRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns CancelOperationRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.longrunning.CancelOperationRequest;
+
+ /**
+ * Creates a plain object from a CancelOperationRequest message. Also converts values to other types if specified.
+ * @param message CancelOperationRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.longrunning.CancelOperationRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this CancelOperationRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for CancelOperationRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a DeleteOperationRequest. */
+ interface IDeleteOperationRequest {
+
+ /** DeleteOperationRequest name */
+ name?: (string|null);
+ }
+
+ /** Represents a DeleteOperationRequest. */
+ class DeleteOperationRequest implements IDeleteOperationRequest {
+
+ /**
+ * Constructs a new DeleteOperationRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.longrunning.IDeleteOperationRequest);
+
+ /** DeleteOperationRequest name. */
+ public name: string;
+
+ /**
+ * Creates a new DeleteOperationRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns DeleteOperationRequest instance
+ */
+ public static create(properties?: google.longrunning.IDeleteOperationRequest): google.longrunning.DeleteOperationRequest;
+
+ /**
+ * Encodes the specified DeleteOperationRequest message. Does not implicitly {@link google.longrunning.DeleteOperationRequest.verify|verify} messages.
+ * @param message DeleteOperationRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.longrunning.IDeleteOperationRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified DeleteOperationRequest message, length delimited. Does not implicitly {@link google.longrunning.DeleteOperationRequest.verify|verify} messages.
+ * @param message DeleteOperationRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.longrunning.IDeleteOperationRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a DeleteOperationRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns DeleteOperationRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.longrunning.DeleteOperationRequest;
+
+ /**
+ * Decodes a DeleteOperationRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns DeleteOperationRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.longrunning.DeleteOperationRequest;
+
+ /**
+ * Verifies a DeleteOperationRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a DeleteOperationRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns DeleteOperationRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.longrunning.DeleteOperationRequest;
+
+ /**
+ * Creates a plain object from a DeleteOperationRequest message. Also converts values to other types if specified.
+ * @param message DeleteOperationRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.longrunning.DeleteOperationRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this DeleteOperationRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for DeleteOperationRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a WaitOperationRequest. */
+ interface IWaitOperationRequest {
+
+ /** WaitOperationRequest name */
+ name?: (string|null);
+
+ /** WaitOperationRequest timeout */
+ timeout?: (google.protobuf.IDuration|null);
+ }
+
+ /** Represents a WaitOperationRequest. */
+ class WaitOperationRequest implements IWaitOperationRequest {
+
+ /**
+ * Constructs a new WaitOperationRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.longrunning.IWaitOperationRequest);
+
+ /** WaitOperationRequest name. */
+ public name: string;
+
+ /** WaitOperationRequest timeout. */
+ public timeout?: (google.protobuf.IDuration|null);
+
+ /**
+ * Creates a new WaitOperationRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns WaitOperationRequest instance
+ */
+ public static create(properties?: google.longrunning.IWaitOperationRequest): google.longrunning.WaitOperationRequest;
+
+ /**
+ * Encodes the specified WaitOperationRequest message. Does not implicitly {@link google.longrunning.WaitOperationRequest.verify|verify} messages.
+ * @param message WaitOperationRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.longrunning.IWaitOperationRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified WaitOperationRequest message, length delimited. Does not implicitly {@link google.longrunning.WaitOperationRequest.verify|verify} messages.
+ * @param message WaitOperationRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.longrunning.IWaitOperationRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a WaitOperationRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns WaitOperationRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.longrunning.WaitOperationRequest;
+
+ /**
+ * Decodes a WaitOperationRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns WaitOperationRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.longrunning.WaitOperationRequest;
+
+ /**
+ * Verifies a WaitOperationRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a WaitOperationRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns WaitOperationRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.longrunning.WaitOperationRequest;
+
+ /**
+ * Creates a plain object from a WaitOperationRequest message. Also converts values to other types if specified.
+ * @param message WaitOperationRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.longrunning.WaitOperationRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this WaitOperationRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for WaitOperationRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an OperationInfo. */
+ interface IOperationInfo {
+
+ /** OperationInfo responseType */
+ responseType?: (string|null);
+
+ /** OperationInfo metadataType */
+ metadataType?: (string|null);
+ }
+
+ /** Represents an OperationInfo. */
+ class OperationInfo implements IOperationInfo {
+
+ /**
+ * Constructs a new OperationInfo.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.longrunning.IOperationInfo);
+
+ /** OperationInfo responseType. */
+ public responseType: string;
+
+ /** OperationInfo metadataType. */
+ public metadataType: string;
+
+ /**
+ * Creates a new OperationInfo instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns OperationInfo instance
+ */
+ public static create(properties?: google.longrunning.IOperationInfo): google.longrunning.OperationInfo;
+
+ /**
+ * Encodes the specified OperationInfo message. Does not implicitly {@link google.longrunning.OperationInfo.verify|verify} messages.
+ * @param message OperationInfo message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.longrunning.IOperationInfo, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified OperationInfo message, length delimited. Does not implicitly {@link google.longrunning.OperationInfo.verify|verify} messages.
+ * @param message OperationInfo message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.longrunning.IOperationInfo, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an OperationInfo message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns OperationInfo
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.longrunning.OperationInfo;
+
+ /**
+ * Decodes an OperationInfo message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns OperationInfo
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.longrunning.OperationInfo;
+
+ /**
+ * Verifies an OperationInfo message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates an OperationInfo message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns OperationInfo
+ */
+ public static fromObject(object: { [k: string]: any }): google.longrunning.OperationInfo;
+
+ /**
+ * Creates a plain object from an OperationInfo message. Also converts values to other types if specified.
+ * @param message OperationInfo
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.longrunning.OperationInfo, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this OperationInfo to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for OperationInfo
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+ }
+
+ /** Namespace rpc. */
+ namespace rpc {
+
+ /** Properties of a Status. */
+ interface IStatus {
+
+ /** Status code */
+ code?: (number|null);
+
+ /** Status message */
+ message?: (string|null);
+
+ /** Status details */
+ details?: (google.protobuf.IAny[]|null);
+ }
+
+ /** Represents a Status. */
+ class Status implements IStatus {
+
+ /**
+ * Constructs a new Status.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.rpc.IStatus);
+
+ /** Status code. */
+ public code: number;
+
+ /** Status message. */
+ public message: string;
+
+ /** Status details. */
+ public details: google.protobuf.IAny[];
+
+ /**
+ * Creates a new Status instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Status instance
+ */
+ public static create(properties?: google.rpc.IStatus): google.rpc.Status;
+
+ /**
+ * Encodes the specified Status message. Does not implicitly {@link google.rpc.Status.verify|verify} messages.
+ * @param message Status message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.rpc.IStatus, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Status message, length delimited. Does not implicitly {@link google.rpc.Status.verify|verify} messages.
+ * @param message Status message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.rpc.IStatus, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Status message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Status
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.rpc.Status;
+
+ /**
+ * Decodes a Status message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Status
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.rpc.Status;
+
+ /**
+ * Verifies a Status message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a Status message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Status
+ */
+ public static fromObject(object: { [k: string]: any }): google.rpc.Status;
+
+ /**
+ * Creates a plain object from a Status message. Also converts values to other types if specified.
+ * @param message Status
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.rpc.Status, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Status to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Status
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+ }
+}
diff --git a/packages/google-cloud-apigateway/protos/protos.js b/packages/google-cloud-apigateway/protos/protos.js
new file mode 100644
index 00000000000..80c67dcef9b
--- /dev/null
+++ b/packages/google-cloud-apigateway/protos/protos.js
@@ -0,0 +1,22609 @@
+// 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_api_gateway_protos || ($protobuf.roots._google_cloud_api_gateway_protos = {});
+
+ $root.google = (function() {
+
+ /**
+ * Namespace google.
+ * @exports google
+ * @namespace
+ */
+ var google = {};
+
+ google.cloud = (function() {
+
+ /**
+ * Namespace cloud.
+ * @memberof google
+ * @namespace
+ */
+ var cloud = {};
+
+ cloud.apigateway = (function() {
+
+ /**
+ * Namespace apigateway.
+ * @memberof google.cloud
+ * @namespace
+ */
+ var apigateway = {};
+
+ apigateway.v1 = (function() {
+
+ /**
+ * Namespace v1.
+ * @memberof google.cloud.apigateway
+ * @namespace
+ */
+ var v1 = {};
+
+ v1.Api = (function() {
+
+ /**
+ * Properties of an Api.
+ * @memberof google.cloud.apigateway.v1
+ * @interface IApi
+ * @property {string|null} [name] Api name
+ * @property {google.protobuf.ITimestamp|null} [createTime] Api createTime
+ * @property {google.protobuf.ITimestamp|null} [updateTime] Api updateTime
+ * @property {Object.|null} [labels] Api labels
+ * @property {string|null} [displayName] Api displayName
+ * @property {string|null} [managedService] Api managedService
+ * @property {google.cloud.apigateway.v1.Api.State|null} [state] Api state
+ */
+
+ /**
+ * Constructs a new Api.
+ * @memberof google.cloud.apigateway.v1
+ * @classdesc Represents an Api.
+ * @implements IApi
+ * @constructor
+ * @param {google.cloud.apigateway.v1.IApi=} [properties] Properties to set
+ */
+ function Api(properties) {
+ this.labels = {};
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * Api name.
+ * @member {string} name
+ * @memberof google.cloud.apigateway.v1.Api
+ * @instance
+ */
+ Api.prototype.name = "";
+
+ /**
+ * Api createTime.
+ * @member {google.protobuf.ITimestamp|null|undefined} createTime
+ * @memberof google.cloud.apigateway.v1.Api
+ * @instance
+ */
+ Api.prototype.createTime = null;
+
+ /**
+ * Api updateTime.
+ * @member {google.protobuf.ITimestamp|null|undefined} updateTime
+ * @memberof google.cloud.apigateway.v1.Api
+ * @instance
+ */
+ Api.prototype.updateTime = null;
+
+ /**
+ * Api labels.
+ * @member {Object.} labels
+ * @memberof google.cloud.apigateway.v1.Api
+ * @instance
+ */
+ Api.prototype.labels = $util.emptyObject;
+
+ /**
+ * Api displayName.
+ * @member {string} displayName
+ * @memberof google.cloud.apigateway.v1.Api
+ * @instance
+ */
+ Api.prototype.displayName = "";
+
+ /**
+ * Api managedService.
+ * @member {string} managedService
+ * @memberof google.cloud.apigateway.v1.Api
+ * @instance
+ */
+ Api.prototype.managedService = "";
+
+ /**
+ * Api state.
+ * @member {google.cloud.apigateway.v1.Api.State} state
+ * @memberof google.cloud.apigateway.v1.Api
+ * @instance
+ */
+ Api.prototype.state = 0;
+
+ /**
+ * Creates a new Api instance using the specified properties.
+ * @function create
+ * @memberof google.cloud.apigateway.v1.Api
+ * @static
+ * @param {google.cloud.apigateway.v1.IApi=} [properties] Properties to set
+ * @returns {google.cloud.apigateway.v1.Api} Api instance
+ */
+ Api.create = function create(properties) {
+ return new Api(properties);
+ };
+
+ /**
+ * Encodes the specified Api message. Does not implicitly {@link google.cloud.apigateway.v1.Api.verify|verify} messages.
+ * @function encode
+ * @memberof google.cloud.apigateway.v1.Api
+ * @static
+ * @param {google.cloud.apigateway.v1.IApi} message Api message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ Api.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.createTime != null && Object.hasOwnProperty.call(message, "createTime"))
+ $root.google.protobuf.Timestamp.encode(message.createTime, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim();
+ if (message.updateTime != null && Object.hasOwnProperty.call(message, "updateTime"))
+ $root.google.protobuf.Timestamp.encode(message.updateTime, writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim();
+ if (message.labels != null && Object.hasOwnProperty.call(message, "labels"))
+ for (var keys = Object.keys(message.labels), i = 0; i < keys.length; ++i)
+ writer.uint32(/* id 4, wireType 2 =*/34).fork().uint32(/* id 1, wireType 2 =*/10).string(keys[i]).uint32(/* id 2, wireType 2 =*/18).string(message.labels[keys[i]]).ldelim();
+ if (message.displayName != null && Object.hasOwnProperty.call(message, "displayName"))
+ writer.uint32(/* id 5, wireType 2 =*/42).string(message.displayName);
+ if (message.managedService != null && Object.hasOwnProperty.call(message, "managedService"))
+ writer.uint32(/* id 7, wireType 2 =*/58).string(message.managedService);
+ if (message.state != null && Object.hasOwnProperty.call(message, "state"))
+ writer.uint32(/* id 12, wireType 0 =*/96).int32(message.state);
+ return writer;
+ };
+
+ /**
+ * Encodes the specified Api message, length delimited. Does not implicitly {@link google.cloud.apigateway.v1.Api.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.cloud.apigateway.v1.Api
+ * @static
+ * @param {google.cloud.apigateway.v1.IApi} message Api message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ Api.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes an Api message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.cloud.apigateway.v1.Api
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.cloud.apigateway.v1.Api} Api
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ Api.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.apigateway.v1.Api(), key, value;
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.name = reader.string();
+ break;
+ }
+ case 2: {
+ message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32());
+ break;
+ }
+ case 3: {
+ message.updateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32());
+ break;
+ }
+ case 4: {
+ if (message.labels === $util.emptyObject)
+ message.labels = {};
+ var end2 = reader.uint32() + reader.pos;
+ key = "";
+ value = "";
+ while (reader.pos < end2) {
+ var tag2 = reader.uint32();
+ switch (tag2 >>> 3) {
+ case 1:
+ key = reader.string();
+ break;
+ case 2:
+ value = reader.string();
+ break;
+ default:
+ reader.skipType(tag2 & 7);
+ break;
+ }
+ }
+ message.labels[key] = value;
+ break;
+ }
+ case 5: {
+ message.displayName = reader.string();
+ break;
+ }
+ case 7: {
+ message.managedService = reader.string();
+ break;
+ }
+ case 12: {
+ message.state = reader.int32();
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes an Api message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.cloud.apigateway.v1.Api
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.cloud.apigateway.v1.Api} Api
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ Api.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies an Api message.
+ * @function verify
+ * @memberof google.cloud.apigateway.v1.Api
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ Api.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.createTime != null && message.hasOwnProperty("createTime")) {
+ var error = $root.google.protobuf.Timestamp.verify(message.createTime);
+ if (error)
+ return "createTime." + error;
+ }
+ if (message.updateTime != null && message.hasOwnProperty("updateTime")) {
+ var error = $root.google.protobuf.Timestamp.verify(message.updateTime);
+ if (error)
+ return "updateTime." + error;
+ }
+ if (message.labels != null && message.hasOwnProperty("labels")) {
+ if (!$util.isObject(message.labels))
+ return "labels: object expected";
+ var key = Object.keys(message.labels);
+ for (var i = 0; i < key.length; ++i)
+ if (!$util.isString(message.labels[key[i]]))
+ return "labels: string{k:string} expected";
+ }
+ if (message.displayName != null && message.hasOwnProperty("displayName"))
+ if (!$util.isString(message.displayName))
+ return "displayName: string expected";
+ if (message.managedService != null && message.hasOwnProperty("managedService"))
+ if (!$util.isString(message.managedService))
+ return "managedService: string expected";
+ if (message.state != null && message.hasOwnProperty("state"))
+ switch (message.state) {
+ default:
+ return "state: enum value expected";
+ case 0:
+ case 1:
+ case 2:
+ case 3:
+ case 4:
+ case 5:
+ break;
+ }
+ return null;
+ };
+
+ /**
+ * Creates an Api message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.cloud.apigateway.v1.Api
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.cloud.apigateway.v1.Api} Api
+ */
+ Api.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.cloud.apigateway.v1.Api)
+ return object;
+ var message = new $root.google.cloud.apigateway.v1.Api();
+ if (object.name != null)
+ message.name = String(object.name);
+ if (object.createTime != null) {
+ if (typeof object.createTime !== "object")
+ throw TypeError(".google.cloud.apigateway.v1.Api.createTime: object expected");
+ message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime);
+ }
+ if (object.updateTime != null) {
+ if (typeof object.updateTime !== "object")
+ throw TypeError(".google.cloud.apigateway.v1.Api.updateTime: object expected");
+ message.updateTime = $root.google.protobuf.Timestamp.fromObject(object.updateTime);
+ }
+ if (object.labels) {
+ if (typeof object.labels !== "object")
+ throw TypeError(".google.cloud.apigateway.v1.Api.labels: object expected");
+ message.labels = {};
+ for (var keys = Object.keys(object.labels), i = 0; i < keys.length; ++i)
+ message.labels[keys[i]] = String(object.labels[keys[i]]);
+ }
+ if (object.displayName != null)
+ message.displayName = String(object.displayName);
+ if (object.managedService != null)
+ message.managedService = String(object.managedService);
+ switch (object.state) {
+ default:
+ if (typeof object.state === "number") {
+ message.state = object.state;
+ break;
+ }
+ break;
+ case "STATE_UNSPECIFIED":
+ case 0:
+ message.state = 0;
+ break;
+ case "CREATING":
+ case 1:
+ message.state = 1;
+ break;
+ case "ACTIVE":
+ case 2:
+ message.state = 2;
+ break;
+ case "FAILED":
+ case 3:
+ message.state = 3;
+ break;
+ case "DELETING":
+ case 4:
+ message.state = 4;
+ break;
+ case "UPDATING":
+ case 5:
+ message.state = 5;
+ break;
+ }
+ return message;
+ };
+
+ /**
+ * Creates a plain object from an Api message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.cloud.apigateway.v1.Api
+ * @static
+ * @param {google.cloud.apigateway.v1.Api} message Api
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ Api.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.objects || options.defaults)
+ object.labels = {};
+ if (options.defaults) {
+ object.name = "";
+ object.createTime = null;
+ object.updateTime = null;
+ object.displayName = "";
+ object.managedService = "";
+ object.state = options.enums === String ? "STATE_UNSPECIFIED" : 0;
+ }
+ if (message.name != null && message.hasOwnProperty("name"))
+ object.name = message.name;
+ if (message.createTime != null && message.hasOwnProperty("createTime"))
+ object.createTime = $root.google.protobuf.Timestamp.toObject(message.createTime, options);
+ if (message.updateTime != null && message.hasOwnProperty("updateTime"))
+ object.updateTime = $root.google.protobuf.Timestamp.toObject(message.updateTime, options);
+ var keys2;
+ if (message.labels && (keys2 = Object.keys(message.labels)).length) {
+ object.labels = {};
+ for (var j = 0; j < keys2.length; ++j)
+ object.labels[keys2[j]] = message.labels[keys2[j]];
+ }
+ if (message.displayName != null && message.hasOwnProperty("displayName"))
+ object.displayName = message.displayName;
+ if (message.managedService != null && message.hasOwnProperty("managedService"))
+ object.managedService = message.managedService;
+ if (message.state != null && message.hasOwnProperty("state"))
+ object.state = options.enums === String ? $root.google.cloud.apigateway.v1.Api.State[message.state] === undefined ? message.state : $root.google.cloud.apigateway.v1.Api.State[message.state] : message.state;
+ return object;
+ };
+
+ /**
+ * Converts this Api to JSON.
+ * @function toJSON
+ * @memberof google.cloud.apigateway.v1.Api
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ Api.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for Api
+ * @function getTypeUrl
+ * @memberof google.cloud.apigateway.v1.Api
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ Api.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.cloud.apigateway.v1.Api";
+ };
+
+ /**
+ * State enum.
+ * @name google.cloud.apigateway.v1.Api.State
+ * @enum {number}
+ * @property {number} STATE_UNSPECIFIED=0 STATE_UNSPECIFIED value
+ * @property {number} CREATING=1 CREATING value
+ * @property {number} ACTIVE=2 ACTIVE value
+ * @property {number} FAILED=3 FAILED value
+ * @property {number} DELETING=4 DELETING value
+ * @property {number} UPDATING=5 UPDATING value
+ */
+ Api.State = (function() {
+ var valuesById = {}, values = Object.create(valuesById);
+ values[valuesById[0] = "STATE_UNSPECIFIED"] = 0;
+ values[valuesById[1] = "CREATING"] = 1;
+ values[valuesById[2] = "ACTIVE"] = 2;
+ values[valuesById[3] = "FAILED"] = 3;
+ values[valuesById[4] = "DELETING"] = 4;
+ values[valuesById[5] = "UPDATING"] = 5;
+ return values;
+ })();
+
+ return Api;
+ })();
+
+ v1.ApiConfig = (function() {
+
+ /**
+ * Properties of an ApiConfig.
+ * @memberof google.cloud.apigateway.v1
+ * @interface IApiConfig
+ * @property {string|null} [name] ApiConfig name
+ * @property {google.protobuf.ITimestamp|null} [createTime] ApiConfig createTime
+ * @property {google.protobuf.ITimestamp|null} [updateTime] ApiConfig updateTime
+ * @property {Object.|null} [labels] ApiConfig labels
+ * @property {string|null} [displayName] ApiConfig displayName
+ * @property {string|null} [gatewayServiceAccount] ApiConfig gatewayServiceAccount
+ * @property {string|null} [serviceConfigId] ApiConfig serviceConfigId
+ * @property {google.cloud.apigateway.v1.ApiConfig.State|null} [state] ApiConfig state
+ * @property {Array.|null} [openapiDocuments] ApiConfig openapiDocuments
+ * @property {Array.|null} [grpcServices] ApiConfig grpcServices
+ * @property {Array.|null} [managedServiceConfigs] ApiConfig managedServiceConfigs
+ */
+
+ /**
+ * Constructs a new ApiConfig.
+ * @memberof google.cloud.apigateway.v1
+ * @classdesc Represents an ApiConfig.
+ * @implements IApiConfig
+ * @constructor
+ * @param {google.cloud.apigateway.v1.IApiConfig=} [properties] Properties to set
+ */
+ function ApiConfig(properties) {
+ this.labels = {};
+ this.openapiDocuments = [];
+ this.grpcServices = [];
+ this.managedServiceConfigs = [];
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * ApiConfig name.
+ * @member {string} name
+ * @memberof google.cloud.apigateway.v1.ApiConfig
+ * @instance
+ */
+ ApiConfig.prototype.name = "";
+
+ /**
+ * ApiConfig createTime.
+ * @member {google.protobuf.ITimestamp|null|undefined} createTime
+ * @memberof google.cloud.apigateway.v1.ApiConfig
+ * @instance
+ */
+ ApiConfig.prototype.createTime = null;
+
+ /**
+ * ApiConfig updateTime.
+ * @member {google.protobuf.ITimestamp|null|undefined} updateTime
+ * @memberof google.cloud.apigateway.v1.ApiConfig
+ * @instance
+ */
+ ApiConfig.prototype.updateTime = null;
+
+ /**
+ * ApiConfig labels.
+ * @member {Object.} labels
+ * @memberof google.cloud.apigateway.v1.ApiConfig
+ * @instance
+ */
+ ApiConfig.prototype.labels = $util.emptyObject;
+
+ /**
+ * ApiConfig displayName.
+ * @member {string} displayName
+ * @memberof google.cloud.apigateway.v1.ApiConfig
+ * @instance
+ */
+ ApiConfig.prototype.displayName = "";
+
+ /**
+ * ApiConfig gatewayServiceAccount.
+ * @member {string} gatewayServiceAccount
+ * @memberof google.cloud.apigateway.v1.ApiConfig
+ * @instance
+ */
+ ApiConfig.prototype.gatewayServiceAccount = "";
+
+ /**
+ * ApiConfig serviceConfigId.
+ * @member {string} serviceConfigId
+ * @memberof google.cloud.apigateway.v1.ApiConfig
+ * @instance
+ */
+ ApiConfig.prototype.serviceConfigId = "";
+
+ /**
+ * ApiConfig state.
+ * @member {google.cloud.apigateway.v1.ApiConfig.State} state
+ * @memberof google.cloud.apigateway.v1.ApiConfig
+ * @instance
+ */
+ ApiConfig.prototype.state = 0;
+
+ /**
+ * ApiConfig openapiDocuments.
+ * @member {Array.} openapiDocuments
+ * @memberof google.cloud.apigateway.v1.ApiConfig
+ * @instance
+ */
+ ApiConfig.prototype.openapiDocuments = $util.emptyArray;
+
+ /**
+ * ApiConfig grpcServices.
+ * @member {Array.} grpcServices
+ * @memberof google.cloud.apigateway.v1.ApiConfig
+ * @instance
+ */
+ ApiConfig.prototype.grpcServices = $util.emptyArray;
+
+ /**
+ * ApiConfig managedServiceConfigs.
+ * @member {Array.} managedServiceConfigs
+ * @memberof google.cloud.apigateway.v1.ApiConfig
+ * @instance
+ */
+ ApiConfig.prototype.managedServiceConfigs = $util.emptyArray;
+
+ /**
+ * Creates a new ApiConfig instance using the specified properties.
+ * @function create
+ * @memberof google.cloud.apigateway.v1.ApiConfig
+ * @static
+ * @param {google.cloud.apigateway.v1.IApiConfig=} [properties] Properties to set
+ * @returns {google.cloud.apigateway.v1.ApiConfig} ApiConfig instance
+ */
+ ApiConfig.create = function create(properties) {
+ return new ApiConfig(properties);
+ };
+
+ /**
+ * Encodes the specified ApiConfig message. Does not implicitly {@link google.cloud.apigateway.v1.ApiConfig.verify|verify} messages.
+ * @function encode
+ * @memberof google.cloud.apigateway.v1.ApiConfig
+ * @static
+ * @param {google.cloud.apigateway.v1.IApiConfig} message ApiConfig message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ ApiConfig.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.createTime != null && Object.hasOwnProperty.call(message, "createTime"))
+ $root.google.protobuf.Timestamp.encode(message.createTime, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim();
+ if (message.updateTime != null && Object.hasOwnProperty.call(message, "updateTime"))
+ $root.google.protobuf.Timestamp.encode(message.updateTime, writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim();
+ if (message.labels != null && Object.hasOwnProperty.call(message, "labels"))
+ for (var keys = Object.keys(message.labels), i = 0; i < keys.length; ++i)
+ writer.uint32(/* id 4, wireType 2 =*/34).fork().uint32(/* id 1, wireType 2 =*/10).string(keys[i]).uint32(/* id 2, wireType 2 =*/18).string(message.labels[keys[i]]).ldelim();
+ if (message.displayName != null && Object.hasOwnProperty.call(message, "displayName"))
+ writer.uint32(/* id 5, wireType 2 =*/42).string(message.displayName);
+ if (message.state != null && Object.hasOwnProperty.call(message, "state"))
+ writer.uint32(/* id 8, wireType 0 =*/64).int32(message.state);
+ if (message.openapiDocuments != null && message.openapiDocuments.length)
+ for (var i = 0; i < message.openapiDocuments.length; ++i)
+ $root.google.cloud.apigateway.v1.ApiConfig.OpenApiDocument.encode(message.openapiDocuments[i], writer.uint32(/* id 9, wireType 2 =*/74).fork()).ldelim();
+ if (message.grpcServices != null && message.grpcServices.length)
+ for (var i = 0; i < message.grpcServices.length; ++i)
+ $root.google.cloud.apigateway.v1.ApiConfig.GrpcServiceDefinition.encode(message.grpcServices[i], writer.uint32(/* id 10, wireType 2 =*/82).fork()).ldelim();
+ if (message.managedServiceConfigs != null && message.managedServiceConfigs.length)
+ for (var i = 0; i < message.managedServiceConfigs.length; ++i)
+ $root.google.cloud.apigateway.v1.ApiConfig.File.encode(message.managedServiceConfigs[i], writer.uint32(/* id 11, wireType 2 =*/90).fork()).ldelim();
+ if (message.serviceConfigId != null && Object.hasOwnProperty.call(message, "serviceConfigId"))
+ writer.uint32(/* id 12, wireType 2 =*/98).string(message.serviceConfigId);
+ if (message.gatewayServiceAccount != null && Object.hasOwnProperty.call(message, "gatewayServiceAccount"))
+ writer.uint32(/* id 14, wireType 2 =*/114).string(message.gatewayServiceAccount);
+ return writer;
+ };
+
+ /**
+ * Encodes the specified ApiConfig message, length delimited. Does not implicitly {@link google.cloud.apigateway.v1.ApiConfig.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.cloud.apigateway.v1.ApiConfig
+ * @static
+ * @param {google.cloud.apigateway.v1.IApiConfig} message ApiConfig message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ ApiConfig.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes an ApiConfig message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.cloud.apigateway.v1.ApiConfig
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.cloud.apigateway.v1.ApiConfig} ApiConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ ApiConfig.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.apigateway.v1.ApiConfig(), key, value;
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.name = reader.string();
+ break;
+ }
+ case 2: {
+ message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32());
+ break;
+ }
+ case 3: {
+ message.updateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32());
+ break;
+ }
+ case 4: {
+ if (message.labels === $util.emptyObject)
+ message.labels = {};
+ var end2 = reader.uint32() + reader.pos;
+ key = "";
+ value = "";
+ while (reader.pos < end2) {
+ var tag2 = reader.uint32();
+ switch (tag2 >>> 3) {
+ case 1:
+ key = reader.string();
+ break;
+ case 2:
+ value = reader.string();
+ break;
+ default:
+ reader.skipType(tag2 & 7);
+ break;
+ }
+ }
+ message.labels[key] = value;
+ break;
+ }
+ case 5: {
+ message.displayName = reader.string();
+ break;
+ }
+ case 14: {
+ message.gatewayServiceAccount = reader.string();
+ break;
+ }
+ case 12: {
+ message.serviceConfigId = reader.string();
+ break;
+ }
+ case 8: {
+ message.state = reader.int32();
+ break;
+ }
+ case 9: {
+ if (!(message.openapiDocuments && message.openapiDocuments.length))
+ message.openapiDocuments = [];
+ message.openapiDocuments.push($root.google.cloud.apigateway.v1.ApiConfig.OpenApiDocument.decode(reader, reader.uint32()));
+ break;
+ }
+ case 10: {
+ if (!(message.grpcServices && message.grpcServices.length))
+ message.grpcServices = [];
+ message.grpcServices.push($root.google.cloud.apigateway.v1.ApiConfig.GrpcServiceDefinition.decode(reader, reader.uint32()));
+ break;
+ }
+ case 11: {
+ if (!(message.managedServiceConfigs && message.managedServiceConfigs.length))
+ message.managedServiceConfigs = [];
+ message.managedServiceConfigs.push($root.google.cloud.apigateway.v1.ApiConfig.File.decode(reader, reader.uint32()));
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes an ApiConfig message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.cloud.apigateway.v1.ApiConfig
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.cloud.apigateway.v1.ApiConfig} ApiConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ ApiConfig.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies an ApiConfig message.
+ * @function verify
+ * @memberof google.cloud.apigateway.v1.ApiConfig
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ ApiConfig.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.createTime != null && message.hasOwnProperty("createTime")) {
+ var error = $root.google.protobuf.Timestamp.verify(message.createTime);
+ if (error)
+ return "createTime." + error;
+ }
+ if (message.updateTime != null && message.hasOwnProperty("updateTime")) {
+ var error = $root.google.protobuf.Timestamp.verify(message.updateTime);
+ if (error)
+ return "updateTime." + error;
+ }
+ if (message.labels != null && message.hasOwnProperty("labels")) {
+ if (!$util.isObject(message.labels))
+ return "labels: object expected";
+ var key = Object.keys(message.labels);
+ for (var i = 0; i < key.length; ++i)
+ if (!$util.isString(message.labels[key[i]]))
+ return "labels: string{k:string} expected";
+ }
+ if (message.displayName != null && message.hasOwnProperty("displayName"))
+ if (!$util.isString(message.displayName))
+ return "displayName: string expected";
+ if (message.gatewayServiceAccount != null && message.hasOwnProperty("gatewayServiceAccount"))
+ if (!$util.isString(message.gatewayServiceAccount))
+ return "gatewayServiceAccount: string expected";
+ if (message.serviceConfigId != null && message.hasOwnProperty("serviceConfigId"))
+ if (!$util.isString(message.serviceConfigId))
+ return "serviceConfigId: string expected";
+ if (message.state != null && message.hasOwnProperty("state"))
+ switch (message.state) {
+ default:
+ return "state: enum value expected";
+ case 0:
+ case 1:
+ case 2:
+ case 3:
+ case 4:
+ case 5:
+ case 6:
+ break;
+ }
+ if (message.openapiDocuments != null && message.hasOwnProperty("openapiDocuments")) {
+ if (!Array.isArray(message.openapiDocuments))
+ return "openapiDocuments: array expected";
+ for (var i = 0; i < message.openapiDocuments.length; ++i) {
+ var error = $root.google.cloud.apigateway.v1.ApiConfig.OpenApiDocument.verify(message.openapiDocuments[i]);
+ if (error)
+ return "openapiDocuments." + error;
+ }
+ }
+ if (message.grpcServices != null && message.hasOwnProperty("grpcServices")) {
+ if (!Array.isArray(message.grpcServices))
+ return "grpcServices: array expected";
+ for (var i = 0; i < message.grpcServices.length; ++i) {
+ var error = $root.google.cloud.apigateway.v1.ApiConfig.GrpcServiceDefinition.verify(message.grpcServices[i]);
+ if (error)
+ return "grpcServices." + error;
+ }
+ }
+ if (message.managedServiceConfigs != null && message.hasOwnProperty("managedServiceConfigs")) {
+ if (!Array.isArray(message.managedServiceConfigs))
+ return "managedServiceConfigs: array expected";
+ for (var i = 0; i < message.managedServiceConfigs.length; ++i) {
+ var error = $root.google.cloud.apigateway.v1.ApiConfig.File.verify(message.managedServiceConfigs[i]);
+ if (error)
+ return "managedServiceConfigs." + error;
+ }
+ }
+ return null;
+ };
+
+ /**
+ * Creates an ApiConfig message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.cloud.apigateway.v1.ApiConfig
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.cloud.apigateway.v1.ApiConfig} ApiConfig
+ */
+ ApiConfig.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.cloud.apigateway.v1.ApiConfig)
+ return object;
+ var message = new $root.google.cloud.apigateway.v1.ApiConfig();
+ if (object.name != null)
+ message.name = String(object.name);
+ if (object.createTime != null) {
+ if (typeof object.createTime !== "object")
+ throw TypeError(".google.cloud.apigateway.v1.ApiConfig.createTime: object expected");
+ message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime);
+ }
+ if (object.updateTime != null) {
+ if (typeof object.updateTime !== "object")
+ throw TypeError(".google.cloud.apigateway.v1.ApiConfig.updateTime: object expected");
+ message.updateTime = $root.google.protobuf.Timestamp.fromObject(object.updateTime);
+ }
+ if (object.labels) {
+ if (typeof object.labels !== "object")
+ throw TypeError(".google.cloud.apigateway.v1.ApiConfig.labels: object expected");
+ message.labels = {};
+ for (var keys = Object.keys(object.labels), i = 0; i < keys.length; ++i)
+ message.labels[keys[i]] = String(object.labels[keys[i]]);
+ }
+ if (object.displayName != null)
+ message.displayName = String(object.displayName);
+ if (object.gatewayServiceAccount != null)
+ message.gatewayServiceAccount = String(object.gatewayServiceAccount);
+ if (object.serviceConfigId != null)
+ message.serviceConfigId = String(object.serviceConfigId);
+ switch (object.state) {
+ default:
+ if (typeof object.state === "number") {
+ message.state = object.state;
+ break;
+ }
+ break;
+ case "STATE_UNSPECIFIED":
+ case 0:
+ message.state = 0;
+ break;
+ case "CREATING":
+ case 1:
+ message.state = 1;
+ break;
+ case "ACTIVE":
+ case 2:
+ message.state = 2;
+ break;
+ case "FAILED":
+ case 3:
+ message.state = 3;
+ break;
+ case "DELETING":
+ case 4:
+ message.state = 4;
+ break;
+ case "UPDATING":
+ case 5:
+ message.state = 5;
+ break;
+ case "ACTIVATING":
+ case 6:
+ message.state = 6;
+ break;
+ }
+ if (object.openapiDocuments) {
+ if (!Array.isArray(object.openapiDocuments))
+ throw TypeError(".google.cloud.apigateway.v1.ApiConfig.openapiDocuments: array expected");
+ message.openapiDocuments = [];
+ for (var i = 0; i < object.openapiDocuments.length; ++i) {
+ if (typeof object.openapiDocuments[i] !== "object")
+ throw TypeError(".google.cloud.apigateway.v1.ApiConfig.openapiDocuments: object expected");
+ message.openapiDocuments[i] = $root.google.cloud.apigateway.v1.ApiConfig.OpenApiDocument.fromObject(object.openapiDocuments[i]);
+ }
+ }
+ if (object.grpcServices) {
+ if (!Array.isArray(object.grpcServices))
+ throw TypeError(".google.cloud.apigateway.v1.ApiConfig.grpcServices: array expected");
+ message.grpcServices = [];
+ for (var i = 0; i < object.grpcServices.length; ++i) {
+ if (typeof object.grpcServices[i] !== "object")
+ throw TypeError(".google.cloud.apigateway.v1.ApiConfig.grpcServices: object expected");
+ message.grpcServices[i] = $root.google.cloud.apigateway.v1.ApiConfig.GrpcServiceDefinition.fromObject(object.grpcServices[i]);
+ }
+ }
+ if (object.managedServiceConfigs) {
+ if (!Array.isArray(object.managedServiceConfigs))
+ throw TypeError(".google.cloud.apigateway.v1.ApiConfig.managedServiceConfigs: array expected");
+ message.managedServiceConfigs = [];
+ for (var i = 0; i < object.managedServiceConfigs.length; ++i) {
+ if (typeof object.managedServiceConfigs[i] !== "object")
+ throw TypeError(".google.cloud.apigateway.v1.ApiConfig.managedServiceConfigs: object expected");
+ message.managedServiceConfigs[i] = $root.google.cloud.apigateway.v1.ApiConfig.File.fromObject(object.managedServiceConfigs[i]);
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Creates a plain object from an ApiConfig message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.cloud.apigateway.v1.ApiConfig
+ * @static
+ * @param {google.cloud.apigateway.v1.ApiConfig} message ApiConfig
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ ApiConfig.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.arrays || options.defaults) {
+ object.openapiDocuments = [];
+ object.grpcServices = [];
+ object.managedServiceConfigs = [];
+ }
+ if (options.objects || options.defaults)
+ object.labels = {};
+ if (options.defaults) {
+ object.name = "";
+ object.createTime = null;
+ object.updateTime = null;
+ object.displayName = "";
+ object.state = options.enums === String ? "STATE_UNSPECIFIED" : 0;
+ object.serviceConfigId = "";
+ object.gatewayServiceAccount = "";
+ }
+ if (message.name != null && message.hasOwnProperty("name"))
+ object.name = message.name;
+ if (message.createTime != null && message.hasOwnProperty("createTime"))
+ object.createTime = $root.google.protobuf.Timestamp.toObject(message.createTime, options);
+ if (message.updateTime != null && message.hasOwnProperty("updateTime"))
+ object.updateTime = $root.google.protobuf.Timestamp.toObject(message.updateTime, options);
+ var keys2;
+ if (message.labels && (keys2 = Object.keys(message.labels)).length) {
+ object.labels = {};
+ for (var j = 0; j < keys2.length; ++j)
+ object.labels[keys2[j]] = message.labels[keys2[j]];
+ }
+ if (message.displayName != null && message.hasOwnProperty("displayName"))
+ object.displayName = message.displayName;
+ if (message.state != null && message.hasOwnProperty("state"))
+ object.state = options.enums === String ? $root.google.cloud.apigateway.v1.ApiConfig.State[message.state] === undefined ? message.state : $root.google.cloud.apigateway.v1.ApiConfig.State[message.state] : message.state;
+ if (message.openapiDocuments && message.openapiDocuments.length) {
+ object.openapiDocuments = [];
+ for (var j = 0; j < message.openapiDocuments.length; ++j)
+ object.openapiDocuments[j] = $root.google.cloud.apigateway.v1.ApiConfig.OpenApiDocument.toObject(message.openapiDocuments[j], options);
+ }
+ if (message.grpcServices && message.grpcServices.length) {
+ object.grpcServices = [];
+ for (var j = 0; j < message.grpcServices.length; ++j)
+ object.grpcServices[j] = $root.google.cloud.apigateway.v1.ApiConfig.GrpcServiceDefinition.toObject(message.grpcServices[j], options);
+ }
+ if (message.managedServiceConfigs && message.managedServiceConfigs.length) {
+ object.managedServiceConfigs = [];
+ for (var j = 0; j < message.managedServiceConfigs.length; ++j)
+ object.managedServiceConfigs[j] = $root.google.cloud.apigateway.v1.ApiConfig.File.toObject(message.managedServiceConfigs[j], options);
+ }
+ if (message.serviceConfigId != null && message.hasOwnProperty("serviceConfigId"))
+ object.serviceConfigId = message.serviceConfigId;
+ if (message.gatewayServiceAccount != null && message.hasOwnProperty("gatewayServiceAccount"))
+ object.gatewayServiceAccount = message.gatewayServiceAccount;
+ return object;
+ };
+
+ /**
+ * Converts this ApiConfig to JSON.
+ * @function toJSON
+ * @memberof google.cloud.apigateway.v1.ApiConfig
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ ApiConfig.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for ApiConfig
+ * @function getTypeUrl
+ * @memberof google.cloud.apigateway.v1.ApiConfig
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ ApiConfig.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.cloud.apigateway.v1.ApiConfig";
+ };
+
+ ApiConfig.File = (function() {
+
+ /**
+ * Properties of a File.
+ * @memberof google.cloud.apigateway.v1.ApiConfig
+ * @interface IFile
+ * @property {string|null} [path] File path
+ * @property {Uint8Array|null} [contents] File contents
+ */
+
+ /**
+ * Constructs a new File.
+ * @memberof google.cloud.apigateway.v1.ApiConfig
+ * @classdesc Represents a File.
+ * @implements IFile
+ * @constructor
+ * @param {google.cloud.apigateway.v1.ApiConfig.IFile=} [properties] Properties to set
+ */
+ function File(properties) {
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * File path.
+ * @member {string} path
+ * @memberof google.cloud.apigateway.v1.ApiConfig.File
+ * @instance
+ */
+ File.prototype.path = "";
+
+ /**
+ * File contents.
+ * @member {Uint8Array} contents
+ * @memberof google.cloud.apigateway.v1.ApiConfig.File
+ * @instance
+ */
+ File.prototype.contents = $util.newBuffer([]);
+
+ /**
+ * Creates a new File instance using the specified properties.
+ * @function create
+ * @memberof google.cloud.apigateway.v1.ApiConfig.File
+ * @static
+ * @param {google.cloud.apigateway.v1.ApiConfig.IFile=} [properties] Properties to set
+ * @returns {google.cloud.apigateway.v1.ApiConfig.File} File instance
+ */
+ File.create = function create(properties) {
+ return new File(properties);
+ };
+
+ /**
+ * Encodes the specified File message. Does not implicitly {@link google.cloud.apigateway.v1.ApiConfig.File.verify|verify} messages.
+ * @function encode
+ * @memberof google.cloud.apigateway.v1.ApiConfig.File
+ * @static
+ * @param {google.cloud.apigateway.v1.ApiConfig.IFile} message File message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ File.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.path != null && Object.hasOwnProperty.call(message, "path"))
+ writer.uint32(/* id 1, wireType 2 =*/10).string(message.path);
+ if (message.contents != null && Object.hasOwnProperty.call(message, "contents"))
+ writer.uint32(/* id 2, wireType 2 =*/18).bytes(message.contents);
+ return writer;
+ };
+
+ /**
+ * Encodes the specified File message, length delimited. Does not implicitly {@link google.cloud.apigateway.v1.ApiConfig.File.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.cloud.apigateway.v1.ApiConfig.File
+ * @static
+ * @param {google.cloud.apigateway.v1.ApiConfig.IFile} message File message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ File.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a File message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.cloud.apigateway.v1.ApiConfig.File
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.cloud.apigateway.v1.ApiConfig.File} File
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ File.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.apigateway.v1.ApiConfig.File();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.path = reader.string();
+ break;
+ }
+ case 2: {
+ message.contents = reader.bytes();
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a File message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.cloud.apigateway.v1.ApiConfig.File
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.cloud.apigateway.v1.ApiConfig.File} File
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ File.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a File message.
+ * @function verify
+ * @memberof google.cloud.apigateway.v1.ApiConfig.File
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ File.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.path != null && message.hasOwnProperty("path"))
+ if (!$util.isString(message.path))
+ return "path: string expected";
+ if (message.contents != null && message.hasOwnProperty("contents"))
+ if (!(message.contents && typeof message.contents.length === "number" || $util.isString(message.contents)))
+ return "contents: buffer expected";
+ return null;
+ };
+
+ /**
+ * Creates a File message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.cloud.apigateway.v1.ApiConfig.File
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.cloud.apigateway.v1.ApiConfig.File} File
+ */
+ File.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.cloud.apigateway.v1.ApiConfig.File)
+ return object;
+ var message = new $root.google.cloud.apigateway.v1.ApiConfig.File();
+ if (object.path != null)
+ message.path = String(object.path);
+ if (object.contents != null)
+ if (typeof object.contents === "string")
+ $util.base64.decode(object.contents, message.contents = $util.newBuffer($util.base64.length(object.contents)), 0);
+ else if (object.contents.length >= 0)
+ message.contents = object.contents;
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a File message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.cloud.apigateway.v1.ApiConfig.File
+ * @static
+ * @param {google.cloud.apigateway.v1.ApiConfig.File} message File
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ File.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.defaults) {
+ object.path = "";
+ if (options.bytes === String)
+ object.contents = "";
+ else {
+ object.contents = [];
+ if (options.bytes !== Array)
+ object.contents = $util.newBuffer(object.contents);
+ }
+ }
+ if (message.path != null && message.hasOwnProperty("path"))
+ object.path = message.path;
+ if (message.contents != null && message.hasOwnProperty("contents"))
+ object.contents = options.bytes === String ? $util.base64.encode(message.contents, 0, message.contents.length) : options.bytes === Array ? Array.prototype.slice.call(message.contents) : message.contents;
+ return object;
+ };
+
+ /**
+ * Converts this File to JSON.
+ * @function toJSON
+ * @memberof google.cloud.apigateway.v1.ApiConfig.File
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ File.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for File
+ * @function getTypeUrl
+ * @memberof google.cloud.apigateway.v1.ApiConfig.File
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ File.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.cloud.apigateway.v1.ApiConfig.File";
+ };
+
+ return File;
+ })();
+
+ ApiConfig.OpenApiDocument = (function() {
+
+ /**
+ * Properties of an OpenApiDocument.
+ * @memberof google.cloud.apigateway.v1.ApiConfig
+ * @interface IOpenApiDocument
+ * @property {google.cloud.apigateway.v1.ApiConfig.IFile|null} [document] OpenApiDocument document
+ */
+
+ /**
+ * Constructs a new OpenApiDocument.
+ * @memberof google.cloud.apigateway.v1.ApiConfig
+ * @classdesc Represents an OpenApiDocument.
+ * @implements IOpenApiDocument
+ * @constructor
+ * @param {google.cloud.apigateway.v1.ApiConfig.IOpenApiDocument=} [properties] Properties to set
+ */
+ function OpenApiDocument(properties) {
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * OpenApiDocument document.
+ * @member {google.cloud.apigateway.v1.ApiConfig.IFile|null|undefined} document
+ * @memberof google.cloud.apigateway.v1.ApiConfig.OpenApiDocument
+ * @instance
+ */
+ OpenApiDocument.prototype.document = null;
+
+ /**
+ * Creates a new OpenApiDocument instance using the specified properties.
+ * @function create
+ * @memberof google.cloud.apigateway.v1.ApiConfig.OpenApiDocument
+ * @static
+ * @param {google.cloud.apigateway.v1.ApiConfig.IOpenApiDocument=} [properties] Properties to set
+ * @returns {google.cloud.apigateway.v1.ApiConfig.OpenApiDocument} OpenApiDocument instance
+ */
+ OpenApiDocument.create = function create(properties) {
+ return new OpenApiDocument(properties);
+ };
+
+ /**
+ * Encodes the specified OpenApiDocument message. Does not implicitly {@link google.cloud.apigateway.v1.ApiConfig.OpenApiDocument.verify|verify} messages.
+ * @function encode
+ * @memberof google.cloud.apigateway.v1.ApiConfig.OpenApiDocument
+ * @static
+ * @param {google.cloud.apigateway.v1.ApiConfig.IOpenApiDocument} message OpenApiDocument message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ OpenApiDocument.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.document != null && Object.hasOwnProperty.call(message, "document"))
+ $root.google.cloud.apigateway.v1.ApiConfig.File.encode(message.document, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim();
+ return writer;
+ };
+
+ /**
+ * Encodes the specified OpenApiDocument message, length delimited. Does not implicitly {@link google.cloud.apigateway.v1.ApiConfig.OpenApiDocument.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.cloud.apigateway.v1.ApiConfig.OpenApiDocument
+ * @static
+ * @param {google.cloud.apigateway.v1.ApiConfig.IOpenApiDocument} message OpenApiDocument message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ OpenApiDocument.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes an OpenApiDocument message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.cloud.apigateway.v1.ApiConfig.OpenApiDocument
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.cloud.apigateway.v1.ApiConfig.OpenApiDocument} OpenApiDocument
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ OpenApiDocument.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.apigateway.v1.ApiConfig.OpenApiDocument();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.document = $root.google.cloud.apigateway.v1.ApiConfig.File.decode(reader, reader.uint32());
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes an OpenApiDocument message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.cloud.apigateway.v1.ApiConfig.OpenApiDocument
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.cloud.apigateway.v1.ApiConfig.OpenApiDocument} OpenApiDocument
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ OpenApiDocument.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies an OpenApiDocument message.
+ * @function verify
+ * @memberof google.cloud.apigateway.v1.ApiConfig.OpenApiDocument
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ OpenApiDocument.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.document != null && message.hasOwnProperty("document")) {
+ var error = $root.google.cloud.apigateway.v1.ApiConfig.File.verify(message.document);
+ if (error)
+ return "document." + error;
+ }
+ return null;
+ };
+
+ /**
+ * Creates an OpenApiDocument message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.cloud.apigateway.v1.ApiConfig.OpenApiDocument
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.cloud.apigateway.v1.ApiConfig.OpenApiDocument} OpenApiDocument
+ */
+ OpenApiDocument.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.cloud.apigateway.v1.ApiConfig.OpenApiDocument)
+ return object;
+ var message = new $root.google.cloud.apigateway.v1.ApiConfig.OpenApiDocument();
+ if (object.document != null) {
+ if (typeof object.document !== "object")
+ throw TypeError(".google.cloud.apigateway.v1.ApiConfig.OpenApiDocument.document: object expected");
+ message.document = $root.google.cloud.apigateway.v1.ApiConfig.File.fromObject(object.document);
+ }
+ return message;
+ };
+
+ /**
+ * Creates a plain object from an OpenApiDocument message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.cloud.apigateway.v1.ApiConfig.OpenApiDocument
+ * @static
+ * @param {google.cloud.apigateway.v1.ApiConfig.OpenApiDocument} message OpenApiDocument
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ OpenApiDocument.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.defaults)
+ object.document = null;
+ if (message.document != null && message.hasOwnProperty("document"))
+ object.document = $root.google.cloud.apigateway.v1.ApiConfig.File.toObject(message.document, options);
+ return object;
+ };
+
+ /**
+ * Converts this OpenApiDocument to JSON.
+ * @function toJSON
+ * @memberof google.cloud.apigateway.v1.ApiConfig.OpenApiDocument
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ OpenApiDocument.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for OpenApiDocument
+ * @function getTypeUrl
+ * @memberof google.cloud.apigateway.v1.ApiConfig.OpenApiDocument
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ OpenApiDocument.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.cloud.apigateway.v1.ApiConfig.OpenApiDocument";
+ };
+
+ return OpenApiDocument;
+ })();
+
+ ApiConfig.GrpcServiceDefinition = (function() {
+
+ /**
+ * Properties of a GrpcServiceDefinition.
+ * @memberof google.cloud.apigateway.v1.ApiConfig
+ * @interface IGrpcServiceDefinition
+ * @property {google.cloud.apigateway.v1.ApiConfig.IFile|null} [fileDescriptorSet] GrpcServiceDefinition fileDescriptorSet
+ * @property {Array.|null} [source] GrpcServiceDefinition source
+ */
+
+ /**
+ * Constructs a new GrpcServiceDefinition.
+ * @memberof google.cloud.apigateway.v1.ApiConfig
+ * @classdesc Represents a GrpcServiceDefinition.
+ * @implements IGrpcServiceDefinition
+ * @constructor
+ * @param {google.cloud.apigateway.v1.ApiConfig.IGrpcServiceDefinition=} [properties] Properties to set
+ */
+ function GrpcServiceDefinition(properties) {
+ this.source = [];
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * GrpcServiceDefinition fileDescriptorSet.
+ * @member {google.cloud.apigateway.v1.ApiConfig.IFile|null|undefined} fileDescriptorSet
+ * @memberof google.cloud.apigateway.v1.ApiConfig.GrpcServiceDefinition
+ * @instance
+ */
+ GrpcServiceDefinition.prototype.fileDescriptorSet = null;
+
+ /**
+ * GrpcServiceDefinition source.
+ * @member {Array.} source
+ * @memberof google.cloud.apigateway.v1.ApiConfig.GrpcServiceDefinition
+ * @instance
+ */
+ GrpcServiceDefinition.prototype.source = $util.emptyArray;
+
+ /**
+ * Creates a new GrpcServiceDefinition instance using the specified properties.
+ * @function create
+ * @memberof google.cloud.apigateway.v1.ApiConfig.GrpcServiceDefinition
+ * @static
+ * @param {google.cloud.apigateway.v1.ApiConfig.IGrpcServiceDefinition=} [properties] Properties to set
+ * @returns {google.cloud.apigateway.v1.ApiConfig.GrpcServiceDefinition} GrpcServiceDefinition instance
+ */
+ GrpcServiceDefinition.create = function create(properties) {
+ return new GrpcServiceDefinition(properties);
+ };
+
+ /**
+ * Encodes the specified GrpcServiceDefinition message. Does not implicitly {@link google.cloud.apigateway.v1.ApiConfig.GrpcServiceDefinition.verify|verify} messages.
+ * @function encode
+ * @memberof google.cloud.apigateway.v1.ApiConfig.GrpcServiceDefinition
+ * @static
+ * @param {google.cloud.apigateway.v1.ApiConfig.IGrpcServiceDefinition} message GrpcServiceDefinition message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ GrpcServiceDefinition.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.fileDescriptorSet != null && Object.hasOwnProperty.call(message, "fileDescriptorSet"))
+ $root.google.cloud.apigateway.v1.ApiConfig.File.encode(message.fileDescriptorSet, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim();
+ if (message.source != null && message.source.length)
+ for (var i = 0; i < message.source.length; ++i)
+ $root.google.cloud.apigateway.v1.ApiConfig.File.encode(message.source[i], writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim();
+ return writer;
+ };
+
+ /**
+ * Encodes the specified GrpcServiceDefinition message, length delimited. Does not implicitly {@link google.cloud.apigateway.v1.ApiConfig.GrpcServiceDefinition.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.cloud.apigateway.v1.ApiConfig.GrpcServiceDefinition
+ * @static
+ * @param {google.cloud.apigateway.v1.ApiConfig.IGrpcServiceDefinition} message GrpcServiceDefinition message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ GrpcServiceDefinition.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a GrpcServiceDefinition message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.cloud.apigateway.v1.ApiConfig.GrpcServiceDefinition
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.cloud.apigateway.v1.ApiConfig.GrpcServiceDefinition} GrpcServiceDefinition
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ GrpcServiceDefinition.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.apigateway.v1.ApiConfig.GrpcServiceDefinition();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.fileDescriptorSet = $root.google.cloud.apigateway.v1.ApiConfig.File.decode(reader, reader.uint32());
+ break;
+ }
+ case 2: {
+ if (!(message.source && message.source.length))
+ message.source = [];
+ message.source.push($root.google.cloud.apigateway.v1.ApiConfig.File.decode(reader, reader.uint32()));
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a GrpcServiceDefinition message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.cloud.apigateway.v1.ApiConfig.GrpcServiceDefinition
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.cloud.apigateway.v1.ApiConfig.GrpcServiceDefinition} GrpcServiceDefinition
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ GrpcServiceDefinition.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a GrpcServiceDefinition message.
+ * @function verify
+ * @memberof google.cloud.apigateway.v1.ApiConfig.GrpcServiceDefinition
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ GrpcServiceDefinition.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.fileDescriptorSet != null && message.hasOwnProperty("fileDescriptorSet")) {
+ var error = $root.google.cloud.apigateway.v1.ApiConfig.File.verify(message.fileDescriptorSet);
+ if (error)
+ return "fileDescriptorSet." + error;
+ }
+ if (message.source != null && message.hasOwnProperty("source")) {
+ if (!Array.isArray(message.source))
+ return "source: array expected";
+ for (var i = 0; i < message.source.length; ++i) {
+ var error = $root.google.cloud.apigateway.v1.ApiConfig.File.verify(message.source[i]);
+ if (error)
+ return "source." + error;
+ }
+ }
+ return null;
+ };
+
+ /**
+ * Creates a GrpcServiceDefinition message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.cloud.apigateway.v1.ApiConfig.GrpcServiceDefinition
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.cloud.apigateway.v1.ApiConfig.GrpcServiceDefinition} GrpcServiceDefinition
+ */
+ GrpcServiceDefinition.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.cloud.apigateway.v1.ApiConfig.GrpcServiceDefinition)
+ return object;
+ var message = new $root.google.cloud.apigateway.v1.ApiConfig.GrpcServiceDefinition();
+ if (object.fileDescriptorSet != null) {
+ if (typeof object.fileDescriptorSet !== "object")
+ throw TypeError(".google.cloud.apigateway.v1.ApiConfig.GrpcServiceDefinition.fileDescriptorSet: object expected");
+ message.fileDescriptorSet = $root.google.cloud.apigateway.v1.ApiConfig.File.fromObject(object.fileDescriptorSet);
+ }
+ if (object.source) {
+ if (!Array.isArray(object.source))
+ throw TypeError(".google.cloud.apigateway.v1.ApiConfig.GrpcServiceDefinition.source: array expected");
+ message.source = [];
+ for (var i = 0; i < object.source.length; ++i) {
+ if (typeof object.source[i] !== "object")
+ throw TypeError(".google.cloud.apigateway.v1.ApiConfig.GrpcServiceDefinition.source: object expected");
+ message.source[i] = $root.google.cloud.apigateway.v1.ApiConfig.File.fromObject(object.source[i]);
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a GrpcServiceDefinition message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.cloud.apigateway.v1.ApiConfig.GrpcServiceDefinition
+ * @static
+ * @param {google.cloud.apigateway.v1.ApiConfig.GrpcServiceDefinition} message GrpcServiceDefinition
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ GrpcServiceDefinition.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.arrays || options.defaults)
+ object.source = [];
+ if (options.defaults)
+ object.fileDescriptorSet = null;
+ if (message.fileDescriptorSet != null && message.hasOwnProperty("fileDescriptorSet"))
+ object.fileDescriptorSet = $root.google.cloud.apigateway.v1.ApiConfig.File.toObject(message.fileDescriptorSet, options);
+ if (message.source && message.source.length) {
+ object.source = [];
+ for (var j = 0; j < message.source.length; ++j)
+ object.source[j] = $root.google.cloud.apigateway.v1.ApiConfig.File.toObject(message.source[j], options);
+ }
+ return object;
+ };
+
+ /**
+ * Converts this GrpcServiceDefinition to JSON.
+ * @function toJSON
+ * @memberof google.cloud.apigateway.v1.ApiConfig.GrpcServiceDefinition
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ GrpcServiceDefinition.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for GrpcServiceDefinition
+ * @function getTypeUrl
+ * @memberof google.cloud.apigateway.v1.ApiConfig.GrpcServiceDefinition
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ GrpcServiceDefinition.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.cloud.apigateway.v1.ApiConfig.GrpcServiceDefinition";
+ };
+
+ return GrpcServiceDefinition;
+ })();
+
+ /**
+ * State enum.
+ * @name google.cloud.apigateway.v1.ApiConfig.State
+ * @enum {number}
+ * @property {number} STATE_UNSPECIFIED=0 STATE_UNSPECIFIED value
+ * @property {number} CREATING=1 CREATING value
+ * @property {number} ACTIVE=2 ACTIVE value
+ * @property {number} FAILED=3 FAILED value
+ * @property {number} DELETING=4 DELETING value
+ * @property {number} UPDATING=5 UPDATING value
+ * @property {number} ACTIVATING=6 ACTIVATING value
+ */
+ ApiConfig.State = (function() {
+ var valuesById = {}, values = Object.create(valuesById);
+ values[valuesById[0] = "STATE_UNSPECIFIED"] = 0;
+ values[valuesById[1] = "CREATING"] = 1;
+ values[valuesById[2] = "ACTIVE"] = 2;
+ values[valuesById[3] = "FAILED"] = 3;
+ values[valuesById[4] = "DELETING"] = 4;
+ values[valuesById[5] = "UPDATING"] = 5;
+ values[valuesById[6] = "ACTIVATING"] = 6;
+ return values;
+ })();
+
+ return ApiConfig;
+ })();
+
+ v1.Gateway = (function() {
+
+ /**
+ * Properties of a Gateway.
+ * @memberof google.cloud.apigateway.v1
+ * @interface IGateway
+ * @property {string|null} [name] Gateway name
+ * @property {google.protobuf.ITimestamp|null} [createTime] Gateway createTime
+ * @property {google.protobuf.ITimestamp|null} [updateTime] Gateway updateTime
+ * @property {Object.|null} [labels] Gateway labels
+ * @property {string|null} [displayName] Gateway displayName
+ * @property {string|null} [apiConfig] Gateway apiConfig
+ * @property {google.cloud.apigateway.v1.Gateway.State|null} [state] Gateway state
+ * @property {string|null} [defaultHostname] Gateway defaultHostname
+ */
+
+ /**
+ * Constructs a new Gateway.
+ * @memberof google.cloud.apigateway.v1
+ * @classdesc Represents a Gateway.
+ * @implements IGateway
+ * @constructor
+ * @param {google.cloud.apigateway.v1.IGateway=} [properties] Properties to set
+ */
+ function Gateway(properties) {
+ this.labels = {};
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * Gateway name.
+ * @member {string} name
+ * @memberof google.cloud.apigateway.v1.Gateway
+ * @instance
+ */
+ Gateway.prototype.name = "";
+
+ /**
+ * Gateway createTime.
+ * @member {google.protobuf.ITimestamp|null|undefined} createTime
+ * @memberof google.cloud.apigateway.v1.Gateway
+ * @instance
+ */
+ Gateway.prototype.createTime = null;
+
+ /**
+ * Gateway updateTime.
+ * @member {google.protobuf.ITimestamp|null|undefined} updateTime
+ * @memberof google.cloud.apigateway.v1.Gateway
+ * @instance
+ */
+ Gateway.prototype.updateTime = null;
+
+ /**
+ * Gateway labels.
+ * @member {Object.} labels
+ * @memberof google.cloud.apigateway.v1.Gateway
+ * @instance
+ */
+ Gateway.prototype.labels = $util.emptyObject;
+
+ /**
+ * Gateway displayName.
+ * @member {string} displayName
+ * @memberof google.cloud.apigateway.v1.Gateway
+ * @instance
+ */
+ Gateway.prototype.displayName = "";
+
+ /**
+ * Gateway apiConfig.
+ * @member {string} apiConfig
+ * @memberof google.cloud.apigateway.v1.Gateway
+ * @instance
+ */
+ Gateway.prototype.apiConfig = "";
+
+ /**
+ * Gateway state.
+ * @member {google.cloud.apigateway.v1.Gateway.State} state
+ * @memberof google.cloud.apigateway.v1.Gateway
+ * @instance
+ */
+ Gateway.prototype.state = 0;
+
+ /**
+ * Gateway defaultHostname.
+ * @member {string} defaultHostname
+ * @memberof google.cloud.apigateway.v1.Gateway
+ * @instance
+ */
+ Gateway.prototype.defaultHostname = "";
+
+ /**
+ * Creates a new Gateway instance using the specified properties.
+ * @function create
+ * @memberof google.cloud.apigateway.v1.Gateway
+ * @static
+ * @param {google.cloud.apigateway.v1.IGateway=} [properties] Properties to set
+ * @returns {google.cloud.apigateway.v1.Gateway} Gateway instance
+ */
+ Gateway.create = function create(properties) {
+ return new Gateway(properties);
+ };
+
+ /**
+ * Encodes the specified Gateway message. Does not implicitly {@link google.cloud.apigateway.v1.Gateway.verify|verify} messages.
+ * @function encode
+ * @memberof google.cloud.apigateway.v1.Gateway
+ * @static
+ * @param {google.cloud.apigateway.v1.IGateway} message Gateway message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ Gateway.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.createTime != null && Object.hasOwnProperty.call(message, "createTime"))
+ $root.google.protobuf.Timestamp.encode(message.createTime, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim();
+ if (message.updateTime != null && Object.hasOwnProperty.call(message, "updateTime"))
+ $root.google.protobuf.Timestamp.encode(message.updateTime, writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim();
+ if (message.labels != null && Object.hasOwnProperty.call(message, "labels"))
+ for (var keys = Object.keys(message.labels), i = 0; i < keys.length; ++i)
+ writer.uint32(/* id 4, wireType 2 =*/34).fork().uint32(/* id 1, wireType 2 =*/10).string(keys[i]).uint32(/* id 2, wireType 2 =*/18).string(message.labels[keys[i]]).ldelim();
+ if (message.displayName != null && Object.hasOwnProperty.call(message, "displayName"))
+ writer.uint32(/* id 5, wireType 2 =*/42).string(message.displayName);
+ if (message.apiConfig != null && Object.hasOwnProperty.call(message, "apiConfig"))
+ writer.uint32(/* id 6, wireType 2 =*/50).string(message.apiConfig);
+ if (message.state != null && Object.hasOwnProperty.call(message, "state"))
+ writer.uint32(/* id 7, wireType 0 =*/56).int32(message.state);
+ if (message.defaultHostname != null && Object.hasOwnProperty.call(message, "defaultHostname"))
+ writer.uint32(/* id 9, wireType 2 =*/74).string(message.defaultHostname);
+ return writer;
+ };
+
+ /**
+ * Encodes the specified Gateway message, length delimited. Does not implicitly {@link google.cloud.apigateway.v1.Gateway.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.cloud.apigateway.v1.Gateway
+ * @static
+ * @param {google.cloud.apigateway.v1.IGateway} message Gateway message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ Gateway.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a Gateway message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.cloud.apigateway.v1.Gateway
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.cloud.apigateway.v1.Gateway} Gateway
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ Gateway.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.apigateway.v1.Gateway(), key, value;
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.name = reader.string();
+ break;
+ }
+ case 2: {
+ message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32());
+ break;
+ }
+ case 3: {
+ message.updateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32());
+ break;
+ }
+ case 4: {
+ if (message.labels === $util.emptyObject)
+ message.labels = {};
+ var end2 = reader.uint32() + reader.pos;
+ key = "";
+ value = "";
+ while (reader.pos < end2) {
+ var tag2 = reader.uint32();
+ switch (tag2 >>> 3) {
+ case 1:
+ key = reader.string();
+ break;
+ case 2:
+ value = reader.string();
+ break;
+ default:
+ reader.skipType(tag2 & 7);
+ break;
+ }
+ }
+ message.labels[key] = value;
+ break;
+ }
+ case 5: {
+ message.displayName = reader.string();
+ break;
+ }
+ case 6: {
+ message.apiConfig = reader.string();
+ break;
+ }
+ case 7: {
+ message.state = reader.int32();
+ break;
+ }
+ case 9: {
+ message.defaultHostname = reader.string();
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a Gateway message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.cloud.apigateway.v1.Gateway
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.cloud.apigateway.v1.Gateway} Gateway
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ Gateway.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a Gateway message.
+ * @function verify
+ * @memberof google.cloud.apigateway.v1.Gateway
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ Gateway.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.createTime != null && message.hasOwnProperty("createTime")) {
+ var error = $root.google.protobuf.Timestamp.verify(message.createTime);
+ if (error)
+ return "createTime." + error;
+ }
+ if (message.updateTime != null && message.hasOwnProperty("updateTime")) {
+ var error = $root.google.protobuf.Timestamp.verify(message.updateTime);
+ if (error)
+ return "updateTime." + error;
+ }
+ if (message.labels != null && message.hasOwnProperty("labels")) {
+ if (!$util.isObject(message.labels))
+ return "labels: object expected";
+ var key = Object.keys(message.labels);
+ for (var i = 0; i < key.length; ++i)
+ if (!$util.isString(message.labels[key[i]]))
+ return "labels: string{k:string} expected";
+ }
+ if (message.displayName != null && message.hasOwnProperty("displayName"))
+ if (!$util.isString(message.displayName))
+ return "displayName: string expected";
+ if (message.apiConfig != null && message.hasOwnProperty("apiConfig"))
+ if (!$util.isString(message.apiConfig))
+ return "apiConfig: string expected";
+ if (message.state != null && message.hasOwnProperty("state"))
+ switch (message.state) {
+ default:
+ return "state: enum value expected";
+ case 0:
+ case 1:
+ case 2:
+ case 3:
+ case 4:
+ case 5:
+ break;
+ }
+ if (message.defaultHostname != null && message.hasOwnProperty("defaultHostname"))
+ if (!$util.isString(message.defaultHostname))
+ return "defaultHostname: string expected";
+ return null;
+ };
+
+ /**
+ * Creates a Gateway message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.cloud.apigateway.v1.Gateway
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.cloud.apigateway.v1.Gateway} Gateway
+ */
+ Gateway.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.cloud.apigateway.v1.Gateway)
+ return object;
+ var message = new $root.google.cloud.apigateway.v1.Gateway();
+ if (object.name != null)
+ message.name = String(object.name);
+ if (object.createTime != null) {
+ if (typeof object.createTime !== "object")
+ throw TypeError(".google.cloud.apigateway.v1.Gateway.createTime: object expected");
+ message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime);
+ }
+ if (object.updateTime != null) {
+ if (typeof object.updateTime !== "object")
+ throw TypeError(".google.cloud.apigateway.v1.Gateway.updateTime: object expected");
+ message.updateTime = $root.google.protobuf.Timestamp.fromObject(object.updateTime);
+ }
+ if (object.labels) {
+ if (typeof object.labels !== "object")
+ throw TypeError(".google.cloud.apigateway.v1.Gateway.labels: object expected");
+ message.labels = {};
+ for (var keys = Object.keys(object.labels), i = 0; i < keys.length; ++i)
+ message.labels[keys[i]] = String(object.labels[keys[i]]);
+ }
+ if (object.displayName != null)
+ message.displayName = String(object.displayName);
+ if (object.apiConfig != null)
+ message.apiConfig = String(object.apiConfig);
+ switch (object.state) {
+ default:
+ if (typeof object.state === "number") {
+ message.state = object.state;
+ break;
+ }
+ break;
+ case "STATE_UNSPECIFIED":
+ case 0:
+ message.state = 0;
+ break;
+ case "CREATING":
+ case 1:
+ message.state = 1;
+ break;
+ case "ACTIVE":
+ case 2:
+ message.state = 2;
+ break;
+ case "FAILED":
+ case 3:
+ message.state = 3;
+ break;
+ case "DELETING":
+ case 4:
+ message.state = 4;
+ break;
+ case "UPDATING":
+ case 5:
+ message.state = 5;
+ break;
+ }
+ if (object.defaultHostname != null)
+ message.defaultHostname = String(object.defaultHostname);
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a Gateway message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.cloud.apigateway.v1.Gateway
+ * @static
+ * @param {google.cloud.apigateway.v1.Gateway} message Gateway
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ Gateway.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.objects || options.defaults)
+ object.labels = {};
+ if (options.defaults) {
+ object.name = "";
+ object.createTime = null;
+ object.updateTime = null;
+ object.displayName = "";
+ object.apiConfig = "";
+ object.state = options.enums === String ? "STATE_UNSPECIFIED" : 0;
+ object.defaultHostname = "";
+ }
+ if (message.name != null && message.hasOwnProperty("name"))
+ object.name = message.name;
+ if (message.createTime != null && message.hasOwnProperty("createTime"))
+ object.createTime = $root.google.protobuf.Timestamp.toObject(message.createTime, options);
+ if (message.updateTime != null && message.hasOwnProperty("updateTime"))
+ object.updateTime = $root.google.protobuf.Timestamp.toObject(message.updateTime, options);
+ var keys2;
+ if (message.labels && (keys2 = Object.keys(message.labels)).length) {
+ object.labels = {};
+ for (var j = 0; j < keys2.length; ++j)
+ object.labels[keys2[j]] = message.labels[keys2[j]];
+ }
+ if (message.displayName != null && message.hasOwnProperty("displayName"))
+ object.displayName = message.displayName;
+ if (message.apiConfig != null && message.hasOwnProperty("apiConfig"))
+ object.apiConfig = message.apiConfig;
+ if (message.state != null && message.hasOwnProperty("state"))
+ object.state = options.enums === String ? $root.google.cloud.apigateway.v1.Gateway.State[message.state] === undefined ? message.state : $root.google.cloud.apigateway.v1.Gateway.State[message.state] : message.state;
+ if (message.defaultHostname != null && message.hasOwnProperty("defaultHostname"))
+ object.defaultHostname = message.defaultHostname;
+ return object;
+ };
+
+ /**
+ * Converts this Gateway to JSON.
+ * @function toJSON
+ * @memberof google.cloud.apigateway.v1.Gateway
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ Gateway.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for Gateway
+ * @function getTypeUrl
+ * @memberof google.cloud.apigateway.v1.Gateway
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ Gateway.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.cloud.apigateway.v1.Gateway";
+ };
+
+ /**
+ * State enum.
+ * @name google.cloud.apigateway.v1.Gateway.State
+ * @enum {number}
+ * @property {number} STATE_UNSPECIFIED=0 STATE_UNSPECIFIED value
+ * @property {number} CREATING=1 CREATING value
+ * @property {number} ACTIVE=2 ACTIVE value
+ * @property {number} FAILED=3 FAILED value
+ * @property {number} DELETING=4 DELETING value
+ * @property {number} UPDATING=5 UPDATING value
+ */
+ Gateway.State = (function() {
+ var valuesById = {}, values = Object.create(valuesById);
+ values[valuesById[0] = "STATE_UNSPECIFIED"] = 0;
+ values[valuesById[1] = "CREATING"] = 1;
+ values[valuesById[2] = "ACTIVE"] = 2;
+ values[valuesById[3] = "FAILED"] = 3;
+ values[valuesById[4] = "DELETING"] = 4;
+ values[valuesById[5] = "UPDATING"] = 5;
+ return values;
+ })();
+
+ return Gateway;
+ })();
+
+ v1.ListGatewaysRequest = (function() {
+
+ /**
+ * Properties of a ListGatewaysRequest.
+ * @memberof google.cloud.apigateway.v1
+ * @interface IListGatewaysRequest
+ * @property {string|null} [parent] ListGatewaysRequest parent
+ * @property {number|null} [pageSize] ListGatewaysRequest pageSize
+ * @property {string|null} [pageToken] ListGatewaysRequest pageToken
+ * @property {string|null} [filter] ListGatewaysRequest filter
+ * @property {string|null} [orderBy] ListGatewaysRequest orderBy
+ */
+
+ /**
+ * Constructs a new ListGatewaysRequest.
+ * @memberof google.cloud.apigateway.v1
+ * @classdesc Represents a ListGatewaysRequest.
+ * @implements IListGatewaysRequest
+ * @constructor
+ * @param {google.cloud.apigateway.v1.IListGatewaysRequest=} [properties] Properties to set
+ */
+ function ListGatewaysRequest(properties) {
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * ListGatewaysRequest parent.
+ * @member {string} parent
+ * @memberof google.cloud.apigateway.v1.ListGatewaysRequest
+ * @instance
+ */
+ ListGatewaysRequest.prototype.parent = "";
+
+ /**
+ * ListGatewaysRequest pageSize.
+ * @member {number} pageSize
+ * @memberof google.cloud.apigateway.v1.ListGatewaysRequest
+ * @instance
+ */
+ ListGatewaysRequest.prototype.pageSize = 0;
+
+ /**
+ * ListGatewaysRequest pageToken.
+ * @member {string} pageToken
+ * @memberof google.cloud.apigateway.v1.ListGatewaysRequest
+ * @instance
+ */
+ ListGatewaysRequest.prototype.pageToken = "";
+
+ /**
+ * ListGatewaysRequest filter.
+ * @member {string} filter
+ * @memberof google.cloud.apigateway.v1.ListGatewaysRequest
+ * @instance
+ */
+ ListGatewaysRequest.prototype.filter = "";
+
+ /**
+ * ListGatewaysRequest orderBy.
+ * @member {string} orderBy
+ * @memberof google.cloud.apigateway.v1.ListGatewaysRequest
+ * @instance
+ */
+ ListGatewaysRequest.prototype.orderBy = "";
+
+ /**
+ * Creates a new ListGatewaysRequest instance using the specified properties.
+ * @function create
+ * @memberof google.cloud.apigateway.v1.ListGatewaysRequest
+ * @static
+ * @param {google.cloud.apigateway.v1.IListGatewaysRequest=} [properties] Properties to set
+ * @returns {google.cloud.apigateway.v1.ListGatewaysRequest} ListGatewaysRequest instance
+ */
+ ListGatewaysRequest.create = function create(properties) {
+ return new ListGatewaysRequest(properties);
+ };
+
+ /**
+ * Encodes the specified ListGatewaysRequest message. Does not implicitly {@link google.cloud.apigateway.v1.ListGatewaysRequest.verify|verify} messages.
+ * @function encode
+ * @memberof google.cloud.apigateway.v1.ListGatewaysRequest
+ * @static
+ * @param {google.cloud.apigateway.v1.IListGatewaysRequest} message ListGatewaysRequest message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ ListGatewaysRequest.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.parent != null && Object.hasOwnProperty.call(message, "parent"))
+ writer.uint32(/* id 1, wireType 2 =*/10).string(message.parent);
+ if (message.pageSize != null && Object.hasOwnProperty.call(message, "pageSize"))
+ writer.uint32(/* id 2, wireType 0 =*/16).int32(message.pageSize);
+ if (message.pageToken != null && Object.hasOwnProperty.call(message, "pageToken"))
+ writer.uint32(/* id 3, wireType 2 =*/26).string(message.pageToken);
+ if (message.filter != null && Object.hasOwnProperty.call(message, "filter"))
+ writer.uint32(/* id 4, wireType 2 =*/34).string(message.filter);
+ if (message.orderBy != null && Object.hasOwnProperty.call(message, "orderBy"))
+ writer.uint32(/* id 5, wireType 2 =*/42).string(message.orderBy);
+ return writer;
+ };
+
+ /**
+ * Encodes the specified ListGatewaysRequest message, length delimited. Does not implicitly {@link google.cloud.apigateway.v1.ListGatewaysRequest.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.cloud.apigateway.v1.ListGatewaysRequest
+ * @static
+ * @param {google.cloud.apigateway.v1.IListGatewaysRequest} message ListGatewaysRequest message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ ListGatewaysRequest.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a ListGatewaysRequest message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.cloud.apigateway.v1.ListGatewaysRequest
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.cloud.apigateway.v1.ListGatewaysRequest} ListGatewaysRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ ListGatewaysRequest.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.apigateway.v1.ListGatewaysRequest();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.parent = reader.string();
+ break;
+ }
+ case 2: {
+ message.pageSize = reader.int32();
+ break;
+ }
+ case 3: {
+ message.pageToken = reader.string();
+ break;
+ }
+ case 4: {
+ message.filter = reader.string();
+ break;
+ }
+ case 5: {
+ message.orderBy = reader.string();
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a ListGatewaysRequest message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.cloud.apigateway.v1.ListGatewaysRequest
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.cloud.apigateway.v1.ListGatewaysRequest} ListGatewaysRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ ListGatewaysRequest.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a ListGatewaysRequest message.
+ * @function verify
+ * @memberof google.cloud.apigateway.v1.ListGatewaysRequest
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ ListGatewaysRequest.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.parent != null && message.hasOwnProperty("parent"))
+ if (!$util.isString(message.parent))
+ return "parent: string expected";
+ if (message.pageSize != null && message.hasOwnProperty("pageSize"))
+ if (!$util.isInteger(message.pageSize))
+ return "pageSize: integer expected";
+ if (message.pageToken != null && message.hasOwnProperty("pageToken"))
+ if (!$util.isString(message.pageToken))
+ return "pageToken: string expected";
+ if (message.filter != null && message.hasOwnProperty("filter"))
+ if (!$util.isString(message.filter))
+ return "filter: string expected";
+ if (message.orderBy != null && message.hasOwnProperty("orderBy"))
+ if (!$util.isString(message.orderBy))
+ return "orderBy: string expected";
+ return null;
+ };
+
+ /**
+ * Creates a ListGatewaysRequest message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.cloud.apigateway.v1.ListGatewaysRequest
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.cloud.apigateway.v1.ListGatewaysRequest} ListGatewaysRequest
+ */
+ ListGatewaysRequest.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.cloud.apigateway.v1.ListGatewaysRequest)
+ return object;
+ var message = new $root.google.cloud.apigateway.v1.ListGatewaysRequest();
+ if (object.parent != null)
+ message.parent = String(object.parent);
+ if (object.pageSize != null)
+ message.pageSize = object.pageSize | 0;
+ if (object.pageToken != null)
+ message.pageToken = String(object.pageToken);
+ if (object.filter != null)
+ message.filter = String(object.filter);
+ if (object.orderBy != null)
+ message.orderBy = String(object.orderBy);
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a ListGatewaysRequest message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.cloud.apigateway.v1.ListGatewaysRequest
+ * @static
+ * @param {google.cloud.apigateway.v1.ListGatewaysRequest} message ListGatewaysRequest
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ ListGatewaysRequest.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.defaults) {
+ object.parent = "";
+ object.pageSize = 0;
+ object.pageToken = "";
+ object.filter = "";
+ object.orderBy = "";
+ }
+ if (message.parent != null && message.hasOwnProperty("parent"))
+ object.parent = message.parent;
+ if (message.pageSize != null && message.hasOwnProperty("pageSize"))
+ object.pageSize = message.pageSize;
+ if (message.pageToken != null && message.hasOwnProperty("pageToken"))
+ object.pageToken = message.pageToken;
+ if (message.filter != null && message.hasOwnProperty("filter"))
+ object.filter = message.filter;
+ if (message.orderBy != null && message.hasOwnProperty("orderBy"))
+ object.orderBy = message.orderBy;
+ return object;
+ };
+
+ /**
+ * Converts this ListGatewaysRequest to JSON.
+ * @function toJSON
+ * @memberof google.cloud.apigateway.v1.ListGatewaysRequest
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ ListGatewaysRequest.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for ListGatewaysRequest
+ * @function getTypeUrl
+ * @memberof google.cloud.apigateway.v1.ListGatewaysRequest
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ ListGatewaysRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.cloud.apigateway.v1.ListGatewaysRequest";
+ };
+
+ return ListGatewaysRequest;
+ })();
+
+ v1.ListGatewaysResponse = (function() {
+
+ /**
+ * Properties of a ListGatewaysResponse.
+ * @memberof google.cloud.apigateway.v1
+ * @interface IListGatewaysResponse
+ * @property {Array.|null} [gateways] ListGatewaysResponse gateways
+ * @property {string|null} [nextPageToken] ListGatewaysResponse nextPageToken
+ * @property {Array.|null} [unreachableLocations] ListGatewaysResponse unreachableLocations
+ */
+
+ /**
+ * Constructs a new ListGatewaysResponse.
+ * @memberof google.cloud.apigateway.v1
+ * @classdesc Represents a ListGatewaysResponse.
+ * @implements IListGatewaysResponse
+ * @constructor
+ * @param {google.cloud.apigateway.v1.IListGatewaysResponse=} [properties] Properties to set
+ */
+ function ListGatewaysResponse(properties) {
+ this.gateways = [];
+ this.unreachableLocations = [];
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * ListGatewaysResponse gateways.
+ * @member {Array.} gateways
+ * @memberof google.cloud.apigateway.v1.ListGatewaysResponse
+ * @instance
+ */
+ ListGatewaysResponse.prototype.gateways = $util.emptyArray;
+
+ /**
+ * ListGatewaysResponse nextPageToken.
+ * @member {string} nextPageToken
+ * @memberof google.cloud.apigateway.v1.ListGatewaysResponse
+ * @instance
+ */
+ ListGatewaysResponse.prototype.nextPageToken = "";
+
+ /**
+ * ListGatewaysResponse unreachableLocations.
+ * @member {Array.} unreachableLocations
+ * @memberof google.cloud.apigateway.v1.ListGatewaysResponse
+ * @instance
+ */
+ ListGatewaysResponse.prototype.unreachableLocations = $util.emptyArray;
+
+ /**
+ * Creates a new ListGatewaysResponse instance using the specified properties.
+ * @function create
+ * @memberof google.cloud.apigateway.v1.ListGatewaysResponse
+ * @static
+ * @param {google.cloud.apigateway.v1.IListGatewaysResponse=} [properties] Properties to set
+ * @returns {google.cloud.apigateway.v1.ListGatewaysResponse} ListGatewaysResponse instance
+ */
+ ListGatewaysResponse.create = function create(properties) {
+ return new ListGatewaysResponse(properties);
+ };
+
+ /**
+ * Encodes the specified ListGatewaysResponse message. Does not implicitly {@link google.cloud.apigateway.v1.ListGatewaysResponse.verify|verify} messages.
+ * @function encode
+ * @memberof google.cloud.apigateway.v1.ListGatewaysResponse
+ * @static
+ * @param {google.cloud.apigateway.v1.IListGatewaysResponse} message ListGatewaysResponse message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ ListGatewaysResponse.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.gateways != null && message.gateways.length)
+ for (var i = 0; i < message.gateways.length; ++i)
+ $root.google.cloud.apigateway.v1.Gateway.encode(message.gateways[i], writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim();
+ if (message.nextPageToken != null && Object.hasOwnProperty.call(message, "nextPageToken"))
+ writer.uint32(/* id 2, wireType 2 =*/18).string(message.nextPageToken);
+ if (message.unreachableLocations != null && message.unreachableLocations.length)
+ for (var i = 0; i < message.unreachableLocations.length; ++i)
+ writer.uint32(/* id 3, wireType 2 =*/26).string(message.unreachableLocations[i]);
+ return writer;
+ };
+
+ /**
+ * Encodes the specified ListGatewaysResponse message, length delimited. Does not implicitly {@link google.cloud.apigateway.v1.ListGatewaysResponse.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.cloud.apigateway.v1.ListGatewaysResponse
+ * @static
+ * @param {google.cloud.apigateway.v1.IListGatewaysResponse} message ListGatewaysResponse message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ ListGatewaysResponse.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a ListGatewaysResponse message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.cloud.apigateway.v1.ListGatewaysResponse
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.cloud.apigateway.v1.ListGatewaysResponse} ListGatewaysResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ ListGatewaysResponse.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.apigateway.v1.ListGatewaysResponse();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ if (!(message.gateways && message.gateways.length))
+ message.gateways = [];
+ message.gateways.push($root.google.cloud.apigateway.v1.Gateway.decode(reader, reader.uint32()));
+ break;
+ }
+ case 2: {
+ message.nextPageToken = reader.string();
+ break;
+ }
+ case 3: {
+ if (!(message.unreachableLocations && message.unreachableLocations.length))
+ message.unreachableLocations = [];
+ message.unreachableLocations.push(reader.string());
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a ListGatewaysResponse message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.cloud.apigateway.v1.ListGatewaysResponse
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.cloud.apigateway.v1.ListGatewaysResponse} ListGatewaysResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ ListGatewaysResponse.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a ListGatewaysResponse message.
+ * @function verify
+ * @memberof google.cloud.apigateway.v1.ListGatewaysResponse
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ ListGatewaysResponse.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.gateways != null && message.hasOwnProperty("gateways")) {
+ if (!Array.isArray(message.gateways))
+ return "gateways: array expected";
+ for (var i = 0; i < message.gateways.length; ++i) {
+ var error = $root.google.cloud.apigateway.v1.Gateway.verify(message.gateways[i]);
+ if (error)
+ return "gateways." + error;
+ }
+ }
+ if (message.nextPageToken != null && message.hasOwnProperty("nextPageToken"))
+ if (!$util.isString(message.nextPageToken))
+ return "nextPageToken: string expected";
+ if (message.unreachableLocations != null && message.hasOwnProperty("unreachableLocations")) {
+ if (!Array.isArray(message.unreachableLocations))
+ return "unreachableLocations: array expected";
+ for (var i = 0; i < message.unreachableLocations.length; ++i)
+ if (!$util.isString(message.unreachableLocations[i]))
+ return "unreachableLocations: string[] expected";
+ }
+ return null;
+ };
+
+ /**
+ * Creates a ListGatewaysResponse message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.cloud.apigateway.v1.ListGatewaysResponse
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.cloud.apigateway.v1.ListGatewaysResponse} ListGatewaysResponse
+ */
+ ListGatewaysResponse.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.cloud.apigateway.v1.ListGatewaysResponse)
+ return object;
+ var message = new $root.google.cloud.apigateway.v1.ListGatewaysResponse();
+ if (object.gateways) {
+ if (!Array.isArray(object.gateways))
+ throw TypeError(".google.cloud.apigateway.v1.ListGatewaysResponse.gateways: array expected");
+ message.gateways = [];
+ for (var i = 0; i < object.gateways.length; ++i) {
+ if (typeof object.gateways[i] !== "object")
+ throw TypeError(".google.cloud.apigateway.v1.ListGatewaysResponse.gateways: object expected");
+ message.gateways[i] = $root.google.cloud.apigateway.v1.Gateway.fromObject(object.gateways[i]);
+ }
+ }
+ if (object.nextPageToken != null)
+ message.nextPageToken = String(object.nextPageToken);
+ if (object.unreachableLocations) {
+ if (!Array.isArray(object.unreachableLocations))
+ throw TypeError(".google.cloud.apigateway.v1.ListGatewaysResponse.unreachableLocations: array expected");
+ message.unreachableLocations = [];
+ for (var i = 0; i < object.unreachableLocations.length; ++i)
+ message.unreachableLocations[i] = String(object.unreachableLocations[i]);
+ }
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a ListGatewaysResponse message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.cloud.apigateway.v1.ListGatewaysResponse
+ * @static
+ * @param {google.cloud.apigateway.v1.ListGatewaysResponse} message ListGatewaysResponse
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ ListGatewaysResponse.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.arrays || options.defaults) {
+ object.gateways = [];
+ object.unreachableLocations = [];
+ }
+ if (options.defaults)
+ object.nextPageToken = "";
+ if (message.gateways && message.gateways.length) {
+ object.gateways = [];
+ for (var j = 0; j < message.gateways.length; ++j)
+ object.gateways[j] = $root.google.cloud.apigateway.v1.Gateway.toObject(message.gateways[j], options);
+ }
+ if (message.nextPageToken != null && message.hasOwnProperty("nextPageToken"))
+ object.nextPageToken = message.nextPageToken;
+ if (message.unreachableLocations && message.unreachableLocations.length) {
+ object.unreachableLocations = [];
+ for (var j = 0; j < message.unreachableLocations.length; ++j)
+ object.unreachableLocations[j] = message.unreachableLocations[j];
+ }
+ return object;
+ };
+
+ /**
+ * Converts this ListGatewaysResponse to JSON.
+ * @function toJSON
+ * @memberof google.cloud.apigateway.v1.ListGatewaysResponse
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ ListGatewaysResponse.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for ListGatewaysResponse
+ * @function getTypeUrl
+ * @memberof google.cloud.apigateway.v1.ListGatewaysResponse
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ ListGatewaysResponse.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.cloud.apigateway.v1.ListGatewaysResponse";
+ };
+
+ return ListGatewaysResponse;
+ })();
+
+ v1.GetGatewayRequest = (function() {
+
+ /**
+ * Properties of a GetGatewayRequest.
+ * @memberof google.cloud.apigateway.v1
+ * @interface IGetGatewayRequest
+ * @property {string|null} [name] GetGatewayRequest name
+ */
+
+ /**
+ * Constructs a new GetGatewayRequest.
+ * @memberof google.cloud.apigateway.v1
+ * @classdesc Represents a GetGatewayRequest.
+ * @implements IGetGatewayRequest
+ * @constructor
+ * @param {google.cloud.apigateway.v1.IGetGatewayRequest=} [properties] Properties to set
+ */
+ function GetGatewayRequest(properties) {
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * GetGatewayRequest name.
+ * @member {string} name
+ * @memberof google.cloud.apigateway.v1.GetGatewayRequest
+ * @instance
+ */
+ GetGatewayRequest.prototype.name = "";
+
+ /**
+ * Creates a new GetGatewayRequest instance using the specified properties.
+ * @function create
+ * @memberof google.cloud.apigateway.v1.GetGatewayRequest
+ * @static
+ * @param {google.cloud.apigateway.v1.IGetGatewayRequest=} [properties] Properties to set
+ * @returns {google.cloud.apigateway.v1.GetGatewayRequest} GetGatewayRequest instance
+ */
+ GetGatewayRequest.create = function create(properties) {
+ return new GetGatewayRequest(properties);
+ };
+
+ /**
+ * Encodes the specified GetGatewayRequest message. Does not implicitly {@link google.cloud.apigateway.v1.GetGatewayRequest.verify|verify} messages.
+ * @function encode
+ * @memberof google.cloud.apigateway.v1.GetGatewayRequest
+ * @static
+ * @param {google.cloud.apigateway.v1.IGetGatewayRequest} message GetGatewayRequest message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ GetGatewayRequest.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 GetGatewayRequest message, length delimited. Does not implicitly {@link google.cloud.apigateway.v1.GetGatewayRequest.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.cloud.apigateway.v1.GetGatewayRequest
+ * @static
+ * @param {google.cloud.apigateway.v1.IGetGatewayRequest} message GetGatewayRequest message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ GetGatewayRequest.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a GetGatewayRequest message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.cloud.apigateway.v1.GetGatewayRequest
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.cloud.apigateway.v1.GetGatewayRequest} GetGatewayRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ GetGatewayRequest.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.apigateway.v1.GetGatewayRequest();
+ 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 GetGatewayRequest message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.cloud.apigateway.v1.GetGatewayRequest
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.cloud.apigateway.v1.GetGatewayRequest} GetGatewayRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ GetGatewayRequest.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a GetGatewayRequest message.
+ * @function verify
+ * @memberof google.cloud.apigateway.v1.GetGatewayRequest
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ GetGatewayRequest.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 GetGatewayRequest message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.cloud.apigateway.v1.GetGatewayRequest
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.cloud.apigateway.v1.GetGatewayRequest} GetGatewayRequest
+ */
+ GetGatewayRequest.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.cloud.apigateway.v1.GetGatewayRequest)
+ return object;
+ var message = new $root.google.cloud.apigateway.v1.GetGatewayRequest();
+ if (object.name != null)
+ message.name = String(object.name);
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a GetGatewayRequest message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.cloud.apigateway.v1.GetGatewayRequest
+ * @static
+ * @param {google.cloud.apigateway.v1.GetGatewayRequest} message GetGatewayRequest
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ GetGatewayRequest.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 GetGatewayRequest to JSON.
+ * @function toJSON
+ * @memberof google.cloud.apigateway.v1.GetGatewayRequest
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ GetGatewayRequest.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for GetGatewayRequest
+ * @function getTypeUrl
+ * @memberof google.cloud.apigateway.v1.GetGatewayRequest
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ GetGatewayRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.cloud.apigateway.v1.GetGatewayRequest";
+ };
+
+ return GetGatewayRequest;
+ })();
+
+ v1.CreateGatewayRequest = (function() {
+
+ /**
+ * Properties of a CreateGatewayRequest.
+ * @memberof google.cloud.apigateway.v1
+ * @interface ICreateGatewayRequest
+ * @property {string|null} [parent] CreateGatewayRequest parent
+ * @property {string|null} [gatewayId] CreateGatewayRequest gatewayId
+ * @property {google.cloud.apigateway.v1.IGateway|null} [gateway] CreateGatewayRequest gateway
+ */
+
+ /**
+ * Constructs a new CreateGatewayRequest.
+ * @memberof google.cloud.apigateway.v1
+ * @classdesc Represents a CreateGatewayRequest.
+ * @implements ICreateGatewayRequest
+ * @constructor
+ * @param {google.cloud.apigateway.v1.ICreateGatewayRequest=} [properties] Properties to set
+ */
+ function CreateGatewayRequest(properties) {
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * CreateGatewayRequest parent.
+ * @member {string} parent
+ * @memberof google.cloud.apigateway.v1.CreateGatewayRequest
+ * @instance
+ */
+ CreateGatewayRequest.prototype.parent = "";
+
+ /**
+ * CreateGatewayRequest gatewayId.
+ * @member {string} gatewayId
+ * @memberof google.cloud.apigateway.v1.CreateGatewayRequest
+ * @instance
+ */
+ CreateGatewayRequest.prototype.gatewayId = "";
+
+ /**
+ * CreateGatewayRequest gateway.
+ * @member {google.cloud.apigateway.v1.IGateway|null|undefined} gateway
+ * @memberof google.cloud.apigateway.v1.CreateGatewayRequest
+ * @instance
+ */
+ CreateGatewayRequest.prototype.gateway = null;
+
+ /**
+ * Creates a new CreateGatewayRequest instance using the specified properties.
+ * @function create
+ * @memberof google.cloud.apigateway.v1.CreateGatewayRequest
+ * @static
+ * @param {google.cloud.apigateway.v1.ICreateGatewayRequest=} [properties] Properties to set
+ * @returns {google.cloud.apigateway.v1.CreateGatewayRequest} CreateGatewayRequest instance
+ */
+ CreateGatewayRequest.create = function create(properties) {
+ return new CreateGatewayRequest(properties);
+ };
+
+ /**
+ * Encodes the specified CreateGatewayRequest message. Does not implicitly {@link google.cloud.apigateway.v1.CreateGatewayRequest.verify|verify} messages.
+ * @function encode
+ * @memberof google.cloud.apigateway.v1.CreateGatewayRequest
+ * @static
+ * @param {google.cloud.apigateway.v1.ICreateGatewayRequest} message CreateGatewayRequest message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ CreateGatewayRequest.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.gatewayId != null && Object.hasOwnProperty.call(message, "gatewayId"))
+ writer.uint32(/* id 2, wireType 2 =*/18).string(message.gatewayId);
+ if (message.gateway != null && Object.hasOwnProperty.call(message, "gateway"))
+ $root.google.cloud.apigateway.v1.Gateway.encode(message.gateway, writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim();
+ return writer;
+ };
+
+ /**
+ * Encodes the specified CreateGatewayRequest message, length delimited. Does not implicitly {@link google.cloud.apigateway.v1.CreateGatewayRequest.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.cloud.apigateway.v1.CreateGatewayRequest
+ * @static
+ * @param {google.cloud.apigateway.v1.ICreateGatewayRequest} message CreateGatewayRequest message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ CreateGatewayRequest.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a CreateGatewayRequest message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.cloud.apigateway.v1.CreateGatewayRequest
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.cloud.apigateway.v1.CreateGatewayRequest} CreateGatewayRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ CreateGatewayRequest.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.apigateway.v1.CreateGatewayRequest();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.parent = reader.string();
+ break;
+ }
+ case 2: {
+ message.gatewayId = reader.string();
+ break;
+ }
+ case 3: {
+ message.gateway = $root.google.cloud.apigateway.v1.Gateway.decode(reader, reader.uint32());
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a CreateGatewayRequest message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.cloud.apigateway.v1.CreateGatewayRequest
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.cloud.apigateway.v1.CreateGatewayRequest} CreateGatewayRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ CreateGatewayRequest.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a CreateGatewayRequest message.
+ * @function verify
+ * @memberof google.cloud.apigateway.v1.CreateGatewayRequest
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ CreateGatewayRequest.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.gatewayId != null && message.hasOwnProperty("gatewayId"))
+ if (!$util.isString(message.gatewayId))
+ return "gatewayId: string expected";
+ if (message.gateway != null && message.hasOwnProperty("gateway")) {
+ var error = $root.google.cloud.apigateway.v1.Gateway.verify(message.gateway);
+ if (error)
+ return "gateway." + error;
+ }
+ return null;
+ };
+
+ /**
+ * Creates a CreateGatewayRequest message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.cloud.apigateway.v1.CreateGatewayRequest
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.cloud.apigateway.v1.CreateGatewayRequest} CreateGatewayRequest
+ */
+ CreateGatewayRequest.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.cloud.apigateway.v1.CreateGatewayRequest)
+ return object;
+ var message = new $root.google.cloud.apigateway.v1.CreateGatewayRequest();
+ if (object.parent != null)
+ message.parent = String(object.parent);
+ if (object.gatewayId != null)
+ message.gatewayId = String(object.gatewayId);
+ if (object.gateway != null) {
+ if (typeof object.gateway !== "object")
+ throw TypeError(".google.cloud.apigateway.v1.CreateGatewayRequest.gateway: object expected");
+ message.gateway = $root.google.cloud.apigateway.v1.Gateway.fromObject(object.gateway);
+ }
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a CreateGatewayRequest message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.cloud.apigateway.v1.CreateGatewayRequest
+ * @static
+ * @param {google.cloud.apigateway.v1.CreateGatewayRequest} message CreateGatewayRequest
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ CreateGatewayRequest.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.defaults) {
+ object.parent = "";
+ object.gatewayId = "";
+ object.gateway = null;
+ }
+ if (message.parent != null && message.hasOwnProperty("parent"))
+ object.parent = message.parent;
+ if (message.gatewayId != null && message.hasOwnProperty("gatewayId"))
+ object.gatewayId = message.gatewayId;
+ if (message.gateway != null && message.hasOwnProperty("gateway"))
+ object.gateway = $root.google.cloud.apigateway.v1.Gateway.toObject(message.gateway, options);
+ return object;
+ };
+
+ /**
+ * Converts this CreateGatewayRequest to JSON.
+ * @function toJSON
+ * @memberof google.cloud.apigateway.v1.CreateGatewayRequest
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ CreateGatewayRequest.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for CreateGatewayRequest
+ * @function getTypeUrl
+ * @memberof google.cloud.apigateway.v1.CreateGatewayRequest
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ CreateGatewayRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.cloud.apigateway.v1.CreateGatewayRequest";
+ };
+
+ return CreateGatewayRequest;
+ })();
+
+ v1.UpdateGatewayRequest = (function() {
+
+ /**
+ * Properties of an UpdateGatewayRequest.
+ * @memberof google.cloud.apigateway.v1
+ * @interface IUpdateGatewayRequest
+ * @property {google.protobuf.IFieldMask|null} [updateMask] UpdateGatewayRequest updateMask
+ * @property {google.cloud.apigateway.v1.IGateway|null} [gateway] UpdateGatewayRequest gateway
+ */
+
+ /**
+ * Constructs a new UpdateGatewayRequest.
+ * @memberof google.cloud.apigateway.v1
+ * @classdesc Represents an UpdateGatewayRequest.
+ * @implements IUpdateGatewayRequest
+ * @constructor
+ * @param {google.cloud.apigateway.v1.IUpdateGatewayRequest=} [properties] Properties to set
+ */
+ function UpdateGatewayRequest(properties) {
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * UpdateGatewayRequest updateMask.
+ * @member {google.protobuf.IFieldMask|null|undefined} updateMask
+ * @memberof google.cloud.apigateway.v1.UpdateGatewayRequest
+ * @instance
+ */
+ UpdateGatewayRequest.prototype.updateMask = null;
+
+ /**
+ * UpdateGatewayRequest gateway.
+ * @member {google.cloud.apigateway.v1.IGateway|null|undefined} gateway
+ * @memberof google.cloud.apigateway.v1.UpdateGatewayRequest
+ * @instance
+ */
+ UpdateGatewayRequest.prototype.gateway = null;
+
+ /**
+ * Creates a new UpdateGatewayRequest instance using the specified properties.
+ * @function create
+ * @memberof google.cloud.apigateway.v1.UpdateGatewayRequest
+ * @static
+ * @param {google.cloud.apigateway.v1.IUpdateGatewayRequest=} [properties] Properties to set
+ * @returns {google.cloud.apigateway.v1.UpdateGatewayRequest} UpdateGatewayRequest instance
+ */
+ UpdateGatewayRequest.create = function create(properties) {
+ return new UpdateGatewayRequest(properties);
+ };
+
+ /**
+ * Encodes the specified UpdateGatewayRequest message. Does not implicitly {@link google.cloud.apigateway.v1.UpdateGatewayRequest.verify|verify} messages.
+ * @function encode
+ * @memberof google.cloud.apigateway.v1.UpdateGatewayRequest
+ * @static
+ * @param {google.cloud.apigateway.v1.IUpdateGatewayRequest} message UpdateGatewayRequest message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ UpdateGatewayRequest.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.updateMask != null && Object.hasOwnProperty.call(message, "updateMask"))
+ $root.google.protobuf.FieldMask.encode(message.updateMask, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim();
+ if (message.gateway != null && Object.hasOwnProperty.call(message, "gateway"))
+ $root.google.cloud.apigateway.v1.Gateway.encode(message.gateway, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim();
+ return writer;
+ };
+
+ /**
+ * Encodes the specified UpdateGatewayRequest message, length delimited. Does not implicitly {@link google.cloud.apigateway.v1.UpdateGatewayRequest.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.cloud.apigateway.v1.UpdateGatewayRequest
+ * @static
+ * @param {google.cloud.apigateway.v1.IUpdateGatewayRequest} message UpdateGatewayRequest message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ UpdateGatewayRequest.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes an UpdateGatewayRequest message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.cloud.apigateway.v1.UpdateGatewayRequest
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.cloud.apigateway.v1.UpdateGatewayRequest} UpdateGatewayRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ UpdateGatewayRequest.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.apigateway.v1.UpdateGatewayRequest();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32());
+ break;
+ }
+ case 2: {
+ message.gateway = $root.google.cloud.apigateway.v1.Gateway.decode(reader, reader.uint32());
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes an UpdateGatewayRequest message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.cloud.apigateway.v1.UpdateGatewayRequest
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.cloud.apigateway.v1.UpdateGatewayRequest} UpdateGatewayRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ UpdateGatewayRequest.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies an UpdateGatewayRequest message.
+ * @function verify
+ * @memberof google.cloud.apigateway.v1.UpdateGatewayRequest
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ UpdateGatewayRequest.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.updateMask != null && message.hasOwnProperty("updateMask")) {
+ var error = $root.google.protobuf.FieldMask.verify(message.updateMask);
+ if (error)
+ return "updateMask." + error;
+ }
+ if (message.gateway != null && message.hasOwnProperty("gateway")) {
+ var error = $root.google.cloud.apigateway.v1.Gateway.verify(message.gateway);
+ if (error)
+ return "gateway." + error;
+ }
+ return null;
+ };
+
+ /**
+ * Creates an UpdateGatewayRequest message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.cloud.apigateway.v1.UpdateGatewayRequest
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.cloud.apigateway.v1.UpdateGatewayRequest} UpdateGatewayRequest
+ */
+ UpdateGatewayRequest.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.cloud.apigateway.v1.UpdateGatewayRequest)
+ return object;
+ var message = new $root.google.cloud.apigateway.v1.UpdateGatewayRequest();
+ if (object.updateMask != null) {
+ if (typeof object.updateMask !== "object")
+ throw TypeError(".google.cloud.apigateway.v1.UpdateGatewayRequest.updateMask: object expected");
+ message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask);
+ }
+ if (object.gateway != null) {
+ if (typeof object.gateway !== "object")
+ throw TypeError(".google.cloud.apigateway.v1.UpdateGatewayRequest.gateway: object expected");
+ message.gateway = $root.google.cloud.apigateway.v1.Gateway.fromObject(object.gateway);
+ }
+ return message;
+ };
+
+ /**
+ * Creates a plain object from an UpdateGatewayRequest message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.cloud.apigateway.v1.UpdateGatewayRequest
+ * @static
+ * @param {google.cloud.apigateway.v1.UpdateGatewayRequest} message UpdateGatewayRequest
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ UpdateGatewayRequest.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.defaults) {
+ object.updateMask = null;
+ object.gateway = null;
+ }
+ if (message.updateMask != null && message.hasOwnProperty("updateMask"))
+ object.updateMask = $root.google.protobuf.FieldMask.toObject(message.updateMask, options);
+ if (message.gateway != null && message.hasOwnProperty("gateway"))
+ object.gateway = $root.google.cloud.apigateway.v1.Gateway.toObject(message.gateway, options);
+ return object;
+ };
+
+ /**
+ * Converts this UpdateGatewayRequest to JSON.
+ * @function toJSON
+ * @memberof google.cloud.apigateway.v1.UpdateGatewayRequest
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ UpdateGatewayRequest.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for UpdateGatewayRequest
+ * @function getTypeUrl
+ * @memberof google.cloud.apigateway.v1.UpdateGatewayRequest
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ UpdateGatewayRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.cloud.apigateway.v1.UpdateGatewayRequest";
+ };
+
+ return UpdateGatewayRequest;
+ })();
+
+ v1.DeleteGatewayRequest = (function() {
+
+ /**
+ * Properties of a DeleteGatewayRequest.
+ * @memberof google.cloud.apigateway.v1
+ * @interface IDeleteGatewayRequest
+ * @property {string|null} [name] DeleteGatewayRequest name
+ */
+
+ /**
+ * Constructs a new DeleteGatewayRequest.
+ * @memberof google.cloud.apigateway.v1
+ * @classdesc Represents a DeleteGatewayRequest.
+ * @implements IDeleteGatewayRequest
+ * @constructor
+ * @param {google.cloud.apigateway.v1.IDeleteGatewayRequest=} [properties] Properties to set
+ */
+ function DeleteGatewayRequest(properties) {
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * DeleteGatewayRequest name.
+ * @member {string} name
+ * @memberof google.cloud.apigateway.v1.DeleteGatewayRequest
+ * @instance
+ */
+ DeleteGatewayRequest.prototype.name = "";
+
+ /**
+ * Creates a new DeleteGatewayRequest instance using the specified properties.
+ * @function create
+ * @memberof google.cloud.apigateway.v1.DeleteGatewayRequest
+ * @static
+ * @param {google.cloud.apigateway.v1.IDeleteGatewayRequest=} [properties] Properties to set
+ * @returns {google.cloud.apigateway.v1.DeleteGatewayRequest} DeleteGatewayRequest instance
+ */
+ DeleteGatewayRequest.create = function create(properties) {
+ return new DeleteGatewayRequest(properties);
+ };
+
+ /**
+ * Encodes the specified DeleteGatewayRequest message. Does not implicitly {@link google.cloud.apigateway.v1.DeleteGatewayRequest.verify|verify} messages.
+ * @function encode
+ * @memberof google.cloud.apigateway.v1.DeleteGatewayRequest
+ * @static
+ * @param {google.cloud.apigateway.v1.IDeleteGatewayRequest} message DeleteGatewayRequest message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ DeleteGatewayRequest.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 DeleteGatewayRequest message, length delimited. Does not implicitly {@link google.cloud.apigateway.v1.DeleteGatewayRequest.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.cloud.apigateway.v1.DeleteGatewayRequest
+ * @static
+ * @param {google.cloud.apigateway.v1.IDeleteGatewayRequest} message DeleteGatewayRequest message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ DeleteGatewayRequest.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a DeleteGatewayRequest message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.cloud.apigateway.v1.DeleteGatewayRequest
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.cloud.apigateway.v1.DeleteGatewayRequest} DeleteGatewayRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ DeleteGatewayRequest.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.apigateway.v1.DeleteGatewayRequest();
+ 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 DeleteGatewayRequest message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.cloud.apigateway.v1.DeleteGatewayRequest
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.cloud.apigateway.v1.DeleteGatewayRequest} DeleteGatewayRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ DeleteGatewayRequest.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a DeleteGatewayRequest message.
+ * @function verify
+ * @memberof google.cloud.apigateway.v1.DeleteGatewayRequest
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ DeleteGatewayRequest.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 DeleteGatewayRequest message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.cloud.apigateway.v1.DeleteGatewayRequest
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.cloud.apigateway.v1.DeleteGatewayRequest} DeleteGatewayRequest
+ */
+ DeleteGatewayRequest.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.cloud.apigateway.v1.DeleteGatewayRequest)
+ return object;
+ var message = new $root.google.cloud.apigateway.v1.DeleteGatewayRequest();
+ if (object.name != null)
+ message.name = String(object.name);
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a DeleteGatewayRequest message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.cloud.apigateway.v1.DeleteGatewayRequest
+ * @static
+ * @param {google.cloud.apigateway.v1.DeleteGatewayRequest} message DeleteGatewayRequest
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ DeleteGatewayRequest.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 DeleteGatewayRequest to JSON.
+ * @function toJSON
+ * @memberof google.cloud.apigateway.v1.DeleteGatewayRequest
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ DeleteGatewayRequest.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for DeleteGatewayRequest
+ * @function getTypeUrl
+ * @memberof google.cloud.apigateway.v1.DeleteGatewayRequest
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ DeleteGatewayRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.cloud.apigateway.v1.DeleteGatewayRequest";
+ };
+
+ return DeleteGatewayRequest;
+ })();
+
+ v1.ListApisRequest = (function() {
+
+ /**
+ * Properties of a ListApisRequest.
+ * @memberof google.cloud.apigateway.v1
+ * @interface IListApisRequest
+ * @property {string|null} [parent] ListApisRequest parent
+ * @property {number|null} [pageSize] ListApisRequest pageSize
+ * @property {string|null} [pageToken] ListApisRequest pageToken
+ * @property {string|null} [filter] ListApisRequest filter
+ * @property {string|null} [orderBy] ListApisRequest orderBy
+ */
+
+ /**
+ * Constructs a new ListApisRequest.
+ * @memberof google.cloud.apigateway.v1
+ * @classdesc Represents a ListApisRequest.
+ * @implements IListApisRequest
+ * @constructor
+ * @param {google.cloud.apigateway.v1.IListApisRequest=} [properties] Properties to set
+ */
+ function ListApisRequest(properties) {
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * ListApisRequest parent.
+ * @member {string} parent
+ * @memberof google.cloud.apigateway.v1.ListApisRequest
+ * @instance
+ */
+ ListApisRequest.prototype.parent = "";
+
+ /**
+ * ListApisRequest pageSize.
+ * @member {number} pageSize
+ * @memberof google.cloud.apigateway.v1.ListApisRequest
+ * @instance
+ */
+ ListApisRequest.prototype.pageSize = 0;
+
+ /**
+ * ListApisRequest pageToken.
+ * @member {string} pageToken
+ * @memberof google.cloud.apigateway.v1.ListApisRequest
+ * @instance
+ */
+ ListApisRequest.prototype.pageToken = "";
+
+ /**
+ * ListApisRequest filter.
+ * @member {string} filter
+ * @memberof google.cloud.apigateway.v1.ListApisRequest
+ * @instance
+ */
+ ListApisRequest.prototype.filter = "";
+
+ /**
+ * ListApisRequest orderBy.
+ * @member {string} orderBy
+ * @memberof google.cloud.apigateway.v1.ListApisRequest
+ * @instance
+ */
+ ListApisRequest.prototype.orderBy = "";
+
+ /**
+ * Creates a new ListApisRequest instance using the specified properties.
+ * @function create
+ * @memberof google.cloud.apigateway.v1.ListApisRequest
+ * @static
+ * @param {google.cloud.apigateway.v1.IListApisRequest=} [properties] Properties to set
+ * @returns {google.cloud.apigateway.v1.ListApisRequest} ListApisRequest instance
+ */
+ ListApisRequest.create = function create(properties) {
+ return new ListApisRequest(properties);
+ };
+
+ /**
+ * Encodes the specified ListApisRequest message. Does not implicitly {@link google.cloud.apigateway.v1.ListApisRequest.verify|verify} messages.
+ * @function encode
+ * @memberof google.cloud.apigateway.v1.ListApisRequest
+ * @static
+ * @param {google.cloud.apigateway.v1.IListApisRequest} message ListApisRequest message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ ListApisRequest.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.parent != null && Object.hasOwnProperty.call(message, "parent"))
+ writer.uint32(/* id 1, wireType 2 =*/10).string(message.parent);
+ if (message.pageSize != null && Object.hasOwnProperty.call(message, "pageSize"))
+ writer.uint32(/* id 2, wireType 0 =*/16).int32(message.pageSize);
+ if (message.pageToken != null && Object.hasOwnProperty.call(message, "pageToken"))
+ writer.uint32(/* id 3, wireType 2 =*/26).string(message.pageToken);
+ if (message.filter != null && Object.hasOwnProperty.call(message, "filter"))
+ writer.uint32(/* id 4, wireType 2 =*/34).string(message.filter);
+ if (message.orderBy != null && Object.hasOwnProperty.call(message, "orderBy"))
+ writer.uint32(/* id 5, wireType 2 =*/42).string(message.orderBy);
+ return writer;
+ };
+
+ /**
+ * Encodes the specified ListApisRequest message, length delimited. Does not implicitly {@link google.cloud.apigateway.v1.ListApisRequest.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.cloud.apigateway.v1.ListApisRequest
+ * @static
+ * @param {google.cloud.apigateway.v1.IListApisRequest} message ListApisRequest message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ ListApisRequest.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a ListApisRequest message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.cloud.apigateway.v1.ListApisRequest
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.cloud.apigateway.v1.ListApisRequest} ListApisRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ ListApisRequest.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.apigateway.v1.ListApisRequest();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.parent = reader.string();
+ break;
+ }
+ case 2: {
+ message.pageSize = reader.int32();
+ break;
+ }
+ case 3: {
+ message.pageToken = reader.string();
+ break;
+ }
+ case 4: {
+ message.filter = reader.string();
+ break;
+ }
+ case 5: {
+ message.orderBy = reader.string();
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a ListApisRequest message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.cloud.apigateway.v1.ListApisRequest
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.cloud.apigateway.v1.ListApisRequest} ListApisRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ ListApisRequest.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a ListApisRequest message.
+ * @function verify
+ * @memberof google.cloud.apigateway.v1.ListApisRequest
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ ListApisRequest.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.parent != null && message.hasOwnProperty("parent"))
+ if (!$util.isString(message.parent))
+ return "parent: string expected";
+ if (message.pageSize != null && message.hasOwnProperty("pageSize"))
+ if (!$util.isInteger(message.pageSize))
+ return "pageSize: integer expected";
+ if (message.pageToken != null && message.hasOwnProperty("pageToken"))
+ if (!$util.isString(message.pageToken))
+ return "pageToken: string expected";
+ if (message.filter != null && message.hasOwnProperty("filter"))
+ if (!$util.isString(message.filter))
+ return "filter: string expected";
+ if (message.orderBy != null && message.hasOwnProperty("orderBy"))
+ if (!$util.isString(message.orderBy))
+ return "orderBy: string expected";
+ return null;
+ };
+
+ /**
+ * Creates a ListApisRequest message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.cloud.apigateway.v1.ListApisRequest
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.cloud.apigateway.v1.ListApisRequest} ListApisRequest
+ */
+ ListApisRequest.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.cloud.apigateway.v1.ListApisRequest)
+ return object;
+ var message = new $root.google.cloud.apigateway.v1.ListApisRequest();
+ if (object.parent != null)
+ message.parent = String(object.parent);
+ if (object.pageSize != null)
+ message.pageSize = object.pageSize | 0;
+ if (object.pageToken != null)
+ message.pageToken = String(object.pageToken);
+ if (object.filter != null)
+ message.filter = String(object.filter);
+ if (object.orderBy != null)
+ message.orderBy = String(object.orderBy);
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a ListApisRequest message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.cloud.apigateway.v1.ListApisRequest
+ * @static
+ * @param {google.cloud.apigateway.v1.ListApisRequest} message ListApisRequest
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ ListApisRequest.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.defaults) {
+ object.parent = "";
+ object.pageSize = 0;
+ object.pageToken = "";
+ object.filter = "";
+ object.orderBy = "";
+ }
+ if (message.parent != null && message.hasOwnProperty("parent"))
+ object.parent = message.parent;
+ if (message.pageSize != null && message.hasOwnProperty("pageSize"))
+ object.pageSize = message.pageSize;
+ if (message.pageToken != null && message.hasOwnProperty("pageToken"))
+ object.pageToken = message.pageToken;
+ if (message.filter != null && message.hasOwnProperty("filter"))
+ object.filter = message.filter;
+ if (message.orderBy != null && message.hasOwnProperty("orderBy"))
+ object.orderBy = message.orderBy;
+ return object;
+ };
+
+ /**
+ * Converts this ListApisRequest to JSON.
+ * @function toJSON
+ * @memberof google.cloud.apigateway.v1.ListApisRequest
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ ListApisRequest.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for ListApisRequest
+ * @function getTypeUrl
+ * @memberof google.cloud.apigateway.v1.ListApisRequest
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ ListApisRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.cloud.apigateway.v1.ListApisRequest";
+ };
+
+ return ListApisRequest;
+ })();
+
+ v1.ListApisResponse = (function() {
+
+ /**
+ * Properties of a ListApisResponse.
+ * @memberof google.cloud.apigateway.v1
+ * @interface IListApisResponse
+ * @property {Array.|null} [apis] ListApisResponse apis
+ * @property {string|null} [nextPageToken] ListApisResponse nextPageToken
+ * @property {Array.|null} [unreachableLocations] ListApisResponse unreachableLocations
+ */
+
+ /**
+ * Constructs a new ListApisResponse.
+ * @memberof google.cloud.apigateway.v1
+ * @classdesc Represents a ListApisResponse.
+ * @implements IListApisResponse
+ * @constructor
+ * @param {google.cloud.apigateway.v1.IListApisResponse=} [properties] Properties to set
+ */
+ function ListApisResponse(properties) {
+ this.apis = [];
+ this.unreachableLocations = [];
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * ListApisResponse apis.
+ * @member {Array.} apis
+ * @memberof google.cloud.apigateway.v1.ListApisResponse
+ * @instance
+ */
+ ListApisResponse.prototype.apis = $util.emptyArray;
+
+ /**
+ * ListApisResponse nextPageToken.
+ * @member {string} nextPageToken
+ * @memberof google.cloud.apigateway.v1.ListApisResponse
+ * @instance
+ */
+ ListApisResponse.prototype.nextPageToken = "";
+
+ /**
+ * ListApisResponse unreachableLocations.
+ * @member {Array.} unreachableLocations
+ * @memberof google.cloud.apigateway.v1.ListApisResponse
+ * @instance
+ */
+ ListApisResponse.prototype.unreachableLocations = $util.emptyArray;
+
+ /**
+ * Creates a new ListApisResponse instance using the specified properties.
+ * @function create
+ * @memberof google.cloud.apigateway.v1.ListApisResponse
+ * @static
+ * @param {google.cloud.apigateway.v1.IListApisResponse=} [properties] Properties to set
+ * @returns {google.cloud.apigateway.v1.ListApisResponse} ListApisResponse instance
+ */
+ ListApisResponse.create = function create(properties) {
+ return new ListApisResponse(properties);
+ };
+
+ /**
+ * Encodes the specified ListApisResponse message. Does not implicitly {@link google.cloud.apigateway.v1.ListApisResponse.verify|verify} messages.
+ * @function encode
+ * @memberof google.cloud.apigateway.v1.ListApisResponse
+ * @static
+ * @param {google.cloud.apigateway.v1.IListApisResponse} message ListApisResponse message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ ListApisResponse.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.apis != null && message.apis.length)
+ for (var i = 0; i < message.apis.length; ++i)
+ $root.google.cloud.apigateway.v1.Api.encode(message.apis[i], writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim();
+ if (message.nextPageToken != null && Object.hasOwnProperty.call(message, "nextPageToken"))
+ writer.uint32(/* id 2, wireType 2 =*/18).string(message.nextPageToken);
+ if (message.unreachableLocations != null && message.unreachableLocations.length)
+ for (var i = 0; i < message.unreachableLocations.length; ++i)
+ writer.uint32(/* id 3, wireType 2 =*/26).string(message.unreachableLocations[i]);
+ return writer;
+ };
+
+ /**
+ * Encodes the specified ListApisResponse message, length delimited. Does not implicitly {@link google.cloud.apigateway.v1.ListApisResponse.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.cloud.apigateway.v1.ListApisResponse
+ * @static
+ * @param {google.cloud.apigateway.v1.IListApisResponse} message ListApisResponse message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ ListApisResponse.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a ListApisResponse message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.cloud.apigateway.v1.ListApisResponse
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.cloud.apigateway.v1.ListApisResponse} ListApisResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ ListApisResponse.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.apigateway.v1.ListApisResponse();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ if (!(message.apis && message.apis.length))
+ message.apis = [];
+ message.apis.push($root.google.cloud.apigateway.v1.Api.decode(reader, reader.uint32()));
+ break;
+ }
+ case 2: {
+ message.nextPageToken = reader.string();
+ break;
+ }
+ case 3: {
+ if (!(message.unreachableLocations && message.unreachableLocations.length))
+ message.unreachableLocations = [];
+ message.unreachableLocations.push(reader.string());
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a ListApisResponse message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.cloud.apigateway.v1.ListApisResponse
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.cloud.apigateway.v1.ListApisResponse} ListApisResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ ListApisResponse.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a ListApisResponse message.
+ * @function verify
+ * @memberof google.cloud.apigateway.v1.ListApisResponse
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ ListApisResponse.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.apis != null && message.hasOwnProperty("apis")) {
+ if (!Array.isArray(message.apis))
+ return "apis: array expected";
+ for (var i = 0; i < message.apis.length; ++i) {
+ var error = $root.google.cloud.apigateway.v1.Api.verify(message.apis[i]);
+ if (error)
+ return "apis." + error;
+ }
+ }
+ if (message.nextPageToken != null && message.hasOwnProperty("nextPageToken"))
+ if (!$util.isString(message.nextPageToken))
+ return "nextPageToken: string expected";
+ if (message.unreachableLocations != null && message.hasOwnProperty("unreachableLocations")) {
+ if (!Array.isArray(message.unreachableLocations))
+ return "unreachableLocations: array expected";
+ for (var i = 0; i < message.unreachableLocations.length; ++i)
+ if (!$util.isString(message.unreachableLocations[i]))
+ return "unreachableLocations: string[] expected";
+ }
+ return null;
+ };
+
+ /**
+ * Creates a ListApisResponse message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.cloud.apigateway.v1.ListApisResponse
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.cloud.apigateway.v1.ListApisResponse} ListApisResponse
+ */
+ ListApisResponse.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.cloud.apigateway.v1.ListApisResponse)
+ return object;
+ var message = new $root.google.cloud.apigateway.v1.ListApisResponse();
+ if (object.apis) {
+ if (!Array.isArray(object.apis))
+ throw TypeError(".google.cloud.apigateway.v1.ListApisResponse.apis: array expected");
+ message.apis = [];
+ for (var i = 0; i < object.apis.length; ++i) {
+ if (typeof object.apis[i] !== "object")
+ throw TypeError(".google.cloud.apigateway.v1.ListApisResponse.apis: object expected");
+ message.apis[i] = $root.google.cloud.apigateway.v1.Api.fromObject(object.apis[i]);
+ }
+ }
+ if (object.nextPageToken != null)
+ message.nextPageToken = String(object.nextPageToken);
+ if (object.unreachableLocations) {
+ if (!Array.isArray(object.unreachableLocations))
+ throw TypeError(".google.cloud.apigateway.v1.ListApisResponse.unreachableLocations: array expected");
+ message.unreachableLocations = [];
+ for (var i = 0; i < object.unreachableLocations.length; ++i)
+ message.unreachableLocations[i] = String(object.unreachableLocations[i]);
+ }
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a ListApisResponse message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.cloud.apigateway.v1.ListApisResponse
+ * @static
+ * @param {google.cloud.apigateway.v1.ListApisResponse} message ListApisResponse
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ ListApisResponse.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.arrays || options.defaults) {
+ object.apis = [];
+ object.unreachableLocations = [];
+ }
+ if (options.defaults)
+ object.nextPageToken = "";
+ if (message.apis && message.apis.length) {
+ object.apis = [];
+ for (var j = 0; j < message.apis.length; ++j)
+ object.apis[j] = $root.google.cloud.apigateway.v1.Api.toObject(message.apis[j], options);
+ }
+ if (message.nextPageToken != null && message.hasOwnProperty("nextPageToken"))
+ object.nextPageToken = message.nextPageToken;
+ if (message.unreachableLocations && message.unreachableLocations.length) {
+ object.unreachableLocations = [];
+ for (var j = 0; j < message.unreachableLocations.length; ++j)
+ object.unreachableLocations[j] = message.unreachableLocations[j];
+ }
+ return object;
+ };
+
+ /**
+ * Converts this ListApisResponse to JSON.
+ * @function toJSON
+ * @memberof google.cloud.apigateway.v1.ListApisResponse
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ ListApisResponse.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for ListApisResponse
+ * @function getTypeUrl
+ * @memberof google.cloud.apigateway.v1.ListApisResponse
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ ListApisResponse.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.cloud.apigateway.v1.ListApisResponse";
+ };
+
+ return ListApisResponse;
+ })();
+
+ v1.GetApiRequest = (function() {
+
+ /**
+ * Properties of a GetApiRequest.
+ * @memberof google.cloud.apigateway.v1
+ * @interface IGetApiRequest
+ * @property {string|null} [name] GetApiRequest name
+ */
+
+ /**
+ * Constructs a new GetApiRequest.
+ * @memberof google.cloud.apigateway.v1
+ * @classdesc Represents a GetApiRequest.
+ * @implements IGetApiRequest
+ * @constructor
+ * @param {google.cloud.apigateway.v1.IGetApiRequest=} [properties] Properties to set
+ */
+ function GetApiRequest(properties) {
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * GetApiRequest name.
+ * @member {string} name
+ * @memberof google.cloud.apigateway.v1.GetApiRequest
+ * @instance
+ */
+ GetApiRequest.prototype.name = "";
+
+ /**
+ * Creates a new GetApiRequest instance using the specified properties.
+ * @function create
+ * @memberof google.cloud.apigateway.v1.GetApiRequest
+ * @static
+ * @param {google.cloud.apigateway.v1.IGetApiRequest=} [properties] Properties to set
+ * @returns {google.cloud.apigateway.v1.GetApiRequest} GetApiRequest instance
+ */
+ GetApiRequest.create = function create(properties) {
+ return new GetApiRequest(properties);
+ };
+
+ /**
+ * Encodes the specified GetApiRequest message. Does not implicitly {@link google.cloud.apigateway.v1.GetApiRequest.verify|verify} messages.
+ * @function encode
+ * @memberof google.cloud.apigateway.v1.GetApiRequest
+ * @static
+ * @param {google.cloud.apigateway.v1.IGetApiRequest} message GetApiRequest message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ GetApiRequest.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 GetApiRequest message, length delimited. Does not implicitly {@link google.cloud.apigateway.v1.GetApiRequest.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.cloud.apigateway.v1.GetApiRequest
+ * @static
+ * @param {google.cloud.apigateway.v1.IGetApiRequest} message GetApiRequest message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ GetApiRequest.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a GetApiRequest message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.cloud.apigateway.v1.GetApiRequest
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.cloud.apigateway.v1.GetApiRequest} GetApiRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ GetApiRequest.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.apigateway.v1.GetApiRequest();
+ 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 GetApiRequest message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.cloud.apigateway.v1.GetApiRequest
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.cloud.apigateway.v1.GetApiRequest} GetApiRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ GetApiRequest.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a GetApiRequest message.
+ * @function verify
+ * @memberof google.cloud.apigateway.v1.GetApiRequest
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ GetApiRequest.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 GetApiRequest message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.cloud.apigateway.v1.GetApiRequest
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.cloud.apigateway.v1.GetApiRequest} GetApiRequest
+ */
+ GetApiRequest.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.cloud.apigateway.v1.GetApiRequest)
+ return object;
+ var message = new $root.google.cloud.apigateway.v1.GetApiRequest();
+ if (object.name != null)
+ message.name = String(object.name);
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a GetApiRequest message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.cloud.apigateway.v1.GetApiRequest
+ * @static
+ * @param {google.cloud.apigateway.v1.GetApiRequest} message GetApiRequest
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ GetApiRequest.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 GetApiRequest to JSON.
+ * @function toJSON
+ * @memberof google.cloud.apigateway.v1.GetApiRequest
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ GetApiRequest.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for GetApiRequest
+ * @function getTypeUrl
+ * @memberof google.cloud.apigateway.v1.GetApiRequest
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ GetApiRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.cloud.apigateway.v1.GetApiRequest";
+ };
+
+ return GetApiRequest;
+ })();
+
+ v1.CreateApiRequest = (function() {
+
+ /**
+ * Properties of a CreateApiRequest.
+ * @memberof google.cloud.apigateway.v1
+ * @interface ICreateApiRequest
+ * @property {string|null} [parent] CreateApiRequest parent
+ * @property {string|null} [apiId] CreateApiRequest apiId
+ * @property {google.cloud.apigateway.v1.IApi|null} [api] CreateApiRequest api
+ */
+
+ /**
+ * Constructs a new CreateApiRequest.
+ * @memberof google.cloud.apigateway.v1
+ * @classdesc Represents a CreateApiRequest.
+ * @implements ICreateApiRequest
+ * @constructor
+ * @param {google.cloud.apigateway.v1.ICreateApiRequest=} [properties] Properties to set
+ */
+ function CreateApiRequest(properties) {
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * CreateApiRequest parent.
+ * @member {string} parent
+ * @memberof google.cloud.apigateway.v1.CreateApiRequest
+ * @instance
+ */
+ CreateApiRequest.prototype.parent = "";
+
+ /**
+ * CreateApiRequest apiId.
+ * @member {string} apiId
+ * @memberof google.cloud.apigateway.v1.CreateApiRequest
+ * @instance
+ */
+ CreateApiRequest.prototype.apiId = "";
+
+ /**
+ * CreateApiRequest api.
+ * @member {google.cloud.apigateway.v1.IApi|null|undefined} api
+ * @memberof google.cloud.apigateway.v1.CreateApiRequest
+ * @instance
+ */
+ CreateApiRequest.prototype.api = null;
+
+ /**
+ * Creates a new CreateApiRequest instance using the specified properties.
+ * @function create
+ * @memberof google.cloud.apigateway.v1.CreateApiRequest
+ * @static
+ * @param {google.cloud.apigateway.v1.ICreateApiRequest=} [properties] Properties to set
+ * @returns {google.cloud.apigateway.v1.CreateApiRequest} CreateApiRequest instance
+ */
+ CreateApiRequest.create = function create(properties) {
+ return new CreateApiRequest(properties);
+ };
+
+ /**
+ * Encodes the specified CreateApiRequest message. Does not implicitly {@link google.cloud.apigateway.v1.CreateApiRequest.verify|verify} messages.
+ * @function encode
+ * @memberof google.cloud.apigateway.v1.CreateApiRequest
+ * @static
+ * @param {google.cloud.apigateway.v1.ICreateApiRequest} message CreateApiRequest message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ CreateApiRequest.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.apiId != null && Object.hasOwnProperty.call(message, "apiId"))
+ writer.uint32(/* id 2, wireType 2 =*/18).string(message.apiId);
+ if (message.api != null && Object.hasOwnProperty.call(message, "api"))
+ $root.google.cloud.apigateway.v1.Api.encode(message.api, writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim();
+ return writer;
+ };
+
+ /**
+ * Encodes the specified CreateApiRequest message, length delimited. Does not implicitly {@link google.cloud.apigateway.v1.CreateApiRequest.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.cloud.apigateway.v1.CreateApiRequest
+ * @static
+ * @param {google.cloud.apigateway.v1.ICreateApiRequest} message CreateApiRequest message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ CreateApiRequest.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a CreateApiRequest message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.cloud.apigateway.v1.CreateApiRequest
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.cloud.apigateway.v1.CreateApiRequest} CreateApiRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ CreateApiRequest.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.apigateway.v1.CreateApiRequest();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.parent = reader.string();
+ break;
+ }
+ case 2: {
+ message.apiId = reader.string();
+ break;
+ }
+ case 3: {
+ message.api = $root.google.cloud.apigateway.v1.Api.decode(reader, reader.uint32());
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a CreateApiRequest message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.cloud.apigateway.v1.CreateApiRequest
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.cloud.apigateway.v1.CreateApiRequest} CreateApiRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ CreateApiRequest.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a CreateApiRequest message.
+ * @function verify
+ * @memberof google.cloud.apigateway.v1.CreateApiRequest
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ CreateApiRequest.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.apiId != null && message.hasOwnProperty("apiId"))
+ if (!$util.isString(message.apiId))
+ return "apiId: string expected";
+ if (message.api != null && message.hasOwnProperty("api")) {
+ var error = $root.google.cloud.apigateway.v1.Api.verify(message.api);
+ if (error)
+ return "api." + error;
+ }
+ return null;
+ };
+
+ /**
+ * Creates a CreateApiRequest message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.cloud.apigateway.v1.CreateApiRequest
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.cloud.apigateway.v1.CreateApiRequest} CreateApiRequest
+ */
+ CreateApiRequest.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.cloud.apigateway.v1.CreateApiRequest)
+ return object;
+ var message = new $root.google.cloud.apigateway.v1.CreateApiRequest();
+ if (object.parent != null)
+ message.parent = String(object.parent);
+ if (object.apiId != null)
+ message.apiId = String(object.apiId);
+ if (object.api != null) {
+ if (typeof object.api !== "object")
+ throw TypeError(".google.cloud.apigateway.v1.CreateApiRequest.api: object expected");
+ message.api = $root.google.cloud.apigateway.v1.Api.fromObject(object.api);
+ }
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a CreateApiRequest message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.cloud.apigateway.v1.CreateApiRequest
+ * @static
+ * @param {google.cloud.apigateway.v1.CreateApiRequest} message CreateApiRequest
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ CreateApiRequest.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.defaults) {
+ object.parent = "";
+ object.apiId = "";
+ object.api = null;
+ }
+ if (message.parent != null && message.hasOwnProperty("parent"))
+ object.parent = message.parent;
+ if (message.apiId != null && message.hasOwnProperty("apiId"))
+ object.apiId = message.apiId;
+ if (message.api != null && message.hasOwnProperty("api"))
+ object.api = $root.google.cloud.apigateway.v1.Api.toObject(message.api, options);
+ return object;
+ };
+
+ /**
+ * Converts this CreateApiRequest to JSON.
+ * @function toJSON
+ * @memberof google.cloud.apigateway.v1.CreateApiRequest
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ CreateApiRequest.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for CreateApiRequest
+ * @function getTypeUrl
+ * @memberof google.cloud.apigateway.v1.CreateApiRequest
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ CreateApiRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.cloud.apigateway.v1.CreateApiRequest";
+ };
+
+ return CreateApiRequest;
+ })();
+
+ v1.UpdateApiRequest = (function() {
+
+ /**
+ * Properties of an UpdateApiRequest.
+ * @memberof google.cloud.apigateway.v1
+ * @interface IUpdateApiRequest
+ * @property {google.protobuf.IFieldMask|null} [updateMask] UpdateApiRequest updateMask
+ * @property {google.cloud.apigateway.v1.IApi|null} [api] UpdateApiRequest api
+ */
+
+ /**
+ * Constructs a new UpdateApiRequest.
+ * @memberof google.cloud.apigateway.v1
+ * @classdesc Represents an UpdateApiRequest.
+ * @implements IUpdateApiRequest
+ * @constructor
+ * @param {google.cloud.apigateway.v1.IUpdateApiRequest=} [properties] Properties to set
+ */
+ function UpdateApiRequest(properties) {
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * UpdateApiRequest updateMask.
+ * @member {google.protobuf.IFieldMask|null|undefined} updateMask
+ * @memberof google.cloud.apigateway.v1.UpdateApiRequest
+ * @instance
+ */
+ UpdateApiRequest.prototype.updateMask = null;
+
+ /**
+ * UpdateApiRequest api.
+ * @member {google.cloud.apigateway.v1.IApi|null|undefined} api
+ * @memberof google.cloud.apigateway.v1.UpdateApiRequest
+ * @instance
+ */
+ UpdateApiRequest.prototype.api = null;
+
+ /**
+ * Creates a new UpdateApiRequest instance using the specified properties.
+ * @function create
+ * @memberof google.cloud.apigateway.v1.UpdateApiRequest
+ * @static
+ * @param {google.cloud.apigateway.v1.IUpdateApiRequest=} [properties] Properties to set
+ * @returns {google.cloud.apigateway.v1.UpdateApiRequest} UpdateApiRequest instance
+ */
+ UpdateApiRequest.create = function create(properties) {
+ return new UpdateApiRequest(properties);
+ };
+
+ /**
+ * Encodes the specified UpdateApiRequest message. Does not implicitly {@link google.cloud.apigateway.v1.UpdateApiRequest.verify|verify} messages.
+ * @function encode
+ * @memberof google.cloud.apigateway.v1.UpdateApiRequest
+ * @static
+ * @param {google.cloud.apigateway.v1.IUpdateApiRequest} message UpdateApiRequest message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ UpdateApiRequest.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.updateMask != null && Object.hasOwnProperty.call(message, "updateMask"))
+ $root.google.protobuf.FieldMask.encode(message.updateMask, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim();
+ if (message.api != null && Object.hasOwnProperty.call(message, "api"))
+ $root.google.cloud.apigateway.v1.Api.encode(message.api, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim();
+ return writer;
+ };
+
+ /**
+ * Encodes the specified UpdateApiRequest message, length delimited. Does not implicitly {@link google.cloud.apigateway.v1.UpdateApiRequest.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.cloud.apigateway.v1.UpdateApiRequest
+ * @static
+ * @param {google.cloud.apigateway.v1.IUpdateApiRequest} message UpdateApiRequest message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ UpdateApiRequest.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes an UpdateApiRequest message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.cloud.apigateway.v1.UpdateApiRequest
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.cloud.apigateway.v1.UpdateApiRequest} UpdateApiRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ UpdateApiRequest.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.apigateway.v1.UpdateApiRequest();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32());
+ break;
+ }
+ case 2: {
+ message.api = $root.google.cloud.apigateway.v1.Api.decode(reader, reader.uint32());
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes an UpdateApiRequest message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.cloud.apigateway.v1.UpdateApiRequest
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.cloud.apigateway.v1.UpdateApiRequest} UpdateApiRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ UpdateApiRequest.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies an UpdateApiRequest message.
+ * @function verify
+ * @memberof google.cloud.apigateway.v1.UpdateApiRequest
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ UpdateApiRequest.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.updateMask != null && message.hasOwnProperty("updateMask")) {
+ var error = $root.google.protobuf.FieldMask.verify(message.updateMask);
+ if (error)
+ return "updateMask." + error;
+ }
+ if (message.api != null && message.hasOwnProperty("api")) {
+ var error = $root.google.cloud.apigateway.v1.Api.verify(message.api);
+ if (error)
+ return "api." + error;
+ }
+ return null;
+ };
+
+ /**
+ * Creates an UpdateApiRequest message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.cloud.apigateway.v1.UpdateApiRequest
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.cloud.apigateway.v1.UpdateApiRequest} UpdateApiRequest
+ */
+ UpdateApiRequest.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.cloud.apigateway.v1.UpdateApiRequest)
+ return object;
+ var message = new $root.google.cloud.apigateway.v1.UpdateApiRequest();
+ if (object.updateMask != null) {
+ if (typeof object.updateMask !== "object")
+ throw TypeError(".google.cloud.apigateway.v1.UpdateApiRequest.updateMask: object expected");
+ message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask);
+ }
+ if (object.api != null) {
+ if (typeof object.api !== "object")
+ throw TypeError(".google.cloud.apigateway.v1.UpdateApiRequest.api: object expected");
+ message.api = $root.google.cloud.apigateway.v1.Api.fromObject(object.api);
+ }
+ return message;
+ };
+
+ /**
+ * Creates a plain object from an UpdateApiRequest message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.cloud.apigateway.v1.UpdateApiRequest
+ * @static
+ * @param {google.cloud.apigateway.v1.UpdateApiRequest} message UpdateApiRequest
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ UpdateApiRequest.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.defaults) {
+ object.updateMask = null;
+ object.api = null;
+ }
+ if (message.updateMask != null && message.hasOwnProperty("updateMask"))
+ object.updateMask = $root.google.protobuf.FieldMask.toObject(message.updateMask, options);
+ if (message.api != null && message.hasOwnProperty("api"))
+ object.api = $root.google.cloud.apigateway.v1.Api.toObject(message.api, options);
+ return object;
+ };
+
+ /**
+ * Converts this UpdateApiRequest to JSON.
+ * @function toJSON
+ * @memberof google.cloud.apigateway.v1.UpdateApiRequest
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ UpdateApiRequest.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for UpdateApiRequest
+ * @function getTypeUrl
+ * @memberof google.cloud.apigateway.v1.UpdateApiRequest
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ UpdateApiRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.cloud.apigateway.v1.UpdateApiRequest";
+ };
+
+ return UpdateApiRequest;
+ })();
+
+ v1.DeleteApiRequest = (function() {
+
+ /**
+ * Properties of a DeleteApiRequest.
+ * @memberof google.cloud.apigateway.v1
+ * @interface IDeleteApiRequest
+ * @property {string|null} [name] DeleteApiRequest name
+ */
+
+ /**
+ * Constructs a new DeleteApiRequest.
+ * @memberof google.cloud.apigateway.v1
+ * @classdesc Represents a DeleteApiRequest.
+ * @implements IDeleteApiRequest
+ * @constructor
+ * @param {google.cloud.apigateway.v1.IDeleteApiRequest=} [properties] Properties to set
+ */
+ function DeleteApiRequest(properties) {
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * DeleteApiRequest name.
+ * @member {string} name
+ * @memberof google.cloud.apigateway.v1.DeleteApiRequest
+ * @instance
+ */
+ DeleteApiRequest.prototype.name = "";
+
+ /**
+ * Creates a new DeleteApiRequest instance using the specified properties.
+ * @function create
+ * @memberof google.cloud.apigateway.v1.DeleteApiRequest
+ * @static
+ * @param {google.cloud.apigateway.v1.IDeleteApiRequest=} [properties] Properties to set
+ * @returns {google.cloud.apigateway.v1.DeleteApiRequest} DeleteApiRequest instance
+ */
+ DeleteApiRequest.create = function create(properties) {
+ return new DeleteApiRequest(properties);
+ };
+
+ /**
+ * Encodes the specified DeleteApiRequest message. Does not implicitly {@link google.cloud.apigateway.v1.DeleteApiRequest.verify|verify} messages.
+ * @function encode
+ * @memberof google.cloud.apigateway.v1.DeleteApiRequest
+ * @static
+ * @param {google.cloud.apigateway.v1.IDeleteApiRequest} message DeleteApiRequest message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ DeleteApiRequest.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 DeleteApiRequest message, length delimited. Does not implicitly {@link google.cloud.apigateway.v1.DeleteApiRequest.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.cloud.apigateway.v1.DeleteApiRequest
+ * @static
+ * @param {google.cloud.apigateway.v1.IDeleteApiRequest} message DeleteApiRequest message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ DeleteApiRequest.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a DeleteApiRequest message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.cloud.apigateway.v1.DeleteApiRequest
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.cloud.apigateway.v1.DeleteApiRequest} DeleteApiRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ DeleteApiRequest.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.apigateway.v1.DeleteApiRequest();
+ 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 DeleteApiRequest message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.cloud.apigateway.v1.DeleteApiRequest
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.cloud.apigateway.v1.DeleteApiRequest} DeleteApiRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ DeleteApiRequest.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a DeleteApiRequest message.
+ * @function verify
+ * @memberof google.cloud.apigateway.v1.DeleteApiRequest
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ DeleteApiRequest.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 DeleteApiRequest message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.cloud.apigateway.v1.DeleteApiRequest
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.cloud.apigateway.v1.DeleteApiRequest} DeleteApiRequest
+ */
+ DeleteApiRequest.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.cloud.apigateway.v1.DeleteApiRequest)
+ return object;
+ var message = new $root.google.cloud.apigateway.v1.DeleteApiRequest();
+ if (object.name != null)
+ message.name = String(object.name);
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a DeleteApiRequest message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.cloud.apigateway.v1.DeleteApiRequest
+ * @static
+ * @param {google.cloud.apigateway.v1.DeleteApiRequest} message DeleteApiRequest
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ DeleteApiRequest.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 DeleteApiRequest to JSON.
+ * @function toJSON
+ * @memberof google.cloud.apigateway.v1.DeleteApiRequest
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ DeleteApiRequest.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for DeleteApiRequest
+ * @function getTypeUrl
+ * @memberof google.cloud.apigateway.v1.DeleteApiRequest
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ DeleteApiRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.cloud.apigateway.v1.DeleteApiRequest";
+ };
+
+ return DeleteApiRequest;
+ })();
+
+ v1.ListApiConfigsRequest = (function() {
+
+ /**
+ * Properties of a ListApiConfigsRequest.
+ * @memberof google.cloud.apigateway.v1
+ * @interface IListApiConfigsRequest
+ * @property {string|null} [parent] ListApiConfigsRequest parent
+ * @property {number|null} [pageSize] ListApiConfigsRequest pageSize
+ * @property {string|null} [pageToken] ListApiConfigsRequest pageToken
+ * @property {string|null} [filter] ListApiConfigsRequest filter
+ * @property {string|null} [orderBy] ListApiConfigsRequest orderBy
+ */
+
+ /**
+ * Constructs a new ListApiConfigsRequest.
+ * @memberof google.cloud.apigateway.v1
+ * @classdesc Represents a ListApiConfigsRequest.
+ * @implements IListApiConfigsRequest
+ * @constructor
+ * @param {google.cloud.apigateway.v1.IListApiConfigsRequest=} [properties] Properties to set
+ */
+ function ListApiConfigsRequest(properties) {
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * ListApiConfigsRequest parent.
+ * @member {string} parent
+ * @memberof google.cloud.apigateway.v1.ListApiConfigsRequest
+ * @instance
+ */
+ ListApiConfigsRequest.prototype.parent = "";
+
+ /**
+ * ListApiConfigsRequest pageSize.
+ * @member {number} pageSize
+ * @memberof google.cloud.apigateway.v1.ListApiConfigsRequest
+ * @instance
+ */
+ ListApiConfigsRequest.prototype.pageSize = 0;
+
+ /**
+ * ListApiConfigsRequest pageToken.
+ * @member {string} pageToken
+ * @memberof google.cloud.apigateway.v1.ListApiConfigsRequest
+ * @instance
+ */
+ ListApiConfigsRequest.prototype.pageToken = "";
+
+ /**
+ * ListApiConfigsRequest filter.
+ * @member {string} filter
+ * @memberof google.cloud.apigateway.v1.ListApiConfigsRequest
+ * @instance
+ */
+ ListApiConfigsRequest.prototype.filter = "";
+
+ /**
+ * ListApiConfigsRequest orderBy.
+ * @member {string} orderBy
+ * @memberof google.cloud.apigateway.v1.ListApiConfigsRequest
+ * @instance
+ */
+ ListApiConfigsRequest.prototype.orderBy = "";
+
+ /**
+ * Creates a new ListApiConfigsRequest instance using the specified properties.
+ * @function create
+ * @memberof google.cloud.apigateway.v1.ListApiConfigsRequest
+ * @static
+ * @param {google.cloud.apigateway.v1.IListApiConfigsRequest=} [properties] Properties to set
+ * @returns {google.cloud.apigateway.v1.ListApiConfigsRequest} ListApiConfigsRequest instance
+ */
+ ListApiConfigsRequest.create = function create(properties) {
+ return new ListApiConfigsRequest(properties);
+ };
+
+ /**
+ * Encodes the specified ListApiConfigsRequest message. Does not implicitly {@link google.cloud.apigateway.v1.ListApiConfigsRequest.verify|verify} messages.
+ * @function encode
+ * @memberof google.cloud.apigateway.v1.ListApiConfigsRequest
+ * @static
+ * @param {google.cloud.apigateway.v1.IListApiConfigsRequest} message ListApiConfigsRequest message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ ListApiConfigsRequest.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.parent != null && Object.hasOwnProperty.call(message, "parent"))
+ writer.uint32(/* id 1, wireType 2 =*/10).string(message.parent);
+ if (message.pageSize != null && Object.hasOwnProperty.call(message, "pageSize"))
+ writer.uint32(/* id 2, wireType 0 =*/16).int32(message.pageSize);
+ if (message.pageToken != null && Object.hasOwnProperty.call(message, "pageToken"))
+ writer.uint32(/* id 3, wireType 2 =*/26).string(message.pageToken);
+ if (message.filter != null && Object.hasOwnProperty.call(message, "filter"))
+ writer.uint32(/* id 4, wireType 2 =*/34).string(message.filter);
+ if (message.orderBy != null && Object.hasOwnProperty.call(message, "orderBy"))
+ writer.uint32(/* id 5, wireType 2 =*/42).string(message.orderBy);
+ return writer;
+ };
+
+ /**
+ * Encodes the specified ListApiConfigsRequest message, length delimited. Does not implicitly {@link google.cloud.apigateway.v1.ListApiConfigsRequest.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.cloud.apigateway.v1.ListApiConfigsRequest
+ * @static
+ * @param {google.cloud.apigateway.v1.IListApiConfigsRequest} message ListApiConfigsRequest message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ ListApiConfigsRequest.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a ListApiConfigsRequest message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.cloud.apigateway.v1.ListApiConfigsRequest
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.cloud.apigateway.v1.ListApiConfigsRequest} ListApiConfigsRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ ListApiConfigsRequest.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.apigateway.v1.ListApiConfigsRequest();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.parent = reader.string();
+ break;
+ }
+ case 2: {
+ message.pageSize = reader.int32();
+ break;
+ }
+ case 3: {
+ message.pageToken = reader.string();
+ break;
+ }
+ case 4: {
+ message.filter = reader.string();
+ break;
+ }
+ case 5: {
+ message.orderBy = reader.string();
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a ListApiConfigsRequest message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.cloud.apigateway.v1.ListApiConfigsRequest
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.cloud.apigateway.v1.ListApiConfigsRequest} ListApiConfigsRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ ListApiConfigsRequest.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a ListApiConfigsRequest message.
+ * @function verify
+ * @memberof google.cloud.apigateway.v1.ListApiConfigsRequest
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ ListApiConfigsRequest.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.parent != null && message.hasOwnProperty("parent"))
+ if (!$util.isString(message.parent))
+ return "parent: string expected";
+ if (message.pageSize != null && message.hasOwnProperty("pageSize"))
+ if (!$util.isInteger(message.pageSize))
+ return "pageSize: integer expected";
+ if (message.pageToken != null && message.hasOwnProperty("pageToken"))
+ if (!$util.isString(message.pageToken))
+ return "pageToken: string expected";
+ if (message.filter != null && message.hasOwnProperty("filter"))
+ if (!$util.isString(message.filter))
+ return "filter: string expected";
+ if (message.orderBy != null && message.hasOwnProperty("orderBy"))
+ if (!$util.isString(message.orderBy))
+ return "orderBy: string expected";
+ return null;
+ };
+
+ /**
+ * Creates a ListApiConfigsRequest message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.cloud.apigateway.v1.ListApiConfigsRequest
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.cloud.apigateway.v1.ListApiConfigsRequest} ListApiConfigsRequest
+ */
+ ListApiConfigsRequest.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.cloud.apigateway.v1.ListApiConfigsRequest)
+ return object;
+ var message = new $root.google.cloud.apigateway.v1.ListApiConfigsRequest();
+ if (object.parent != null)
+ message.parent = String(object.parent);
+ if (object.pageSize != null)
+ message.pageSize = object.pageSize | 0;
+ if (object.pageToken != null)
+ message.pageToken = String(object.pageToken);
+ if (object.filter != null)
+ message.filter = String(object.filter);
+ if (object.orderBy != null)
+ message.orderBy = String(object.orderBy);
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a ListApiConfigsRequest message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.cloud.apigateway.v1.ListApiConfigsRequest
+ * @static
+ * @param {google.cloud.apigateway.v1.ListApiConfigsRequest} message ListApiConfigsRequest
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ ListApiConfigsRequest.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.defaults) {
+ object.parent = "";
+ object.pageSize = 0;
+ object.pageToken = "";
+ object.filter = "";
+ object.orderBy = "";
+ }
+ if (message.parent != null && message.hasOwnProperty("parent"))
+ object.parent = message.parent;
+ if (message.pageSize != null && message.hasOwnProperty("pageSize"))
+ object.pageSize = message.pageSize;
+ if (message.pageToken != null && message.hasOwnProperty("pageToken"))
+ object.pageToken = message.pageToken;
+ if (message.filter != null && message.hasOwnProperty("filter"))
+ object.filter = message.filter;
+ if (message.orderBy != null && message.hasOwnProperty("orderBy"))
+ object.orderBy = message.orderBy;
+ return object;
+ };
+
+ /**
+ * Converts this ListApiConfigsRequest to JSON.
+ * @function toJSON
+ * @memberof google.cloud.apigateway.v1.ListApiConfigsRequest
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ ListApiConfigsRequest.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for ListApiConfigsRequest
+ * @function getTypeUrl
+ * @memberof google.cloud.apigateway.v1.ListApiConfigsRequest
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ ListApiConfigsRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.cloud.apigateway.v1.ListApiConfigsRequest";
+ };
+
+ return ListApiConfigsRequest;
+ })();
+
+ v1.ListApiConfigsResponse = (function() {
+
+ /**
+ * Properties of a ListApiConfigsResponse.
+ * @memberof google.cloud.apigateway.v1
+ * @interface IListApiConfigsResponse
+ * @property {Array.|null} [apiConfigs] ListApiConfigsResponse apiConfigs
+ * @property {string|null} [nextPageToken] ListApiConfigsResponse nextPageToken
+ * @property {Array.|null} [unreachableLocations] ListApiConfigsResponse unreachableLocations
+ */
+
+ /**
+ * Constructs a new ListApiConfigsResponse.
+ * @memberof google.cloud.apigateway.v1
+ * @classdesc Represents a ListApiConfigsResponse.
+ * @implements IListApiConfigsResponse
+ * @constructor
+ * @param {google.cloud.apigateway.v1.IListApiConfigsResponse=} [properties] Properties to set
+ */
+ function ListApiConfigsResponse(properties) {
+ this.apiConfigs = [];
+ this.unreachableLocations = [];
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * ListApiConfigsResponse apiConfigs.
+ * @member {Array.} apiConfigs
+ * @memberof google.cloud.apigateway.v1.ListApiConfigsResponse
+ * @instance
+ */
+ ListApiConfigsResponse.prototype.apiConfigs = $util.emptyArray;
+
+ /**
+ * ListApiConfigsResponse nextPageToken.
+ * @member {string} nextPageToken
+ * @memberof google.cloud.apigateway.v1.ListApiConfigsResponse
+ * @instance
+ */
+ ListApiConfigsResponse.prototype.nextPageToken = "";
+
+ /**
+ * ListApiConfigsResponse unreachableLocations.
+ * @member {Array.} unreachableLocations
+ * @memberof google.cloud.apigateway.v1.ListApiConfigsResponse
+ * @instance
+ */
+ ListApiConfigsResponse.prototype.unreachableLocations = $util.emptyArray;
+
+ /**
+ * Creates a new ListApiConfigsResponse instance using the specified properties.
+ * @function create
+ * @memberof google.cloud.apigateway.v1.ListApiConfigsResponse
+ * @static
+ * @param {google.cloud.apigateway.v1.IListApiConfigsResponse=} [properties] Properties to set
+ * @returns {google.cloud.apigateway.v1.ListApiConfigsResponse} ListApiConfigsResponse instance
+ */
+ ListApiConfigsResponse.create = function create(properties) {
+ return new ListApiConfigsResponse(properties);
+ };
+
+ /**
+ * Encodes the specified ListApiConfigsResponse message. Does not implicitly {@link google.cloud.apigateway.v1.ListApiConfigsResponse.verify|verify} messages.
+ * @function encode
+ * @memberof google.cloud.apigateway.v1.ListApiConfigsResponse
+ * @static
+ * @param {google.cloud.apigateway.v1.IListApiConfigsResponse} message ListApiConfigsResponse message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ ListApiConfigsResponse.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.apiConfigs != null && message.apiConfigs.length)
+ for (var i = 0; i < message.apiConfigs.length; ++i)
+ $root.google.cloud.apigateway.v1.ApiConfig.encode(message.apiConfigs[i], writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim();
+ if (message.nextPageToken != null && Object.hasOwnProperty.call(message, "nextPageToken"))
+ writer.uint32(/* id 2, wireType 2 =*/18).string(message.nextPageToken);
+ if (message.unreachableLocations != null && message.unreachableLocations.length)
+ for (var i = 0; i < message.unreachableLocations.length; ++i)
+ writer.uint32(/* id 3, wireType 2 =*/26).string(message.unreachableLocations[i]);
+ return writer;
+ };
+
+ /**
+ * Encodes the specified ListApiConfigsResponse message, length delimited. Does not implicitly {@link google.cloud.apigateway.v1.ListApiConfigsResponse.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.cloud.apigateway.v1.ListApiConfigsResponse
+ * @static
+ * @param {google.cloud.apigateway.v1.IListApiConfigsResponse} message ListApiConfigsResponse message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ ListApiConfigsResponse.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a ListApiConfigsResponse message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.cloud.apigateway.v1.ListApiConfigsResponse
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.cloud.apigateway.v1.ListApiConfigsResponse} ListApiConfigsResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ ListApiConfigsResponse.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.apigateway.v1.ListApiConfigsResponse();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ if (!(message.apiConfigs && message.apiConfigs.length))
+ message.apiConfigs = [];
+ message.apiConfigs.push($root.google.cloud.apigateway.v1.ApiConfig.decode(reader, reader.uint32()));
+ break;
+ }
+ case 2: {
+ message.nextPageToken = reader.string();
+ break;
+ }
+ case 3: {
+ if (!(message.unreachableLocations && message.unreachableLocations.length))
+ message.unreachableLocations = [];
+ message.unreachableLocations.push(reader.string());
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a ListApiConfigsResponse message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.cloud.apigateway.v1.ListApiConfigsResponse
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.cloud.apigateway.v1.ListApiConfigsResponse} ListApiConfigsResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ ListApiConfigsResponse.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a ListApiConfigsResponse message.
+ * @function verify
+ * @memberof google.cloud.apigateway.v1.ListApiConfigsResponse
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ ListApiConfigsResponse.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.apiConfigs != null && message.hasOwnProperty("apiConfigs")) {
+ if (!Array.isArray(message.apiConfigs))
+ return "apiConfigs: array expected";
+ for (var i = 0; i < message.apiConfigs.length; ++i) {
+ var error = $root.google.cloud.apigateway.v1.ApiConfig.verify(message.apiConfigs[i]);
+ if (error)
+ return "apiConfigs." + error;
+ }
+ }
+ if (message.nextPageToken != null && message.hasOwnProperty("nextPageToken"))
+ if (!$util.isString(message.nextPageToken))
+ return "nextPageToken: string expected";
+ if (message.unreachableLocations != null && message.hasOwnProperty("unreachableLocations")) {
+ if (!Array.isArray(message.unreachableLocations))
+ return "unreachableLocations: array expected";
+ for (var i = 0; i < message.unreachableLocations.length; ++i)
+ if (!$util.isString(message.unreachableLocations[i]))
+ return "unreachableLocations: string[] expected";
+ }
+ return null;
+ };
+
+ /**
+ * Creates a ListApiConfigsResponse message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.cloud.apigateway.v1.ListApiConfigsResponse
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.cloud.apigateway.v1.ListApiConfigsResponse} ListApiConfigsResponse
+ */
+ ListApiConfigsResponse.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.cloud.apigateway.v1.ListApiConfigsResponse)
+ return object;
+ var message = new $root.google.cloud.apigateway.v1.ListApiConfigsResponse();
+ if (object.apiConfigs) {
+ if (!Array.isArray(object.apiConfigs))
+ throw TypeError(".google.cloud.apigateway.v1.ListApiConfigsResponse.apiConfigs: array expected");
+ message.apiConfigs = [];
+ for (var i = 0; i < object.apiConfigs.length; ++i) {
+ if (typeof object.apiConfigs[i] !== "object")
+ throw TypeError(".google.cloud.apigateway.v1.ListApiConfigsResponse.apiConfigs: object expected");
+ message.apiConfigs[i] = $root.google.cloud.apigateway.v1.ApiConfig.fromObject(object.apiConfigs[i]);
+ }
+ }
+ if (object.nextPageToken != null)
+ message.nextPageToken = String(object.nextPageToken);
+ if (object.unreachableLocations) {
+ if (!Array.isArray(object.unreachableLocations))
+ throw TypeError(".google.cloud.apigateway.v1.ListApiConfigsResponse.unreachableLocations: array expected");
+ message.unreachableLocations = [];
+ for (var i = 0; i < object.unreachableLocations.length; ++i)
+ message.unreachableLocations[i] = String(object.unreachableLocations[i]);
+ }
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a ListApiConfigsResponse message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.cloud.apigateway.v1.ListApiConfigsResponse
+ * @static
+ * @param {google.cloud.apigateway.v1.ListApiConfigsResponse} message ListApiConfigsResponse
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ ListApiConfigsResponse.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.arrays || options.defaults) {
+ object.apiConfigs = [];
+ object.unreachableLocations = [];
+ }
+ if (options.defaults)
+ object.nextPageToken = "";
+ if (message.apiConfigs && message.apiConfigs.length) {
+ object.apiConfigs = [];
+ for (var j = 0; j < message.apiConfigs.length; ++j)
+ object.apiConfigs[j] = $root.google.cloud.apigateway.v1.ApiConfig.toObject(message.apiConfigs[j], options);
+ }
+ if (message.nextPageToken != null && message.hasOwnProperty("nextPageToken"))
+ object.nextPageToken = message.nextPageToken;
+ if (message.unreachableLocations && message.unreachableLocations.length) {
+ object.unreachableLocations = [];
+ for (var j = 0; j < message.unreachableLocations.length; ++j)
+ object.unreachableLocations[j] = message.unreachableLocations[j];
+ }
+ return object;
+ };
+
+ /**
+ * Converts this ListApiConfigsResponse to JSON.
+ * @function toJSON
+ * @memberof google.cloud.apigateway.v1.ListApiConfigsResponse
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ ListApiConfigsResponse.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for ListApiConfigsResponse
+ * @function getTypeUrl
+ * @memberof google.cloud.apigateway.v1.ListApiConfigsResponse
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ ListApiConfigsResponse.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.cloud.apigateway.v1.ListApiConfigsResponse";
+ };
+
+ return ListApiConfigsResponse;
+ })();
+
+ v1.GetApiConfigRequest = (function() {
+
+ /**
+ * Properties of a GetApiConfigRequest.
+ * @memberof google.cloud.apigateway.v1
+ * @interface IGetApiConfigRequest
+ * @property {string|null} [name] GetApiConfigRequest name
+ * @property {google.cloud.apigateway.v1.GetApiConfigRequest.ConfigView|null} [view] GetApiConfigRequest view
+ */
+
+ /**
+ * Constructs a new GetApiConfigRequest.
+ * @memberof google.cloud.apigateway.v1
+ * @classdesc Represents a GetApiConfigRequest.
+ * @implements IGetApiConfigRequest
+ * @constructor
+ * @param {google.cloud.apigateway.v1.IGetApiConfigRequest=} [properties] Properties to set
+ */
+ function GetApiConfigRequest(properties) {
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * GetApiConfigRequest name.
+ * @member {string} name
+ * @memberof google.cloud.apigateway.v1.GetApiConfigRequest
+ * @instance
+ */
+ GetApiConfigRequest.prototype.name = "";
+
+ /**
+ * GetApiConfigRequest view.
+ * @member {google.cloud.apigateway.v1.GetApiConfigRequest.ConfigView} view
+ * @memberof google.cloud.apigateway.v1.GetApiConfigRequest
+ * @instance
+ */
+ GetApiConfigRequest.prototype.view = 0;
+
+ /**
+ * Creates a new GetApiConfigRequest instance using the specified properties.
+ * @function create
+ * @memberof google.cloud.apigateway.v1.GetApiConfigRequest
+ * @static
+ * @param {google.cloud.apigateway.v1.IGetApiConfigRequest=} [properties] Properties to set
+ * @returns {google.cloud.apigateway.v1.GetApiConfigRequest} GetApiConfigRequest instance
+ */
+ GetApiConfigRequest.create = function create(properties) {
+ return new GetApiConfigRequest(properties);
+ };
+
+ /**
+ * Encodes the specified GetApiConfigRequest message. Does not implicitly {@link google.cloud.apigateway.v1.GetApiConfigRequest.verify|verify} messages.
+ * @function encode
+ * @memberof google.cloud.apigateway.v1.GetApiConfigRequest
+ * @static
+ * @param {google.cloud.apigateway.v1.IGetApiConfigRequest} message GetApiConfigRequest message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ GetApiConfigRequest.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.view != null && Object.hasOwnProperty.call(message, "view"))
+ writer.uint32(/* id 3, wireType 0 =*/24).int32(message.view);
+ return writer;
+ };
+
+ /**
+ * Encodes the specified GetApiConfigRequest message, length delimited. Does not implicitly {@link google.cloud.apigateway.v1.GetApiConfigRequest.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.cloud.apigateway.v1.GetApiConfigRequest
+ * @static
+ * @param {google.cloud.apigateway.v1.IGetApiConfigRequest} message GetApiConfigRequest message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ GetApiConfigRequest.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a GetApiConfigRequest message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.cloud.apigateway.v1.GetApiConfigRequest
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.cloud.apigateway.v1.GetApiConfigRequest} GetApiConfigRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ GetApiConfigRequest.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.apigateway.v1.GetApiConfigRequest();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.name = reader.string();
+ break;
+ }
+ case 3: {
+ message.view = reader.int32();
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a GetApiConfigRequest message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.cloud.apigateway.v1.GetApiConfigRequest
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.cloud.apigateway.v1.GetApiConfigRequest} GetApiConfigRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ GetApiConfigRequest.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a GetApiConfigRequest message.
+ * @function verify
+ * @memberof google.cloud.apigateway.v1.GetApiConfigRequest
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ GetApiConfigRequest.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.view != null && message.hasOwnProperty("view"))
+ switch (message.view) {
+ default:
+ return "view: enum value expected";
+ case 0:
+ case 1:
+ case 2:
+ break;
+ }
+ return null;
+ };
+
+ /**
+ * Creates a GetApiConfigRequest message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.cloud.apigateway.v1.GetApiConfigRequest
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.cloud.apigateway.v1.GetApiConfigRequest} GetApiConfigRequest
+ */
+ GetApiConfigRequest.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.cloud.apigateway.v1.GetApiConfigRequest)
+ return object;
+ var message = new $root.google.cloud.apigateway.v1.GetApiConfigRequest();
+ if (object.name != null)
+ message.name = String(object.name);
+ switch (object.view) {
+ default:
+ if (typeof object.view === "number") {
+ message.view = object.view;
+ break;
+ }
+ break;
+ case "CONFIG_VIEW_UNSPECIFIED":
+ case 0:
+ message.view = 0;
+ break;
+ case "BASIC":
+ case 1:
+ message.view = 1;
+ break;
+ case "FULL":
+ case 2:
+ message.view = 2;
+ break;
+ }
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a GetApiConfigRequest message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.cloud.apigateway.v1.GetApiConfigRequest
+ * @static
+ * @param {google.cloud.apigateway.v1.GetApiConfigRequest} message GetApiConfigRequest
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ GetApiConfigRequest.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.defaults) {
+ object.name = "";
+ object.view = options.enums === String ? "CONFIG_VIEW_UNSPECIFIED" : 0;
+ }
+ if (message.name != null && message.hasOwnProperty("name"))
+ object.name = message.name;
+ if (message.view != null && message.hasOwnProperty("view"))
+ object.view = options.enums === String ? $root.google.cloud.apigateway.v1.GetApiConfigRequest.ConfigView[message.view] === undefined ? message.view : $root.google.cloud.apigateway.v1.GetApiConfigRequest.ConfigView[message.view] : message.view;
+ return object;
+ };
+
+ /**
+ * Converts this GetApiConfigRequest to JSON.
+ * @function toJSON
+ * @memberof google.cloud.apigateway.v1.GetApiConfigRequest
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ GetApiConfigRequest.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for GetApiConfigRequest
+ * @function getTypeUrl
+ * @memberof google.cloud.apigateway.v1.GetApiConfigRequest
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ GetApiConfigRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.cloud.apigateway.v1.GetApiConfigRequest";
+ };
+
+ /**
+ * ConfigView enum.
+ * @name google.cloud.apigateway.v1.GetApiConfigRequest.ConfigView
+ * @enum {number}
+ * @property {number} CONFIG_VIEW_UNSPECIFIED=0 CONFIG_VIEW_UNSPECIFIED value
+ * @property {number} BASIC=1 BASIC value
+ * @property {number} FULL=2 FULL value
+ */
+ GetApiConfigRequest.ConfigView = (function() {
+ var valuesById = {}, values = Object.create(valuesById);
+ values[valuesById[0] = "CONFIG_VIEW_UNSPECIFIED"] = 0;
+ values[valuesById[1] = "BASIC"] = 1;
+ values[valuesById[2] = "FULL"] = 2;
+ return values;
+ })();
+
+ return GetApiConfigRequest;
+ })();
+
+ v1.CreateApiConfigRequest = (function() {
+
+ /**
+ * Properties of a CreateApiConfigRequest.
+ * @memberof google.cloud.apigateway.v1
+ * @interface ICreateApiConfigRequest
+ * @property {string|null} [parent] CreateApiConfigRequest parent
+ * @property {string|null} [apiConfigId] CreateApiConfigRequest apiConfigId
+ * @property {google.cloud.apigateway.v1.IApiConfig|null} [apiConfig] CreateApiConfigRequest apiConfig
+ */
+
+ /**
+ * Constructs a new CreateApiConfigRequest.
+ * @memberof google.cloud.apigateway.v1
+ * @classdesc Represents a CreateApiConfigRequest.
+ * @implements ICreateApiConfigRequest
+ * @constructor
+ * @param {google.cloud.apigateway.v1.ICreateApiConfigRequest=} [properties] Properties to set
+ */
+ function CreateApiConfigRequest(properties) {
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * CreateApiConfigRequest parent.
+ * @member {string} parent
+ * @memberof google.cloud.apigateway.v1.CreateApiConfigRequest
+ * @instance
+ */
+ CreateApiConfigRequest.prototype.parent = "";
+
+ /**
+ * CreateApiConfigRequest apiConfigId.
+ * @member {string} apiConfigId
+ * @memberof google.cloud.apigateway.v1.CreateApiConfigRequest
+ * @instance
+ */
+ CreateApiConfigRequest.prototype.apiConfigId = "";
+
+ /**
+ * CreateApiConfigRequest apiConfig.
+ * @member {google.cloud.apigateway.v1.IApiConfig|null|undefined} apiConfig
+ * @memberof google.cloud.apigateway.v1.CreateApiConfigRequest
+ * @instance
+ */
+ CreateApiConfigRequest.prototype.apiConfig = null;
+
+ /**
+ * Creates a new CreateApiConfigRequest instance using the specified properties.
+ * @function create
+ * @memberof google.cloud.apigateway.v1.CreateApiConfigRequest
+ * @static
+ * @param {google.cloud.apigateway.v1.ICreateApiConfigRequest=} [properties] Properties to set
+ * @returns {google.cloud.apigateway.v1.CreateApiConfigRequest} CreateApiConfigRequest instance
+ */
+ CreateApiConfigRequest.create = function create(properties) {
+ return new CreateApiConfigRequest(properties);
+ };
+
+ /**
+ * Encodes the specified CreateApiConfigRequest message. Does not implicitly {@link google.cloud.apigateway.v1.CreateApiConfigRequest.verify|verify} messages.
+ * @function encode
+ * @memberof google.cloud.apigateway.v1.CreateApiConfigRequest
+ * @static
+ * @param {google.cloud.apigateway.v1.ICreateApiConfigRequest} message CreateApiConfigRequest message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ CreateApiConfigRequest.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.apiConfigId != null && Object.hasOwnProperty.call(message, "apiConfigId"))
+ writer.uint32(/* id 2, wireType 2 =*/18).string(message.apiConfigId);
+ if (message.apiConfig != null && Object.hasOwnProperty.call(message, "apiConfig"))
+ $root.google.cloud.apigateway.v1.ApiConfig.encode(message.apiConfig, writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim();
+ return writer;
+ };
+
+ /**
+ * Encodes the specified CreateApiConfigRequest message, length delimited. Does not implicitly {@link google.cloud.apigateway.v1.CreateApiConfigRequest.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.cloud.apigateway.v1.CreateApiConfigRequest
+ * @static
+ * @param {google.cloud.apigateway.v1.ICreateApiConfigRequest} message CreateApiConfigRequest message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ CreateApiConfigRequest.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a CreateApiConfigRequest message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.cloud.apigateway.v1.CreateApiConfigRequest
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.cloud.apigateway.v1.CreateApiConfigRequest} CreateApiConfigRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ CreateApiConfigRequest.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.apigateway.v1.CreateApiConfigRequest();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.parent = reader.string();
+ break;
+ }
+ case 2: {
+ message.apiConfigId = reader.string();
+ break;
+ }
+ case 3: {
+ message.apiConfig = $root.google.cloud.apigateway.v1.ApiConfig.decode(reader, reader.uint32());
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a CreateApiConfigRequest message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.cloud.apigateway.v1.CreateApiConfigRequest
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.cloud.apigateway.v1.CreateApiConfigRequest} CreateApiConfigRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ CreateApiConfigRequest.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a CreateApiConfigRequest message.
+ * @function verify
+ * @memberof google.cloud.apigateway.v1.CreateApiConfigRequest
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ CreateApiConfigRequest.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.apiConfigId != null && message.hasOwnProperty("apiConfigId"))
+ if (!$util.isString(message.apiConfigId))
+ return "apiConfigId: string expected";
+ if (message.apiConfig != null && message.hasOwnProperty("apiConfig")) {
+ var error = $root.google.cloud.apigateway.v1.ApiConfig.verify(message.apiConfig);
+ if (error)
+ return "apiConfig." + error;
+ }
+ return null;
+ };
+
+ /**
+ * Creates a CreateApiConfigRequest message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.cloud.apigateway.v1.CreateApiConfigRequest
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.cloud.apigateway.v1.CreateApiConfigRequest} CreateApiConfigRequest
+ */
+ CreateApiConfigRequest.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.cloud.apigateway.v1.CreateApiConfigRequest)
+ return object;
+ var message = new $root.google.cloud.apigateway.v1.CreateApiConfigRequest();
+ if (object.parent != null)
+ message.parent = String(object.parent);
+ if (object.apiConfigId != null)
+ message.apiConfigId = String(object.apiConfigId);
+ if (object.apiConfig != null) {
+ if (typeof object.apiConfig !== "object")
+ throw TypeError(".google.cloud.apigateway.v1.CreateApiConfigRequest.apiConfig: object expected");
+ message.apiConfig = $root.google.cloud.apigateway.v1.ApiConfig.fromObject(object.apiConfig);
+ }
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a CreateApiConfigRequest message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.cloud.apigateway.v1.CreateApiConfigRequest
+ * @static
+ * @param {google.cloud.apigateway.v1.CreateApiConfigRequest} message CreateApiConfigRequest
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ CreateApiConfigRequest.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.defaults) {
+ object.parent = "";
+ object.apiConfigId = "";
+ object.apiConfig = null;
+ }
+ if (message.parent != null && message.hasOwnProperty("parent"))
+ object.parent = message.parent;
+ if (message.apiConfigId != null && message.hasOwnProperty("apiConfigId"))
+ object.apiConfigId = message.apiConfigId;
+ if (message.apiConfig != null && message.hasOwnProperty("apiConfig"))
+ object.apiConfig = $root.google.cloud.apigateway.v1.ApiConfig.toObject(message.apiConfig, options);
+ return object;
+ };
+
+ /**
+ * Converts this CreateApiConfigRequest to JSON.
+ * @function toJSON
+ * @memberof google.cloud.apigateway.v1.CreateApiConfigRequest
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ CreateApiConfigRequest.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for CreateApiConfigRequest
+ * @function getTypeUrl
+ * @memberof google.cloud.apigateway.v1.CreateApiConfigRequest
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ CreateApiConfigRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.cloud.apigateway.v1.CreateApiConfigRequest";
+ };
+
+ return CreateApiConfigRequest;
+ })();
+
+ v1.UpdateApiConfigRequest = (function() {
+
+ /**
+ * Properties of an UpdateApiConfigRequest.
+ * @memberof google.cloud.apigateway.v1
+ * @interface IUpdateApiConfigRequest
+ * @property {google.protobuf.IFieldMask|null} [updateMask] UpdateApiConfigRequest updateMask
+ * @property {google.cloud.apigateway.v1.IApiConfig|null} [apiConfig] UpdateApiConfigRequest apiConfig
+ */
+
+ /**
+ * Constructs a new UpdateApiConfigRequest.
+ * @memberof google.cloud.apigateway.v1
+ * @classdesc Represents an UpdateApiConfigRequest.
+ * @implements IUpdateApiConfigRequest
+ * @constructor
+ * @param {google.cloud.apigateway.v1.IUpdateApiConfigRequest=} [properties] Properties to set
+ */
+ function UpdateApiConfigRequest(properties) {
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * UpdateApiConfigRequest updateMask.
+ * @member {google.protobuf.IFieldMask|null|undefined} updateMask
+ * @memberof google.cloud.apigateway.v1.UpdateApiConfigRequest
+ * @instance
+ */
+ UpdateApiConfigRequest.prototype.updateMask = null;
+
+ /**
+ * UpdateApiConfigRequest apiConfig.
+ * @member {google.cloud.apigateway.v1.IApiConfig|null|undefined} apiConfig
+ * @memberof google.cloud.apigateway.v1.UpdateApiConfigRequest
+ * @instance
+ */
+ UpdateApiConfigRequest.prototype.apiConfig = null;
+
+ /**
+ * Creates a new UpdateApiConfigRequest instance using the specified properties.
+ * @function create
+ * @memberof google.cloud.apigateway.v1.UpdateApiConfigRequest
+ * @static
+ * @param {google.cloud.apigateway.v1.IUpdateApiConfigRequest=} [properties] Properties to set
+ * @returns {google.cloud.apigateway.v1.UpdateApiConfigRequest} UpdateApiConfigRequest instance
+ */
+ UpdateApiConfigRequest.create = function create(properties) {
+ return new UpdateApiConfigRequest(properties);
+ };
+
+ /**
+ * Encodes the specified UpdateApiConfigRequest message. Does not implicitly {@link google.cloud.apigateway.v1.UpdateApiConfigRequest.verify|verify} messages.
+ * @function encode
+ * @memberof google.cloud.apigateway.v1.UpdateApiConfigRequest
+ * @static
+ * @param {google.cloud.apigateway.v1.IUpdateApiConfigRequest} message UpdateApiConfigRequest message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ UpdateApiConfigRequest.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.updateMask != null && Object.hasOwnProperty.call(message, "updateMask"))
+ $root.google.protobuf.FieldMask.encode(message.updateMask, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim();
+ if (message.apiConfig != null && Object.hasOwnProperty.call(message, "apiConfig"))
+ $root.google.cloud.apigateway.v1.ApiConfig.encode(message.apiConfig, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim();
+ return writer;
+ };
+
+ /**
+ * Encodes the specified UpdateApiConfigRequest message, length delimited. Does not implicitly {@link google.cloud.apigateway.v1.UpdateApiConfigRequest.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.cloud.apigateway.v1.UpdateApiConfigRequest
+ * @static
+ * @param {google.cloud.apigateway.v1.IUpdateApiConfigRequest} message UpdateApiConfigRequest message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ UpdateApiConfigRequest.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes an UpdateApiConfigRequest message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.cloud.apigateway.v1.UpdateApiConfigRequest
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.cloud.apigateway.v1.UpdateApiConfigRequest} UpdateApiConfigRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ UpdateApiConfigRequest.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.apigateway.v1.UpdateApiConfigRequest();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32());
+ break;
+ }
+ case 2: {
+ message.apiConfig = $root.google.cloud.apigateway.v1.ApiConfig.decode(reader, reader.uint32());
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes an UpdateApiConfigRequest message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.cloud.apigateway.v1.UpdateApiConfigRequest
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.cloud.apigateway.v1.UpdateApiConfigRequest} UpdateApiConfigRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ UpdateApiConfigRequest.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies an UpdateApiConfigRequest message.
+ * @function verify
+ * @memberof google.cloud.apigateway.v1.UpdateApiConfigRequest
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ UpdateApiConfigRequest.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.updateMask != null && message.hasOwnProperty("updateMask")) {
+ var error = $root.google.protobuf.FieldMask.verify(message.updateMask);
+ if (error)
+ return "updateMask." + error;
+ }
+ if (message.apiConfig != null && message.hasOwnProperty("apiConfig")) {
+ var error = $root.google.cloud.apigateway.v1.ApiConfig.verify(message.apiConfig);
+ if (error)
+ return "apiConfig." + error;
+ }
+ return null;
+ };
+
+ /**
+ * Creates an UpdateApiConfigRequest message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.cloud.apigateway.v1.UpdateApiConfigRequest
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.cloud.apigateway.v1.UpdateApiConfigRequest} UpdateApiConfigRequest
+ */
+ UpdateApiConfigRequest.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.cloud.apigateway.v1.UpdateApiConfigRequest)
+ return object;
+ var message = new $root.google.cloud.apigateway.v1.UpdateApiConfigRequest();
+ if (object.updateMask != null) {
+ if (typeof object.updateMask !== "object")
+ throw TypeError(".google.cloud.apigateway.v1.UpdateApiConfigRequest.updateMask: object expected");
+ message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask);
+ }
+ if (object.apiConfig != null) {
+ if (typeof object.apiConfig !== "object")
+ throw TypeError(".google.cloud.apigateway.v1.UpdateApiConfigRequest.apiConfig: object expected");
+ message.apiConfig = $root.google.cloud.apigateway.v1.ApiConfig.fromObject(object.apiConfig);
+ }
+ return message;
+ };
+
+ /**
+ * Creates a plain object from an UpdateApiConfigRequest message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.cloud.apigateway.v1.UpdateApiConfigRequest
+ * @static
+ * @param {google.cloud.apigateway.v1.UpdateApiConfigRequest} message UpdateApiConfigRequest
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ UpdateApiConfigRequest.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.defaults) {
+ object.updateMask = null;
+ object.apiConfig = null;
+ }
+ if (message.updateMask != null && message.hasOwnProperty("updateMask"))
+ object.updateMask = $root.google.protobuf.FieldMask.toObject(message.updateMask, options);
+ if (message.apiConfig != null && message.hasOwnProperty("apiConfig"))
+ object.apiConfig = $root.google.cloud.apigateway.v1.ApiConfig.toObject(message.apiConfig, options);
+ return object;
+ };
+
+ /**
+ * Converts this UpdateApiConfigRequest to JSON.
+ * @function toJSON
+ * @memberof google.cloud.apigateway.v1.UpdateApiConfigRequest
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ UpdateApiConfigRequest.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for UpdateApiConfigRequest
+ * @function getTypeUrl
+ * @memberof google.cloud.apigateway.v1.UpdateApiConfigRequest
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ UpdateApiConfigRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.cloud.apigateway.v1.UpdateApiConfigRequest";
+ };
+
+ return UpdateApiConfigRequest;
+ })();
+
+ v1.DeleteApiConfigRequest = (function() {
+
+ /**
+ * Properties of a DeleteApiConfigRequest.
+ * @memberof google.cloud.apigateway.v1
+ * @interface IDeleteApiConfigRequest
+ * @property {string|null} [name] DeleteApiConfigRequest name
+ */
+
+ /**
+ * Constructs a new DeleteApiConfigRequest.
+ * @memberof google.cloud.apigateway.v1
+ * @classdesc Represents a DeleteApiConfigRequest.
+ * @implements IDeleteApiConfigRequest
+ * @constructor
+ * @param {google.cloud.apigateway.v1.IDeleteApiConfigRequest=} [properties] Properties to set
+ */
+ function DeleteApiConfigRequest(properties) {
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * DeleteApiConfigRequest name.
+ * @member {string} name
+ * @memberof google.cloud.apigateway.v1.DeleteApiConfigRequest
+ * @instance
+ */
+ DeleteApiConfigRequest.prototype.name = "";
+
+ /**
+ * Creates a new DeleteApiConfigRequest instance using the specified properties.
+ * @function create
+ * @memberof google.cloud.apigateway.v1.DeleteApiConfigRequest
+ * @static
+ * @param {google.cloud.apigateway.v1.IDeleteApiConfigRequest=} [properties] Properties to set
+ * @returns {google.cloud.apigateway.v1.DeleteApiConfigRequest} DeleteApiConfigRequest instance
+ */
+ DeleteApiConfigRequest.create = function create(properties) {
+ return new DeleteApiConfigRequest(properties);
+ };
+
+ /**
+ * Encodes the specified DeleteApiConfigRequest message. Does not implicitly {@link google.cloud.apigateway.v1.DeleteApiConfigRequest.verify|verify} messages.
+ * @function encode
+ * @memberof google.cloud.apigateway.v1.DeleteApiConfigRequest
+ * @static
+ * @param {google.cloud.apigateway.v1.IDeleteApiConfigRequest} message DeleteApiConfigRequest message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ DeleteApiConfigRequest.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 DeleteApiConfigRequest message, length delimited. Does not implicitly {@link google.cloud.apigateway.v1.DeleteApiConfigRequest.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.cloud.apigateway.v1.DeleteApiConfigRequest
+ * @static
+ * @param {google.cloud.apigateway.v1.IDeleteApiConfigRequest} message DeleteApiConfigRequest message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ DeleteApiConfigRequest.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a DeleteApiConfigRequest message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.cloud.apigateway.v1.DeleteApiConfigRequest
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.cloud.apigateway.v1.DeleteApiConfigRequest} DeleteApiConfigRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ DeleteApiConfigRequest.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.apigateway.v1.DeleteApiConfigRequest();
+ 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 DeleteApiConfigRequest message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.cloud.apigateway.v1.DeleteApiConfigRequest
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.cloud.apigateway.v1.DeleteApiConfigRequest} DeleteApiConfigRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ DeleteApiConfigRequest.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a DeleteApiConfigRequest message.
+ * @function verify
+ * @memberof google.cloud.apigateway.v1.DeleteApiConfigRequest
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ DeleteApiConfigRequest.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 DeleteApiConfigRequest message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.cloud.apigateway.v1.DeleteApiConfigRequest
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.cloud.apigateway.v1.DeleteApiConfigRequest} DeleteApiConfigRequest
+ */
+ DeleteApiConfigRequest.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.cloud.apigateway.v1.DeleteApiConfigRequest)
+ return object;
+ var message = new $root.google.cloud.apigateway.v1.DeleteApiConfigRequest();
+ if (object.name != null)
+ message.name = String(object.name);
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a DeleteApiConfigRequest message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.cloud.apigateway.v1.DeleteApiConfigRequest
+ * @static
+ * @param {google.cloud.apigateway.v1.DeleteApiConfigRequest} message DeleteApiConfigRequest
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ DeleteApiConfigRequest.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 DeleteApiConfigRequest to JSON.
+ * @function toJSON
+ * @memberof google.cloud.apigateway.v1.DeleteApiConfigRequest
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ DeleteApiConfigRequest.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for DeleteApiConfigRequest
+ * @function getTypeUrl
+ * @memberof google.cloud.apigateway.v1.DeleteApiConfigRequest
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ DeleteApiConfigRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.cloud.apigateway.v1.DeleteApiConfigRequest";
+ };
+
+ return DeleteApiConfigRequest;
+ })();
+
+ v1.OperationMetadata = (function() {
+
+ /**
+ * Properties of an OperationMetadata.
+ * @memberof google.cloud.apigateway.v1
+ * @interface IOperationMetadata
+ * @property {google.protobuf.ITimestamp|null} [createTime] OperationMetadata createTime
+ * @property {google.protobuf.ITimestamp|null} [endTime] OperationMetadata endTime
+ * @property {string|null} [target] OperationMetadata target
+ * @property {string|null} [verb] OperationMetadata verb
+ * @property {string|null} [statusMessage] OperationMetadata statusMessage
+ * @property {boolean|null} [requestedCancellation] OperationMetadata requestedCancellation
+ * @property {string|null} [apiVersion] OperationMetadata apiVersion
+ * @property {Array.|null} [diagnostics] OperationMetadata diagnostics
+ */
+
+ /**
+ * Constructs a new OperationMetadata.
+ * @memberof google.cloud.apigateway.v1
+ * @classdesc Represents an OperationMetadata.
+ * @implements IOperationMetadata
+ * @constructor
+ * @param {google.cloud.apigateway.v1.IOperationMetadata=} [properties] Properties to set
+ */
+ function OperationMetadata(properties) {
+ this.diagnostics = [];
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * OperationMetadata createTime.
+ * @member {google.protobuf.ITimestamp|null|undefined} createTime
+ * @memberof google.cloud.apigateway.v1.OperationMetadata
+ * @instance
+ */
+ OperationMetadata.prototype.createTime = null;
+
+ /**
+ * OperationMetadata endTime.
+ * @member {google.protobuf.ITimestamp|null|undefined} endTime
+ * @memberof google.cloud.apigateway.v1.OperationMetadata
+ * @instance
+ */
+ OperationMetadata.prototype.endTime = null;
+
+ /**
+ * OperationMetadata target.
+ * @member {string} target
+ * @memberof google.cloud.apigateway.v1.OperationMetadata
+ * @instance
+ */
+ OperationMetadata.prototype.target = "";
+
+ /**
+ * OperationMetadata verb.
+ * @member {string} verb
+ * @memberof google.cloud.apigateway.v1.OperationMetadata
+ * @instance
+ */
+ OperationMetadata.prototype.verb = "";
+
+ /**
+ * OperationMetadata statusMessage.
+ * @member {string} statusMessage
+ * @memberof google.cloud.apigateway.v1.OperationMetadata
+ * @instance
+ */
+ OperationMetadata.prototype.statusMessage = "";
+
+ /**
+ * OperationMetadata requestedCancellation.
+ * @member {boolean} requestedCancellation
+ * @memberof google.cloud.apigateway.v1.OperationMetadata
+ * @instance
+ */
+ OperationMetadata.prototype.requestedCancellation = false;
+
+ /**
+ * OperationMetadata apiVersion.
+ * @member {string} apiVersion
+ * @memberof google.cloud.apigateway.v1.OperationMetadata
+ * @instance
+ */
+ OperationMetadata.prototype.apiVersion = "";
+
+ /**
+ * OperationMetadata diagnostics.
+ * @member {Array.} diagnostics
+ * @memberof google.cloud.apigateway.v1.OperationMetadata
+ * @instance
+ */
+ OperationMetadata.prototype.diagnostics = $util.emptyArray;
+
+ /**
+ * Creates a new OperationMetadata instance using the specified properties.
+ * @function create
+ * @memberof google.cloud.apigateway.v1.OperationMetadata
+ * @static
+ * @param {google.cloud.apigateway.v1.IOperationMetadata=} [properties] Properties to set
+ * @returns {google.cloud.apigateway.v1.OperationMetadata} OperationMetadata instance
+ */
+ OperationMetadata.create = function create(properties) {
+ return new OperationMetadata(properties);
+ };
+
+ /**
+ * Encodes the specified OperationMetadata message. Does not implicitly {@link google.cloud.apigateway.v1.OperationMetadata.verify|verify} messages.
+ * @function encode
+ * @memberof google.cloud.apigateway.v1.OperationMetadata
+ * @static
+ * @param {google.cloud.apigateway.v1.IOperationMetadata} message OperationMetadata message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ OperationMetadata.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.createTime != null && Object.hasOwnProperty.call(message, "createTime"))
+ $root.google.protobuf.Timestamp.encode(message.createTime, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim();
+ if (message.endTime != null && Object.hasOwnProperty.call(message, "endTime"))
+ $root.google.protobuf.Timestamp.encode(message.endTime, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim();
+ if (message.target != null && Object.hasOwnProperty.call(message, "target"))
+ writer.uint32(/* id 3, wireType 2 =*/26).string(message.target);
+ if (message.verb != null && Object.hasOwnProperty.call(message, "verb"))
+ writer.uint32(/* id 4, wireType 2 =*/34).string(message.verb);
+ if (message.statusMessage != null && Object.hasOwnProperty.call(message, "statusMessage"))
+ writer.uint32(/* id 5, wireType 2 =*/42).string(message.statusMessage);
+ if (message.requestedCancellation != null && Object.hasOwnProperty.call(message, "requestedCancellation"))
+ writer.uint32(/* id 6, wireType 0 =*/48).bool(message.requestedCancellation);
+ if (message.apiVersion != null && Object.hasOwnProperty.call(message, "apiVersion"))
+ writer.uint32(/* id 7, wireType 2 =*/58).string(message.apiVersion);
+ if (message.diagnostics != null && message.diagnostics.length)
+ for (var i = 0; i < message.diagnostics.length; ++i)
+ $root.google.cloud.apigateway.v1.OperationMetadata.Diagnostic.encode(message.diagnostics[i], writer.uint32(/* id 8, wireType 2 =*/66).fork()).ldelim();
+ return writer;
+ };
+
+ /**
+ * Encodes the specified OperationMetadata message, length delimited. Does not implicitly {@link google.cloud.apigateway.v1.OperationMetadata.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.cloud.apigateway.v1.OperationMetadata
+ * @static
+ * @param {google.cloud.apigateway.v1.IOperationMetadata} message OperationMetadata message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ OperationMetadata.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes an OperationMetadata message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.cloud.apigateway.v1.OperationMetadata
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.cloud.apigateway.v1.OperationMetadata} OperationMetadata
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ OperationMetadata.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.apigateway.v1.OperationMetadata();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32());
+ break;
+ }
+ case 2: {
+ message.endTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32());
+ break;
+ }
+ case 3: {
+ message.target = reader.string();
+ break;
+ }
+ case 4: {
+ message.verb = reader.string();
+ break;
+ }
+ case 5: {
+ message.statusMessage = reader.string();
+ break;
+ }
+ case 6: {
+ message.requestedCancellation = reader.bool();
+ break;
+ }
+ case 7: {
+ message.apiVersion = reader.string();
+ break;
+ }
+ case 8: {
+ if (!(message.diagnostics && message.diagnostics.length))
+ message.diagnostics = [];
+ message.diagnostics.push($root.google.cloud.apigateway.v1.OperationMetadata.Diagnostic.decode(reader, reader.uint32()));
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes an OperationMetadata message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.cloud.apigateway.v1.OperationMetadata
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.cloud.apigateway.v1.OperationMetadata} OperationMetadata
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ OperationMetadata.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies an OperationMetadata message.
+ * @function verify
+ * @memberof google.cloud.apigateway.v1.OperationMetadata
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ OperationMetadata.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.createTime != null && message.hasOwnProperty("createTime")) {
+ var error = $root.google.protobuf.Timestamp.verify(message.createTime);
+ if (error)
+ return "createTime." + error;
+ }
+ if (message.endTime != null && message.hasOwnProperty("endTime")) {
+ var error = $root.google.protobuf.Timestamp.verify(message.endTime);
+ if (error)
+ return "endTime." + error;
+ }
+ if (message.target != null && message.hasOwnProperty("target"))
+ if (!$util.isString(message.target))
+ return "target: string expected";
+ if (message.verb != null && message.hasOwnProperty("verb"))
+ if (!$util.isString(message.verb))
+ return "verb: string expected";
+ if (message.statusMessage != null && message.hasOwnProperty("statusMessage"))
+ if (!$util.isString(message.statusMessage))
+ return "statusMessage: string expected";
+ if (message.requestedCancellation != null && message.hasOwnProperty("requestedCancellation"))
+ if (typeof message.requestedCancellation !== "boolean")
+ return "requestedCancellation: boolean expected";
+ if (message.apiVersion != null && message.hasOwnProperty("apiVersion"))
+ if (!$util.isString(message.apiVersion))
+ return "apiVersion: string expected";
+ if (message.diagnostics != null && message.hasOwnProperty("diagnostics")) {
+ if (!Array.isArray(message.diagnostics))
+ return "diagnostics: array expected";
+ for (var i = 0; i < message.diagnostics.length; ++i) {
+ var error = $root.google.cloud.apigateway.v1.OperationMetadata.Diagnostic.verify(message.diagnostics[i]);
+ if (error)
+ return "diagnostics." + error;
+ }
+ }
+ return null;
+ };
+
+ /**
+ * Creates an OperationMetadata message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.cloud.apigateway.v1.OperationMetadata
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.cloud.apigateway.v1.OperationMetadata} OperationMetadata
+ */
+ OperationMetadata.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.cloud.apigateway.v1.OperationMetadata)
+ return object;
+ var message = new $root.google.cloud.apigateway.v1.OperationMetadata();
+ if (object.createTime != null) {
+ if (typeof object.createTime !== "object")
+ throw TypeError(".google.cloud.apigateway.v1.OperationMetadata.createTime: object expected");
+ message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime);
+ }
+ if (object.endTime != null) {
+ if (typeof object.endTime !== "object")
+ throw TypeError(".google.cloud.apigateway.v1.OperationMetadata.endTime: object expected");
+ message.endTime = $root.google.protobuf.Timestamp.fromObject(object.endTime);
+ }
+ if (object.target != null)
+ message.target = String(object.target);
+ if (object.verb != null)
+ message.verb = String(object.verb);
+ if (object.statusMessage != null)
+ message.statusMessage = String(object.statusMessage);
+ if (object.requestedCancellation != null)
+ message.requestedCancellation = Boolean(object.requestedCancellation);
+ if (object.apiVersion != null)
+ message.apiVersion = String(object.apiVersion);
+ if (object.diagnostics) {
+ if (!Array.isArray(object.diagnostics))
+ throw TypeError(".google.cloud.apigateway.v1.OperationMetadata.diagnostics: array expected");
+ message.diagnostics = [];
+ for (var i = 0; i < object.diagnostics.length; ++i) {
+ if (typeof object.diagnostics[i] !== "object")
+ throw TypeError(".google.cloud.apigateway.v1.OperationMetadata.diagnostics: object expected");
+ message.diagnostics[i] = $root.google.cloud.apigateway.v1.OperationMetadata.Diagnostic.fromObject(object.diagnostics[i]);
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Creates a plain object from an OperationMetadata message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.cloud.apigateway.v1.OperationMetadata
+ * @static
+ * @param {google.cloud.apigateway.v1.OperationMetadata} message OperationMetadata
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ OperationMetadata.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.arrays || options.defaults)
+ object.diagnostics = [];
+ if (options.defaults) {
+ object.createTime = null;
+ object.endTime = null;
+ object.target = "";
+ object.verb = "";
+ object.statusMessage = "";
+ object.requestedCancellation = false;
+ object.apiVersion = "";
+ }
+ if (message.createTime != null && message.hasOwnProperty("createTime"))
+ object.createTime = $root.google.protobuf.Timestamp.toObject(message.createTime, options);
+ if (message.endTime != null && message.hasOwnProperty("endTime"))
+ object.endTime = $root.google.protobuf.Timestamp.toObject(message.endTime, options);
+ if (message.target != null && message.hasOwnProperty("target"))
+ object.target = message.target;
+ if (message.verb != null && message.hasOwnProperty("verb"))
+ object.verb = message.verb;
+ if (message.statusMessage != null && message.hasOwnProperty("statusMessage"))
+ object.statusMessage = message.statusMessage;
+ if (message.requestedCancellation != null && message.hasOwnProperty("requestedCancellation"))
+ object.requestedCancellation = message.requestedCancellation;
+ if (message.apiVersion != null && message.hasOwnProperty("apiVersion"))
+ object.apiVersion = message.apiVersion;
+ if (message.diagnostics && message.diagnostics.length) {
+ object.diagnostics = [];
+ for (var j = 0; j < message.diagnostics.length; ++j)
+ object.diagnostics[j] = $root.google.cloud.apigateway.v1.OperationMetadata.Diagnostic.toObject(message.diagnostics[j], options);
+ }
+ return object;
+ };
+
+ /**
+ * Converts this OperationMetadata to JSON.
+ * @function toJSON
+ * @memberof google.cloud.apigateway.v1.OperationMetadata
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ OperationMetadata.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for OperationMetadata
+ * @function getTypeUrl
+ * @memberof google.cloud.apigateway.v1.OperationMetadata
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ OperationMetadata.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.cloud.apigateway.v1.OperationMetadata";
+ };
+
+ OperationMetadata.Diagnostic = (function() {
+
+ /**
+ * Properties of a Diagnostic.
+ * @memberof google.cloud.apigateway.v1.OperationMetadata
+ * @interface IDiagnostic
+ * @property {string|null} [location] Diagnostic location
+ * @property {string|null} [message] Diagnostic message
+ */
+
+ /**
+ * Constructs a new Diagnostic.
+ * @memberof google.cloud.apigateway.v1.OperationMetadata
+ * @classdesc Represents a Diagnostic.
+ * @implements IDiagnostic
+ * @constructor
+ * @param {google.cloud.apigateway.v1.OperationMetadata.IDiagnostic=} [properties] Properties to set
+ */
+ function Diagnostic(properties) {
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * Diagnostic location.
+ * @member {string} location
+ * @memberof google.cloud.apigateway.v1.OperationMetadata.Diagnostic
+ * @instance
+ */
+ Diagnostic.prototype.location = "";
+
+ /**
+ * Diagnostic message.
+ * @member {string} message
+ * @memberof google.cloud.apigateway.v1.OperationMetadata.Diagnostic
+ * @instance
+ */
+ Diagnostic.prototype.message = "";
+
+ /**
+ * Creates a new Diagnostic instance using the specified properties.
+ * @function create
+ * @memberof google.cloud.apigateway.v1.OperationMetadata.Diagnostic
+ * @static
+ * @param {google.cloud.apigateway.v1.OperationMetadata.IDiagnostic=} [properties] Properties to set
+ * @returns {google.cloud.apigateway.v1.OperationMetadata.Diagnostic} Diagnostic instance
+ */
+ Diagnostic.create = function create(properties) {
+ return new Diagnostic(properties);
+ };
+
+ /**
+ * Encodes the specified Diagnostic message. Does not implicitly {@link google.cloud.apigateway.v1.OperationMetadata.Diagnostic.verify|verify} messages.
+ * @function encode
+ * @memberof google.cloud.apigateway.v1.OperationMetadata.Diagnostic
+ * @static
+ * @param {google.cloud.apigateway.v1.OperationMetadata.IDiagnostic} message Diagnostic message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ Diagnostic.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.location != null && Object.hasOwnProperty.call(message, "location"))
+ writer.uint32(/* id 1, wireType 2 =*/10).string(message.location);
+ if (message.message != null && Object.hasOwnProperty.call(message, "message"))
+ writer.uint32(/* id 2, wireType 2 =*/18).string(message.message);
+ return writer;
+ };
+
+ /**
+ * Encodes the specified Diagnostic message, length delimited. Does not implicitly {@link google.cloud.apigateway.v1.OperationMetadata.Diagnostic.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.cloud.apigateway.v1.OperationMetadata.Diagnostic
+ * @static
+ * @param {google.cloud.apigateway.v1.OperationMetadata.IDiagnostic} message Diagnostic message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ Diagnostic.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a Diagnostic message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.cloud.apigateway.v1.OperationMetadata.Diagnostic
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.cloud.apigateway.v1.OperationMetadata.Diagnostic} Diagnostic
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ Diagnostic.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.apigateway.v1.OperationMetadata.Diagnostic();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.location = reader.string();
+ break;
+ }
+ case 2: {
+ message.message = reader.string();
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a Diagnostic message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.cloud.apigateway.v1.OperationMetadata.Diagnostic
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.cloud.apigateway.v1.OperationMetadata.Diagnostic} Diagnostic
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ Diagnostic.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a Diagnostic message.
+ * @function verify
+ * @memberof google.cloud.apigateway.v1.OperationMetadata.Diagnostic
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ Diagnostic.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.location != null && message.hasOwnProperty("location"))
+ if (!$util.isString(message.location))
+ return "location: string expected";
+ if (message.message != null && message.hasOwnProperty("message"))
+ if (!$util.isString(message.message))
+ return "message: string expected";
+ return null;
+ };
+
+ /**
+ * Creates a Diagnostic message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.cloud.apigateway.v1.OperationMetadata.Diagnostic
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.cloud.apigateway.v1.OperationMetadata.Diagnostic} Diagnostic
+ */
+ Diagnostic.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.cloud.apigateway.v1.OperationMetadata.Diagnostic)
+ return object;
+ var message = new $root.google.cloud.apigateway.v1.OperationMetadata.Diagnostic();
+ if (object.location != null)
+ message.location = String(object.location);
+ if (object.message != null)
+ message.message = String(object.message);
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a Diagnostic message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.cloud.apigateway.v1.OperationMetadata.Diagnostic
+ * @static
+ * @param {google.cloud.apigateway.v1.OperationMetadata.Diagnostic} message Diagnostic
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ Diagnostic.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.defaults) {
+ object.location = "";
+ object.message = "";
+ }
+ if (message.location != null && message.hasOwnProperty("location"))
+ object.location = message.location;
+ if (message.message != null && message.hasOwnProperty("message"))
+ object.message = message.message;
+ return object;
+ };
+
+ /**
+ * Converts this Diagnostic to JSON.
+ * @function toJSON
+ * @memberof google.cloud.apigateway.v1.OperationMetadata.Diagnostic
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ Diagnostic.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for Diagnostic
+ * @function getTypeUrl
+ * @memberof google.cloud.apigateway.v1.OperationMetadata.Diagnostic
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ Diagnostic.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.cloud.apigateway.v1.OperationMetadata.Diagnostic";
+ };
+
+ return Diagnostic;
+ })();
+
+ return OperationMetadata;
+ })();
+
+ v1.ApiGatewayService = (function() {
+
+ /**
+ * Constructs a new ApiGatewayService service.
+ * @memberof google.cloud.apigateway.v1
+ * @classdesc Represents an ApiGatewayService
+ * @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 ApiGatewayService(rpcImpl, requestDelimited, responseDelimited) {
+ $protobuf.rpc.Service.call(this, rpcImpl, requestDelimited, responseDelimited);
+ }
+
+ (ApiGatewayService.prototype = Object.create($protobuf.rpc.Service.prototype)).constructor = ApiGatewayService;
+
+ /**
+ * Creates new ApiGatewayService service using the specified rpc implementation.
+ * @function create
+ * @memberof google.cloud.apigateway.v1.ApiGatewayService
+ * @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 {ApiGatewayService} RPC service. Useful where requests and/or responses are streamed.
+ */
+ ApiGatewayService.create = function create(rpcImpl, requestDelimited, responseDelimited) {
+ return new this(rpcImpl, requestDelimited, responseDelimited);
+ };
+
+ /**
+ * Callback as used by {@link google.cloud.apigateway.v1.ApiGatewayService|listGateways}.
+ * @memberof google.cloud.apigateway.v1.ApiGatewayService
+ * @typedef ListGatewaysCallback
+ * @type {function}
+ * @param {Error|null} error Error, if any
+ * @param {google.cloud.apigateway.v1.ListGatewaysResponse} [response] ListGatewaysResponse
+ */
+
+ /**
+ * Calls ListGateways.
+ * @function listGateways
+ * @memberof google.cloud.apigateway.v1.ApiGatewayService
+ * @instance
+ * @param {google.cloud.apigateway.v1.IListGatewaysRequest} request ListGatewaysRequest message or plain object
+ * @param {google.cloud.apigateway.v1.ApiGatewayService.ListGatewaysCallback} callback Node-style callback called with the error, if any, and ListGatewaysResponse
+ * @returns {undefined}
+ * @variation 1
+ */
+ Object.defineProperty(ApiGatewayService.prototype.listGateways = function listGateways(request, callback) {
+ return this.rpcCall(listGateways, $root.google.cloud.apigateway.v1.ListGatewaysRequest, $root.google.cloud.apigateway.v1.ListGatewaysResponse, request, callback);
+ }, "name", { value: "ListGateways" });
+
+ /**
+ * Calls ListGateways.
+ * @function listGateways
+ * @memberof google.cloud.apigateway.v1.ApiGatewayService
+ * @instance
+ * @param {google.cloud.apigateway.v1.IListGatewaysRequest} request ListGatewaysRequest message or plain object
+ * @returns {Promise} Promise
+ * @variation 2
+ */
+
+ /**
+ * Callback as used by {@link google.cloud.apigateway.v1.ApiGatewayService|getGateway}.
+ * @memberof google.cloud.apigateway.v1.ApiGatewayService
+ * @typedef GetGatewayCallback
+ * @type {function}
+ * @param {Error|null} error Error, if any
+ * @param {google.cloud.apigateway.v1.Gateway} [response] Gateway
+ */
+
+ /**
+ * Calls GetGateway.
+ * @function getGateway
+ * @memberof google.cloud.apigateway.v1.ApiGatewayService
+ * @instance
+ * @param {google.cloud.apigateway.v1.IGetGatewayRequest} request GetGatewayRequest message or plain object
+ * @param {google.cloud.apigateway.v1.ApiGatewayService.GetGatewayCallback} callback Node-style callback called with the error, if any, and Gateway
+ * @returns {undefined}
+ * @variation 1
+ */
+ Object.defineProperty(ApiGatewayService.prototype.getGateway = function getGateway(request, callback) {
+ return this.rpcCall(getGateway, $root.google.cloud.apigateway.v1.GetGatewayRequest, $root.google.cloud.apigateway.v1.Gateway, request, callback);
+ }, "name", { value: "GetGateway" });
+
+ /**
+ * Calls GetGateway.
+ * @function getGateway
+ * @memberof google.cloud.apigateway.v1.ApiGatewayService
+ * @instance
+ * @param {google.cloud.apigateway.v1.IGetGatewayRequest} request GetGatewayRequest message or plain object
+ * @returns {Promise} Promise
+ * @variation 2
+ */
+
+ /**
+ * Callback as used by {@link google.cloud.apigateway.v1.ApiGatewayService|createGateway}.
+ * @memberof google.cloud.apigateway.v1.ApiGatewayService
+ * @typedef CreateGatewayCallback
+ * @type {function}
+ * @param {Error|null} error Error, if any
+ * @param {google.longrunning.Operation} [response] Operation
+ */
+
+ /**
+ * Calls CreateGateway.
+ * @function createGateway
+ * @memberof google.cloud.apigateway.v1.ApiGatewayService
+ * @instance
+ * @param {google.cloud.apigateway.v1.ICreateGatewayRequest} request CreateGatewayRequest message or plain object
+ * @param {google.cloud.apigateway.v1.ApiGatewayService.CreateGatewayCallback} callback Node-style callback called with the error, if any, and Operation
+ * @returns {undefined}
+ * @variation 1
+ */
+ Object.defineProperty(ApiGatewayService.prototype.createGateway = function createGateway(request, callback) {
+ return this.rpcCall(createGateway, $root.google.cloud.apigateway.v1.CreateGatewayRequest, $root.google.longrunning.Operation, request, callback);
+ }, "name", { value: "CreateGateway" });
+
+ /**
+ * Calls CreateGateway.
+ * @function createGateway
+ * @memberof google.cloud.apigateway.v1.ApiGatewayService
+ * @instance
+ * @param {google.cloud.apigateway.v1.ICreateGatewayRequest} request CreateGatewayRequest message or plain object
+ * @returns {Promise} Promise
+ * @variation 2
+ */
+
+ /**
+ * Callback as used by {@link google.cloud.apigateway.v1.ApiGatewayService|updateGateway}.
+ * @memberof google.cloud.apigateway.v1.ApiGatewayService
+ * @typedef UpdateGatewayCallback
+ * @type {function}
+ * @param {Error|null} error Error, if any
+ * @param {google.longrunning.Operation} [response] Operation
+ */
+
+ /**
+ * Calls UpdateGateway.
+ * @function updateGateway
+ * @memberof google.cloud.apigateway.v1.ApiGatewayService
+ * @instance
+ * @param {google.cloud.apigateway.v1.IUpdateGatewayRequest} request UpdateGatewayRequest message or plain object
+ * @param {google.cloud.apigateway.v1.ApiGatewayService.UpdateGatewayCallback} callback Node-style callback called with the error, if any, and Operation
+ * @returns {undefined}
+ * @variation 1
+ */
+ Object.defineProperty(ApiGatewayService.prototype.updateGateway = function updateGateway(request, callback) {
+ return this.rpcCall(updateGateway, $root.google.cloud.apigateway.v1.UpdateGatewayRequest, $root.google.longrunning.Operation, request, callback);
+ }, "name", { value: "UpdateGateway" });
+
+ /**
+ * Calls UpdateGateway.
+ * @function updateGateway
+ * @memberof google.cloud.apigateway.v1.ApiGatewayService
+ * @instance
+ * @param {google.cloud.apigateway.v1.IUpdateGatewayRequest} request UpdateGatewayRequest message or plain object
+ * @returns {Promise} Promise
+ * @variation 2
+ */
+
+ /**
+ * Callback as used by {@link google.cloud.apigateway.v1.ApiGatewayService|deleteGateway}.
+ * @memberof google.cloud.apigateway.v1.ApiGatewayService
+ * @typedef DeleteGatewayCallback
+ * @type {function}
+ * @param {Error|null} error Error, if any
+ * @param {google.longrunning.Operation} [response] Operation
+ */
+
+ /**
+ * Calls DeleteGateway.
+ * @function deleteGateway
+ * @memberof google.cloud.apigateway.v1.ApiGatewayService
+ * @instance
+ * @param {google.cloud.apigateway.v1.IDeleteGatewayRequest} request DeleteGatewayRequest message or plain object
+ * @param {google.cloud.apigateway.v1.ApiGatewayService.DeleteGatewayCallback} callback Node-style callback called with the error, if any, and Operation
+ * @returns {undefined}
+ * @variation 1
+ */
+ Object.defineProperty(ApiGatewayService.prototype.deleteGateway = function deleteGateway(request, callback) {
+ return this.rpcCall(deleteGateway, $root.google.cloud.apigateway.v1.DeleteGatewayRequest, $root.google.longrunning.Operation, request, callback);
+ }, "name", { value: "DeleteGateway" });
+
+ /**
+ * Calls DeleteGateway.
+ * @function deleteGateway
+ * @memberof google.cloud.apigateway.v1.ApiGatewayService
+ * @instance
+ * @param {google.cloud.apigateway.v1.IDeleteGatewayRequest} request DeleteGatewayRequest message or plain object
+ * @returns {Promise} Promise
+ * @variation 2
+ */
+
+ /**
+ * Callback as used by {@link google.cloud.apigateway.v1.ApiGatewayService|listApis}.
+ * @memberof google.cloud.apigateway.v1.ApiGatewayService
+ * @typedef ListApisCallback
+ * @type {function}
+ * @param {Error|null} error Error, if any
+ * @param {google.cloud.apigateway.v1.ListApisResponse} [response] ListApisResponse
+ */
+
+ /**
+ * Calls ListApis.
+ * @function listApis
+ * @memberof google.cloud.apigateway.v1.ApiGatewayService
+ * @instance
+ * @param {google.cloud.apigateway.v1.IListApisRequest} request ListApisRequest message or plain object
+ * @param {google.cloud.apigateway.v1.ApiGatewayService.ListApisCallback} callback Node-style callback called with the error, if any, and ListApisResponse
+ * @returns {undefined}
+ * @variation 1
+ */
+ Object.defineProperty(ApiGatewayService.prototype.listApis = function listApis(request, callback) {
+ return this.rpcCall(listApis, $root.google.cloud.apigateway.v1.ListApisRequest, $root.google.cloud.apigateway.v1.ListApisResponse, request, callback);
+ }, "name", { value: "ListApis" });
+
+ /**
+ * Calls ListApis.
+ * @function listApis
+ * @memberof google.cloud.apigateway.v1.ApiGatewayService
+ * @instance
+ * @param {google.cloud.apigateway.v1.IListApisRequest} request ListApisRequest message or plain object
+ * @returns {Promise} Promise
+ * @variation 2
+ */
+
+ /**
+ * Callback as used by {@link google.cloud.apigateway.v1.ApiGatewayService|getApi}.
+ * @memberof google.cloud.apigateway.v1.ApiGatewayService
+ * @typedef GetApiCallback
+ * @type {function}
+ * @param {Error|null} error Error, if any
+ * @param {google.cloud.apigateway.v1.Api} [response] Api
+ */
+
+ /**
+ * Calls GetApi.
+ * @function getApi
+ * @memberof google.cloud.apigateway.v1.ApiGatewayService
+ * @instance
+ * @param {google.cloud.apigateway.v1.IGetApiRequest} request GetApiRequest message or plain object
+ * @param {google.cloud.apigateway.v1.ApiGatewayService.GetApiCallback} callback Node-style callback called with the error, if any, and Api
+ * @returns {undefined}
+ * @variation 1
+ */
+ Object.defineProperty(ApiGatewayService.prototype.getApi = function getApi(request, callback) {
+ return this.rpcCall(getApi, $root.google.cloud.apigateway.v1.GetApiRequest, $root.google.cloud.apigateway.v1.Api, request, callback);
+ }, "name", { value: "GetApi" });
+
+ /**
+ * Calls GetApi.
+ * @function getApi
+ * @memberof google.cloud.apigateway.v1.ApiGatewayService
+ * @instance
+ * @param {google.cloud.apigateway.v1.IGetApiRequest} request GetApiRequest message or plain object
+ * @returns {Promise} Promise
+ * @variation 2
+ */
+
+ /**
+ * Callback as used by {@link google.cloud.apigateway.v1.ApiGatewayService|createApi}.
+ * @memberof google.cloud.apigateway.v1.ApiGatewayService
+ * @typedef CreateApiCallback
+ * @type {function}
+ * @param {Error|null} error Error, if any
+ * @param {google.longrunning.Operation} [response] Operation
+ */
+
+ /**
+ * Calls CreateApi.
+ * @function createApi
+ * @memberof google.cloud.apigateway.v1.ApiGatewayService
+ * @instance
+ * @param {google.cloud.apigateway.v1.ICreateApiRequest} request CreateApiRequest message or plain object
+ * @param {google.cloud.apigateway.v1.ApiGatewayService.CreateApiCallback} callback Node-style callback called with the error, if any, and Operation
+ * @returns {undefined}
+ * @variation 1
+ */
+ Object.defineProperty(ApiGatewayService.prototype.createApi = function createApi(request, callback) {
+ return this.rpcCall(createApi, $root.google.cloud.apigateway.v1.CreateApiRequest, $root.google.longrunning.Operation, request, callback);
+ }, "name", { value: "CreateApi" });
+
+ /**
+ * Calls CreateApi.
+ * @function createApi
+ * @memberof google.cloud.apigateway.v1.ApiGatewayService
+ * @instance
+ * @param {google.cloud.apigateway.v1.ICreateApiRequest} request CreateApiRequest message or plain object
+ * @returns {Promise} Promise
+ * @variation 2
+ */
+
+ /**
+ * Callback as used by {@link google.cloud.apigateway.v1.ApiGatewayService|updateApi}.
+ * @memberof google.cloud.apigateway.v1.ApiGatewayService
+ * @typedef UpdateApiCallback
+ * @type {function}
+ * @param {Error|null} error Error, if any
+ * @param {google.longrunning.Operation} [response] Operation
+ */
+
+ /**
+ * Calls UpdateApi.
+ * @function updateApi
+ * @memberof google.cloud.apigateway.v1.ApiGatewayService
+ * @instance
+ * @param {google.cloud.apigateway.v1.IUpdateApiRequest} request UpdateApiRequest message or plain object
+ * @param {google.cloud.apigateway.v1.ApiGatewayService.UpdateApiCallback} callback Node-style callback called with the error, if any, and Operation
+ * @returns {undefined}
+ * @variation 1
+ */
+ Object.defineProperty(ApiGatewayService.prototype.updateApi = function updateApi(request, callback) {
+ return this.rpcCall(updateApi, $root.google.cloud.apigateway.v1.UpdateApiRequest, $root.google.longrunning.Operation, request, callback);
+ }, "name", { value: "UpdateApi" });
+
+ /**
+ * Calls UpdateApi.
+ * @function updateApi
+ * @memberof google.cloud.apigateway.v1.ApiGatewayService
+ * @instance
+ * @param {google.cloud.apigateway.v1.IUpdateApiRequest} request UpdateApiRequest message or plain object
+ * @returns {Promise} Promise
+ * @variation 2
+ */
+
+ /**
+ * Callback as used by {@link google.cloud.apigateway.v1.ApiGatewayService|deleteApi}.
+ * @memberof google.cloud.apigateway.v1.ApiGatewayService
+ * @typedef DeleteApiCallback
+ * @type {function}
+ * @param {Error|null} error Error, if any
+ * @param {google.longrunning.Operation} [response] Operation
+ */
+
+ /**
+ * Calls DeleteApi.
+ * @function deleteApi
+ * @memberof google.cloud.apigateway.v1.ApiGatewayService
+ * @instance
+ * @param {google.cloud.apigateway.v1.IDeleteApiRequest} request DeleteApiRequest message or plain object
+ * @param {google.cloud.apigateway.v1.ApiGatewayService.DeleteApiCallback} callback Node-style callback called with the error, if any, and Operation
+ * @returns {undefined}
+ * @variation 1
+ */
+ Object.defineProperty(ApiGatewayService.prototype.deleteApi = function deleteApi(request, callback) {
+ return this.rpcCall(deleteApi, $root.google.cloud.apigateway.v1.DeleteApiRequest, $root.google.longrunning.Operation, request, callback);
+ }, "name", { value: "DeleteApi" });
+
+ /**
+ * Calls DeleteApi.
+ * @function deleteApi
+ * @memberof google.cloud.apigateway.v1.ApiGatewayService
+ * @instance
+ * @param {google.cloud.apigateway.v1.IDeleteApiRequest} request DeleteApiRequest message or plain object
+ * @returns {Promise} Promise
+ * @variation 2
+ */
+
+ /**
+ * Callback as used by {@link google.cloud.apigateway.v1.ApiGatewayService|listApiConfigs}.
+ * @memberof google.cloud.apigateway.v1.ApiGatewayService
+ * @typedef ListApiConfigsCallback
+ * @type {function}
+ * @param {Error|null} error Error, if any
+ * @param {google.cloud.apigateway.v1.ListApiConfigsResponse} [response] ListApiConfigsResponse
+ */
+
+ /**
+ * Calls ListApiConfigs.
+ * @function listApiConfigs
+ * @memberof google.cloud.apigateway.v1.ApiGatewayService
+ * @instance
+ * @param {google.cloud.apigateway.v1.IListApiConfigsRequest} request ListApiConfigsRequest message or plain object
+ * @param {google.cloud.apigateway.v1.ApiGatewayService.ListApiConfigsCallback} callback Node-style callback called with the error, if any, and ListApiConfigsResponse
+ * @returns {undefined}
+ * @variation 1
+ */
+ Object.defineProperty(ApiGatewayService.prototype.listApiConfigs = function listApiConfigs(request, callback) {
+ return this.rpcCall(listApiConfigs, $root.google.cloud.apigateway.v1.ListApiConfigsRequest, $root.google.cloud.apigateway.v1.ListApiConfigsResponse, request, callback);
+ }, "name", { value: "ListApiConfigs" });
+
+ /**
+ * Calls ListApiConfigs.
+ * @function listApiConfigs
+ * @memberof google.cloud.apigateway.v1.ApiGatewayService
+ * @instance
+ * @param {google.cloud.apigateway.v1.IListApiConfigsRequest} request ListApiConfigsRequest message or plain object
+ * @returns {Promise} Promise
+ * @variation 2
+ */
+
+ /**
+ * Callback as used by {@link google.cloud.apigateway.v1.ApiGatewayService|getApiConfig}.
+ * @memberof google.cloud.apigateway.v1.ApiGatewayService
+ * @typedef GetApiConfigCallback
+ * @type {function}
+ * @param {Error|null} error Error, if any
+ * @param {google.cloud.apigateway.v1.ApiConfig} [response] ApiConfig
+ */
+
+ /**
+ * Calls GetApiConfig.
+ * @function getApiConfig
+ * @memberof google.cloud.apigateway.v1.ApiGatewayService
+ * @instance
+ * @param {google.cloud.apigateway.v1.IGetApiConfigRequest} request GetApiConfigRequest message or plain object
+ * @param {google.cloud.apigateway.v1.ApiGatewayService.GetApiConfigCallback} callback Node-style callback called with the error, if any, and ApiConfig
+ * @returns {undefined}
+ * @variation 1
+ */
+ Object.defineProperty(ApiGatewayService.prototype.getApiConfig = function getApiConfig(request, callback) {
+ return this.rpcCall(getApiConfig, $root.google.cloud.apigateway.v1.GetApiConfigRequest, $root.google.cloud.apigateway.v1.ApiConfig, request, callback);
+ }, "name", { value: "GetApiConfig" });
+
+ /**
+ * Calls GetApiConfig.
+ * @function getApiConfig
+ * @memberof google.cloud.apigateway.v1.ApiGatewayService
+ * @instance
+ * @param {google.cloud.apigateway.v1.IGetApiConfigRequest} request GetApiConfigRequest message or plain object
+ * @returns {Promise} Promise
+ * @variation 2
+ */
+
+ /**
+ * Callback as used by {@link google.cloud.apigateway.v1.ApiGatewayService|createApiConfig}.
+ * @memberof google.cloud.apigateway.v1.ApiGatewayService
+ * @typedef CreateApiConfigCallback
+ * @type {function}
+ * @param {Error|null} error Error, if any
+ * @param {google.longrunning.Operation} [response] Operation
+ */
+
+ /**
+ * Calls CreateApiConfig.
+ * @function createApiConfig
+ * @memberof google.cloud.apigateway.v1.ApiGatewayService
+ * @instance
+ * @param {google.cloud.apigateway.v1.ICreateApiConfigRequest} request CreateApiConfigRequest message or plain object
+ * @param {google.cloud.apigateway.v1.ApiGatewayService.CreateApiConfigCallback} callback Node-style callback called with the error, if any, and Operation
+ * @returns {undefined}
+ * @variation 1
+ */
+ Object.defineProperty(ApiGatewayService.prototype.createApiConfig = function createApiConfig(request, callback) {
+ return this.rpcCall(createApiConfig, $root.google.cloud.apigateway.v1.CreateApiConfigRequest, $root.google.longrunning.Operation, request, callback);
+ }, "name", { value: "CreateApiConfig" });
+
+ /**
+ * Calls CreateApiConfig.
+ * @function createApiConfig
+ * @memberof google.cloud.apigateway.v1.ApiGatewayService
+ * @instance
+ * @param {google.cloud.apigateway.v1.ICreateApiConfigRequest} request CreateApiConfigRequest message or plain object
+ * @returns {Promise} Promise
+ * @variation 2
+ */
+
+ /**
+ * Callback as used by {@link google.cloud.apigateway.v1.ApiGatewayService|updateApiConfig}.
+ * @memberof google.cloud.apigateway.v1.ApiGatewayService
+ * @typedef UpdateApiConfigCallback
+ * @type {function}
+ * @param {Error|null} error Error, if any
+ * @param {google.longrunning.Operation} [response] Operation
+ */
+
+ /**
+ * Calls UpdateApiConfig.
+ * @function updateApiConfig
+ * @memberof google.cloud.apigateway.v1.ApiGatewayService
+ * @instance
+ * @param {google.cloud.apigateway.v1.IUpdateApiConfigRequest} request UpdateApiConfigRequest message or plain object
+ * @param {google.cloud.apigateway.v1.ApiGatewayService.UpdateApiConfigCallback} callback Node-style callback called with the error, if any, and Operation
+ * @returns {undefined}
+ * @variation 1
+ */
+ Object.defineProperty(ApiGatewayService.prototype.updateApiConfig = function updateApiConfig(request, callback) {
+ return this.rpcCall(updateApiConfig, $root.google.cloud.apigateway.v1.UpdateApiConfigRequest, $root.google.longrunning.Operation, request, callback);
+ }, "name", { value: "UpdateApiConfig" });
+
+ /**
+ * Calls UpdateApiConfig.
+ * @function updateApiConfig
+ * @memberof google.cloud.apigateway.v1.ApiGatewayService
+ * @instance
+ * @param {google.cloud.apigateway.v1.IUpdateApiConfigRequest} request UpdateApiConfigRequest message or plain object
+ * @returns {Promise} Promise
+ * @variation 2
+ */
+
+ /**
+ * Callback as used by {@link google.cloud.apigateway.v1.ApiGatewayService|deleteApiConfig}.
+ * @memberof google.cloud.apigateway.v1.ApiGatewayService
+ * @typedef DeleteApiConfigCallback
+ * @type {function}
+ * @param {Error|null} error Error, if any
+ * @param {google.longrunning.Operation} [response] Operation
+ */
+
+ /**
+ * Calls DeleteApiConfig.
+ * @function deleteApiConfig
+ * @memberof google.cloud.apigateway.v1.ApiGatewayService
+ * @instance
+ * @param {google.cloud.apigateway.v1.IDeleteApiConfigRequest} request DeleteApiConfigRequest message or plain object
+ * @param {google.cloud.apigateway.v1.ApiGatewayService.DeleteApiConfigCallback} callback Node-style callback called with the error, if any, and Operation
+ * @returns {undefined}
+ * @variation 1
+ */
+ Object.defineProperty(ApiGatewayService.prototype.deleteApiConfig = function deleteApiConfig(request, callback) {
+ return this.rpcCall(deleteApiConfig, $root.google.cloud.apigateway.v1.DeleteApiConfigRequest, $root.google.longrunning.Operation, request, callback);
+ }, "name", { value: "DeleteApiConfig" });
+
+ /**
+ * Calls DeleteApiConfig.
+ * @function deleteApiConfig
+ * @memberof google.cloud.apigateway.v1.ApiGatewayService
+ * @instance
+ * @param {google.cloud.apigateway.v1.IDeleteApiConfigRequest} request DeleteApiConfigRequest message or plain object
+ * @returns {Promise} Promise
+ * @variation 2
+ */
+
+ return ApiGatewayService;
+ })();
+
+ return v1;
+ })();
+
+ return apigateway;
+ })();
+
+ return cloud;
+ })();
+
+ google.api = (function() {
+
+ /**
+ * Namespace api.
+ * @memberof google
+ * @namespace
+ */
+ var api = {};
+
+ /**
+ * 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;
+ })();
+
+ 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;
+ })();
+
+ 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.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ ReservedRange.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.start != null && message.hasOwnProperty("start"))
+ if (!$util.isInteger(message.start))
+ return "start: integer expected";
+ if (message.end != null && message.hasOwnProperty("end"))
+ if (!$util.isInteger(message.end))
+ return "end: integer expected";
+ return null;
+ };
+
+ /**
+ * Creates a ReservedRange message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.protobuf.DescriptorProto.ReservedRange
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.protobuf.DescriptorProto.ReservedRange} ReservedRange
+ */
+ ReservedRange.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.protobuf.DescriptorProto.ReservedRange)
+ return object;
+ var message = new $root.google.protobuf.DescriptorProto.ReservedRange();
+ if (object.start != null)
+ message.start = object.start | 0;
+ if (object.end != null)
+ message.end = object.end | 0;
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a ReservedRange message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.protobuf.DescriptorProto.ReservedRange
+ * @static
+ * @param {google.protobuf.DescriptorProto.ReservedRange} message ReservedRange
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ ReservedRange.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.defaults) {
+ object.start = 0;
+ object.end = 0;
+ }
+ if (message.start != null && message.hasOwnProperty("start"))
+ object.start = message.start;
+ if (message.end != null && message.hasOwnProperty("end"))
+ object.end = message.end;
+ return object;
+ };
+
+ /**
+ * Converts this ReservedRange to JSON.
+ * @function toJSON
+ * @memberof google.protobuf.DescriptorProto.ReservedRange
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ ReservedRange.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for ReservedRange
+ * @function getTypeUrl
+ * @memberof google.protobuf.DescriptorProto.ReservedRange
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ ReservedRange.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.protobuf.DescriptorProto.ReservedRange";
+ };
+
+ return ReservedRange;
+ })();
+
+ return DescriptorProto;
+ })();
+
+ protobuf.ExtensionRangeOptions = (function() {
+
+ /**
+ * Properties of an ExtensionRangeOptions.
+ * @memberof google.protobuf
+ * @interface IExtensionRangeOptions
+ * @property {Array.|null} [uninterpretedOption] ExtensionRangeOptions uninterpretedOption
+ */
+
+ /**
+ * Constructs a new ExtensionRangeOptions.
+ * @memberof google.protobuf
+ * @classdesc Represents an ExtensionRangeOptions.
+ * @implements IExtensionRangeOptions
+ * @constructor
+ * @param {google.protobuf.IExtensionRangeOptions=} [properties] Properties to set
+ */
+ function ExtensionRangeOptions(properties) {
+ this.uninterpretedOption = [];
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * ExtensionRangeOptions uninterpretedOption.
+ * @member {Array.} uninterpretedOption
+ * @memberof google.protobuf.ExtensionRangeOptions
+ * @instance
+ */
+ ExtensionRangeOptions.prototype.uninterpretedOption = $util.emptyArray;
+
+ /**
+ * Creates a new ExtensionRangeOptions instance using the specified properties.
+ * @function create
+ * @memberof google.protobuf.ExtensionRangeOptions
+ * @static
+ * @param {google.protobuf.IExtensionRangeOptions=} [properties] Properties to set
+ * @returns {google.protobuf.ExtensionRangeOptions} ExtensionRangeOptions instance
+ */
+ ExtensionRangeOptions.create = function create(properties) {
+ return new ExtensionRangeOptions(properties);
+ };
+
+ /**
+ * Encodes the specified ExtensionRangeOptions message. Does not implicitly {@link google.protobuf.ExtensionRangeOptions.verify|verify} messages.
+ * @function encode
+ * @memberof google.protobuf.ExtensionRangeOptions
+ * @static
+ * @param {google.protobuf.IExtensionRangeOptions} message ExtensionRangeOptions message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ ExtensionRangeOptions.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.uninterpretedOption != null && message.uninterpretedOption.length)
+ for (var i = 0; i < message.uninterpretedOption.length; ++i)
+ $root.google.protobuf.UninterpretedOption.encode(message.uninterpretedOption[i], writer.uint32(/* id 999, wireType 2 =*/7994).fork()).ldelim();
+ return writer;
+ };
+
+ /**
+ * Encodes the specified ExtensionRangeOptions message, length delimited. Does not implicitly {@link google.protobuf.ExtensionRangeOptions.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.protobuf.ExtensionRangeOptions
+ * @static
+ * @param {google.protobuf.IExtensionRangeOptions} message ExtensionRangeOptions message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ ExtensionRangeOptions.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes an ExtensionRangeOptions message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.protobuf.ExtensionRangeOptions
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.protobuf.ExtensionRangeOptions} ExtensionRangeOptions
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ ExtensionRangeOptions.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.ExtensionRangeOptions();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 999: {
+ if (!(message.uninterpretedOption && message.uninterpretedOption.length))
+ message.uninterpretedOption = [];
+ message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32()));
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes an ExtensionRangeOptions message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.protobuf.ExtensionRangeOptions
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.protobuf.ExtensionRangeOptions} ExtensionRangeOptions
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ ExtensionRangeOptions.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies an ExtensionRangeOptions message.
+ * @function verify
+ * @memberof google.protobuf.ExtensionRangeOptions
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ ExtensionRangeOptions.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.uninterpretedOption != null && message.hasOwnProperty("uninterpretedOption")) {
+ if (!Array.isArray(message.uninterpretedOption))
+ return "uninterpretedOption: array expected";
+ for (var i = 0; i < message.uninterpretedOption.length; ++i) {
+ var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i]);
+ if (error)
+ return "uninterpretedOption." + error;
+ }
+ }
+ return null;
+ };
+
+ /**
+ * Creates an ExtensionRangeOptions message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.protobuf.ExtensionRangeOptions
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.protobuf.ExtensionRangeOptions} ExtensionRangeOptions
+ */
+ ExtensionRangeOptions.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.protobuf.ExtensionRangeOptions)
+ return object;
+ var message = new $root.google.protobuf.ExtensionRangeOptions();
+ if (object.uninterpretedOption) {
+ if (!Array.isArray(object.uninterpretedOption))
+ throw TypeError(".google.protobuf.ExtensionRangeOptions.uninterpretedOption: array expected");
+ message.uninterpretedOption = [];
+ for (var i = 0; i < object.uninterpretedOption.length; ++i) {
+ if (typeof object.uninterpretedOption[i] !== "object")
+ throw TypeError(".google.protobuf.ExtensionRangeOptions.uninterpretedOption: object expected");
+ message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i]);
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Creates a plain object from an ExtensionRangeOptions message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.protobuf.ExtensionRangeOptions
+ * @static
+ * @param {google.protobuf.ExtensionRangeOptions} message ExtensionRangeOptions
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.