diff --git a/packages/google-identity-accesscontextmanager/.eslintignore b/packages/google-identity-accesscontextmanager/.eslintignore
new file mode 100644
index 00000000000..ea5b04aebe6
--- /dev/null
+++ b/packages/google-identity-accesscontextmanager/.eslintignore
@@ -0,0 +1,7 @@
+**/node_modules
+**/coverage
+test/fixtures
+build/
+docs/
+protos/
+samples/generated/
diff --git a/packages/google-identity-accesscontextmanager/.eslintrc.json b/packages/google-identity-accesscontextmanager/.eslintrc.json
new file mode 100644
index 00000000000..78215349546
--- /dev/null
+++ b/packages/google-identity-accesscontextmanager/.eslintrc.json
@@ -0,0 +1,3 @@
+{
+ "extends": "./node_modules/gts"
+}
diff --git a/packages/google-identity-accesscontextmanager/.gitattributes b/packages/google-identity-accesscontextmanager/.gitattributes
new file mode 100644
index 00000000000..33739cb74e4
--- /dev/null
+++ b/packages/google-identity-accesscontextmanager/.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-identity-accesscontextmanager/.github/.OwlBot.yaml b/packages/google-identity-accesscontextmanager/.github/.OwlBot.yaml
new file mode 100644
index 00000000000..0aa8c8337f3
--- /dev/null
+++ b/packages/google-identity-accesscontextmanager/.github/.OwlBot.yaml
@@ -0,0 +1,22 @@
+# Copyright 2021 Google LLC
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+docker:
+ image: gcr.io/cloud-devrel-public-resources/owlbot-nodejs:latest
+
+deep-remove-regex:
+ - /owl-bot-staging
+
+deep-copy-regex:
+ - source: /google/identity/accesscontextmanager/(.*)/.*-nodejs/(.*)
+ dest: /owl-bot-staging/$1/$2
diff --git a/packages/google-identity-accesscontextmanager/.gitignore b/packages/google-identity-accesscontextmanager/.gitignore
new file mode 100644
index 00000000000..5d32b23782f
--- /dev/null
+++ b/packages/google-identity-accesscontextmanager/.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-identity-accesscontextmanager/.jsdoc.js b/packages/google-identity-accesscontextmanager/.jsdoc.js
new file mode 100644
index 00000000000..b233b1bd5f4
--- /dev/null
+++ b/packages/google-identity-accesscontextmanager/.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/access-context-manager',
+ theme: 'lumen',
+ default: {
+ outputSourceFiles: false
+ }
+ },
+ markdown: {
+ idInHeadings: true
+ }
+};
diff --git a/packages/google-identity-accesscontextmanager/.mocharc.js b/packages/google-identity-accesscontextmanager/.mocharc.js
new file mode 100644
index 00000000000..0b600509bed
--- /dev/null
+++ b/packages/google-identity-accesscontextmanager/.mocharc.js
@@ -0,0 +1,29 @@
+// Copyright 2020 Google LLC
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+const config = {
+ "enable-source-maps": true,
+ "throw-deprecation": true,
+ "timeout": 10000,
+ "recursive": true
+}
+if (process.env.MOCHA_THROW_DEPRECATION === 'false') {
+ delete config['throw-deprecation'];
+}
+if (process.env.MOCHA_REPORTER) {
+ config.reporter = process.env.MOCHA_REPORTER;
+}
+if (process.env.MOCHA_REPORTER_OUTPUT) {
+ config['reporter-option'] = `output=${process.env.MOCHA_REPORTER_OUTPUT}`;
+}
+module.exports = config
diff --git a/packages/google-identity-accesscontextmanager/.nycrc b/packages/google-identity-accesscontextmanager/.nycrc
new file mode 100644
index 00000000000..b18d5472b62
--- /dev/null
+++ b/packages/google-identity-accesscontextmanager/.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-identity-accesscontextmanager/.prettierignore b/packages/google-identity-accesscontextmanager/.prettierignore
new file mode 100644
index 00000000000..9340ad9b86d
--- /dev/null
+++ b/packages/google-identity-accesscontextmanager/.prettierignore
@@ -0,0 +1,6 @@
+**/node_modules
+**/coverage
+test/fixtures
+build/
+docs/
+protos/
diff --git a/packages/google-identity-accesscontextmanager/.prettierrc.js b/packages/google-identity-accesscontextmanager/.prettierrc.js
new file mode 100644
index 00000000000..d1b95106f4c
--- /dev/null
+++ b/packages/google-identity-accesscontextmanager/.prettierrc.js
@@ -0,0 +1,17 @@
+// Copyright 2020 Google LLC
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// https://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+module.exports = {
+ ...require('gts/.prettierrc.json')
+}
diff --git a/packages/google-identity-accesscontextmanager/.repo-metadata.json b/packages/google-identity-accesscontextmanager/.repo-metadata.json
new file mode 100644
index 00000000000..74c9e5b87d8
--- /dev/null
+++ b/packages/google-identity-accesscontextmanager/.repo-metadata.json
@@ -0,0 +1,16 @@
+{
+ "name": "accesscontextmanager",
+ "name_pretty": "Access Context Manager",
+ "product_documentation": "https://cloud.google.com/access-context-manager/",
+ "client_documentation": "https://cloud.google.com/nodejs/docs/reference/access-context-manager/latest",
+ "issue_tracker": "https://github.com/googleapis/nodejs-access-context-manager/issues",
+ "release_level": "stable",
+ "language": "nodejs",
+ "repo": "googleapis/nodejs-access-context-manager",
+ "distribution_name": "@google-cloud/access-context-manager",
+ "api_id": "accesscontextmanager.googleapis.com",
+ "default_version": "v1",
+ "requires_billing": true,
+ "api_shortname": "accesscontextmanager",
+ "library_type": "GAPIC_AUTO"
+}
diff --git a/packages/google-identity-accesscontextmanager/CHANGELOG.md b/packages/google-identity-accesscontextmanager/CHANGELOG.md
new file mode 100644
index 00000000000..e5d62729027
--- /dev/null
+++ b/packages/google-identity-accesscontextmanager/CHANGELOG.md
@@ -0,0 +1,70 @@
+# Changelog
+
+## [2.2.0](https://github.com/googleapis/nodejs-access-context-manager/compare/v2.1.1...v2.2.0) (2022-11-11)
+
+
+### Features
+
+* Added AccessPolicy.scopes, EgressTo.external_resources, and IAM methods ([#78](https://github.com/googleapis/nodejs-access-context-manager/issues/78)) ([a35b05f](https://github.com/googleapis/nodejs-access-context-manager/commit/a35b05ff0a3a67d167ab11c6f90c1aee08290c1e))
+
+
+### Bug Fixes
+
+* Allow passing gax instance to client constructor ([#67](https://github.com/googleapis/nodejs-access-context-manager/issues/67)) ([41905db](https://github.com/googleapis/nodejs-access-context-manager/commit/41905db97be6c0f3d6f4da125fc84c68a4f322ac))
+* **deps:** Use google-gax v3.5.2 ([#74](https://github.com/googleapis/nodejs-access-context-manager/issues/74)) ([f6d2ff5](https://github.com/googleapis/nodejs-access-context-manager/commit/f6d2ff532b5ec98daeb88caa4474947662f109b5))
+* Do not import the whole google-gax from proto JS ([#1553](https://github.com/googleapis/nodejs-access-context-manager/issues/1553)) ([#66](https://github.com/googleapis/nodejs-access-context-manager/issues/66)) ([48df277](https://github.com/googleapis/nodejs-access-context-manager/commit/48df27751cc269c9220532b56b71751b463ce33e))
+* Preserve default values in x-goog-request-params header ([#69](https://github.com/googleapis/nodejs-access-context-manager/issues/69)) ([695b8ca](https://github.com/googleapis/nodejs-access-context-manager/commit/695b8caf46174de399adf92aa1a9ea6770835d21))
+* Regenerated protos JS and TS definitions ([#77](https://github.com/googleapis/nodejs-access-context-manager/issues/77)) ([fb66a21](https://github.com/googleapis/nodejs-access-context-manager/commit/fb66a2100f0c92c54e1c07b0b3398f19f040342d))
+* use google-gax v3.3.0 ([48df277](https://github.com/googleapis/nodejs-access-context-manager/commit/48df27751cc269c9220532b56b71751b463ce33e))
+
+## [2.1.1](https://github.com/googleapis/nodejs-access-context-manager/compare/v2.1.0...v2.1.1) (2022-08-23)
+
+
+### Bug Fixes
+
+* better support for fallback mode ([#61](https://github.com/googleapis/nodejs-access-context-manager/issues/61)) ([9780d0e](https://github.com/googleapis/nodejs-access-context-manager/commit/9780d0e0839b27aed6553304a845d7b603c7eddf))
+* change import long to require ([#62](https://github.com/googleapis/nodejs-access-context-manager/issues/62)) ([71e7a44](https://github.com/googleapis/nodejs-access-context-manager/commit/71e7a446fb61ddcd3e4e5ea812e3720e0ba2e703))
+* remove pip install statements ([#1546](https://github.com/googleapis/nodejs-access-context-manager/issues/1546)) ([#64](https://github.com/googleapis/nodejs-access-context-manager/issues/64)) ([7eacb41](https://github.com/googleapis/nodejs-access-context-manager/commit/7eacb417850097b5f7d04227691b43458c5563fb))
+
+## [2.1.0](https://github.com/googleapis/nodejs-access-context-manager/compare/v2.0.0...v2.1.0) (2022-06-29)
+
+
+### Features
+
+* support regapic LRO ([#55](https://github.com/googleapis/nodejs-access-context-manager/issues/55)) ([585f329](https://github.com/googleapis/nodejs-access-context-manager/commit/585f329f40cd1034584f56dc800d0d55e13f39a3))
+
+## [2.0.0](https://github.com/googleapis/nodejs-access-context-manager/compare/v1.0.0...v2.0.0) (2022-05-19)
+
+
+### ⚠ BREAKING CHANGES
+
+* update library to use Node 12 (#50)
+
+### Build System
+
+* update library to use Node 12 ([#50](https://github.com/googleapis/nodejs-access-context-manager/issues/50)) ([fe0e2cf](https://github.com/googleapis/nodejs-access-context-manager/commit/fe0e2cf6ca60289f68c7126192c852bf10cbd82b))
+
+## [1.0.0](https://github.com/googleapis/nodejs-access-context-manager/compare/v0.2.0...v1.0.0) (2022-03-23)
+
+
+### Features
+
+* promote to stable ([#37](https://github.com/googleapis/nodejs-access-context-manager/issues/37)) ([7273284](https://github.com/googleapis/nodejs-access-context-manager/commit/72732849e7dfb075e016a0ca8d632fbc49f490cf))
+
+## 0.2.0 (2021-10-13)
+
+
+### Features
+
+* add templated files from docker image ([6b3da98](https://www.github.com/googleapis/nodejs-access-context-manager/commit/6b3da980098e92b1caf308aaab3bca3c337b51fe))
+* initial stub of library ([8dd75ee](https://www.github.com/googleapis/nodejs-access-context-manager/commit/8dd75eeebbfecb73cf040c806432883632e3553c))
+
+
+### Bug Fixes
+
+* nodejs package name access-context-manager ([#4](https://www.github.com/googleapis/nodejs-access-context-manager/issues/4)) ([8dba0ec](https://www.github.com/googleapis/nodejs-access-context-manager/commit/8dba0ec12577ca8c14992c0fb38c413ead1f4084))
+
+
+### Build System
+
+* release first version at 0.2.0 ([#6](https://www.github.com/googleapis/nodejs-access-context-manager/issues/6)) ([9129a08](https://www.github.com/googleapis/nodejs-access-context-manager/commit/9129a0887f2080285ea5142d682f6f97eba2b833))
diff --git a/packages/google-identity-accesscontextmanager/CODE_OF_CONDUCT.md b/packages/google-identity-accesscontextmanager/CODE_OF_CONDUCT.md
new file mode 100644
index 00000000000..2add2547a81
--- /dev/null
+++ b/packages/google-identity-accesscontextmanager/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-identity-accesscontextmanager/CONTRIBUTING.md b/packages/google-identity-accesscontextmanager/CONTRIBUTING.md
new file mode 100644
index 00000000000..29e81acb3d3
--- /dev/null
+++ b/packages/google-identity-accesscontextmanager/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 Access Context Manager 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=accesscontextmanager.googleapis.com
+[auth]: https://cloud.google.com/docs/authentication/getting-started
\ No newline at end of file
diff --git a/packages/google-identity-accesscontextmanager/LICENSE b/packages/google-identity-accesscontextmanager/LICENSE
new file mode 100644
index 00000000000..d6456956733
--- /dev/null
+++ b/packages/google-identity-accesscontextmanager/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-identity-accesscontextmanager/README.md b/packages/google-identity-accesscontextmanager/README.md
new file mode 100644
index 00000000000..20a5341ee5d
--- /dev/null
+++ b/packages/google-identity-accesscontextmanager/README.md
@@ -0,0 +1,184 @@
+[//]: # "This README.md file is auto-generated, all changes to this file will be lost."
+[//]: # "To regenerate it, use `python -m synthtool`."
+
+
+# [Access Context Manager: Node.js Client](https://github.com/googleapis/nodejs-access-context-manager)
+
+[](https://cloud.google.com/terms/launch-stages)
+[](https://www.npmjs.org/package/@google-cloud/access-context-manager)
+
+
+
+
+accesscontextmanager client for Node.js
+
+
+A comprehensive list of changes in each version may be found in
+[the CHANGELOG](https://github.com/googleapis/nodejs-access-context-manager/blob/main/CHANGELOG.md).
+
+* [Access Context Manager Node.js Client API Reference][client-docs]
+* [Access Context Manager Documentation][product-docs]
+* [github.com/googleapis/nodejs-access-context-manager](https://github.com/googleapis/nodejs-access-context-manager)
+
+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 Access Context Manager 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/access-context-manager
+```
+
+
+### Using the client library
+
+```javascript
+/**
+ * TODO(developer): Uncomment these variables before running the sample.
+ */
+/**
+ * Required. Resource name for the container to list AccessPolicy instances
+ * from.
+ * Format:
+ * `organizations/{org_id}`
+ */
+// const parent = 'abc123'
+/**
+ * Number of AccessPolicy instances to include in the list. Default 100.
+ */
+// const pageSize = 1234
+/**
+ * Next page token for the next batch of AccessPolicy instances. Defaults to
+ * the first page of results.
+ */
+// const pageToken = 'abc123'
+
+// Imports the Accesscontextmanager library
+const {AccessContextManagerClient} =
+ require('@google-cloud/access-context-manager').v1;
+
+// Instantiates a client
+const accesscontextmanagerClient = new AccessContextManagerClient();
+
+async function listAccessPolicies() {
+ // Construct request
+ const request = {
+ parent,
+ };
+
+ // Run request
+ const iterable = await accesscontextmanagerClient.listAccessPoliciesAsync(
+ request
+ );
+ for await (const response of iterable) {
+ console.log(response);
+ }
+}
+
+listAccessPolicies();
+
+```
+
+
+
+## Samples
+
+Samples are in the [`samples/`](https://github.com/googleapis/nodejs-access-context-manager/tree/main/samples) directory. Each sample's `README.md` has instructions for running its sample.
+
+| Sample | Source Code | Try it |
+| --------------------------- | --------------------------------- | ------ |
+| Quickstart | [source code](https://github.com/googleapis/nodejs-access-context-manager/blob/main/samples/quickstart.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/nodejs-access-context-manager&page=editor&open_in_editor=samples/quickstart.js,samples/README.md) |
+
+
+
+The [Access Context Manager 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/access-context-manager@legacy-8` installs client libraries
+for versions compatible with Node.js 8.
+
+## Versioning
+
+This library follows [Semantic Versioning](http://semver.org/).
+
+
+
+This library is considered to be **stable**. The code surface will not change in backwards-incompatible ways
+unless absolutely necessary (e.g. because of critical security issues) or with
+an extensive deprecation period. Issues and requests against **stable** libraries
+are addressed with the highest priority.
+
+
+
+
+
+
+More Information: [Google Cloud Platform Launch Stages][launch_stages]
+
+[launch_stages]: https://cloud.google.com/terms/launch-stages
+
+## Contributing
+
+Contributions welcome! See the [Contributing Guide](https://github.com/googleapis/nodejs-access-context-manager/blob/main/CONTRIBUTING.md).
+
+Please note that this `README.md`, the `samples/README.md`,
+and a variety of configuration files in this repository (including `.nycrc` and `tsconfig.json`)
+are generated from a central template. To edit one of these files, make an edit
+to its templates in
+[directory](https://github.com/googleapis/synthtool).
+
+## License
+
+Apache Version 2.0
+
+See [LICENSE](https://github.com/googleapis/nodejs-access-context-manager/blob/main/LICENSE)
+
+[client-docs]: https://cloud.google.com/nodejs/docs/reference/access-context-manager/latest
+[product-docs]: https://cloud.google.com/access-context-manager/
+[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=accesscontextmanager.googleapis.com
+[auth]: https://cloud.google.com/docs/authentication/getting-started
diff --git a/packages/google-identity-accesscontextmanager/linkinator.config.json b/packages/google-identity-accesscontextmanager/linkinator.config.json
new file mode 100644
index 00000000000..befd23c8633
--- /dev/null
+++ b/packages/google-identity-accesscontextmanager/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-identity-accesscontextmanager/package.json b/packages/google-identity-accesscontextmanager/package.json
new file mode 100644
index 00000000000..a6163f45955
--- /dev/null
+++ b/packages/google-identity-accesscontextmanager/package.json
@@ -0,0 +1,66 @@
+{
+ "name": "@google-cloud/access-context-manager",
+ "version": "2.2.0",
+ "description": "accesscontextmanager client for Node.js",
+ "repository": "googleapis/nodejs-access-context-manager",
+ "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 accesscontextmanager",
+ "accesscontextmanager",
+ "accesscontextmanager service"
+ ],
+ "scripts": {
+ "clean": "gts clean",
+ "compile": "tsc -p . && cp -r protos build/",
+ "compile-protos": "compileProtos src",
+ "docs": "jsdoc -c .jsdoc.js",
+ "predocs-test": "npm run docs",
+ "docs-test": "linkinator docs",
+ "fix": "gts fix",
+ "lint": "gts check",
+ "prepare": "npm run compile-protos && npm run compile",
+ "system-test": "c8 mocha build/system-test",
+ "test": "c8 mocha build/test",
+ "samples-test": "cd samples/ && npm link ../ && npm test",
+ "prelint": "cd samples; npm link ../; npm i"
+ },
+ "dependencies": {
+ "google-gax": "^3.5.2"
+ },
+ "devDependencies": {
+ "@types/mocha": "^9.0.0",
+ "@types/node": "^18.0.0",
+ "@types/sinon": "^10.0.0",
+ "c8": "^7.7.2",
+ "gts": "^3.1.0",
+ "jsdoc": "^4.0.0",
+ "jsdoc-fresh": "^2.0.0",
+ "jsdoc-region-tag": "^2.0.0",
+ "linkinator": "^4.0.0",
+ "mocha": "^9.2.2",
+ "null-loader": "^4.0.1",
+ "pack-n-play": "^1.0.0-2",
+ "sinon": "^14.0.0",
+ "ts-loader": "^9.1.2",
+ "typescript": "^4.6.4",
+ "webpack": "^5.36.2",
+ "webpack-cli": "^4.7.0"
+ },
+ "engines": {
+ "node": ">=12.0.0"
+ }
+}
diff --git a/packages/google-identity-accesscontextmanager/protos/google/identity/accesscontextmanager/type/device_resources.proto b/packages/google-identity-accesscontextmanager/protos/google/identity/accesscontextmanager/type/device_resources.proto
new file mode 100644
index 00000000000..a3f000cf8a0
--- /dev/null
+++ b/packages/google-identity-accesscontextmanager/protos/google/identity/accesscontextmanager/type/device_resources.proto
@@ -0,0 +1,83 @@
+// 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.identity.accesscontextmanager.type;
+
+option csharp_namespace = "Google.Identity.AccessContextManager.Type";
+option go_package = "google.golang.org/genproto/googleapis/identity/accesscontextmanager/type";
+option java_package = "com.google.identity.accesscontextmanager.type";
+option java_multiple_files = true;
+option java_outer_classname = "TypeProto";
+option php_namespace = "Google\\Identity\\AccessContextManager\\Type";
+option ruby_package = "Google::Identity::AccessContextManager::Type";
+
+// The encryption state of the device.
+enum DeviceEncryptionStatus {
+ // The encryption status of the device is not specified or not known.
+ ENCRYPTION_UNSPECIFIED = 0;
+
+ // The device does not support encryption.
+ ENCRYPTION_UNSUPPORTED = 1;
+
+ // The device supports encryption, but is currently unencrypted.
+ UNENCRYPTED = 2;
+
+ // The device is encrypted.
+ ENCRYPTED = 3;
+}
+
+// The operating system type of the device.
+// Next id: 7
+enum OsType {
+ // The operating system of the device is not specified or not known.
+ OS_UNSPECIFIED = 0;
+
+ // A desktop Mac operating system.
+ DESKTOP_MAC = 1;
+
+ // A desktop Windows operating system.
+ DESKTOP_WINDOWS = 2;
+
+ // A desktop Linux operating system.
+ DESKTOP_LINUX = 3;
+
+ // A desktop ChromeOS operating system.
+ DESKTOP_CHROME_OS = 6;
+
+ // An Android operating system.
+ ANDROID = 4;
+
+ // An iOS operating system.
+ IOS = 5;
+}
+
+// The degree to which the device is managed by the Cloud organization.
+enum DeviceManagementLevel {
+ // The device's management level is not specified or not known.
+ MANAGEMENT_UNSPECIFIED = 0;
+
+ // The device is not managed.
+ NONE = 1;
+
+ // Basic management is enabled, which is generally limited to monitoring and
+ // wiping the corporate account.
+ BASIC = 2;
+
+ // Complete device management. This includes more thorough monitoring and the
+ // ability to directly manage the device (such as remote wiping). This can be
+ // enabled through the Android Enterprise Platform.
+ COMPLETE = 3;
+}
diff --git a/packages/google-identity-accesscontextmanager/protos/google/identity/accesscontextmanager/v1/access_context_manager.proto b/packages/google-identity-accesscontextmanager/protos/google/identity/accesscontextmanager/v1/access_context_manager.proto
new file mode 100644
index 00000000000..3a71d81f34e
--- /dev/null
+++ b/packages/google-identity-accesscontextmanager/protos/google/identity/accesscontextmanager/v1/access_context_manager.proto
@@ -0,0 +1,986 @@
+// Copyright 2022 Google LLC
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+syntax = "proto3";
+
+package google.identity.accesscontextmanager.v1;
+
+import "google/api/annotations.proto";
+import "google/api/client.proto";
+import "google/api/field_behavior.proto";
+import "google/api/resource.proto";
+import "google/iam/v1/iam_policy.proto";
+import "google/iam/v1/policy.proto";
+import "google/identity/accesscontextmanager/v1/access_level.proto";
+import "google/identity/accesscontextmanager/v1/access_policy.proto";
+import "google/identity/accesscontextmanager/v1/gcp_user_access_binding.proto";
+import "google/identity/accesscontextmanager/v1/service_perimeter.proto";
+import "google/longrunning/operations.proto";
+import "google/protobuf/field_mask.proto";
+
+option csharp_namespace = "Google.Identity.AccessContextManager.V1";
+option go_package = "google.golang.org/genproto/googleapis/identity/accesscontextmanager/v1;accesscontextmanager";
+option java_multiple_files = true;
+option java_outer_classname = "AccessContextManagerProto";
+option java_package = "com.google.identity.accesscontextmanager.v1";
+option objc_class_prefix = "GACM";
+option php_namespace = "Google\\Identity\\AccessContextManager\\V1";
+option ruby_package = "Google::Identity::AccessContextManager::V1";
+
+// API for setting [access levels]
+// [google.identity.accesscontextmanager.v1.AccessLevel] and [service
+// perimeters] [google.identity.accesscontextmanager.v1.ServicePerimeter]
+// for Google Cloud projects. Each organization has one [access policy]
+// [google.identity.accesscontextmanager.v1.AccessPolicy] that contains the
+// [access levels] [google.identity.accesscontextmanager.v1.AccessLevel]
+// and [service perimeters]
+// [google.identity.accesscontextmanager.v1.ServicePerimeter]. This
+// [access policy] [google.identity.accesscontextmanager.v1.AccessPolicy] is
+// applicable to all resources in the organization.
+// AccessPolicies
+service AccessContextManager {
+ option (google.api.default_host) = "accesscontextmanager.googleapis.com";
+ option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/cloud-platform";
+
+ // Lists all [access policies]
+ // [google.identity.accesscontextmanager.v1.AccessPolicy] in an
+ // organization.
+ rpc ListAccessPolicies(ListAccessPoliciesRequest) returns (ListAccessPoliciesResponse) {
+ option (google.api.http) = {
+ get: "/v1/accessPolicies"
+ };
+ }
+
+ // Returns an [access policy]
+ // [google.identity.accesscontextmanager.v1.AccessPolicy] based on the name.
+ rpc GetAccessPolicy(GetAccessPolicyRequest) returns (AccessPolicy) {
+ option (google.api.http) = {
+ get: "/v1/{name=accessPolicies/*}"
+ };
+ option (google.api.method_signature) = "name";
+ }
+
+ // Creates an access policy. This method fails if the organization already has
+ // an access policy. The long-running operation has a successful status
+ // after the access policy propagates to long-lasting storage.
+ // Syntactic and basic semantic errors are returned in `metadata` as a
+ // BadRequest proto.
+ rpc CreateAccessPolicy(AccessPolicy) returns (google.longrunning.Operation) {
+ option (google.api.http) = {
+ post: "/v1/accessPolicies"
+ body: "*"
+ };
+ option (google.longrunning.operation_info) = {
+ response_type: "AccessPolicy"
+ metadata_type: "AccessContextManagerOperationMetadata"
+ };
+ }
+
+ // Updates an [access policy]
+ // [google.identity.accesscontextmanager.v1.AccessPolicy]. The
+ // long-running operation from this RPC has a successful status after the
+ // changes to the [access policy]
+ // [google.identity.accesscontextmanager.v1.AccessPolicy] propagate
+ // to long-lasting storage.
+ rpc UpdateAccessPolicy(UpdateAccessPolicyRequest) returns (google.longrunning.Operation) {
+ option (google.api.http) = {
+ patch: "/v1/{policy.name=accessPolicies/*}"
+ body: "policy"
+ };
+ option (google.api.method_signature) = "policy,update_mask";
+ option (google.longrunning.operation_info) = {
+ response_type: "AccessPolicy"
+ metadata_type: "AccessContextManagerOperationMetadata"
+ };
+ }
+
+ // Deletes an [access policy]
+ // [google.identity.accesscontextmanager.v1.AccessPolicy] based on the
+ // resource name. The long-running operation has a successful status after the
+ // [access policy] [google.identity.accesscontextmanager.v1.AccessPolicy]
+ // is removed from long-lasting storage.
+ rpc DeleteAccessPolicy(DeleteAccessPolicyRequest) returns (google.longrunning.Operation) {
+ option (google.api.http) = {
+ delete: "/v1/{name=accessPolicies/*}"
+ };
+ option (google.api.method_signature) = "name";
+ option (google.longrunning.operation_info) = {
+ response_type: "google.protobuf.Empty"
+ metadata_type: "AccessContextManagerOperationMetadata"
+ };
+ }
+
+ // Lists all [access levels]
+ // [google.identity.accesscontextmanager.v1.AccessLevel] for an access
+ // policy.
+ rpc ListAccessLevels(ListAccessLevelsRequest) returns (ListAccessLevelsResponse) {
+ option (google.api.http) = {
+ get: "/v1/{parent=accessPolicies/*}/accessLevels"
+ };
+ option (google.api.method_signature) = "parent";
+ }
+
+ // Gets an [access level]
+ // [google.identity.accesscontextmanager.v1.AccessLevel] based on the resource
+ // name.
+ rpc GetAccessLevel(GetAccessLevelRequest) returns (AccessLevel) {
+ option (google.api.http) = {
+ get: "/v1/{name=accessPolicies/*/accessLevels/*}"
+ };
+ option (google.api.method_signature) = "name";
+ }
+
+ // Creates an [access level]
+ // [google.identity.accesscontextmanager.v1.AccessLevel]. The long-running
+ // operation from this RPC has a successful status after the [access
+ // level] [google.identity.accesscontextmanager.v1.AccessLevel]
+ // propagates to long-lasting storage. If [access levels]
+ // [google.identity.accesscontextmanager.v1.AccessLevel] contain
+ // errors, an error response is returned for the first error encountered.
+ rpc CreateAccessLevel(CreateAccessLevelRequest) returns (google.longrunning.Operation) {
+ option (google.api.http) = {
+ post: "/v1/{parent=accessPolicies/*}/accessLevels"
+ body: "access_level"
+ };
+ option (google.api.method_signature) = "parent,access_level";
+ option (google.longrunning.operation_info) = {
+ response_type: "AccessLevel"
+ metadata_type: "AccessContextManagerOperationMetadata"
+ };
+ }
+
+ // Updates an [access level]
+ // [google.identity.accesscontextmanager.v1.AccessLevel]. The long-running
+ // operation from this RPC has a successful status after the changes to
+ // the [access level]
+ // [google.identity.accesscontextmanager.v1.AccessLevel] propagate
+ // to long-lasting storage. If [access levels]
+ // [google.identity.accesscontextmanager.v1.AccessLevel] contain
+ // errors, an error response is returned for the first error encountered.
+ rpc UpdateAccessLevel(UpdateAccessLevelRequest) returns (google.longrunning.Operation) {
+ option (google.api.http) = {
+ patch: "/v1/{access_level.name=accessPolicies/*/accessLevels/*}"
+ body: "access_level"
+ };
+ option (google.api.method_signature) = "access_level,update_mask";
+ option (google.longrunning.operation_info) = {
+ response_type: "AccessLevel"
+ metadata_type: "AccessContextManagerOperationMetadata"
+ };
+ }
+
+ // Deletes an [access level]
+ // [google.identity.accesscontextmanager.v1.AccessLevel] based on the resource
+ // name. The long-running operation from this RPC has a successful status
+ // after the [access level]
+ // [google.identity.accesscontextmanager.v1.AccessLevel] has been removed
+ // from long-lasting storage.
+ rpc DeleteAccessLevel(DeleteAccessLevelRequest) returns (google.longrunning.Operation) {
+ option (google.api.http) = {
+ delete: "/v1/{name=accessPolicies/*/accessLevels/*}"
+ };
+ option (google.api.method_signature) = "name";
+ option (google.longrunning.operation_info) = {
+ response_type: "google.protobuf.Empty"
+ metadata_type: "AccessContextManagerOperationMetadata"
+ };
+ }
+
+ // Replaces all existing [access levels]
+ // [google.identity.accesscontextmanager.v1.AccessLevel] in an [access
+ // policy] [google.identity.accesscontextmanager.v1.AccessPolicy] with
+ // the [access levels]
+ // [google.identity.accesscontextmanager.v1.AccessLevel] provided. This
+ // is done atomically. The long-running operation from this RPC has a
+ // successful status after all replacements propagate to long-lasting
+ // storage. If the replacement contains errors, an error response is returned
+ // for the first error encountered. Upon error, the replacement is cancelled,
+ // and existing [access levels]
+ // [google.identity.accesscontextmanager.v1.AccessLevel] are not
+ // affected. The Operation.response field contains
+ // ReplaceAccessLevelsResponse. Removing [access levels]
+ // [google.identity.accesscontextmanager.v1.AccessLevel] contained in existing
+ // [service perimeters]
+ // [google.identity.accesscontextmanager.v1.ServicePerimeter] result in an
+ // error.
+ rpc ReplaceAccessLevels(ReplaceAccessLevelsRequest) returns (google.longrunning.Operation) {
+ option (google.api.http) = {
+ post: "/v1/{parent=accessPolicies/*}/accessLevels:replaceAll"
+ body: "*"
+ };
+ option (google.longrunning.operation_info) = {
+ response_type: "ReplaceAccessLevelsResponse"
+ metadata_type: "AccessContextManagerOperationMetadata"
+ };
+ }
+
+ // Lists all [service perimeters]
+ // [google.identity.accesscontextmanager.v1.ServicePerimeter] for an
+ // access policy.
+ rpc ListServicePerimeters(ListServicePerimetersRequest) returns (ListServicePerimetersResponse) {
+ option (google.api.http) = {
+ get: "/v1/{parent=accessPolicies/*}/servicePerimeters"
+ };
+ option (google.api.method_signature) = "parent";
+ }
+
+ // Gets a [service perimeter]
+ // [google.identity.accesscontextmanager.v1.ServicePerimeter] based on the
+ // resource name.
+ rpc GetServicePerimeter(GetServicePerimeterRequest) returns (ServicePerimeter) {
+ option (google.api.http) = {
+ get: "/v1/{name=accessPolicies/*/servicePerimeters/*}"
+ };
+ option (google.api.method_signature) = "name";
+ }
+
+ // Creates a [service perimeter]
+ // [google.identity.accesscontextmanager.v1.ServicePerimeter]. The
+ // long-running operation from this RPC has a successful status after the
+ // [service perimeter]
+ // [google.identity.accesscontextmanager.v1.ServicePerimeter]
+ // propagates to long-lasting storage. If a [service perimeter]
+ // [google.identity.accesscontextmanager.v1.ServicePerimeter] contains
+ // errors, an error response is returned for the first error encountered.
+ rpc CreateServicePerimeter(CreateServicePerimeterRequest) returns (google.longrunning.Operation) {
+ option (google.api.http) = {
+ post: "/v1/{parent=accessPolicies/*}/servicePerimeters"
+ body: "service_perimeter"
+ };
+ option (google.api.method_signature) = "parent,service_perimeter";
+ option (google.longrunning.operation_info) = {
+ response_type: "ServicePerimeter"
+ metadata_type: "AccessContextManagerOperationMetadata"
+ };
+ }
+
+ // Updates a [service perimeter]
+ // [google.identity.accesscontextmanager.v1.ServicePerimeter]. The
+ // long-running operation from this RPC has a successful status after the
+ // [service perimeter]
+ // [google.identity.accesscontextmanager.v1.ServicePerimeter]
+ // propagates to long-lasting storage. If a [service perimeter]
+ // [google.identity.accesscontextmanager.v1.ServicePerimeter] contains
+ // errors, an error response is returned for the first error encountered.
+ rpc UpdateServicePerimeter(UpdateServicePerimeterRequest) returns (google.longrunning.Operation) {
+ option (google.api.http) = {
+ patch: "/v1/{service_perimeter.name=accessPolicies/*/servicePerimeters/*}"
+ body: "service_perimeter"
+ };
+ option (google.api.method_signature) = "service_perimeter,update_mask";
+ option (google.longrunning.operation_info) = {
+ response_type: "ServicePerimeter"
+ metadata_type: "AccessContextManagerOperationMetadata"
+ };
+ }
+
+ // Deletes a [service perimeter]
+ // [google.identity.accesscontextmanager.v1.ServicePerimeter] based on the
+ // resource name. The long-running operation from this RPC has a successful
+ // status after the [service perimeter]
+ // [google.identity.accesscontextmanager.v1.ServicePerimeter] is removed from
+ // long-lasting storage.
+ rpc DeleteServicePerimeter(DeleteServicePerimeterRequest) returns (google.longrunning.Operation) {
+ option (google.api.http) = {
+ delete: "/v1/{name=accessPolicies/*/servicePerimeters/*}"
+ };
+ option (google.api.method_signature) = "name";
+ option (google.longrunning.operation_info) = {
+ response_type: "google.protobuf.Empty"
+ metadata_type: "AccessContextManagerOperationMetadata"
+ };
+ }
+
+ // Replace all existing [service perimeters]
+ // [google.identity.accesscontextmanager.v1.ServicePerimeter] in an [access
+ // policy] [google.identity.accesscontextmanager.v1.AccessPolicy] with the
+ // [service perimeters]
+ // [google.identity.accesscontextmanager.v1.ServicePerimeter] provided. This
+ // is done atomically. The long-running operation from this RPC has a
+ // successful status after all replacements propagate to long-lasting storage.
+ // Replacements containing errors result in an error response for the first
+ // error encountered. Upon an error, replacement are cancelled and existing
+ // [service perimeters]
+ // [google.identity.accesscontextmanager.v1.ServicePerimeter] are not
+ // affected. The Operation.response field contains
+ // ReplaceServicePerimetersResponse.
+ rpc ReplaceServicePerimeters(ReplaceServicePerimetersRequest) returns (google.longrunning.Operation) {
+ option (google.api.http) = {
+ post: "/v1/{parent=accessPolicies/*}/servicePerimeters:replaceAll"
+ body: "*"
+ };
+ option (google.longrunning.operation_info) = {
+ response_type: "ReplaceServicePerimetersResponse"
+ metadata_type: "AccessContextManagerOperationMetadata"
+ };
+ }
+
+ // Commits the dry-run specification for all the [service perimeters]
+ // [google.identity.accesscontextmanager.v1.ServicePerimeter] in an
+ // [access policy][google.identity.accesscontextmanager.v1.AccessPolicy].
+ // A commit operation on a service perimeter involves copying its `spec` field
+ // to the `status` field of the service perimeter. Only [service perimeters]
+ // [google.identity.accesscontextmanager.v1.ServicePerimeter] with
+ // `use_explicit_dry_run_spec` field set to true are affected by a commit
+ // operation. The long-running operation from this RPC has a successful
+ // status after the dry-run specifications for all the [service perimeters]
+ // [google.identity.accesscontextmanager.v1.ServicePerimeter] have been
+ // committed. If a commit fails, it causes the long-running operation to
+ // return an error response and the entire commit operation is cancelled.
+ // When successful, the Operation.response field contains
+ // CommitServicePerimetersResponse. The `dry_run` and the `spec` fields are
+ // cleared after a successful commit operation.
+ rpc CommitServicePerimeters(CommitServicePerimetersRequest) returns (google.longrunning.Operation) {
+ option (google.api.http) = {
+ post: "/v1/{parent=accessPolicies/*}/servicePerimeters:commit"
+ body: "*"
+ };
+ option (google.longrunning.operation_info) = {
+ response_type: "CommitServicePerimetersResponse"
+ metadata_type: "AccessContextManagerOperationMetadata"
+ };
+ }
+
+ // Lists all [GcpUserAccessBindings]
+ // [google.identity.accesscontextmanager.v1.GcpUserAccessBinding] for a
+ // Google Cloud organization.
+ rpc ListGcpUserAccessBindings(ListGcpUserAccessBindingsRequest) returns (ListGcpUserAccessBindingsResponse) {
+ option (google.api.http) = {
+ get: "/v1/{parent=organizations/*}/gcpUserAccessBindings"
+ };
+ option (google.api.method_signature) = "parent";
+ }
+
+ // Gets the [GcpUserAccessBinding]
+ // [google.identity.accesscontextmanager.v1.GcpUserAccessBinding] with
+ // the given name.
+ rpc GetGcpUserAccessBinding(GetGcpUserAccessBindingRequest) returns (GcpUserAccessBinding) {
+ option (google.api.http) = {
+ get: "/v1/{name=organizations/*/gcpUserAccessBindings/*}"
+ };
+ option (google.api.method_signature) = "name";
+ }
+
+ // Creates a [GcpUserAccessBinding]
+ // [google.identity.accesscontextmanager.v1.GcpUserAccessBinding]. If the
+ // client specifies a [name]
+ // [google.identity.accesscontextmanager.v1.GcpUserAccessBinding.name],
+ // the server ignores it. Fails if a resource already exists with the same
+ // [group_key]
+ // [google.identity.accesscontextmanager.v1.GcpUserAccessBinding.group_key].
+ // Completion of this long-running operation does not necessarily signify that
+ // the new binding is deployed onto all affected users, which may take more
+ // time.
+ rpc CreateGcpUserAccessBinding(CreateGcpUserAccessBindingRequest) returns (google.longrunning.Operation) {
+ option (google.api.http) = {
+ post: "/v1/{parent=organizations/*}/gcpUserAccessBindings"
+ body: "gcp_user_access_binding"
+ };
+ option (google.api.method_signature) = "parent,gcp_user_access_binding";
+ option (google.longrunning.operation_info) = {
+ response_type: "GcpUserAccessBinding"
+ metadata_type: "GcpUserAccessBindingOperationMetadata"
+ };
+ }
+
+ // Updates a [GcpUserAccessBinding]
+ // [google.identity.accesscontextmanager.v1.GcpUserAccessBinding].
+ // Completion of this long-running operation does not necessarily signify that
+ // the changed binding is deployed onto all affected users, which may take
+ // more time.
+ rpc UpdateGcpUserAccessBinding(UpdateGcpUserAccessBindingRequest) returns (google.longrunning.Operation) {
+ option (google.api.http) = {
+ patch: "/v1/{gcp_user_access_binding.name=organizations/*/gcpUserAccessBindings/*}"
+ body: "gcp_user_access_binding"
+ };
+ option (google.api.method_signature) = "gcp_user_access_binding,update_mask";
+ option (google.longrunning.operation_info) = {
+ response_type: "GcpUserAccessBinding"
+ metadata_type: "GcpUserAccessBindingOperationMetadata"
+ };
+ }
+
+ // Deletes a [GcpUserAccessBinding]
+ // [google.identity.accesscontextmanager.v1.GcpUserAccessBinding].
+ // Completion of this long-running operation does not necessarily signify that
+ // the binding deletion is deployed onto all affected users, which may take
+ // more time.
+ rpc DeleteGcpUserAccessBinding(DeleteGcpUserAccessBindingRequest) returns (google.longrunning.Operation) {
+ option (google.api.http) = {
+ delete: "/v1/{name=organizations/*/gcpUserAccessBindings/*}"
+ };
+ option (google.api.method_signature) = "name";
+ option (google.longrunning.operation_info) = {
+ response_type: "google.protobuf.Empty"
+ metadata_type: "GcpUserAccessBindingOperationMetadata"
+ };
+ }
+
+ // Sets the IAM policy for the specified Access Context Manager
+ // [access policy][google.identity.accesscontextmanager.v1.AccessPolicy].
+ // This method replaces the existing IAM policy on the access policy. The IAM
+ // policy controls the set of users who can perform specific operations on the
+ // Access Context Manager [access
+ // policy][google.identity.accesscontextmanager.v1.AccessPolicy].
+ rpc SetIamPolicy(google.iam.v1.SetIamPolicyRequest) returns (google.iam.v1.Policy) {
+ option (google.api.http) = {
+ post: "/v1/{resource=accessPolicies/*}:setIamPolicy"
+ body: "*"
+ };
+ }
+
+ // Gets the IAM policy for the specified Access Context Manager
+ // [access policy][google.identity.accesscontextmanager.v1.AccessPolicy].
+ rpc GetIamPolicy(google.iam.v1.GetIamPolicyRequest) returns (google.iam.v1.Policy) {
+ option (google.api.http) = {
+ post: "/v1/{resource=accessPolicies/*}:getIamPolicy"
+ body: "*"
+ };
+ }
+
+ // Returns the IAM permissions that the caller has on the specified Access
+ // Context Manager resource. The resource can be an
+ // [AccessPolicy][google.identity.accesscontextmanager.v1.AccessPolicy],
+ // [AccessLevel][google.identity.accesscontextmanager.v1.AccessLevel], or
+ // [ServicePerimeter][google.identity.accesscontextmanager.v1.ServicePerimeter
+ // ]. This method does not support other resources.
+ rpc TestIamPermissions(google.iam.v1.TestIamPermissionsRequest) returns (google.iam.v1.TestIamPermissionsResponse) {
+ option (google.api.http) = {
+ post: "/v1/{resource=accessPolicies/*}:testIamPermissions"
+ body: "*"
+ additional_bindings {
+ post: "/v1/{resource=accessPolicies/*/accessLevels/*}:testIamPermissions"
+ body: "*"
+ }
+ additional_bindings {
+ post: "/v1/{resource=accessPolicies/*/servicePerimeters/*}:testIamPermissions"
+ body: "*"
+ }
+ };
+ }
+}
+
+// A request to list all `AccessPolicies` for a container.
+message ListAccessPoliciesRequest {
+ // Required. Resource name for the container to list AccessPolicy instances
+ // from.
+ //
+ // Format:
+ // `organizations/{org_id}`
+ string parent = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "cloudresourcemanager.googleapis.com/Organization"
+ }
+ ];
+
+ // Number of AccessPolicy instances to include in the list. Default 100.
+ int32 page_size = 2;
+
+ // Next page token for the next batch of AccessPolicy instances. Defaults to
+ // the first page of results.
+ string page_token = 3;
+}
+
+// A response to `ListAccessPoliciesRequest`.
+message ListAccessPoliciesResponse {
+ // List of the AccessPolicy instances.
+ repeated AccessPolicy access_policies = 1;
+
+ // The pagination token to retrieve the next page of results. If the value is
+ // empty, no further results remain.
+ string next_page_token = 2;
+}
+
+// A request to get a particular `AccessPolicy`.
+message GetAccessPolicyRequest {
+ // Required. Resource name for the access policy to get.
+ //
+ // Format `accessPolicies/{policy_id}`
+ string name = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "accesscontextmanager.googleapis.com/AccessPolicy"
+ }
+ ];
+}
+
+// A request to update an `AccessPolicy`.
+message UpdateAccessPolicyRequest {
+ // Required. The updated AccessPolicy.
+ AccessPolicy policy = 1 [(google.api.field_behavior) = REQUIRED];
+
+ // Required. Mask to control which fields get updated. Must be non-empty.
+ google.protobuf.FieldMask update_mask = 2 [(google.api.field_behavior) = REQUIRED];
+}
+
+// A request to delete an `AccessPolicy`.
+message DeleteAccessPolicyRequest {
+ // Required. Resource name for the access policy to delete.
+ //
+ // Format `accessPolicies/{policy_id}`
+ string name = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "accesscontextmanager.googleapis.com/AccessPolicy"
+ }
+ ];
+}
+
+// A request to list all `AccessLevels` in an `AccessPolicy`.
+message ListAccessLevelsRequest {
+ // Required. Resource name for the access policy to list [Access Levels]
+ // [google.identity.accesscontextmanager.v1.AccessLevel] from.
+ //
+ // Format:
+ // `accessPolicies/{policy_id}`
+ string parent = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ child_type: "accesscontextmanager.googleapis.com/AccessLevel"
+ }
+ ];
+
+ // Number of [Access Levels]
+ // [google.identity.accesscontextmanager.v1.AccessLevel] to include in
+ // the list. Default 100.
+ int32 page_size = 2;
+
+ // Next page token for the next batch of [Access Level]
+ // [google.identity.accesscontextmanager.v1.AccessLevel] instances.
+ // Defaults to the first page of results.
+ string page_token = 3;
+
+ // Whether to return `BasicLevels` in the Cloud Common Expression language, as
+ // `CustomLevels`, rather than as `BasicLevels`. Defaults to returning
+ // `AccessLevels` in the format they were defined.
+ LevelFormat access_level_format = 4;
+}
+
+// A response to `ListAccessLevelsRequest`.
+message ListAccessLevelsResponse {
+ // List of the [Access Level]
+ // [google.identity.accesscontextmanager.v1.AccessLevel] instances.
+ repeated AccessLevel access_levels = 1;
+
+ // The pagination token to retrieve the next page of results. If the value is
+ // empty, no further results remain.
+ string next_page_token = 2;
+}
+
+// A request to get a particular `AccessLevel`.
+message GetAccessLevelRequest {
+ // Required. Resource name for the [Access Level]
+ // [google.identity.accesscontextmanager.v1.AccessLevel].
+ //
+ // Format:
+ // `accessPolicies/{policy_id}/accessLevels/{access_level_id}`
+ string name = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "accesscontextmanager.googleapis.com/AccessLevel"
+ }
+ ];
+
+ // Whether to return `BasicLevels` in the Cloud Common Expression
+ // Language rather than as `BasicLevels`. Defaults to AS_DEFINED, where
+ // [Access Levels] [google.identity.accesscontextmanager.v1.AccessLevel]
+ // are returned as `BasicLevels` or `CustomLevels` based on how they were
+ // created. If set to CEL, all [Access Levels]
+ // [google.identity.accesscontextmanager.v1.AccessLevel] are returned as
+ // `CustomLevels`. In the CEL case, `BasicLevels` are translated to equivalent
+ // `CustomLevels`.
+ LevelFormat access_level_format = 2;
+}
+
+// A request to create an `AccessLevel`.
+message CreateAccessLevelRequest {
+ // Required. Resource name for the access policy which owns this [Access
+ // Level] [google.identity.accesscontextmanager.v1.AccessLevel].
+ //
+ // Format: `accessPolicies/{policy_id}`
+ string parent = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ child_type: "accesscontextmanager.googleapis.com/AccessLevel"
+ }
+ ];
+
+ // Required. The [Access Level]
+ // [google.identity.accesscontextmanager.v1.AccessLevel] to create.
+ // Syntactic correctness of the [Access Level]
+ // [google.identity.accesscontextmanager.v1.AccessLevel] is a
+ // precondition for creation.
+ AccessLevel access_level = 2 [(google.api.field_behavior) = REQUIRED];
+}
+
+// A request to update an `AccessLevel`.
+message UpdateAccessLevelRequest {
+ // Required. The updated [Access Level]
+ // [google.identity.accesscontextmanager.v1.AccessLevel]. Syntactic
+ // correctness of the [Access Level]
+ // [google.identity.accesscontextmanager.v1.AccessLevel] is a
+ // precondition for creation.
+ AccessLevel access_level = 1 [(google.api.field_behavior) = REQUIRED];
+
+ // Required. Mask to control which fields get updated. Must be non-empty.
+ google.protobuf.FieldMask update_mask = 2 [(google.api.field_behavior) = REQUIRED];
+}
+
+// A request to delete an `AccessLevel`.
+message DeleteAccessLevelRequest {
+ // Required. Resource name for the [Access Level]
+ // [google.identity.accesscontextmanager.v1.AccessLevel].
+ //
+ // Format:
+ // `accessPolicies/{policy_id}/accessLevels/{access_level_id}`
+ string name = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "accesscontextmanager.googleapis.com/AccessLevel"
+ }
+ ];
+}
+
+// A request to replace all existing Access Levels in an Access Policy with
+// the Access Levels provided. This is done atomically.
+message ReplaceAccessLevelsRequest {
+ // Required. Resource name for the access policy which owns these
+ // [Access Levels]
+ // [google.identity.accesscontextmanager.v1.AccessLevel].
+ //
+ // Format: `accessPolicies/{policy_id}`
+ string parent = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ child_type: "accesscontextmanager.googleapis.com/AccessLevel"
+ }
+ ];
+
+ // Required. The desired [Access Levels]
+ // [google.identity.accesscontextmanager.v1.AccessLevel] that should
+ // replace all existing [Access Levels]
+ // [google.identity.accesscontextmanager.v1.AccessLevel] in the
+ // [Access Policy]
+ // [google.identity.accesscontextmanager.v1.AccessPolicy].
+ repeated AccessLevel access_levels = 2 [(google.api.field_behavior) = REQUIRED];
+
+ // Optional. The etag for the version of the [Access Policy]
+ // [google.identity.accesscontextmanager.v1.AccessPolicy] that this
+ // replace operation is to be performed on. If, at the time of replace, the
+ // etag for the Access Policy stored in Access Context Manager is different
+ // from the specified etag, then the replace operation will not be performed
+ // and the call will fail. This field is not required. If etag is not
+ // provided, the operation will be performed as if a valid etag is provided.
+ string etag = 4;
+}
+
+// A response to ReplaceAccessLevelsRequest. This will be put inside of
+// Operation.response field.
+message ReplaceAccessLevelsResponse {
+ // List of the [Access Level]
+ // [google.identity.accesscontextmanager.v1.AccessLevel] instances.
+ repeated AccessLevel access_levels = 1;
+}
+
+// A request to list all `ServicePerimeters` in an `AccessPolicy`.
+message ListServicePerimetersRequest {
+ // Required. Resource name for the access policy to list [Service Perimeters]
+ // [google.identity.accesscontextmanager.v1.ServicePerimeter] from.
+ //
+ // Format:
+ // `accessPolicies/{policy_id}`
+ string parent = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ child_type: "accesscontextmanager.googleapis.com/ServicePerimeter"
+ }
+ ];
+
+ // Number of [Service Perimeters]
+ // [google.identity.accesscontextmanager.v1.ServicePerimeter] to include
+ // in the list. Default 100.
+ int32 page_size = 2;
+
+ // Next page token for the next batch of [Service Perimeter]
+ // [google.identity.accesscontextmanager.v1.ServicePerimeter] instances.
+ // Defaults to the first page of results.
+ string page_token = 3;
+}
+
+// A response to `ListServicePerimetersRequest`.
+message ListServicePerimetersResponse {
+ // List of the [Service Perimeter]
+ // [google.identity.accesscontextmanager.v1.ServicePerimeter] instances.
+ repeated ServicePerimeter service_perimeters = 1;
+
+ // The pagination token to retrieve the next page of results. If the value is
+ // empty, no further results remain.
+ string next_page_token = 2;
+}
+
+// A request to get a particular `ServicePerimeter`.
+message GetServicePerimeterRequest {
+ // Required. Resource name for the [Service Perimeter]
+ // [google.identity.accesscontextmanager.v1.ServicePerimeter].
+ //
+ // Format:
+ // `accessPolicies/{policy_id}/servicePerimeters/{service_perimeters_id}`
+ string name = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "accesscontextmanager.googleapis.com/ServicePerimeter"
+ }
+ ];
+}
+
+// A request to create a `ServicePerimeter`.
+message CreateServicePerimeterRequest {
+ // Required. Resource name for the access policy which owns this [Service
+ // Perimeter] [google.identity.accesscontextmanager.v1.ServicePerimeter].
+ //
+ // Format: `accessPolicies/{policy_id}`
+ string parent = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ child_type: "accesscontextmanager.googleapis.com/ServicePerimeter"
+ }
+ ];
+
+ // Required. The [Service Perimeter]
+ // [google.identity.accesscontextmanager.v1.ServicePerimeter] to create.
+ // Syntactic correctness of the [Service Perimeter]
+ // [google.identity.accesscontextmanager.v1.ServicePerimeter] is a
+ // precondition for creation.
+ ServicePerimeter service_perimeter = 2 [(google.api.field_behavior) = REQUIRED];
+}
+
+// A request to update a `ServicePerimeter`.
+message UpdateServicePerimeterRequest {
+ // Required. The updated `ServicePerimeter`. Syntactic correctness of the
+ // `ServicePerimeter` is a precondition for creation.
+ ServicePerimeter service_perimeter = 1 [(google.api.field_behavior) = REQUIRED];
+
+ // Required. Mask to control which fields get updated. Must be non-empty.
+ google.protobuf.FieldMask update_mask = 2 [(google.api.field_behavior) = REQUIRED];
+}
+
+// A request to delete a `ServicePerimeter`.
+message DeleteServicePerimeterRequest {
+ // Required. Resource name for the [Service Perimeter]
+ // [google.identity.accesscontextmanager.v1.ServicePerimeter].
+ //
+ // Format:
+ // `accessPolicies/{policy_id}/servicePerimeters/{service_perimeter_id}`
+ string name = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "accesscontextmanager.googleapis.com/ServicePerimeter"
+ }
+ ];
+}
+
+// A request to replace all existing Service Perimeters in an Access Policy
+// with the Service Perimeters provided. This is done atomically.
+message ReplaceServicePerimetersRequest {
+ // Required. Resource name for the access policy which owns these
+ // [Service Perimeters]
+ // [google.identity.accesscontextmanager.v1.ServicePerimeter].
+ //
+ // Format: `accessPolicies/{policy_id}`
+ string parent = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ child_type: "accesscontextmanager.googleapis.com/ServicePerimeter"
+ }
+ ];
+
+ // Required. The desired [Service Perimeters]
+ // [google.identity.accesscontextmanager.v1.ServicePerimeter] that should
+ // replace all existing [Service Perimeters]
+ // [google.identity.accesscontextmanager.v1.ServicePerimeter] in the
+ // [Access Policy]
+ // [google.identity.accesscontextmanager.v1.AccessPolicy].
+ repeated ServicePerimeter service_perimeters = 2 [(google.api.field_behavior) = REQUIRED];
+
+ // Optional. The etag for the version of the [Access Policy]
+ // [google.identity.accesscontextmanager.v1.AccessPolicy] that this
+ // replace operation is to be performed on. If, at the time of replace, the
+ // etag for the Access Policy stored in Access Context Manager is different
+ // from the specified etag, then the replace operation will not be performed
+ // and the call will fail. This field is not required. If etag is not
+ // provided, the operation will be performed as if a valid etag is provided.
+ string etag = 3;
+}
+
+// A response to ReplaceServicePerimetersRequest. This will be put inside of
+// Operation.response field.
+message ReplaceServicePerimetersResponse {
+ // List of the [Service Perimeter]
+ // [google.identity.accesscontextmanager.v1.ServicePerimeter] instances.
+ repeated ServicePerimeter service_perimeters = 1;
+}
+
+// A request to commit dry-run specs in all [Service Perimeters]
+// [google.identity.accesscontextmanager.v1.ServicePerimeter] belonging to
+// an [Access Policy][google.identity.accesscontextmanager.v1.AccessPolicy].
+message CommitServicePerimetersRequest {
+ // Required. Resource name for the parent [Access Policy]
+ // [google.identity.accesscontextmanager.v1.AccessPolicy] which owns all
+ // [Service Perimeters]
+ // [google.identity.accesscontextmanager.v1.ServicePerimeter] in scope for
+ // the commit operation.
+ //
+ // Format: `accessPolicies/{policy_id}`
+ string parent = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ child_type: "accesscontextmanager.googleapis.com/ServicePerimeter"
+ }
+ ];
+
+ // Optional. The etag for the version of the [Access Policy]
+ // [google.identity.accesscontextmanager.v1.AccessPolicy] that this
+ // commit operation is to be performed on. If, at the time of commit, the
+ // etag for the Access Policy stored in Access Context Manager is different
+ // from the specified etag, then the commit operation will not be performed
+ // and the call will fail. This field is not required. If etag is not
+ // provided, the operation will be performed as if a valid etag is provided.
+ string etag = 2;
+}
+
+// A response to CommitServicePerimetersRequest. This will be put inside of
+// Operation.response field.
+message CommitServicePerimetersResponse {
+ // List of all the [Service Perimeter]
+ // [google.identity.accesscontextmanager.v1.ServicePerimeter] instances in
+ // the [Access Policy]
+ // [google.identity.accesscontextmanager.v1.AccessPolicy].
+ repeated ServicePerimeter service_perimeters = 1;
+}
+
+// The format used in an `AccessLevel`.
+enum LevelFormat {
+ // The format was not specified.
+ LEVEL_FORMAT_UNSPECIFIED = 0;
+
+ // Uses the format the resource was defined in. BasicLevels are returned as
+ // BasicLevels, CustomLevels are returned as CustomLevels.
+ AS_DEFINED = 1;
+
+ // Use Cloud Common Expression Language when returning the resource. Both
+ // BasicLevels and CustomLevels are returned as CustomLevels.
+ CEL = 2;
+}
+
+// Request of [ListGcpUserAccessBindings]
+// [google.identity.accesscontextmanager.v1.AccessContextManager.ListGcpUserAccessBindings].
+message ListGcpUserAccessBindingsRequest {
+ // Required. Example: "organizations/256"
+ string parent = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "cloudresourcemanager.googleapis.com/Organization"
+ }
+ ];
+
+ // Optional. Maximum number of items to return. The server may return fewer items.
+ // If left blank, the server may return any number of items.
+ int32 page_size = 2 [(google.api.field_behavior) = OPTIONAL];
+
+ // Optional. If left blank, returns the first page. To enumerate all items, use the
+ // [next_page_token]
+ // [google.identity.accesscontextmanager.v1.ListGcpUserAccessBindingsResponse.next_page_token]
+ // from your previous list operation.
+ string page_token = 3 [(google.api.field_behavior) = OPTIONAL];
+}
+
+// Response of [ListGcpUserAccessBindings]
+// [google.identity.accesscontextmanager.v1.AccessContextManager.ListGcpUserAccessBindings].
+message ListGcpUserAccessBindingsResponse {
+ // [GcpUserAccessBinding]
+ // [google.identity.accesscontextmanager.v1.GcpUserAccessBinding]
+ repeated GcpUserAccessBinding gcp_user_access_bindings = 1;
+
+ // Token to get the next page of items. If blank, there are no more items.
+ string next_page_token = 2;
+}
+
+// Request of [GetGcpUserAccessBinding]
+// [google.identity.accesscontextmanager.v1.AccessContextManager.GetGcpUserAccessBinding].
+message GetGcpUserAccessBindingRequest {
+ // Required. Example: "organizations/256/gcpUserAccessBindings/b3-BhcX_Ud5N"
+ string name = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "accesscontextmanager.googleapis.com/GcpUserAccessBinding"
+ }
+ ];
+}
+
+// Request of [CreateGcpUserAccessBinding]
+// [google.identity.accesscontextmanager.v1.AccessContextManager.CreateGcpUserAccessBinding].
+message CreateGcpUserAccessBindingRequest {
+ // Required. Example: "organizations/256"
+ string parent = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "cloudresourcemanager.googleapis.com/Organization"
+ }
+ ];
+
+ // Required. [GcpUserAccessBinding]
+ // [google.identity.accesscontextmanager.v1.GcpUserAccessBinding]
+ GcpUserAccessBinding gcp_user_access_binding = 2 [(google.api.field_behavior) = REQUIRED];
+}
+
+// Request of [UpdateGcpUserAccessBinding]
+// [google.identity.accesscontextmanager.v1.AccessContextManager.UpdateGcpUserAccessBinding].
+message UpdateGcpUserAccessBindingRequest {
+ // Required. [GcpUserAccessBinding]
+ // [google.identity.accesscontextmanager.v1.GcpUserAccessBinding]
+ GcpUserAccessBinding gcp_user_access_binding = 1 [(google.api.field_behavior) = REQUIRED];
+
+ // Required. Only the fields specified in this mask are updated. Because name and
+ // group_key cannot be changed, update_mask is required and must always be:
+ //
+ // update_mask {
+ // paths: "access_levels"
+ // }
+ google.protobuf.FieldMask update_mask = 2 [(google.api.field_behavior) = REQUIRED];
+}
+
+// Request of [DeleteGcpUserAccessBinding]
+// [google.identity.accesscontextmanager.v1.AccessContextManager.DeleteGcpUserAccessBinding].
+message DeleteGcpUserAccessBindingRequest {
+ // Required. Example: "organizations/256/gcpUserAccessBindings/b3-BhcX_Ud5N"
+ string name = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "accesscontextmanager.googleapis.com/GcpUserAccessBinding"
+ }
+ ];
+}
+
+// Currently, a completed operation means nothing. In the future, this metadata
+// and a completed operation may indicate that the binding has taken effect and
+// is affecting access decisions for all users.
+message GcpUserAccessBindingOperationMetadata {
+
+}
+
+// Metadata of Access Context Manager's Long Running Operations.
+message AccessContextManagerOperationMetadata {
+
+}
diff --git a/packages/google-identity-accesscontextmanager/protos/google/identity/accesscontextmanager/v1/access_level.proto b/packages/google-identity-accesscontextmanager/protos/google/identity/accesscontextmanager/v1/access_level.proto
new file mode 100644
index 00000000000..b7b9c75c620
--- /dev/null
+++ b/packages/google-identity-accesscontextmanager/protos/google/identity/accesscontextmanager/v1/access_level.proto
@@ -0,0 +1,192 @@
+// Copyright 2022 Google LLC
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+syntax = "proto3";
+
+package google.identity.accesscontextmanager.v1;
+
+import "google/api/resource.proto";
+import "google/identity/accesscontextmanager/type/device_resources.proto";
+import "google/protobuf/timestamp.proto";
+import "google/type/expr.proto";
+
+option csharp_namespace = "Google.Identity.AccessContextManager.V1";
+option go_package = "google.golang.org/genproto/googleapis/identity/accesscontextmanager/v1;accesscontextmanager";
+option java_multiple_files = true;
+option java_outer_classname = "AccessLevelProto";
+option java_package = "com.google.identity.accesscontextmanager.v1";
+option objc_class_prefix = "GACM";
+option php_namespace = "Google\\Identity\\AccessContextManager\\V1";
+option ruby_package = "Google::Identity::AccessContextManager::V1";
+
+// An `AccessLevel` is a label that can be applied to requests to Google Cloud
+// services, along with a list of requirements necessary for the label to be
+// applied.
+message AccessLevel {
+ option (google.api.resource) = {
+ type: "accesscontextmanager.googleapis.com/AccessLevel"
+ pattern: "accessPolicies/{access_policy}/accessLevels/{access_level}"
+ };
+
+ // Required. Resource name for the Access Level. The `short_name` component
+ // must begin with a letter and only include alphanumeric and '_'. Format:
+ // `accessPolicies/{access_policy}/accessLevels/{access_level}`. The maximum
+ // length of the `access_level` component is 50 characters.
+ string name = 1;
+
+ // Human readable title. Must be unique within the Policy.
+ string title = 2;
+
+ // Description of the `AccessLevel` and its use. Does not affect behavior.
+ string description = 3;
+
+ // Required. Describes the necessary conditions for the level to apply.
+ oneof level {
+ // A `BasicLevel` composed of `Conditions`.
+ BasicLevel basic = 4;
+
+ // A `CustomLevel` written in the Common Expression Language.
+ CustomLevel custom = 5;
+ }
+
+ // Output only. Time the `AccessLevel` was created in UTC.
+ google.protobuf.Timestamp create_time = 6;
+
+ // Output only. Time the `AccessLevel` was updated in UTC.
+ google.protobuf.Timestamp update_time = 7;
+}
+
+// `BasicLevel` is an `AccessLevel` using a set of recommended features.
+message BasicLevel {
+ // Options for how the `conditions` list should be combined to determine if
+ // this `AccessLevel` is applied. Default is AND.
+ enum ConditionCombiningFunction {
+ // All `Conditions` must be true for the `BasicLevel` to be true.
+ AND = 0;
+
+ // If at least one `Condition` is true, then the `BasicLevel` is true.
+ OR = 1;
+ }
+
+ // Required. A list of requirements for the `AccessLevel` to be granted.
+ repeated Condition conditions = 1;
+
+ // How the `conditions` list should be combined to determine if a request is
+ // granted this `AccessLevel`. If AND is used, each `Condition` in
+ // `conditions` must be satisfied for the `AccessLevel` to be applied. If OR
+ // is used, at least one `Condition` in `conditions` must be satisfied for the
+ // `AccessLevel` to be applied. Default behavior is AND.
+ ConditionCombiningFunction combining_function = 2;
+}
+
+// A condition necessary for an `AccessLevel` to be granted. The Condition is an
+// AND over its fields. So a Condition is true if: 1) the request IP is from one
+// of the listed subnetworks AND 2) the originating device complies with the
+// listed device policy AND 3) all listed access levels are granted AND 4) the
+// request was sent at a time allowed by the DateTimeRestriction.
+message Condition {
+ // CIDR block IP subnetwork specification. May be IPv4 or IPv6. Note that for
+ // a CIDR IP address block, the specified IP address portion must be properly
+ // truncated (i.e. all the host bits must be zero) or the input is considered
+ // malformed. For example, "192.0.2.0/24" is accepted but "192.0.2.1/24" is
+ // not. Similarly, for IPv6, "2001:db8::/32" is accepted whereas
+ // "2001:db8::1/32" is not. The originating IP of a request must be in one of
+ // the listed subnets in order for this Condition to be true. If empty, all IP
+ // addresses are allowed.
+ repeated string ip_subnetworks = 1;
+
+ // Device specific restrictions, all restrictions must hold for the
+ // Condition to be true. If not specified, all devices are allowed.
+ DevicePolicy device_policy = 2;
+
+ // A list of other access levels defined in the same `Policy`, referenced by
+ // resource name. Referencing an `AccessLevel` which does not exist is an
+ // error. All access levels listed must be granted for the Condition
+ // to be true. Example:
+ // "`accessPolicies/MY_POLICY/accessLevels/LEVEL_NAME"`
+ repeated string required_access_levels = 3;
+
+ // Whether to negate the Condition. If true, the Condition becomes a NAND over
+ // its non-empty fields, each field must be false for the Condition overall to
+ // be satisfied. Defaults to false.
+ bool negate = 5;
+
+ // The request must be made by one of the provided user or service
+ // accounts. Groups are not supported.
+ // Syntax:
+ // `user:{emailid}`
+ // `serviceAccount:{emailid}`
+ // If not specified, a request may come from any user.
+ repeated string members = 6;
+
+ // The request must originate from one of the provided countries/regions.
+ // Must be valid ISO 3166-1 alpha-2 codes.
+ repeated string regions = 7;
+}
+
+// `CustomLevel` is an `AccessLevel` using the Cloud Common Expression Language
+// to represent the necessary conditions for the level to apply to a request.
+// See CEL spec at: https://github.com/google/cel-spec
+message CustomLevel {
+ // Required. A Cloud CEL expression evaluating to a boolean.
+ google.type.Expr expr = 1;
+}
+
+// `DevicePolicy` specifies device specific restrictions necessary to acquire a
+// given access level. A `DevicePolicy` specifies requirements for requests from
+// devices to be granted access levels, it does not do any enforcement on the
+// device. `DevicePolicy` acts as an AND over all specified fields, and each
+// repeated field is an OR over its elements. Any unset fields are ignored. For
+// example, if the proto is { os_type : DESKTOP_WINDOWS, os_type :
+// DESKTOP_LINUX, encryption_status: ENCRYPTED}, then the DevicePolicy will be
+// true for requests originating from encrypted Linux desktops and encrypted
+// Windows desktops.
+message DevicePolicy {
+ // Whether or not screenlock is required for the DevicePolicy to be true.
+ // Defaults to `false`.
+ bool require_screenlock = 1;
+
+ // Allowed encryptions statuses, an empty list allows all statuses.
+ repeated google.identity.accesscontextmanager.type.DeviceEncryptionStatus allowed_encryption_statuses = 2;
+
+ // Allowed OS versions, an empty list allows all types and all versions.
+ repeated OsConstraint os_constraints = 3;
+
+ // Allowed device management levels, an empty list allows all management
+ // levels.
+ repeated google.identity.accesscontextmanager.type.DeviceManagementLevel allowed_device_management_levels = 6;
+
+ // Whether the device needs to be approved by the customer admin.
+ bool require_admin_approval = 7;
+
+ // Whether the device needs to be corp owned.
+ bool require_corp_owned = 8;
+}
+
+// A restriction on the OS type and version of devices making requests.
+message OsConstraint {
+ // Required. The allowed OS type.
+ google.identity.accesscontextmanager.type.OsType os_type = 1;
+
+ // The minimum allowed OS version. If not set, any version of this OS
+ // satisfies the constraint. Format: `"major.minor.patch"`.
+ // Examples: `"10.5.301"`, `"9.2.1"`.
+ string minimum_version = 2;
+
+ // Only allows requests from devices with a verified Chrome OS.
+ // Verifications includes requirements that the device is enterprise-managed,
+ // conformant to domain policies, and the caller has permission to call
+ // the API targeted by the request.
+ bool require_verified_chrome_os = 3;
+}
diff --git a/packages/google-identity-accesscontextmanager/protos/google/identity/accesscontextmanager/v1/access_policy.proto b/packages/google-identity-accesscontextmanager/protos/google/identity/accesscontextmanager/v1/access_policy.proto
new file mode 100644
index 00000000000..74746478457
--- /dev/null
+++ b/packages/google-identity-accesscontextmanager/protos/google/identity/accesscontextmanager/v1/access_policy.proto
@@ -0,0 +1,81 @@
+// Copyright 2022 Google LLC
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+syntax = "proto3";
+
+package google.identity.accesscontextmanager.v1;
+
+import "google/api/resource.proto";
+import "google/protobuf/timestamp.proto";
+
+option csharp_namespace = "Google.Identity.AccessContextManager.V1";
+option go_package = "google.golang.org/genproto/googleapis/identity/accesscontextmanager/v1;accesscontextmanager";
+option java_multiple_files = true;
+option java_outer_classname = "PolicyProto";
+option java_package = "com.google.identity.accesscontextmanager.v1";
+option objc_class_prefix = "GACM";
+option php_namespace = "Google\\Identity\\AccessContextManager\\V1";
+option ruby_package = "Google::Identity::AccessContextManager::V1";
+
+// `AccessPolicy` is a container for `AccessLevels` (which define the necessary
+// attributes to use Google Cloud services) and `ServicePerimeters` (which
+// define regions of services able to freely pass data within a perimeter). An
+// access policy is globally visible within an organization, and the
+// restrictions it specifies apply to all projects within an organization.
+message AccessPolicy {
+ option (google.api.resource) = {
+ type: "accesscontextmanager.googleapis.com/AccessPolicy"
+ pattern: "accessPolicies/{access_policy}"
+ };
+
+ // Output only. Resource name of the `AccessPolicy`. Format:
+ // `accessPolicies/{access_policy}`
+ string name = 1;
+
+ // Required. The parent of this `AccessPolicy` in the Cloud Resource
+ // Hierarchy. Currently immutable once created. Format:
+ // `organizations/{organization_id}`
+ string parent = 2;
+
+ // Required. Human readable title. Does not affect behavior.
+ string title = 3;
+
+ // The scopes of a policy define which resources an ACM policy can restrict,
+ // and where ACM resources can be referenced.
+ // For example, a policy with scopes=["folders/123"] has the following
+ // behavior:
+ // - vpcsc perimeters can only restrict projects within folders/123
+ // - access levels can only be referenced by resources within folders/123.
+ // If empty, there are no limitations on which resources can be restricted by
+ // an ACM policy, and there are no limitations on where ACM resources can be
+ // referenced.
+ // Only one policy can include a given scope (attempting to create a second
+ // policy which includes "folders/123" will result in an error).
+ // Currently, scopes cannot be modified after a policy is created.
+ // Currently, policies can only have a single scope.
+ // Format: list of `folders/{folder_number}` or `projects/{project_number}`
+ repeated string scopes = 7;
+
+ // Output only. Time the `AccessPolicy` was created in UTC.
+ google.protobuf.Timestamp create_time = 4;
+
+ // Output only. Time the `AccessPolicy` was updated in UTC.
+ google.protobuf.Timestamp update_time = 5;
+
+ // Output only. An opaque identifier for the current version of the
+ // `AccessPolicy`. This will always be a strongly validated etag, meaning that
+ // two Access Polices will be identical if and only if their etags are
+ // identical. Clients should not expect this to be in any specific format.
+ string etag = 6;
+}
diff --git a/packages/google-identity-accesscontextmanager/protos/google/identity/accesscontextmanager/v1/gcp_user_access_binding.proto b/packages/google-identity-accesscontextmanager/protos/google/identity/accesscontextmanager/v1/gcp_user_access_binding.proto
new file mode 100644
index 00000000000..5dbded9cc49
--- /dev/null
+++ b/packages/google-identity-accesscontextmanager/protos/google/identity/accesscontextmanager/v1/gcp_user_access_binding.proto
@@ -0,0 +1,68 @@
+// Copyright 2022 Google LLC
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+syntax = "proto3";
+
+package google.identity.accesscontextmanager.v1;
+
+import "google/api/field_behavior.proto";
+import "google/api/resource.proto";
+
+option csharp_namespace = "Google.Identity.AccessContextManager.V1";
+option go_package = "google.golang.org/genproto/googleapis/identity/accesscontextmanager/v1;accesscontextmanager";
+option java_multiple_files = true;
+option java_outer_classname = "GcpUserAccessBindingProto";
+option java_package = "com.google.identity.accesscontextmanager.v1";
+option objc_class_prefix = "GACM";
+option php_namespace = "Google\\Identity\\AccessContextManager\\V1";
+option ruby_package = "Google::Identity::AccessContextManager::V1";
+
+// Restricts access to Cloud Console and Google Cloud APIs for a set of users
+// using Context-Aware Access.
+message GcpUserAccessBinding {
+ option (google.api.resource) = {
+ type: "accesscontextmanager.googleapis.com/GcpUserAccessBinding"
+ pattern: "organizations/{organization}/gcpUserAccessBindings/{gcp_user_access_binding}"
+ };
+
+ // Immutable. Assigned by the server during creation. The last segment has an arbitrary
+ // length and has only URI unreserved characters (as defined by
+ // [RFC 3986 Section 2.3](https://tools.ietf.org/html/rfc3986#section-2.3)).
+ // Should not be specified by the client during creation.
+ // Example: "organizations/256/gcpUserAccessBindings/b3-BhcX_Ud5N"
+ string name = 1 [(google.api.field_behavior) = IMMUTABLE];
+
+ // Required. Immutable. Google Group id whose members are subject to this binding's restrictions.
+ // See "id" in the [G Suite Directory API's Groups resource]
+ // (https://developers.google.com/admin-sdk/directory/v1/reference/groups#resource).
+ // If a group's email address/alias is changed, this resource will continue
+ // to point at the changed group. This field does not accept group email
+ // addresses or aliases.
+ // Example: "01d520gv4vjcrht"
+ string group_key = 2 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.field_behavior) = IMMUTABLE
+ ];
+
+ // Required. Access level that a user must have to be granted access. Only one access
+ // level is supported, not multiple. This repeated field must have exactly
+ // one element.
+ // Example: "accessPolicies/9522/accessLevels/device_trusted"
+ repeated string access_levels = 3 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "accesscontextmanager.googleapis.com/AccessLevel"
+ }
+ ];
+}
diff --git a/packages/google-identity-accesscontextmanager/protos/google/identity/accesscontextmanager/v1/service_perimeter.proto b/packages/google-identity-accesscontextmanager/protos/google/identity/accesscontextmanager/v1/service_perimeter.proto
new file mode 100644
index 00000000000..c0851cbe1d9
--- /dev/null
+++ b/packages/google-identity-accesscontextmanager/protos/google/identity/accesscontextmanager/v1/service_perimeter.proto
@@ -0,0 +1,472 @@
+// Copyright 2022 Google LLC
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+syntax = "proto3";
+
+package google.identity.accesscontextmanager.v1;
+
+import "google/api/resource.proto";
+import "google/protobuf/timestamp.proto";
+
+option csharp_namespace = "Google.Identity.AccessContextManager.V1";
+option go_package = "google.golang.org/genproto/googleapis/identity/accesscontextmanager/v1;accesscontextmanager";
+option java_multiple_files = true;
+option java_outer_classname = "ServicePerimeterProto";
+option java_package = "com.google.identity.accesscontextmanager.v1";
+option objc_class_prefix = "GACM";
+option php_namespace = "Google\\Identity\\AccessContextManager\\V1";
+option ruby_package = "Google::Identity::AccessContextManager::V1";
+
+// `ServicePerimeter` describes a set of Google Cloud resources which can freely
+// import and export data amongst themselves, but not export outside of the
+// `ServicePerimeter`. If a request with a source within this `ServicePerimeter`
+// has a target outside of the `ServicePerimeter`, the request will be blocked.
+// Otherwise the request is allowed. There are two types of Service Perimeter -
+// Regular and Bridge. Regular Service Perimeters cannot overlap, a single
+// Google Cloud project can only belong to a single regular Service Perimeter.
+// Service Perimeter Bridges can contain only Google Cloud projects as members,
+// a single Google Cloud project may belong to multiple Service Perimeter
+// Bridges.
+message ServicePerimeter {
+ option (google.api.resource) = {
+ type: "accesscontextmanager.googleapis.com/ServicePerimeter"
+ pattern: "accessPolicies/{access_policy}/servicePerimeters/{service_perimeter}"
+ };
+
+ // Specifies the type of the Perimeter. There are two types: regular and
+ // bridge. Regular Service Perimeter contains resources, access levels, and
+ // restricted services. Every resource can be in at most ONE
+ // regular Service Perimeter.
+ //
+ // In addition to being in a regular service perimeter, a resource can also
+ // be in zero or more perimeter bridges. A perimeter bridge only contains
+ // resources. Cross project operations are permitted if all effected
+ // resources share some perimeter (whether bridge or regular). Perimeter
+ // Bridge does not contain access levels or services: those are governed
+ // entirely by the regular perimeter that resource is in.
+ //
+ // Perimeter Bridges are typically useful when building more complex toplogies
+ // with many independent perimeters that need to share some data with a common
+ // perimeter, but should not be able to share data among themselves.
+ enum PerimeterType {
+ // Regular Perimeter.
+ PERIMETER_TYPE_REGULAR = 0;
+
+ // Perimeter Bridge.
+ PERIMETER_TYPE_BRIDGE = 1;
+ }
+
+ // Required. Resource name for the ServicePerimeter. The `short_name`
+ // component must begin with a letter and only include alphanumeric and '_'.
+ // Format:
+ // `accessPolicies/{access_policy}/servicePerimeters/{service_perimeter}`
+ string name = 1;
+
+ // Human readable title. Must be unique within the Policy.
+ string title = 2;
+
+ // Description of the `ServicePerimeter` and its use. Does not affect
+ // behavior.
+ string description = 3;
+
+ // Output only. Time the `ServicePerimeter` was created in UTC.
+ google.protobuf.Timestamp create_time = 4;
+
+ // Output only. Time the `ServicePerimeter` was updated in UTC.
+ google.protobuf.Timestamp update_time = 5;
+
+ // Perimeter type indicator. A single project is
+ // allowed to be a member of single regular perimeter, but multiple service
+ // perimeter bridges. A project cannot be a included in a perimeter bridge
+ // without being included in regular perimeter. For perimeter bridges,
+ // the restricted service list as well as access level lists must be
+ // empty.
+ PerimeterType perimeter_type = 6;
+
+ // Current ServicePerimeter configuration. Specifies sets of resources,
+ // restricted services and access levels that determine perimeter
+ // content and boundaries.
+ ServicePerimeterConfig status = 7;
+
+ // Proposed (or dry run) ServicePerimeter configuration. This configuration
+ // allows to specify and test ServicePerimeter configuration without enforcing
+ // actual access restrictions. Only allowed to be set when the
+ // "use_explicit_dry_run_spec" flag is set.
+ ServicePerimeterConfig spec = 8;
+
+ // Use explicit dry run spec flag. Ordinarily, a dry-run spec implicitly
+ // exists for all Service Perimeters, and that spec is identical to the
+ // status for those Service Perimeters. When this flag is set, it inhibits the
+ // generation of the implicit spec, thereby allowing the user to explicitly
+ // provide a configuration ("spec") to use in a dry-run version of the Service
+ // Perimeter. This allows the user to test changes to the enforced config
+ // ("status") without actually enforcing them. This testing is done through
+ // analyzing the differences between currently enforced and suggested
+ // restrictions. use_explicit_dry_run_spec must bet set to True if any of the
+ // fields in the spec are set to non-default values.
+ bool use_explicit_dry_run_spec = 9;
+}
+
+// `ServicePerimeterConfig` specifies a set of Google Cloud resources that
+// describe specific Service Perimeter configuration.
+message ServicePerimeterConfig {
+ // Specifies how APIs are allowed to communicate within the Service
+ // Perimeter.
+ message VpcAccessibleServices {
+ // Whether to restrict API calls within the Service Perimeter to the list of
+ // APIs specified in 'allowed_services'.
+ bool enable_restriction = 1;
+
+ // The list of APIs usable within the Service Perimeter. Must be empty
+ // unless 'enable_restriction' is True. You can specify a list of individual
+ // services, as well as include the 'RESTRICTED-SERVICES' value, which
+ // automatically includes all of the services protected by the perimeter.
+ repeated string allowed_services = 2;
+ }
+
+ // Specifies the types of identities that are allowed access in either
+ // [IngressFrom]
+ // [google.identity.accesscontextmanager.v1.ServicePerimeterConfig.IngressFrom]
+ // or [EgressFrom]
+ // [google.identity.accesscontextmanager.v1.ServicePerimeterConfig.EgressFrom]
+ // rules.
+ enum IdentityType {
+ // No blanket identity group specified.
+ IDENTITY_TYPE_UNSPECIFIED = 0;
+
+ // Authorize access from all identities outside the perimeter.
+ ANY_IDENTITY = 1;
+
+ // Authorize access from all human users outside the perimeter.
+ ANY_USER_ACCOUNT = 2;
+
+ // Authorize access from all service accounts outside the perimeter.
+ ANY_SERVICE_ACCOUNT = 3;
+ }
+
+ // An allowed method or permission of a service specified in [ApiOperation]
+ // [google.identity.accesscontextmanager.v1.ServicePerimeterConfig.ApiOperation].
+ message MethodSelector {
+ // The API method name or Cloud IAM permission name to allow.
+ oneof kind {
+ // Value for `method` should be a valid method name for the corresponding
+ // `service_name` in [ApiOperation]
+ // [google.identity.accesscontextmanager.v1.ServicePerimeterConfig.ApiOperation].
+ // If `*` used as value for `method`, then ALL methods and permissions are
+ // allowed.
+ string method = 1;
+
+ // Value for `permission` should be a valid Cloud IAM permission for the
+ // corresponding `service_name` in [ApiOperation]
+ // [google.identity.accesscontextmanager.v1.ServicePerimeterConfig.ApiOperation].
+ string permission = 2;
+ }
+ }
+
+ // Identification for an API Operation.
+ message ApiOperation {
+ // The name of the API whose methods or permissions the [IngressPolicy]
+ // [google.identity.accesscontextmanager.v1.ServicePerimeterConfig.IngressPolicy]
+ // or [EgressPolicy]
+ // [google.identity.accesscontextmanager.v1.ServicePerimeterConfig.EgressPolicy]
+ // want to allow. A single [ApiOperation]
+ // [google.identity.accesscontextmanager.v1.ServicePerimeterConfig.ApiOperation]
+ // with `service_name` field set to `*` will allow all methods AND
+ // permissions for all services.
+ string service_name = 1;
+
+ // API methods or permissions to allow. Method or permission must belong to
+ // the service specified by `service_name` field. A single [MethodSelector]
+ // [google.identity.accesscontextmanager.v1.ServicePerimeterConfig.MethodSelector]
+ // entry with `*` specified for the `method` field will allow all methods
+ // AND permissions for the service specified in `service_name`.
+ repeated MethodSelector method_selectors = 2;
+ }
+
+ // The source that [IngressPolicy]
+ // [google.identity.accesscontextmanager.v1.ServicePerimeterConfig.IngressPolicy]
+ // authorizes access from.
+ message IngressSource {
+ // Allowed ingress source. It can be one of [AccessLevel]
+ // [google.identity.accesscontextmanager.v1.AccessLevel] or Google
+ // Cloud resource.
+ oneof source {
+ // An [AccessLevel]
+ // [google.identity.accesscontextmanager.v1.AccessLevel] resource
+ // name that allow resources within the [ServicePerimeters]
+ // [google.identity.accesscontextmanager.v1.ServicePerimeter] to be
+ // accessed from the internet. [AccessLevels]
+ // [google.identity.accesscontextmanager.v1.AccessLevel] listed must
+ // be in the same policy as this [ServicePerimeter]
+ // [google.identity.accesscontextmanager.v1.ServicePerimeter].
+ // Referencing a nonexistent [AccessLevel]
+ // [google.identity.accesscontextmanager.v1.AccessLevel] will cause
+ // an error. If no [AccessLevel]
+ // [google.identity.accesscontextmanager.v1.AccessLevel] names are
+ // listed, resources within the perimeter can only be accessed via Google
+ // Cloud calls with request origins within the perimeter. Example:
+ // `accessPolicies/MY_POLICY/accessLevels/MY_LEVEL`. If a single `*` is
+ // specified for `access_level`, then all [IngressSources]
+ // [google.identity.accesscontextmanager.v1.ServicePerimeterConfig.IngressSource]
+ // will be allowed.
+ string access_level = 1;
+
+ // A Google Cloud resource that is allowed to ingress the perimeter.
+ // Requests from these resources will be allowed to access perimeter data.
+ // Currently only projects are allowed.
+ // Format: `projects/{project_number}`
+ // The project may be in any Google Cloud organization, not just the
+ // organization that the perimeter is defined in. `*` is not allowed, the
+ // case of allowing all Google Cloud resources only is not supported.
+ string resource = 2;
+ }
+ }
+
+ // Defines the conditions under which an [IngressPolicy]
+ // [google.identity.accesscontextmanager.v1.ServicePerimeterConfig.IngressPolicy]
+ // matches a request. Conditions are based on information about the source of
+ // the request. The request must satisfy what is defined in `sources` AND
+ // identity related fields in order to match.
+ message IngressFrom {
+ // Sources that this [IngressPolicy]
+ // [google.identity.accesscontextmanager.v1.ServicePerimeterConfig.IngressPolicy]
+ // authorizes access from.
+ repeated IngressSource sources = 1;
+
+ // A list of identities that are allowed access through this ingress
+ // policy. Should be in the format of email address. The email address
+ // should represent individual user or service account only.
+ repeated string identities = 2;
+
+ // Specifies the type of identities that are allowed access from outside the
+ // perimeter. If left unspecified, then members of `identities` field will
+ // be allowed access.
+ IdentityType identity_type = 3;
+ }
+
+ // Defines the conditions under which an [IngressPolicy]
+ // [google.identity.accesscontextmanager.v1.ServicePerimeterConfig.IngressPolicy]
+ // matches a request. Conditions are based on information about the
+ // [ApiOperation]
+ // [google.identity.accesscontextmanager.v1.ServicePerimeterConfig.ApiOperation]
+ // intended to be performed on the target resource of the request. The request
+ // must satisfy what is defined in `operations` AND `resources` in order to
+ // match.
+ message IngressTo {
+ // A list of [ApiOperations]
+ // [google.identity.accesscontextmanager.v1.ServicePerimeterConfig.ApiOperation]
+ // allowed to be performed by the sources specified in corresponding
+ // [IngressFrom]
+ // [google.identity.accesscontextmanager.v1.ServicePerimeterConfig.IngressFrom]
+ // in this [ServicePerimeter]
+ // [google.identity.accesscontextmanager.v1.ServicePerimeter].
+ repeated ApiOperation operations = 1;
+
+ // A list of resources, currently only projects in the form
+ // `projects/`, protected by this [ServicePerimeter]
+ // [google.identity.accesscontextmanager.v1.ServicePerimeter] that are
+ // allowed to be accessed by sources defined in the corresponding
+ // [IngressFrom]
+ // [google.identity.accesscontextmanager.v1.ServicePerimeterConfig.IngressFrom].
+ // If a single `*` is specified, then access to all resources inside the
+ // perimeter are allowed.
+ repeated string resources = 2;
+ }
+
+ // Policy for ingress into [ServicePerimeter]
+ // [google.identity.accesscontextmanager.v1.ServicePerimeter].
+ //
+ // [IngressPolicies]
+ // [google.identity.accesscontextmanager.v1.ServicePerimeterConfig.IngressPolicy]
+ // match requests based on `ingress_from` and `ingress_to` stanzas. For an
+ // ingress policy to match, both the `ingress_from` and `ingress_to` stanzas
+ // must be matched. If an [IngressPolicy]
+ // [google.identity.accesscontextmanager.v1.ServicePerimeterConfig.IngressPolicy]
+ // matches a request, the request is allowed through the perimeter boundary
+ // from outside the perimeter.
+ //
+ // For example, access from the internet can be allowed either
+ // based on an [AccessLevel]
+ // [google.identity.accesscontextmanager.v1.AccessLevel] or, for traffic
+ // hosted on Google Cloud, the project of the source network. For access from
+ // private networks, using the project of the hosting network is required.
+ //
+ // Individual ingress policies can be limited by restricting which
+ // services and/or actions they match using the `ingress_to` field.
+ message IngressPolicy {
+ // Defines the conditions on the source of a request causing this
+ // [IngressPolicy]
+ // [google.identity.accesscontextmanager.v1.ServicePerimeterConfig.IngressPolicy]
+ // to apply.
+ IngressFrom ingress_from = 1;
+
+ // Defines the conditions on the [ApiOperation]
+ // [google.identity.accesscontextmanager.v1.ServicePerimeterConfig.ApiOperation]
+ // and request destination that cause this [IngressPolicy]
+ // [google.identity.accesscontextmanager.v1.ServicePerimeterConfig.IngressPolicy]
+ // to apply.
+ IngressTo ingress_to = 2;
+ }
+
+ // Defines the conditions under which an [EgressPolicy]
+ // [google.identity.accesscontextmanager.v1.ServicePerimeterConfig.EgressPolicy]
+ // matches a request. Conditions based on information about the source of the
+ // request. Note that if the destination of the request is also protected by a
+ // [ServicePerimeter]
+ // [google.identity.accesscontextmanager.v1.ServicePerimeter], then that
+ // [ServicePerimeter]
+ // [google.identity.accesscontextmanager.v1.ServicePerimeter] must have
+ // an [IngressPolicy]
+ // [google.identity.accesscontextmanager.v1.ServicePerimeterConfig.IngressPolicy]
+ // which allows access in order for this request to succeed.
+ message EgressFrom {
+ // A list of identities that are allowed access through this [EgressPolicy].
+ // Should be in the format of email address. The email address should
+ // represent individual user or service account only.
+ repeated string identities = 1;
+
+ // Specifies the type of identities that are allowed access to outside the
+ // perimeter. If left unspecified, then members of `identities` field will
+ // be allowed access.
+ IdentityType identity_type = 2;
+ }
+
+ // Defines the conditions under which an [EgressPolicy]
+ // [google.identity.accesscontextmanager.v1.ServicePerimeterConfig.EgressPolicy]
+ // matches a request. Conditions are based on information about the
+ // [ApiOperation]
+ // [google.identity.accesscontextmanager.v1.ServicePerimeterConfig.ApiOperation]
+ // intended to be performed on the `resources` specified. Note that if the
+ // destination of the request is also protected by a [ServicePerimeter]
+ // [google.identity.accesscontextmanager.v1.ServicePerimeter], then that
+ // [ServicePerimeter]
+ // [google.identity.accesscontextmanager.v1.ServicePerimeter] must have
+ // an [IngressPolicy]
+ // [google.identity.accesscontextmanager.v1.ServicePerimeterConfig.IngressPolicy]
+ // which allows access in order for this request to succeed. The request must
+ // match `operations` AND `resources` fields in order to be allowed egress out
+ // of the perimeter.
+ message EgressTo {
+ // A list of resources, currently only projects in the form
+ // `projects/`, that are allowed to be accessed by sources
+ // defined in the corresponding [EgressFrom]
+ // [google.identity.accesscontextmanager.v1.ServicePerimeterConfig.EgressFrom].
+ // A request matches if it contains a resource in this list. If `*` is
+ // specified for `resources`, then this [EgressTo]
+ // [google.identity.accesscontextmanager.v1.ServicePerimeterConfig.EgressTo]
+ // rule will authorize access to all resources outside the perimeter.
+ repeated string resources = 1;
+
+ // A list of [ApiOperations]
+ // [google.identity.accesscontextmanager.v1.ServicePerimeterConfig.ApiOperation]
+ // allowed to be performed by the sources specified in the corresponding
+ // [EgressFrom]
+ // [google.identity.accesscontextmanager.v1.ServicePerimeterConfig.EgressFrom].
+ // A request matches if it uses an operation/service in this list.
+ repeated ApiOperation operations = 2;
+
+ // A list of external resources that are allowed to be accessed. Only AWS
+ // and Azure resources are supported. For Amazon S3, the supported format is
+ // s3://BUCKET_NAME. For Azure Storage, the supported format is
+ // azure://myaccount.blob.core.windows.net/CONTAINER_NAME. A request matches
+ // if it contains an external resource in this list (Example:
+ // s3://bucket/path). Currently '*' is not allowed.
+ repeated string external_resources = 3;
+ }
+
+ // Policy for egress from perimeter.
+ //
+ // [EgressPolicies]
+ // [google.identity.accesscontextmanager.v1.ServicePerimeterConfig.EgressPolicy]
+ // match requests based on `egress_from` and `egress_to` stanzas. For an
+ // [EgressPolicy]
+ // [google.identity.accesscontextmanager.v1.ServicePerimeterConfig.EgressPolicy]
+ // to match, both `egress_from` and `egress_to` stanzas must be matched. If an
+ // [EgressPolicy]
+ // [google.identity.accesscontextmanager.v1.ServicePerimeterConfig.EgressPolicy]
+ // matches a request, the request is allowed to span the [ServicePerimeter]
+ // [google.identity.accesscontextmanager.v1.ServicePerimeter] boundary.
+ // For example, an [EgressPolicy]
+ // [google.identity.accesscontextmanager.v1.ServicePerimeterConfig.EgressPolicy]
+ // can be used to allow VMs on networks within the [ServicePerimeter]
+ // [google.identity.accesscontextmanager.v1.ServicePerimeter] to access a
+ // defined set of projects outside the perimeter in certain contexts (e.g. to
+ // read data from a Cloud Storage bucket or query against a BigQuery dataset).
+ //
+ // [EgressPolicies]
+ // [google.identity.accesscontextmanager.v1.ServicePerimeterConfig.EgressPolicy]
+ // are concerned with the *resources* that a request relates as well as the
+ // API services and API actions being used. They do not related to the
+ // direction of data movement. More detailed documentation for this concept
+ // can be found in the descriptions of [EgressFrom]
+ // [google.identity.accesscontextmanager.v1.ServicePerimeterConfig.EgressFrom]
+ // and [EgressTo]
+ // [google.identity.accesscontextmanager.v1.ServicePerimeterConfig.EgressTo].
+ message EgressPolicy {
+ // Defines conditions on the source of a request causing this [EgressPolicy]
+ // [google.identity.accesscontextmanager.v1.ServicePerimeterConfig.EgressPolicy]
+ // to apply.
+ EgressFrom egress_from = 1;
+
+ // Defines the conditions on the [ApiOperation]
+ // [google.identity.accesscontextmanager.v1.ServicePerimeterConfig.ApiOperation]
+ // and destination resources that cause this [EgressPolicy]
+ // [google.identity.accesscontextmanager.v1.ServicePerimeterConfig.EgressPolicy]
+ // to apply.
+ EgressTo egress_to = 2;
+ }
+
+ // A list of Google Cloud resources that are inside of the service perimeter.
+ // Currently only projects are allowed. Format: `projects/{project_number}`
+ repeated string resources = 1;
+
+ // A list of `AccessLevel` resource names that allow resources within the
+ // `ServicePerimeter` to be accessed from the internet. `AccessLevels` listed
+ // must be in the same policy as this `ServicePerimeter`. Referencing a
+ // nonexistent `AccessLevel` is a syntax error. If no `AccessLevel` names are
+ // listed, resources within the perimeter can only be accessed via Google
+ // Cloud calls with request origins within the perimeter. Example:
+ // `"accessPolicies/MY_POLICY/accessLevels/MY_LEVEL"`.
+ // For Service Perimeter Bridge, must be empty.
+ repeated string access_levels = 2;
+
+ // Google Cloud services that are subject to the Service Perimeter
+ // restrictions. For example, if `storage.googleapis.com` is specified, access
+ // to the storage buckets inside the perimeter must meet the perimeter's
+ // access restrictions.
+ repeated string restricted_services = 4;
+
+ // Configuration for APIs allowed within Perimeter.
+ VpcAccessibleServices vpc_accessible_services = 10;
+
+ // List of [IngressPolicies]
+ // [google.identity.accesscontextmanager.v1.ServicePerimeterConfig.IngressPolicy]
+ // to apply to the perimeter. A perimeter may have multiple [IngressPolicies]
+ // [google.identity.accesscontextmanager.v1.ServicePerimeterConfig.IngressPolicy],
+ // each of which is evaluated separately. Access is granted if any [Ingress
+ // Policy]
+ // [google.identity.accesscontextmanager.v1.ServicePerimeterConfig.IngressPolicy]
+ // grants it. Must be empty for a perimeter bridge.
+ repeated IngressPolicy ingress_policies = 8;
+
+ // List of [EgressPolicies]
+ // [google.identity.accesscontextmanager.v1.ServicePerimeterConfig.EgressPolicy]
+ // to apply to the perimeter. A perimeter may have multiple [EgressPolicies]
+ // [google.identity.accesscontextmanager.v1.ServicePerimeterConfig.EgressPolicy],
+ // each of which is evaluated separately. Access is granted if any
+ // [EgressPolicy]
+ // [google.identity.accesscontextmanager.v1.ServicePerimeterConfig.EgressPolicy]
+ // grants it. Must be empty for a perimeter bridge.
+ repeated EgressPolicy egress_policies = 9;
+}
diff --git a/packages/google-identity-accesscontextmanager/protos/protos.d.ts b/packages/google-identity-accesscontextmanager/protos/protos.d.ts
new file mode 100644
index 00000000000..f0fdebc02a4
--- /dev/null
+++ b/packages/google-identity-accesscontextmanager/protos/protos.d.ts
@@ -0,0 +1,13157 @@
+// 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 identity. */
+ namespace identity {
+
+ /** Namespace accesscontextmanager. */
+ namespace accesscontextmanager {
+
+ /** Namespace type. */
+ namespace type {
+
+ /** DeviceEncryptionStatus enum. */
+ enum DeviceEncryptionStatus {
+ ENCRYPTION_UNSPECIFIED = 0,
+ ENCRYPTION_UNSUPPORTED = 1,
+ UNENCRYPTED = 2,
+ ENCRYPTED = 3
+ }
+
+ /** OsType enum. */
+ enum OsType {
+ OS_UNSPECIFIED = 0,
+ DESKTOP_MAC = 1,
+ DESKTOP_WINDOWS = 2,
+ DESKTOP_LINUX = 3,
+ DESKTOP_CHROME_OS = 6,
+ ANDROID = 4,
+ IOS = 5
+ }
+
+ /** DeviceManagementLevel enum. */
+ enum DeviceManagementLevel {
+ MANAGEMENT_UNSPECIFIED = 0,
+ NONE = 1,
+ BASIC = 2,
+ COMPLETE = 3
+ }
+ }
+
+ /** Namespace v1. */
+ namespace v1 {
+
+ /** Represents an AccessContextManager */
+ class AccessContextManager extends $protobuf.rpc.Service {
+
+ /**
+ * Constructs a new AccessContextManager 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 AccessContextManager 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): AccessContextManager;
+
+ /**
+ * Calls ListAccessPolicies.
+ * @param request ListAccessPoliciesRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and ListAccessPoliciesResponse
+ */
+ public listAccessPolicies(request: google.identity.accesscontextmanager.v1.IListAccessPoliciesRequest, callback: google.identity.accesscontextmanager.v1.AccessContextManager.ListAccessPoliciesCallback): void;
+
+ /**
+ * Calls ListAccessPolicies.
+ * @param request ListAccessPoliciesRequest message or plain object
+ * @returns Promise
+ */
+ public listAccessPolicies(request: google.identity.accesscontextmanager.v1.IListAccessPoliciesRequest): Promise;
+
+ /**
+ * Calls GetAccessPolicy.
+ * @param request GetAccessPolicyRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and AccessPolicy
+ */
+ public getAccessPolicy(request: google.identity.accesscontextmanager.v1.IGetAccessPolicyRequest, callback: google.identity.accesscontextmanager.v1.AccessContextManager.GetAccessPolicyCallback): void;
+
+ /**
+ * Calls GetAccessPolicy.
+ * @param request GetAccessPolicyRequest message or plain object
+ * @returns Promise
+ */
+ public getAccessPolicy(request: google.identity.accesscontextmanager.v1.IGetAccessPolicyRequest): Promise;
+
+ /**
+ * Calls CreateAccessPolicy.
+ * @param request AccessPolicy message or plain object
+ * @param callback Node-style callback called with the error, if any, and Operation
+ */
+ public createAccessPolicy(request: google.identity.accesscontextmanager.v1.IAccessPolicy, callback: google.identity.accesscontextmanager.v1.AccessContextManager.CreateAccessPolicyCallback): void;
+
+ /**
+ * Calls CreateAccessPolicy.
+ * @param request AccessPolicy message or plain object
+ * @returns Promise
+ */
+ public createAccessPolicy(request: google.identity.accesscontextmanager.v1.IAccessPolicy): Promise;
+
+ /**
+ * Calls UpdateAccessPolicy.
+ * @param request UpdateAccessPolicyRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Operation
+ */
+ public updateAccessPolicy(request: google.identity.accesscontextmanager.v1.IUpdateAccessPolicyRequest, callback: google.identity.accesscontextmanager.v1.AccessContextManager.UpdateAccessPolicyCallback): void;
+
+ /**
+ * Calls UpdateAccessPolicy.
+ * @param request UpdateAccessPolicyRequest message or plain object
+ * @returns Promise
+ */
+ public updateAccessPolicy(request: google.identity.accesscontextmanager.v1.IUpdateAccessPolicyRequest): Promise;
+
+ /**
+ * Calls DeleteAccessPolicy.
+ * @param request DeleteAccessPolicyRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Operation
+ */
+ public deleteAccessPolicy(request: google.identity.accesscontextmanager.v1.IDeleteAccessPolicyRequest, callback: google.identity.accesscontextmanager.v1.AccessContextManager.DeleteAccessPolicyCallback): void;
+
+ /**
+ * Calls DeleteAccessPolicy.
+ * @param request DeleteAccessPolicyRequest message or plain object
+ * @returns Promise
+ */
+ public deleteAccessPolicy(request: google.identity.accesscontextmanager.v1.IDeleteAccessPolicyRequest): Promise;
+
+ /**
+ * Calls ListAccessLevels.
+ * @param request ListAccessLevelsRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and ListAccessLevelsResponse
+ */
+ public listAccessLevels(request: google.identity.accesscontextmanager.v1.IListAccessLevelsRequest, callback: google.identity.accesscontextmanager.v1.AccessContextManager.ListAccessLevelsCallback): void;
+
+ /**
+ * Calls ListAccessLevels.
+ * @param request ListAccessLevelsRequest message or plain object
+ * @returns Promise
+ */
+ public listAccessLevels(request: google.identity.accesscontextmanager.v1.IListAccessLevelsRequest): Promise;
+
+ /**
+ * Calls GetAccessLevel.
+ * @param request GetAccessLevelRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and AccessLevel
+ */
+ public getAccessLevel(request: google.identity.accesscontextmanager.v1.IGetAccessLevelRequest, callback: google.identity.accesscontextmanager.v1.AccessContextManager.GetAccessLevelCallback): void;
+
+ /**
+ * Calls GetAccessLevel.
+ * @param request GetAccessLevelRequest message or plain object
+ * @returns Promise
+ */
+ public getAccessLevel(request: google.identity.accesscontextmanager.v1.IGetAccessLevelRequest): Promise;
+
+ /**
+ * Calls CreateAccessLevel.
+ * @param request CreateAccessLevelRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Operation
+ */
+ public createAccessLevel(request: google.identity.accesscontextmanager.v1.ICreateAccessLevelRequest, callback: google.identity.accesscontextmanager.v1.AccessContextManager.CreateAccessLevelCallback): void;
+
+ /**
+ * Calls CreateAccessLevel.
+ * @param request CreateAccessLevelRequest message or plain object
+ * @returns Promise
+ */
+ public createAccessLevel(request: google.identity.accesscontextmanager.v1.ICreateAccessLevelRequest): Promise;
+
+ /**
+ * Calls UpdateAccessLevel.
+ * @param request UpdateAccessLevelRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Operation
+ */
+ public updateAccessLevel(request: google.identity.accesscontextmanager.v1.IUpdateAccessLevelRequest, callback: google.identity.accesscontextmanager.v1.AccessContextManager.UpdateAccessLevelCallback): void;
+
+ /**
+ * Calls UpdateAccessLevel.
+ * @param request UpdateAccessLevelRequest message or plain object
+ * @returns Promise
+ */
+ public updateAccessLevel(request: google.identity.accesscontextmanager.v1.IUpdateAccessLevelRequest): Promise;
+
+ /**
+ * Calls DeleteAccessLevel.
+ * @param request DeleteAccessLevelRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Operation
+ */
+ public deleteAccessLevel(request: google.identity.accesscontextmanager.v1.IDeleteAccessLevelRequest, callback: google.identity.accesscontextmanager.v1.AccessContextManager.DeleteAccessLevelCallback): void;
+
+ /**
+ * Calls DeleteAccessLevel.
+ * @param request DeleteAccessLevelRequest message or plain object
+ * @returns Promise
+ */
+ public deleteAccessLevel(request: google.identity.accesscontextmanager.v1.IDeleteAccessLevelRequest): Promise;
+
+ /**
+ * Calls ReplaceAccessLevels.
+ * @param request ReplaceAccessLevelsRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Operation
+ */
+ public replaceAccessLevels(request: google.identity.accesscontextmanager.v1.IReplaceAccessLevelsRequest, callback: google.identity.accesscontextmanager.v1.AccessContextManager.ReplaceAccessLevelsCallback): void;
+
+ /**
+ * Calls ReplaceAccessLevels.
+ * @param request ReplaceAccessLevelsRequest message or plain object
+ * @returns Promise
+ */
+ public replaceAccessLevels(request: google.identity.accesscontextmanager.v1.IReplaceAccessLevelsRequest): Promise;
+
+ /**
+ * Calls ListServicePerimeters.
+ * @param request ListServicePerimetersRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and ListServicePerimetersResponse
+ */
+ public listServicePerimeters(request: google.identity.accesscontextmanager.v1.IListServicePerimetersRequest, callback: google.identity.accesscontextmanager.v1.AccessContextManager.ListServicePerimetersCallback): void;
+
+ /**
+ * Calls ListServicePerimeters.
+ * @param request ListServicePerimetersRequest message or plain object
+ * @returns Promise
+ */
+ public listServicePerimeters(request: google.identity.accesscontextmanager.v1.IListServicePerimetersRequest): Promise;
+
+ /**
+ * Calls GetServicePerimeter.
+ * @param request GetServicePerimeterRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and ServicePerimeter
+ */
+ public getServicePerimeter(request: google.identity.accesscontextmanager.v1.IGetServicePerimeterRequest, callback: google.identity.accesscontextmanager.v1.AccessContextManager.GetServicePerimeterCallback): void;
+
+ /**
+ * Calls GetServicePerimeter.
+ * @param request GetServicePerimeterRequest message or plain object
+ * @returns Promise
+ */
+ public getServicePerimeter(request: google.identity.accesscontextmanager.v1.IGetServicePerimeterRequest): Promise;
+
+ /**
+ * Calls CreateServicePerimeter.
+ * @param request CreateServicePerimeterRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Operation
+ */
+ public createServicePerimeter(request: google.identity.accesscontextmanager.v1.ICreateServicePerimeterRequest, callback: google.identity.accesscontextmanager.v1.AccessContextManager.CreateServicePerimeterCallback): void;
+
+ /**
+ * Calls CreateServicePerimeter.
+ * @param request CreateServicePerimeterRequest message or plain object
+ * @returns Promise
+ */
+ public createServicePerimeter(request: google.identity.accesscontextmanager.v1.ICreateServicePerimeterRequest): Promise;
+
+ /**
+ * Calls UpdateServicePerimeter.
+ * @param request UpdateServicePerimeterRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Operation
+ */
+ public updateServicePerimeter(request: google.identity.accesscontextmanager.v1.IUpdateServicePerimeterRequest, callback: google.identity.accesscontextmanager.v1.AccessContextManager.UpdateServicePerimeterCallback): void;
+
+ /**
+ * Calls UpdateServicePerimeter.
+ * @param request UpdateServicePerimeterRequest message or plain object
+ * @returns Promise
+ */
+ public updateServicePerimeter(request: google.identity.accesscontextmanager.v1.IUpdateServicePerimeterRequest): Promise;
+
+ /**
+ * Calls DeleteServicePerimeter.
+ * @param request DeleteServicePerimeterRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Operation
+ */
+ public deleteServicePerimeter(request: google.identity.accesscontextmanager.v1.IDeleteServicePerimeterRequest, callback: google.identity.accesscontextmanager.v1.AccessContextManager.DeleteServicePerimeterCallback): void;
+
+ /**
+ * Calls DeleteServicePerimeter.
+ * @param request DeleteServicePerimeterRequest message or plain object
+ * @returns Promise
+ */
+ public deleteServicePerimeter(request: google.identity.accesscontextmanager.v1.IDeleteServicePerimeterRequest): Promise;
+
+ /**
+ * Calls ReplaceServicePerimeters.
+ * @param request ReplaceServicePerimetersRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Operation
+ */
+ public replaceServicePerimeters(request: google.identity.accesscontextmanager.v1.IReplaceServicePerimetersRequest, callback: google.identity.accesscontextmanager.v1.AccessContextManager.ReplaceServicePerimetersCallback): void;
+
+ /**
+ * Calls ReplaceServicePerimeters.
+ * @param request ReplaceServicePerimetersRequest message or plain object
+ * @returns Promise
+ */
+ public replaceServicePerimeters(request: google.identity.accesscontextmanager.v1.IReplaceServicePerimetersRequest): Promise;
+
+ /**
+ * Calls CommitServicePerimeters.
+ * @param request CommitServicePerimetersRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Operation
+ */
+ public commitServicePerimeters(request: google.identity.accesscontextmanager.v1.ICommitServicePerimetersRequest, callback: google.identity.accesscontextmanager.v1.AccessContextManager.CommitServicePerimetersCallback): void;
+
+ /**
+ * Calls CommitServicePerimeters.
+ * @param request CommitServicePerimetersRequest message or plain object
+ * @returns Promise
+ */
+ public commitServicePerimeters(request: google.identity.accesscontextmanager.v1.ICommitServicePerimetersRequest): Promise;
+
+ /**
+ * Calls ListGcpUserAccessBindings.
+ * @param request ListGcpUserAccessBindingsRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and ListGcpUserAccessBindingsResponse
+ */
+ public listGcpUserAccessBindings(request: google.identity.accesscontextmanager.v1.IListGcpUserAccessBindingsRequest, callback: google.identity.accesscontextmanager.v1.AccessContextManager.ListGcpUserAccessBindingsCallback): void;
+
+ /**
+ * Calls ListGcpUserAccessBindings.
+ * @param request ListGcpUserAccessBindingsRequest message or plain object
+ * @returns Promise
+ */
+ public listGcpUserAccessBindings(request: google.identity.accesscontextmanager.v1.IListGcpUserAccessBindingsRequest): Promise;
+
+ /**
+ * Calls GetGcpUserAccessBinding.
+ * @param request GetGcpUserAccessBindingRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and GcpUserAccessBinding
+ */
+ public getGcpUserAccessBinding(request: google.identity.accesscontextmanager.v1.IGetGcpUserAccessBindingRequest, callback: google.identity.accesscontextmanager.v1.AccessContextManager.GetGcpUserAccessBindingCallback): void;
+
+ /**
+ * Calls GetGcpUserAccessBinding.
+ * @param request GetGcpUserAccessBindingRequest message or plain object
+ * @returns Promise
+ */
+ public getGcpUserAccessBinding(request: google.identity.accesscontextmanager.v1.IGetGcpUserAccessBindingRequest): Promise;
+
+ /**
+ * Calls CreateGcpUserAccessBinding.
+ * @param request CreateGcpUserAccessBindingRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Operation
+ */
+ public createGcpUserAccessBinding(request: google.identity.accesscontextmanager.v1.ICreateGcpUserAccessBindingRequest, callback: google.identity.accesscontextmanager.v1.AccessContextManager.CreateGcpUserAccessBindingCallback): void;
+
+ /**
+ * Calls CreateGcpUserAccessBinding.
+ * @param request CreateGcpUserAccessBindingRequest message or plain object
+ * @returns Promise
+ */
+ public createGcpUserAccessBinding(request: google.identity.accesscontextmanager.v1.ICreateGcpUserAccessBindingRequest): Promise;
+
+ /**
+ * Calls UpdateGcpUserAccessBinding.
+ * @param request UpdateGcpUserAccessBindingRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Operation
+ */
+ public updateGcpUserAccessBinding(request: google.identity.accesscontextmanager.v1.IUpdateGcpUserAccessBindingRequest, callback: google.identity.accesscontextmanager.v1.AccessContextManager.UpdateGcpUserAccessBindingCallback): void;
+
+ /**
+ * Calls UpdateGcpUserAccessBinding.
+ * @param request UpdateGcpUserAccessBindingRequest message or plain object
+ * @returns Promise
+ */
+ public updateGcpUserAccessBinding(request: google.identity.accesscontextmanager.v1.IUpdateGcpUserAccessBindingRequest): Promise;
+
+ /**
+ * Calls DeleteGcpUserAccessBinding.
+ * @param request DeleteGcpUserAccessBindingRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Operation
+ */
+ public deleteGcpUserAccessBinding(request: google.identity.accesscontextmanager.v1.IDeleteGcpUserAccessBindingRequest, callback: google.identity.accesscontextmanager.v1.AccessContextManager.DeleteGcpUserAccessBindingCallback): void;
+
+ /**
+ * Calls DeleteGcpUserAccessBinding.
+ * @param request DeleteGcpUserAccessBindingRequest message or plain object
+ * @returns Promise
+ */
+ public deleteGcpUserAccessBinding(request: google.identity.accesscontextmanager.v1.IDeleteGcpUserAccessBindingRequest): Promise;
+
+ /**
+ * Calls SetIamPolicy.
+ * @param request SetIamPolicyRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Policy
+ */
+ public setIamPolicy(request: google.iam.v1.ISetIamPolicyRequest, callback: google.identity.accesscontextmanager.v1.AccessContextManager.SetIamPolicyCallback): void;
+
+ /**
+ * Calls SetIamPolicy.
+ * @param request SetIamPolicyRequest message or plain object
+ * @returns Promise
+ */
+ public setIamPolicy(request: google.iam.v1.ISetIamPolicyRequest): Promise;
+
+ /**
+ * Calls GetIamPolicy.
+ * @param request GetIamPolicyRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Policy
+ */
+ public getIamPolicy(request: google.iam.v1.IGetIamPolicyRequest, callback: google.identity.accesscontextmanager.v1.AccessContextManager.GetIamPolicyCallback): void;
+
+ /**
+ * Calls GetIamPolicy.
+ * @param request GetIamPolicyRequest message or plain object
+ * @returns Promise
+ */
+ public getIamPolicy(request: google.iam.v1.IGetIamPolicyRequest): Promise;
+
+ /**
+ * Calls TestIamPermissions.
+ * @param request TestIamPermissionsRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and TestIamPermissionsResponse
+ */
+ public testIamPermissions(request: google.iam.v1.ITestIamPermissionsRequest, callback: google.identity.accesscontextmanager.v1.AccessContextManager.TestIamPermissionsCallback): void;
+
+ /**
+ * Calls TestIamPermissions.
+ * @param request TestIamPermissionsRequest message or plain object
+ * @returns Promise
+ */
+ public testIamPermissions(request: google.iam.v1.ITestIamPermissionsRequest): Promise;
+ }
+
+ namespace AccessContextManager {
+
+ /**
+ * Callback as used by {@link google.identity.accesscontextmanager.v1.AccessContextManager|listAccessPolicies}.
+ * @param error Error, if any
+ * @param [response] ListAccessPoliciesResponse
+ */
+ type ListAccessPoliciesCallback = (error: (Error|null), response?: google.identity.accesscontextmanager.v1.ListAccessPoliciesResponse) => void;
+
+ /**
+ * Callback as used by {@link google.identity.accesscontextmanager.v1.AccessContextManager|getAccessPolicy}.
+ * @param error Error, if any
+ * @param [response] AccessPolicy
+ */
+ type GetAccessPolicyCallback = (error: (Error|null), response?: google.identity.accesscontextmanager.v1.AccessPolicy) => void;
+
+ /**
+ * Callback as used by {@link google.identity.accesscontextmanager.v1.AccessContextManager|createAccessPolicy}.
+ * @param error Error, if any
+ * @param [response] Operation
+ */
+ type CreateAccessPolicyCallback = (error: (Error|null), response?: google.longrunning.Operation) => void;
+
+ /**
+ * Callback as used by {@link google.identity.accesscontextmanager.v1.AccessContextManager|updateAccessPolicy}.
+ * @param error Error, if any
+ * @param [response] Operation
+ */
+ type UpdateAccessPolicyCallback = (error: (Error|null), response?: google.longrunning.Operation) => void;
+
+ /**
+ * Callback as used by {@link google.identity.accesscontextmanager.v1.AccessContextManager|deleteAccessPolicy}.
+ * @param error Error, if any
+ * @param [response] Operation
+ */
+ type DeleteAccessPolicyCallback = (error: (Error|null), response?: google.longrunning.Operation) => void;
+
+ /**
+ * Callback as used by {@link google.identity.accesscontextmanager.v1.AccessContextManager|listAccessLevels}.
+ * @param error Error, if any
+ * @param [response] ListAccessLevelsResponse
+ */
+ type ListAccessLevelsCallback = (error: (Error|null), response?: google.identity.accesscontextmanager.v1.ListAccessLevelsResponse) => void;
+
+ /**
+ * Callback as used by {@link google.identity.accesscontextmanager.v1.AccessContextManager|getAccessLevel}.
+ * @param error Error, if any
+ * @param [response] AccessLevel
+ */
+ type GetAccessLevelCallback = (error: (Error|null), response?: google.identity.accesscontextmanager.v1.AccessLevel) => void;
+
+ /**
+ * Callback as used by {@link google.identity.accesscontextmanager.v1.AccessContextManager|createAccessLevel}.
+ * @param error Error, if any
+ * @param [response] Operation
+ */
+ type CreateAccessLevelCallback = (error: (Error|null), response?: google.longrunning.Operation) => void;
+
+ /**
+ * Callback as used by {@link google.identity.accesscontextmanager.v1.AccessContextManager|updateAccessLevel}.
+ * @param error Error, if any
+ * @param [response] Operation
+ */
+ type UpdateAccessLevelCallback = (error: (Error|null), response?: google.longrunning.Operation) => void;
+
+ /**
+ * Callback as used by {@link google.identity.accesscontextmanager.v1.AccessContextManager|deleteAccessLevel}.
+ * @param error Error, if any
+ * @param [response] Operation
+ */
+ type DeleteAccessLevelCallback = (error: (Error|null), response?: google.longrunning.Operation) => void;
+
+ /**
+ * Callback as used by {@link google.identity.accesscontextmanager.v1.AccessContextManager|replaceAccessLevels}.
+ * @param error Error, if any
+ * @param [response] Operation
+ */
+ type ReplaceAccessLevelsCallback = (error: (Error|null), response?: google.longrunning.Operation) => void;
+
+ /**
+ * Callback as used by {@link google.identity.accesscontextmanager.v1.AccessContextManager|listServicePerimeters}.
+ * @param error Error, if any
+ * @param [response] ListServicePerimetersResponse
+ */
+ type ListServicePerimetersCallback = (error: (Error|null), response?: google.identity.accesscontextmanager.v1.ListServicePerimetersResponse) => void;
+
+ /**
+ * Callback as used by {@link google.identity.accesscontextmanager.v1.AccessContextManager|getServicePerimeter}.
+ * @param error Error, if any
+ * @param [response] ServicePerimeter
+ */
+ type GetServicePerimeterCallback = (error: (Error|null), response?: google.identity.accesscontextmanager.v1.ServicePerimeter) => void;
+
+ /**
+ * Callback as used by {@link google.identity.accesscontextmanager.v1.AccessContextManager|createServicePerimeter}.
+ * @param error Error, if any
+ * @param [response] Operation
+ */
+ type CreateServicePerimeterCallback = (error: (Error|null), response?: google.longrunning.Operation) => void;
+
+ /**
+ * Callback as used by {@link google.identity.accesscontextmanager.v1.AccessContextManager|updateServicePerimeter}.
+ * @param error Error, if any
+ * @param [response] Operation
+ */
+ type UpdateServicePerimeterCallback = (error: (Error|null), response?: google.longrunning.Operation) => void;
+
+ /**
+ * Callback as used by {@link google.identity.accesscontextmanager.v1.AccessContextManager|deleteServicePerimeter}.
+ * @param error Error, if any
+ * @param [response] Operation
+ */
+ type DeleteServicePerimeterCallback = (error: (Error|null), response?: google.longrunning.Operation) => void;
+
+ /**
+ * Callback as used by {@link google.identity.accesscontextmanager.v1.AccessContextManager|replaceServicePerimeters}.
+ * @param error Error, if any
+ * @param [response] Operation
+ */
+ type ReplaceServicePerimetersCallback = (error: (Error|null), response?: google.longrunning.Operation) => void;
+
+ /**
+ * Callback as used by {@link google.identity.accesscontextmanager.v1.AccessContextManager|commitServicePerimeters}.
+ * @param error Error, if any
+ * @param [response] Operation
+ */
+ type CommitServicePerimetersCallback = (error: (Error|null), response?: google.longrunning.Operation) => void;
+
+ /**
+ * Callback as used by {@link google.identity.accesscontextmanager.v1.AccessContextManager|listGcpUserAccessBindings}.
+ * @param error Error, if any
+ * @param [response] ListGcpUserAccessBindingsResponse
+ */
+ type ListGcpUserAccessBindingsCallback = (error: (Error|null), response?: google.identity.accesscontextmanager.v1.ListGcpUserAccessBindingsResponse) => void;
+
+ /**
+ * Callback as used by {@link google.identity.accesscontextmanager.v1.AccessContextManager|getGcpUserAccessBinding}.
+ * @param error Error, if any
+ * @param [response] GcpUserAccessBinding
+ */
+ type GetGcpUserAccessBindingCallback = (error: (Error|null), response?: google.identity.accesscontextmanager.v1.GcpUserAccessBinding) => void;
+
+ /**
+ * Callback as used by {@link google.identity.accesscontextmanager.v1.AccessContextManager|createGcpUserAccessBinding}.
+ * @param error Error, if any
+ * @param [response] Operation
+ */
+ type CreateGcpUserAccessBindingCallback = (error: (Error|null), response?: google.longrunning.Operation) => void;
+
+ /**
+ * Callback as used by {@link google.identity.accesscontextmanager.v1.AccessContextManager|updateGcpUserAccessBinding}.
+ * @param error Error, if any
+ * @param [response] Operation
+ */
+ type UpdateGcpUserAccessBindingCallback = (error: (Error|null), response?: google.longrunning.Operation) => void;
+
+ /**
+ * Callback as used by {@link google.identity.accesscontextmanager.v1.AccessContextManager|deleteGcpUserAccessBinding}.
+ * @param error Error, if any
+ * @param [response] Operation
+ */
+ type DeleteGcpUserAccessBindingCallback = (error: (Error|null), response?: google.longrunning.Operation) => void;
+
+ /**
+ * Callback as used by {@link google.identity.accesscontextmanager.v1.AccessContextManager|setIamPolicy}.
+ * @param error Error, if any
+ * @param [response] Policy
+ */
+ type SetIamPolicyCallback = (error: (Error|null), response?: google.iam.v1.Policy) => void;
+
+ /**
+ * Callback as used by {@link google.identity.accesscontextmanager.v1.AccessContextManager|getIamPolicy}.
+ * @param error Error, if any
+ * @param [response] Policy
+ */
+ type GetIamPolicyCallback = (error: (Error|null), response?: google.iam.v1.Policy) => void;
+
+ /**
+ * Callback as used by {@link google.identity.accesscontextmanager.v1.AccessContextManager|testIamPermissions}.
+ * @param error Error, if any
+ * @param [response] TestIamPermissionsResponse
+ */
+ type TestIamPermissionsCallback = (error: (Error|null), response?: google.iam.v1.TestIamPermissionsResponse) => void;
+ }
+
+ /** Properties of a ListAccessPoliciesRequest. */
+ interface IListAccessPoliciesRequest {
+
+ /** ListAccessPoliciesRequest parent */
+ parent?: (string|null);
+
+ /** ListAccessPoliciesRequest pageSize */
+ pageSize?: (number|null);
+
+ /** ListAccessPoliciesRequest pageToken */
+ pageToken?: (string|null);
+ }
+
+ /** Represents a ListAccessPoliciesRequest. */
+ class ListAccessPoliciesRequest implements IListAccessPoliciesRequest {
+
+ /**
+ * Constructs a new ListAccessPoliciesRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.identity.accesscontextmanager.v1.IListAccessPoliciesRequest);
+
+ /** ListAccessPoliciesRequest parent. */
+ public parent: string;
+
+ /** ListAccessPoliciesRequest pageSize. */
+ public pageSize: number;
+
+ /** ListAccessPoliciesRequest pageToken. */
+ public pageToken: string;
+
+ /**
+ * Creates a new ListAccessPoliciesRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ListAccessPoliciesRequest instance
+ */
+ public static create(properties?: google.identity.accesscontextmanager.v1.IListAccessPoliciesRequest): google.identity.accesscontextmanager.v1.ListAccessPoliciesRequest;
+
+ /**
+ * Encodes the specified ListAccessPoliciesRequest message. Does not implicitly {@link google.identity.accesscontextmanager.v1.ListAccessPoliciesRequest.verify|verify} messages.
+ * @param message ListAccessPoliciesRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.identity.accesscontextmanager.v1.IListAccessPoliciesRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ListAccessPoliciesRequest message, length delimited. Does not implicitly {@link google.identity.accesscontextmanager.v1.ListAccessPoliciesRequest.verify|verify} messages.
+ * @param message ListAccessPoliciesRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.identity.accesscontextmanager.v1.IListAccessPoliciesRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ListAccessPoliciesRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ListAccessPoliciesRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.identity.accesscontextmanager.v1.ListAccessPoliciesRequest;
+
+ /**
+ * Decodes a ListAccessPoliciesRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ListAccessPoliciesRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.identity.accesscontextmanager.v1.ListAccessPoliciesRequest;
+
+ /**
+ * Verifies a ListAccessPoliciesRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ListAccessPoliciesRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ListAccessPoliciesRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.identity.accesscontextmanager.v1.ListAccessPoliciesRequest;
+
+ /**
+ * Creates a plain object from a ListAccessPoliciesRequest message. Also converts values to other types if specified.
+ * @param message ListAccessPoliciesRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.identity.accesscontextmanager.v1.ListAccessPoliciesRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ListAccessPoliciesRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ListAccessPoliciesRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ListAccessPoliciesResponse. */
+ interface IListAccessPoliciesResponse {
+
+ /** ListAccessPoliciesResponse accessPolicies */
+ accessPolicies?: (google.identity.accesscontextmanager.v1.IAccessPolicy[]|null);
+
+ /** ListAccessPoliciesResponse nextPageToken */
+ nextPageToken?: (string|null);
+ }
+
+ /** Represents a ListAccessPoliciesResponse. */
+ class ListAccessPoliciesResponse implements IListAccessPoliciesResponse {
+
+ /**
+ * Constructs a new ListAccessPoliciesResponse.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.identity.accesscontextmanager.v1.IListAccessPoliciesResponse);
+
+ /** ListAccessPoliciesResponse accessPolicies. */
+ public accessPolicies: google.identity.accesscontextmanager.v1.IAccessPolicy[];
+
+ /** ListAccessPoliciesResponse nextPageToken. */
+ public nextPageToken: string;
+
+ /**
+ * Creates a new ListAccessPoliciesResponse instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ListAccessPoliciesResponse instance
+ */
+ public static create(properties?: google.identity.accesscontextmanager.v1.IListAccessPoliciesResponse): google.identity.accesscontextmanager.v1.ListAccessPoliciesResponse;
+
+ /**
+ * Encodes the specified ListAccessPoliciesResponse message. Does not implicitly {@link google.identity.accesscontextmanager.v1.ListAccessPoliciesResponse.verify|verify} messages.
+ * @param message ListAccessPoliciesResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.identity.accesscontextmanager.v1.IListAccessPoliciesResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ListAccessPoliciesResponse message, length delimited. Does not implicitly {@link google.identity.accesscontextmanager.v1.ListAccessPoliciesResponse.verify|verify} messages.
+ * @param message ListAccessPoliciesResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.identity.accesscontextmanager.v1.IListAccessPoliciesResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ListAccessPoliciesResponse message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ListAccessPoliciesResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.identity.accesscontextmanager.v1.ListAccessPoliciesResponse;
+
+ /**
+ * Decodes a ListAccessPoliciesResponse message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ListAccessPoliciesResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.identity.accesscontextmanager.v1.ListAccessPoliciesResponse;
+
+ /**
+ * Verifies a ListAccessPoliciesResponse message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ListAccessPoliciesResponse message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ListAccessPoliciesResponse
+ */
+ public static fromObject(object: { [k: string]: any }): google.identity.accesscontextmanager.v1.ListAccessPoliciesResponse;
+
+ /**
+ * Creates a plain object from a ListAccessPoliciesResponse message. Also converts values to other types if specified.
+ * @param message ListAccessPoliciesResponse
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.identity.accesscontextmanager.v1.ListAccessPoliciesResponse, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ListAccessPoliciesResponse to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ListAccessPoliciesResponse
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a GetAccessPolicyRequest. */
+ interface IGetAccessPolicyRequest {
+
+ /** GetAccessPolicyRequest name */
+ name?: (string|null);
+ }
+
+ /** Represents a GetAccessPolicyRequest. */
+ class GetAccessPolicyRequest implements IGetAccessPolicyRequest {
+
+ /**
+ * Constructs a new GetAccessPolicyRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.identity.accesscontextmanager.v1.IGetAccessPolicyRequest);
+
+ /** GetAccessPolicyRequest name. */
+ public name: string;
+
+ /**
+ * Creates a new GetAccessPolicyRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns GetAccessPolicyRequest instance
+ */
+ public static create(properties?: google.identity.accesscontextmanager.v1.IGetAccessPolicyRequest): google.identity.accesscontextmanager.v1.GetAccessPolicyRequest;
+
+ /**
+ * Encodes the specified GetAccessPolicyRequest message. Does not implicitly {@link google.identity.accesscontextmanager.v1.GetAccessPolicyRequest.verify|verify} messages.
+ * @param message GetAccessPolicyRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.identity.accesscontextmanager.v1.IGetAccessPolicyRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified GetAccessPolicyRequest message, length delimited. Does not implicitly {@link google.identity.accesscontextmanager.v1.GetAccessPolicyRequest.verify|verify} messages.
+ * @param message GetAccessPolicyRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.identity.accesscontextmanager.v1.IGetAccessPolicyRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a GetAccessPolicyRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns GetAccessPolicyRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.identity.accesscontextmanager.v1.GetAccessPolicyRequest;
+
+ /**
+ * Decodes a GetAccessPolicyRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns GetAccessPolicyRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.identity.accesscontextmanager.v1.GetAccessPolicyRequest;
+
+ /**
+ * Verifies a GetAccessPolicyRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a GetAccessPolicyRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns GetAccessPolicyRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.identity.accesscontextmanager.v1.GetAccessPolicyRequest;
+
+ /**
+ * Creates a plain object from a GetAccessPolicyRequest message. Also converts values to other types if specified.
+ * @param message GetAccessPolicyRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.identity.accesscontextmanager.v1.GetAccessPolicyRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this GetAccessPolicyRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for GetAccessPolicyRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an UpdateAccessPolicyRequest. */
+ interface IUpdateAccessPolicyRequest {
+
+ /** UpdateAccessPolicyRequest policy */
+ policy?: (google.identity.accesscontextmanager.v1.IAccessPolicy|null);
+
+ /** UpdateAccessPolicyRequest updateMask */
+ updateMask?: (google.protobuf.IFieldMask|null);
+ }
+
+ /** Represents an UpdateAccessPolicyRequest. */
+ class UpdateAccessPolicyRequest implements IUpdateAccessPolicyRequest {
+
+ /**
+ * Constructs a new UpdateAccessPolicyRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.identity.accesscontextmanager.v1.IUpdateAccessPolicyRequest);
+
+ /** UpdateAccessPolicyRequest policy. */
+ public policy?: (google.identity.accesscontextmanager.v1.IAccessPolicy|null);
+
+ /** UpdateAccessPolicyRequest updateMask. */
+ public updateMask?: (google.protobuf.IFieldMask|null);
+
+ /**
+ * Creates a new UpdateAccessPolicyRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns UpdateAccessPolicyRequest instance
+ */
+ public static create(properties?: google.identity.accesscontextmanager.v1.IUpdateAccessPolicyRequest): google.identity.accesscontextmanager.v1.UpdateAccessPolicyRequest;
+
+ /**
+ * Encodes the specified UpdateAccessPolicyRequest message. Does not implicitly {@link google.identity.accesscontextmanager.v1.UpdateAccessPolicyRequest.verify|verify} messages.
+ * @param message UpdateAccessPolicyRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.identity.accesscontextmanager.v1.IUpdateAccessPolicyRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified UpdateAccessPolicyRequest message, length delimited. Does not implicitly {@link google.identity.accesscontextmanager.v1.UpdateAccessPolicyRequest.verify|verify} messages.
+ * @param message UpdateAccessPolicyRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.identity.accesscontextmanager.v1.IUpdateAccessPolicyRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an UpdateAccessPolicyRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns UpdateAccessPolicyRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.identity.accesscontextmanager.v1.UpdateAccessPolicyRequest;
+
+ /**
+ * Decodes an UpdateAccessPolicyRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns UpdateAccessPolicyRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.identity.accesscontextmanager.v1.UpdateAccessPolicyRequest;
+
+ /**
+ * Verifies an UpdateAccessPolicyRequest message.
+ * @param message Plain 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 UpdateAccessPolicyRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns UpdateAccessPolicyRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.identity.accesscontextmanager.v1.UpdateAccessPolicyRequest;
+
+ /**
+ * Creates a plain object from an UpdateAccessPolicyRequest message. Also converts values to other types if specified.
+ * @param message UpdateAccessPolicyRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.identity.accesscontextmanager.v1.UpdateAccessPolicyRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this UpdateAccessPolicyRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for UpdateAccessPolicyRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a DeleteAccessPolicyRequest. */
+ interface IDeleteAccessPolicyRequest {
+
+ /** DeleteAccessPolicyRequest name */
+ name?: (string|null);
+ }
+
+ /** Represents a DeleteAccessPolicyRequest. */
+ class DeleteAccessPolicyRequest implements IDeleteAccessPolicyRequest {
+
+ /**
+ * Constructs a new DeleteAccessPolicyRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.identity.accesscontextmanager.v1.IDeleteAccessPolicyRequest);
+
+ /** DeleteAccessPolicyRequest name. */
+ public name: string;
+
+ /**
+ * Creates a new DeleteAccessPolicyRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns DeleteAccessPolicyRequest instance
+ */
+ public static create(properties?: google.identity.accesscontextmanager.v1.IDeleteAccessPolicyRequest): google.identity.accesscontextmanager.v1.DeleteAccessPolicyRequest;
+
+ /**
+ * Encodes the specified DeleteAccessPolicyRequest message. Does not implicitly {@link google.identity.accesscontextmanager.v1.DeleteAccessPolicyRequest.verify|verify} messages.
+ * @param message DeleteAccessPolicyRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.identity.accesscontextmanager.v1.IDeleteAccessPolicyRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified DeleteAccessPolicyRequest message, length delimited. Does not implicitly {@link google.identity.accesscontextmanager.v1.DeleteAccessPolicyRequest.verify|verify} messages.
+ * @param message DeleteAccessPolicyRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.identity.accesscontextmanager.v1.IDeleteAccessPolicyRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a DeleteAccessPolicyRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns DeleteAccessPolicyRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.identity.accesscontextmanager.v1.DeleteAccessPolicyRequest;
+
+ /**
+ * Decodes a DeleteAccessPolicyRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns DeleteAccessPolicyRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.identity.accesscontextmanager.v1.DeleteAccessPolicyRequest;
+
+ /**
+ * Verifies a DeleteAccessPolicyRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a DeleteAccessPolicyRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns DeleteAccessPolicyRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.identity.accesscontextmanager.v1.DeleteAccessPolicyRequest;
+
+ /**
+ * Creates a plain object from a DeleteAccessPolicyRequest message. Also converts values to other types if specified.
+ * @param message DeleteAccessPolicyRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.identity.accesscontextmanager.v1.DeleteAccessPolicyRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this DeleteAccessPolicyRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for DeleteAccessPolicyRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ListAccessLevelsRequest. */
+ interface IListAccessLevelsRequest {
+
+ /** ListAccessLevelsRequest parent */
+ parent?: (string|null);
+
+ /** ListAccessLevelsRequest pageSize */
+ pageSize?: (number|null);
+
+ /** ListAccessLevelsRequest pageToken */
+ pageToken?: (string|null);
+
+ /** ListAccessLevelsRequest accessLevelFormat */
+ accessLevelFormat?: (google.identity.accesscontextmanager.v1.LevelFormat|keyof typeof google.identity.accesscontextmanager.v1.LevelFormat|null);
+ }
+
+ /** Represents a ListAccessLevelsRequest. */
+ class ListAccessLevelsRequest implements IListAccessLevelsRequest {
+
+ /**
+ * Constructs a new ListAccessLevelsRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.identity.accesscontextmanager.v1.IListAccessLevelsRequest);
+
+ /** ListAccessLevelsRequest parent. */
+ public parent: string;
+
+ /** ListAccessLevelsRequest pageSize. */
+ public pageSize: number;
+
+ /** ListAccessLevelsRequest pageToken. */
+ public pageToken: string;
+
+ /** ListAccessLevelsRequest accessLevelFormat. */
+ public accessLevelFormat: (google.identity.accesscontextmanager.v1.LevelFormat|keyof typeof google.identity.accesscontextmanager.v1.LevelFormat);
+
+ /**
+ * Creates a new ListAccessLevelsRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ListAccessLevelsRequest instance
+ */
+ public static create(properties?: google.identity.accesscontextmanager.v1.IListAccessLevelsRequest): google.identity.accesscontextmanager.v1.ListAccessLevelsRequest;
+
+ /**
+ * Encodes the specified ListAccessLevelsRequest message. Does not implicitly {@link google.identity.accesscontextmanager.v1.ListAccessLevelsRequest.verify|verify} messages.
+ * @param message ListAccessLevelsRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.identity.accesscontextmanager.v1.IListAccessLevelsRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ListAccessLevelsRequest message, length delimited. Does not implicitly {@link google.identity.accesscontextmanager.v1.ListAccessLevelsRequest.verify|verify} messages.
+ * @param message ListAccessLevelsRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.identity.accesscontextmanager.v1.IListAccessLevelsRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ListAccessLevelsRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ListAccessLevelsRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.identity.accesscontextmanager.v1.ListAccessLevelsRequest;
+
+ /**
+ * Decodes a ListAccessLevelsRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ListAccessLevelsRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.identity.accesscontextmanager.v1.ListAccessLevelsRequest;
+
+ /**
+ * Verifies a ListAccessLevelsRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ListAccessLevelsRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ListAccessLevelsRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.identity.accesscontextmanager.v1.ListAccessLevelsRequest;
+
+ /**
+ * Creates a plain object from a ListAccessLevelsRequest message. Also converts values to other types if specified.
+ * @param message ListAccessLevelsRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.identity.accesscontextmanager.v1.ListAccessLevelsRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ListAccessLevelsRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ListAccessLevelsRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ListAccessLevelsResponse. */
+ interface IListAccessLevelsResponse {
+
+ /** ListAccessLevelsResponse accessLevels */
+ accessLevels?: (google.identity.accesscontextmanager.v1.IAccessLevel[]|null);
+
+ /** ListAccessLevelsResponse nextPageToken */
+ nextPageToken?: (string|null);
+ }
+
+ /** Represents a ListAccessLevelsResponse. */
+ class ListAccessLevelsResponse implements IListAccessLevelsResponse {
+
+ /**
+ * Constructs a new ListAccessLevelsResponse.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.identity.accesscontextmanager.v1.IListAccessLevelsResponse);
+
+ /** ListAccessLevelsResponse accessLevels. */
+ public accessLevels: google.identity.accesscontextmanager.v1.IAccessLevel[];
+
+ /** ListAccessLevelsResponse nextPageToken. */
+ public nextPageToken: string;
+
+ /**
+ * Creates a new ListAccessLevelsResponse instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ListAccessLevelsResponse instance
+ */
+ public static create(properties?: google.identity.accesscontextmanager.v1.IListAccessLevelsResponse): google.identity.accesscontextmanager.v1.ListAccessLevelsResponse;
+
+ /**
+ * Encodes the specified ListAccessLevelsResponse message. Does not implicitly {@link google.identity.accesscontextmanager.v1.ListAccessLevelsResponse.verify|verify} messages.
+ * @param message ListAccessLevelsResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.identity.accesscontextmanager.v1.IListAccessLevelsResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ListAccessLevelsResponse message, length delimited. Does not implicitly {@link google.identity.accesscontextmanager.v1.ListAccessLevelsResponse.verify|verify} messages.
+ * @param message ListAccessLevelsResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.identity.accesscontextmanager.v1.IListAccessLevelsResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ListAccessLevelsResponse message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ListAccessLevelsResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.identity.accesscontextmanager.v1.ListAccessLevelsResponse;
+
+ /**
+ * Decodes a ListAccessLevelsResponse message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ListAccessLevelsResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.identity.accesscontextmanager.v1.ListAccessLevelsResponse;
+
+ /**
+ * Verifies a ListAccessLevelsResponse message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ListAccessLevelsResponse message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ListAccessLevelsResponse
+ */
+ public static fromObject(object: { [k: string]: any }): google.identity.accesscontextmanager.v1.ListAccessLevelsResponse;
+
+ /**
+ * Creates a plain object from a ListAccessLevelsResponse message. Also converts values to other types if specified.
+ * @param message ListAccessLevelsResponse
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.identity.accesscontextmanager.v1.ListAccessLevelsResponse, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ListAccessLevelsResponse to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ListAccessLevelsResponse
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a GetAccessLevelRequest. */
+ interface IGetAccessLevelRequest {
+
+ /** GetAccessLevelRequest name */
+ name?: (string|null);
+
+ /** GetAccessLevelRequest accessLevelFormat */
+ accessLevelFormat?: (google.identity.accesscontextmanager.v1.LevelFormat|keyof typeof google.identity.accesscontextmanager.v1.LevelFormat|null);
+ }
+
+ /** Represents a GetAccessLevelRequest. */
+ class GetAccessLevelRequest implements IGetAccessLevelRequest {
+
+ /**
+ * Constructs a new GetAccessLevelRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.identity.accesscontextmanager.v1.IGetAccessLevelRequest);
+
+ /** GetAccessLevelRequest name. */
+ public name: string;
+
+ /** GetAccessLevelRequest accessLevelFormat. */
+ public accessLevelFormat: (google.identity.accesscontextmanager.v1.LevelFormat|keyof typeof google.identity.accesscontextmanager.v1.LevelFormat);
+
+ /**
+ * Creates a new GetAccessLevelRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns GetAccessLevelRequest instance
+ */
+ public static create(properties?: google.identity.accesscontextmanager.v1.IGetAccessLevelRequest): google.identity.accesscontextmanager.v1.GetAccessLevelRequest;
+
+ /**
+ * Encodes the specified GetAccessLevelRequest message. Does not implicitly {@link google.identity.accesscontextmanager.v1.GetAccessLevelRequest.verify|verify} messages.
+ * @param message GetAccessLevelRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.identity.accesscontextmanager.v1.IGetAccessLevelRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified GetAccessLevelRequest message, length delimited. Does not implicitly {@link google.identity.accesscontextmanager.v1.GetAccessLevelRequest.verify|verify} messages.
+ * @param message GetAccessLevelRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.identity.accesscontextmanager.v1.IGetAccessLevelRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a GetAccessLevelRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns GetAccessLevelRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.identity.accesscontextmanager.v1.GetAccessLevelRequest;
+
+ /**
+ * Decodes a GetAccessLevelRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns GetAccessLevelRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.identity.accesscontextmanager.v1.GetAccessLevelRequest;
+
+ /**
+ * Verifies a GetAccessLevelRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a GetAccessLevelRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns GetAccessLevelRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.identity.accesscontextmanager.v1.GetAccessLevelRequest;
+
+ /**
+ * Creates a plain object from a GetAccessLevelRequest message. Also converts values to other types if specified.
+ * @param message GetAccessLevelRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.identity.accesscontextmanager.v1.GetAccessLevelRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this GetAccessLevelRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for GetAccessLevelRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a CreateAccessLevelRequest. */
+ interface ICreateAccessLevelRequest {
+
+ /** CreateAccessLevelRequest parent */
+ parent?: (string|null);
+
+ /** CreateAccessLevelRequest accessLevel */
+ accessLevel?: (google.identity.accesscontextmanager.v1.IAccessLevel|null);
+ }
+
+ /** Represents a CreateAccessLevelRequest. */
+ class CreateAccessLevelRequest implements ICreateAccessLevelRequest {
+
+ /**
+ * Constructs a new CreateAccessLevelRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.identity.accesscontextmanager.v1.ICreateAccessLevelRequest);
+
+ /** CreateAccessLevelRequest parent. */
+ public parent: string;
+
+ /** CreateAccessLevelRequest accessLevel. */
+ public accessLevel?: (google.identity.accesscontextmanager.v1.IAccessLevel|null);
+
+ /**
+ * Creates a new CreateAccessLevelRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns CreateAccessLevelRequest instance
+ */
+ public static create(properties?: google.identity.accesscontextmanager.v1.ICreateAccessLevelRequest): google.identity.accesscontextmanager.v1.CreateAccessLevelRequest;
+
+ /**
+ * Encodes the specified CreateAccessLevelRequest message. Does not implicitly {@link google.identity.accesscontextmanager.v1.CreateAccessLevelRequest.verify|verify} messages.
+ * @param message CreateAccessLevelRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.identity.accesscontextmanager.v1.ICreateAccessLevelRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified CreateAccessLevelRequest message, length delimited. Does not implicitly {@link google.identity.accesscontextmanager.v1.CreateAccessLevelRequest.verify|verify} messages.
+ * @param message CreateAccessLevelRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.identity.accesscontextmanager.v1.ICreateAccessLevelRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a CreateAccessLevelRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns CreateAccessLevelRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.identity.accesscontextmanager.v1.CreateAccessLevelRequest;
+
+ /**
+ * Decodes a CreateAccessLevelRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns CreateAccessLevelRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.identity.accesscontextmanager.v1.CreateAccessLevelRequest;
+
+ /**
+ * Verifies a CreateAccessLevelRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a CreateAccessLevelRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns CreateAccessLevelRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.identity.accesscontextmanager.v1.CreateAccessLevelRequest;
+
+ /**
+ * Creates a plain object from a CreateAccessLevelRequest message. Also converts values to other types if specified.
+ * @param message CreateAccessLevelRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.identity.accesscontextmanager.v1.CreateAccessLevelRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this CreateAccessLevelRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for CreateAccessLevelRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an UpdateAccessLevelRequest. */
+ interface IUpdateAccessLevelRequest {
+
+ /** UpdateAccessLevelRequest accessLevel */
+ accessLevel?: (google.identity.accesscontextmanager.v1.IAccessLevel|null);
+
+ /** UpdateAccessLevelRequest updateMask */
+ updateMask?: (google.protobuf.IFieldMask|null);
+ }
+
+ /** Represents an UpdateAccessLevelRequest. */
+ class UpdateAccessLevelRequest implements IUpdateAccessLevelRequest {
+
+ /**
+ * Constructs a new UpdateAccessLevelRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.identity.accesscontextmanager.v1.IUpdateAccessLevelRequest);
+
+ /** UpdateAccessLevelRequest accessLevel. */
+ public accessLevel?: (google.identity.accesscontextmanager.v1.IAccessLevel|null);
+
+ /** UpdateAccessLevelRequest updateMask. */
+ public updateMask?: (google.protobuf.IFieldMask|null);
+
+ /**
+ * Creates a new UpdateAccessLevelRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns UpdateAccessLevelRequest instance
+ */
+ public static create(properties?: google.identity.accesscontextmanager.v1.IUpdateAccessLevelRequest): google.identity.accesscontextmanager.v1.UpdateAccessLevelRequest;
+
+ /**
+ * Encodes the specified UpdateAccessLevelRequest message. Does not implicitly {@link google.identity.accesscontextmanager.v1.UpdateAccessLevelRequest.verify|verify} messages.
+ * @param message UpdateAccessLevelRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.identity.accesscontextmanager.v1.IUpdateAccessLevelRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified UpdateAccessLevelRequest message, length delimited. Does not implicitly {@link google.identity.accesscontextmanager.v1.UpdateAccessLevelRequest.verify|verify} messages.
+ * @param message UpdateAccessLevelRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.identity.accesscontextmanager.v1.IUpdateAccessLevelRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an UpdateAccessLevelRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns UpdateAccessLevelRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.identity.accesscontextmanager.v1.UpdateAccessLevelRequest;
+
+ /**
+ * Decodes an UpdateAccessLevelRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns UpdateAccessLevelRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.identity.accesscontextmanager.v1.UpdateAccessLevelRequest;
+
+ /**
+ * Verifies an UpdateAccessLevelRequest message.
+ * @param message Plain 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 UpdateAccessLevelRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns UpdateAccessLevelRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.identity.accesscontextmanager.v1.UpdateAccessLevelRequest;
+
+ /**
+ * Creates a plain object from an UpdateAccessLevelRequest message. Also converts values to other types if specified.
+ * @param message UpdateAccessLevelRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.identity.accesscontextmanager.v1.UpdateAccessLevelRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this UpdateAccessLevelRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for UpdateAccessLevelRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a DeleteAccessLevelRequest. */
+ interface IDeleteAccessLevelRequest {
+
+ /** DeleteAccessLevelRequest name */
+ name?: (string|null);
+ }
+
+ /** Represents a DeleteAccessLevelRequest. */
+ class DeleteAccessLevelRequest implements IDeleteAccessLevelRequest {
+
+ /**
+ * Constructs a new DeleteAccessLevelRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.identity.accesscontextmanager.v1.IDeleteAccessLevelRequest);
+
+ /** DeleteAccessLevelRequest name. */
+ public name: string;
+
+ /**
+ * Creates a new DeleteAccessLevelRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns DeleteAccessLevelRequest instance
+ */
+ public static create(properties?: google.identity.accesscontextmanager.v1.IDeleteAccessLevelRequest): google.identity.accesscontextmanager.v1.DeleteAccessLevelRequest;
+
+ /**
+ * Encodes the specified DeleteAccessLevelRequest message. Does not implicitly {@link google.identity.accesscontextmanager.v1.DeleteAccessLevelRequest.verify|verify} messages.
+ * @param message DeleteAccessLevelRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.identity.accesscontextmanager.v1.IDeleteAccessLevelRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified DeleteAccessLevelRequest message, length delimited. Does not implicitly {@link google.identity.accesscontextmanager.v1.DeleteAccessLevelRequest.verify|verify} messages.
+ * @param message DeleteAccessLevelRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.identity.accesscontextmanager.v1.IDeleteAccessLevelRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a DeleteAccessLevelRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns DeleteAccessLevelRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.identity.accesscontextmanager.v1.DeleteAccessLevelRequest;
+
+ /**
+ * Decodes a DeleteAccessLevelRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns DeleteAccessLevelRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.identity.accesscontextmanager.v1.DeleteAccessLevelRequest;
+
+ /**
+ * Verifies a DeleteAccessLevelRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a DeleteAccessLevelRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns DeleteAccessLevelRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.identity.accesscontextmanager.v1.DeleteAccessLevelRequest;
+
+ /**
+ * Creates a plain object from a DeleteAccessLevelRequest message. Also converts values to other types if specified.
+ * @param message DeleteAccessLevelRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.identity.accesscontextmanager.v1.DeleteAccessLevelRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this DeleteAccessLevelRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for DeleteAccessLevelRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ReplaceAccessLevelsRequest. */
+ interface IReplaceAccessLevelsRequest {
+
+ /** ReplaceAccessLevelsRequest parent */
+ parent?: (string|null);
+
+ /** ReplaceAccessLevelsRequest accessLevels */
+ accessLevels?: (google.identity.accesscontextmanager.v1.IAccessLevel[]|null);
+
+ /** ReplaceAccessLevelsRequest etag */
+ etag?: (string|null);
+ }
+
+ /** Represents a ReplaceAccessLevelsRequest. */
+ class ReplaceAccessLevelsRequest implements IReplaceAccessLevelsRequest {
+
+ /**
+ * Constructs a new ReplaceAccessLevelsRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.identity.accesscontextmanager.v1.IReplaceAccessLevelsRequest);
+
+ /** ReplaceAccessLevelsRequest parent. */
+ public parent: string;
+
+ /** ReplaceAccessLevelsRequest accessLevels. */
+ public accessLevels: google.identity.accesscontextmanager.v1.IAccessLevel[];
+
+ /** ReplaceAccessLevelsRequest etag. */
+ public etag: string;
+
+ /**
+ * Creates a new ReplaceAccessLevelsRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ReplaceAccessLevelsRequest instance
+ */
+ public static create(properties?: google.identity.accesscontextmanager.v1.IReplaceAccessLevelsRequest): google.identity.accesscontextmanager.v1.ReplaceAccessLevelsRequest;
+
+ /**
+ * Encodes the specified ReplaceAccessLevelsRequest message. Does not implicitly {@link google.identity.accesscontextmanager.v1.ReplaceAccessLevelsRequest.verify|verify} messages.
+ * @param message ReplaceAccessLevelsRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.identity.accesscontextmanager.v1.IReplaceAccessLevelsRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ReplaceAccessLevelsRequest message, length delimited. Does not implicitly {@link google.identity.accesscontextmanager.v1.ReplaceAccessLevelsRequest.verify|verify} messages.
+ * @param message ReplaceAccessLevelsRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.identity.accesscontextmanager.v1.IReplaceAccessLevelsRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ReplaceAccessLevelsRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ReplaceAccessLevelsRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.identity.accesscontextmanager.v1.ReplaceAccessLevelsRequest;
+
+ /**
+ * Decodes a ReplaceAccessLevelsRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ReplaceAccessLevelsRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.identity.accesscontextmanager.v1.ReplaceAccessLevelsRequest;
+
+ /**
+ * Verifies a ReplaceAccessLevelsRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ReplaceAccessLevelsRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ReplaceAccessLevelsRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.identity.accesscontextmanager.v1.ReplaceAccessLevelsRequest;
+
+ /**
+ * Creates a plain object from a ReplaceAccessLevelsRequest message. Also converts values to other types if specified.
+ * @param message ReplaceAccessLevelsRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.identity.accesscontextmanager.v1.ReplaceAccessLevelsRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ReplaceAccessLevelsRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ReplaceAccessLevelsRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ReplaceAccessLevelsResponse. */
+ interface IReplaceAccessLevelsResponse {
+
+ /** ReplaceAccessLevelsResponse accessLevels */
+ accessLevels?: (google.identity.accesscontextmanager.v1.IAccessLevel[]|null);
+ }
+
+ /** Represents a ReplaceAccessLevelsResponse. */
+ class ReplaceAccessLevelsResponse implements IReplaceAccessLevelsResponse {
+
+ /**
+ * Constructs a new ReplaceAccessLevelsResponse.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.identity.accesscontextmanager.v1.IReplaceAccessLevelsResponse);
+
+ /** ReplaceAccessLevelsResponse accessLevels. */
+ public accessLevels: google.identity.accesscontextmanager.v1.IAccessLevel[];
+
+ /**
+ * Creates a new ReplaceAccessLevelsResponse instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ReplaceAccessLevelsResponse instance
+ */
+ public static create(properties?: google.identity.accesscontextmanager.v1.IReplaceAccessLevelsResponse): google.identity.accesscontextmanager.v1.ReplaceAccessLevelsResponse;
+
+ /**
+ * Encodes the specified ReplaceAccessLevelsResponse message. Does not implicitly {@link google.identity.accesscontextmanager.v1.ReplaceAccessLevelsResponse.verify|verify} messages.
+ * @param message ReplaceAccessLevelsResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.identity.accesscontextmanager.v1.IReplaceAccessLevelsResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ReplaceAccessLevelsResponse message, length delimited. Does not implicitly {@link google.identity.accesscontextmanager.v1.ReplaceAccessLevelsResponse.verify|verify} messages.
+ * @param message ReplaceAccessLevelsResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.identity.accesscontextmanager.v1.IReplaceAccessLevelsResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ReplaceAccessLevelsResponse message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ReplaceAccessLevelsResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.identity.accesscontextmanager.v1.ReplaceAccessLevelsResponse;
+
+ /**
+ * Decodes a ReplaceAccessLevelsResponse message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ReplaceAccessLevelsResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.identity.accesscontextmanager.v1.ReplaceAccessLevelsResponse;
+
+ /**
+ * Verifies a ReplaceAccessLevelsResponse message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ReplaceAccessLevelsResponse message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ReplaceAccessLevelsResponse
+ */
+ public static fromObject(object: { [k: string]: any }): google.identity.accesscontextmanager.v1.ReplaceAccessLevelsResponse;
+
+ /**
+ * Creates a plain object from a ReplaceAccessLevelsResponse message. Also converts values to other types if specified.
+ * @param message ReplaceAccessLevelsResponse
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.identity.accesscontextmanager.v1.ReplaceAccessLevelsResponse, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ReplaceAccessLevelsResponse to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ReplaceAccessLevelsResponse
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ListServicePerimetersRequest. */
+ interface IListServicePerimetersRequest {
+
+ /** ListServicePerimetersRequest parent */
+ parent?: (string|null);
+
+ /** ListServicePerimetersRequest pageSize */
+ pageSize?: (number|null);
+
+ /** ListServicePerimetersRequest pageToken */
+ pageToken?: (string|null);
+ }
+
+ /** Represents a ListServicePerimetersRequest. */
+ class ListServicePerimetersRequest implements IListServicePerimetersRequest {
+
+ /**
+ * Constructs a new ListServicePerimetersRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.identity.accesscontextmanager.v1.IListServicePerimetersRequest);
+
+ /** ListServicePerimetersRequest parent. */
+ public parent: string;
+
+ /** ListServicePerimetersRequest pageSize. */
+ public pageSize: number;
+
+ /** ListServicePerimetersRequest pageToken. */
+ public pageToken: string;
+
+ /**
+ * Creates a new ListServicePerimetersRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ListServicePerimetersRequest instance
+ */
+ public static create(properties?: google.identity.accesscontextmanager.v1.IListServicePerimetersRequest): google.identity.accesscontextmanager.v1.ListServicePerimetersRequest;
+
+ /**
+ * Encodes the specified ListServicePerimetersRequest message. Does not implicitly {@link google.identity.accesscontextmanager.v1.ListServicePerimetersRequest.verify|verify} messages.
+ * @param message ListServicePerimetersRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.identity.accesscontextmanager.v1.IListServicePerimetersRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ListServicePerimetersRequest message, length delimited. Does not implicitly {@link google.identity.accesscontextmanager.v1.ListServicePerimetersRequest.verify|verify} messages.
+ * @param message ListServicePerimetersRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.identity.accesscontextmanager.v1.IListServicePerimetersRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ListServicePerimetersRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ListServicePerimetersRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.identity.accesscontextmanager.v1.ListServicePerimetersRequest;
+
+ /**
+ * Decodes a ListServicePerimetersRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ListServicePerimetersRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.identity.accesscontextmanager.v1.ListServicePerimetersRequest;
+
+ /**
+ * Verifies a ListServicePerimetersRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ListServicePerimetersRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ListServicePerimetersRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.identity.accesscontextmanager.v1.ListServicePerimetersRequest;
+
+ /**
+ * Creates a plain object from a ListServicePerimetersRequest message. Also converts values to other types if specified.
+ * @param message ListServicePerimetersRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.identity.accesscontextmanager.v1.ListServicePerimetersRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ListServicePerimetersRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ListServicePerimetersRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ListServicePerimetersResponse. */
+ interface IListServicePerimetersResponse {
+
+ /** ListServicePerimetersResponse servicePerimeters */
+ servicePerimeters?: (google.identity.accesscontextmanager.v1.IServicePerimeter[]|null);
+
+ /** ListServicePerimetersResponse nextPageToken */
+ nextPageToken?: (string|null);
+ }
+
+ /** Represents a ListServicePerimetersResponse. */
+ class ListServicePerimetersResponse implements IListServicePerimetersResponse {
+
+ /**
+ * Constructs a new ListServicePerimetersResponse.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.identity.accesscontextmanager.v1.IListServicePerimetersResponse);
+
+ /** ListServicePerimetersResponse servicePerimeters. */
+ public servicePerimeters: google.identity.accesscontextmanager.v1.IServicePerimeter[];
+
+ /** ListServicePerimetersResponse nextPageToken. */
+ public nextPageToken: string;
+
+ /**
+ * Creates a new ListServicePerimetersResponse instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ListServicePerimetersResponse instance
+ */
+ public static create(properties?: google.identity.accesscontextmanager.v1.IListServicePerimetersResponse): google.identity.accesscontextmanager.v1.ListServicePerimetersResponse;
+
+ /**
+ * Encodes the specified ListServicePerimetersResponse message. Does not implicitly {@link google.identity.accesscontextmanager.v1.ListServicePerimetersResponse.verify|verify} messages.
+ * @param message ListServicePerimetersResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.identity.accesscontextmanager.v1.IListServicePerimetersResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ListServicePerimetersResponse message, length delimited. Does not implicitly {@link google.identity.accesscontextmanager.v1.ListServicePerimetersResponse.verify|verify} messages.
+ * @param message ListServicePerimetersResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.identity.accesscontextmanager.v1.IListServicePerimetersResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ListServicePerimetersResponse message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ListServicePerimetersResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.identity.accesscontextmanager.v1.ListServicePerimetersResponse;
+
+ /**
+ * Decodes a ListServicePerimetersResponse message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ListServicePerimetersResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.identity.accesscontextmanager.v1.ListServicePerimetersResponse;
+
+ /**
+ * Verifies a ListServicePerimetersResponse message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ListServicePerimetersResponse message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ListServicePerimetersResponse
+ */
+ public static fromObject(object: { [k: string]: any }): google.identity.accesscontextmanager.v1.ListServicePerimetersResponse;
+
+ /**
+ * Creates a plain object from a ListServicePerimetersResponse message. Also converts values to other types if specified.
+ * @param message ListServicePerimetersResponse
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.identity.accesscontextmanager.v1.ListServicePerimetersResponse, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ListServicePerimetersResponse to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ListServicePerimetersResponse
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a GetServicePerimeterRequest. */
+ interface IGetServicePerimeterRequest {
+
+ /** GetServicePerimeterRequest name */
+ name?: (string|null);
+ }
+
+ /** Represents a GetServicePerimeterRequest. */
+ class GetServicePerimeterRequest implements IGetServicePerimeterRequest {
+
+ /**
+ * Constructs a new GetServicePerimeterRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.identity.accesscontextmanager.v1.IGetServicePerimeterRequest);
+
+ /** GetServicePerimeterRequest name. */
+ public name: string;
+
+ /**
+ * Creates a new GetServicePerimeterRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns GetServicePerimeterRequest instance
+ */
+ public static create(properties?: google.identity.accesscontextmanager.v1.IGetServicePerimeterRequest): google.identity.accesscontextmanager.v1.GetServicePerimeterRequest;
+
+ /**
+ * Encodes the specified GetServicePerimeterRequest message. Does not implicitly {@link google.identity.accesscontextmanager.v1.GetServicePerimeterRequest.verify|verify} messages.
+ * @param message GetServicePerimeterRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.identity.accesscontextmanager.v1.IGetServicePerimeterRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified GetServicePerimeterRequest message, length delimited. Does not implicitly {@link google.identity.accesscontextmanager.v1.GetServicePerimeterRequest.verify|verify} messages.
+ * @param message GetServicePerimeterRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.identity.accesscontextmanager.v1.IGetServicePerimeterRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a GetServicePerimeterRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns GetServicePerimeterRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.identity.accesscontextmanager.v1.GetServicePerimeterRequest;
+
+ /**
+ * Decodes a GetServicePerimeterRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns GetServicePerimeterRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.identity.accesscontextmanager.v1.GetServicePerimeterRequest;
+
+ /**
+ * Verifies a GetServicePerimeterRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a GetServicePerimeterRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns GetServicePerimeterRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.identity.accesscontextmanager.v1.GetServicePerimeterRequest;
+
+ /**
+ * Creates a plain object from a GetServicePerimeterRequest message. Also converts values to other types if specified.
+ * @param message GetServicePerimeterRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.identity.accesscontextmanager.v1.GetServicePerimeterRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this GetServicePerimeterRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for GetServicePerimeterRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a CreateServicePerimeterRequest. */
+ interface ICreateServicePerimeterRequest {
+
+ /** CreateServicePerimeterRequest parent */
+ parent?: (string|null);
+
+ /** CreateServicePerimeterRequest servicePerimeter */
+ servicePerimeter?: (google.identity.accesscontextmanager.v1.IServicePerimeter|null);
+ }
+
+ /** Represents a CreateServicePerimeterRequest. */
+ class CreateServicePerimeterRequest implements ICreateServicePerimeterRequest {
+
+ /**
+ * Constructs a new CreateServicePerimeterRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.identity.accesscontextmanager.v1.ICreateServicePerimeterRequest);
+
+ /** CreateServicePerimeterRequest parent. */
+ public parent: string;
+
+ /** CreateServicePerimeterRequest servicePerimeter. */
+ public servicePerimeter?: (google.identity.accesscontextmanager.v1.IServicePerimeter|null);
+
+ /**
+ * Creates a new CreateServicePerimeterRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns CreateServicePerimeterRequest instance
+ */
+ public static create(properties?: google.identity.accesscontextmanager.v1.ICreateServicePerimeterRequest): google.identity.accesscontextmanager.v1.CreateServicePerimeterRequest;
+
+ /**
+ * Encodes the specified CreateServicePerimeterRequest message. Does not implicitly {@link google.identity.accesscontextmanager.v1.CreateServicePerimeterRequest.verify|verify} messages.
+ * @param message CreateServicePerimeterRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.identity.accesscontextmanager.v1.ICreateServicePerimeterRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified CreateServicePerimeterRequest message, length delimited. Does not implicitly {@link google.identity.accesscontextmanager.v1.CreateServicePerimeterRequest.verify|verify} messages.
+ * @param message CreateServicePerimeterRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.identity.accesscontextmanager.v1.ICreateServicePerimeterRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a CreateServicePerimeterRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns CreateServicePerimeterRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.identity.accesscontextmanager.v1.CreateServicePerimeterRequest;
+
+ /**
+ * Decodes a CreateServicePerimeterRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns CreateServicePerimeterRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.identity.accesscontextmanager.v1.CreateServicePerimeterRequest;
+
+ /**
+ * Verifies a CreateServicePerimeterRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a CreateServicePerimeterRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns CreateServicePerimeterRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.identity.accesscontextmanager.v1.CreateServicePerimeterRequest;
+
+ /**
+ * Creates a plain object from a CreateServicePerimeterRequest message. Also converts values to other types if specified.
+ * @param message CreateServicePerimeterRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.identity.accesscontextmanager.v1.CreateServicePerimeterRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this CreateServicePerimeterRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for CreateServicePerimeterRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an UpdateServicePerimeterRequest. */
+ interface IUpdateServicePerimeterRequest {
+
+ /** UpdateServicePerimeterRequest servicePerimeter */
+ servicePerimeter?: (google.identity.accesscontextmanager.v1.IServicePerimeter|null);
+
+ /** UpdateServicePerimeterRequest updateMask */
+ updateMask?: (google.protobuf.IFieldMask|null);
+ }
+
+ /** Represents an UpdateServicePerimeterRequest. */
+ class UpdateServicePerimeterRequest implements IUpdateServicePerimeterRequest {
+
+ /**
+ * Constructs a new UpdateServicePerimeterRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.identity.accesscontextmanager.v1.IUpdateServicePerimeterRequest);
+
+ /** UpdateServicePerimeterRequest servicePerimeter. */
+ public servicePerimeter?: (google.identity.accesscontextmanager.v1.IServicePerimeter|null);
+
+ /** UpdateServicePerimeterRequest updateMask. */
+ public updateMask?: (google.protobuf.IFieldMask|null);
+
+ /**
+ * Creates a new UpdateServicePerimeterRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns UpdateServicePerimeterRequest instance
+ */
+ public static create(properties?: google.identity.accesscontextmanager.v1.IUpdateServicePerimeterRequest): google.identity.accesscontextmanager.v1.UpdateServicePerimeterRequest;
+
+ /**
+ * Encodes the specified UpdateServicePerimeterRequest message. Does not implicitly {@link google.identity.accesscontextmanager.v1.UpdateServicePerimeterRequest.verify|verify} messages.
+ * @param message UpdateServicePerimeterRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.identity.accesscontextmanager.v1.IUpdateServicePerimeterRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified UpdateServicePerimeterRequest message, length delimited. Does not implicitly {@link google.identity.accesscontextmanager.v1.UpdateServicePerimeterRequest.verify|verify} messages.
+ * @param message UpdateServicePerimeterRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.identity.accesscontextmanager.v1.IUpdateServicePerimeterRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an UpdateServicePerimeterRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns UpdateServicePerimeterRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.identity.accesscontextmanager.v1.UpdateServicePerimeterRequest;
+
+ /**
+ * Decodes an UpdateServicePerimeterRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns UpdateServicePerimeterRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.identity.accesscontextmanager.v1.UpdateServicePerimeterRequest;
+
+ /**
+ * Verifies an UpdateServicePerimeterRequest message.
+ * @param message Plain 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 UpdateServicePerimeterRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns UpdateServicePerimeterRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.identity.accesscontextmanager.v1.UpdateServicePerimeterRequest;
+
+ /**
+ * Creates a plain object from an UpdateServicePerimeterRequest message. Also converts values to other types if specified.
+ * @param message UpdateServicePerimeterRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.identity.accesscontextmanager.v1.UpdateServicePerimeterRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this UpdateServicePerimeterRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for UpdateServicePerimeterRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a DeleteServicePerimeterRequest. */
+ interface IDeleteServicePerimeterRequest {
+
+ /** DeleteServicePerimeterRequest name */
+ name?: (string|null);
+ }
+
+ /** Represents a DeleteServicePerimeterRequest. */
+ class DeleteServicePerimeterRequest implements IDeleteServicePerimeterRequest {
+
+ /**
+ * Constructs a new DeleteServicePerimeterRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.identity.accesscontextmanager.v1.IDeleteServicePerimeterRequest);
+
+ /** DeleteServicePerimeterRequest name. */
+ public name: string;
+
+ /**
+ * Creates a new DeleteServicePerimeterRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns DeleteServicePerimeterRequest instance
+ */
+ public static create(properties?: google.identity.accesscontextmanager.v1.IDeleteServicePerimeterRequest): google.identity.accesscontextmanager.v1.DeleteServicePerimeterRequest;
+
+ /**
+ * Encodes the specified DeleteServicePerimeterRequest message. Does not implicitly {@link google.identity.accesscontextmanager.v1.DeleteServicePerimeterRequest.verify|verify} messages.
+ * @param message DeleteServicePerimeterRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.identity.accesscontextmanager.v1.IDeleteServicePerimeterRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified DeleteServicePerimeterRequest message, length delimited. Does not implicitly {@link google.identity.accesscontextmanager.v1.DeleteServicePerimeterRequest.verify|verify} messages.
+ * @param message DeleteServicePerimeterRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.identity.accesscontextmanager.v1.IDeleteServicePerimeterRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a DeleteServicePerimeterRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns DeleteServicePerimeterRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.identity.accesscontextmanager.v1.DeleteServicePerimeterRequest;
+
+ /**
+ * Decodes a DeleteServicePerimeterRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns DeleteServicePerimeterRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.identity.accesscontextmanager.v1.DeleteServicePerimeterRequest;
+
+ /**
+ * Verifies a DeleteServicePerimeterRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a DeleteServicePerimeterRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns DeleteServicePerimeterRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.identity.accesscontextmanager.v1.DeleteServicePerimeterRequest;
+
+ /**
+ * Creates a plain object from a DeleteServicePerimeterRequest message. Also converts values to other types if specified.
+ * @param message DeleteServicePerimeterRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.identity.accesscontextmanager.v1.DeleteServicePerimeterRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this DeleteServicePerimeterRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for DeleteServicePerimeterRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ReplaceServicePerimetersRequest. */
+ interface IReplaceServicePerimetersRequest {
+
+ /** ReplaceServicePerimetersRequest parent */
+ parent?: (string|null);
+
+ /** ReplaceServicePerimetersRequest servicePerimeters */
+ servicePerimeters?: (google.identity.accesscontextmanager.v1.IServicePerimeter[]|null);
+
+ /** ReplaceServicePerimetersRequest etag */
+ etag?: (string|null);
+ }
+
+ /** Represents a ReplaceServicePerimetersRequest. */
+ class ReplaceServicePerimetersRequest implements IReplaceServicePerimetersRequest {
+
+ /**
+ * Constructs a new ReplaceServicePerimetersRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.identity.accesscontextmanager.v1.IReplaceServicePerimetersRequest);
+
+ /** ReplaceServicePerimetersRequest parent. */
+ public parent: string;
+
+ /** ReplaceServicePerimetersRequest servicePerimeters. */
+ public servicePerimeters: google.identity.accesscontextmanager.v1.IServicePerimeter[];
+
+ /** ReplaceServicePerimetersRequest etag. */
+ public etag: string;
+
+ /**
+ * Creates a new ReplaceServicePerimetersRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ReplaceServicePerimetersRequest instance
+ */
+ public static create(properties?: google.identity.accesscontextmanager.v1.IReplaceServicePerimetersRequest): google.identity.accesscontextmanager.v1.ReplaceServicePerimetersRequest;
+
+ /**
+ * Encodes the specified ReplaceServicePerimetersRequest message. Does not implicitly {@link google.identity.accesscontextmanager.v1.ReplaceServicePerimetersRequest.verify|verify} messages.
+ * @param message ReplaceServicePerimetersRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.identity.accesscontextmanager.v1.IReplaceServicePerimetersRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ReplaceServicePerimetersRequest message, length delimited. Does not implicitly {@link google.identity.accesscontextmanager.v1.ReplaceServicePerimetersRequest.verify|verify} messages.
+ * @param message ReplaceServicePerimetersRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.identity.accesscontextmanager.v1.IReplaceServicePerimetersRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ReplaceServicePerimetersRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ReplaceServicePerimetersRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.identity.accesscontextmanager.v1.ReplaceServicePerimetersRequest;
+
+ /**
+ * Decodes a ReplaceServicePerimetersRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ReplaceServicePerimetersRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.identity.accesscontextmanager.v1.ReplaceServicePerimetersRequest;
+
+ /**
+ * Verifies a ReplaceServicePerimetersRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ReplaceServicePerimetersRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ReplaceServicePerimetersRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.identity.accesscontextmanager.v1.ReplaceServicePerimetersRequest;
+
+ /**
+ * Creates a plain object from a ReplaceServicePerimetersRequest message. Also converts values to other types if specified.
+ * @param message ReplaceServicePerimetersRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.identity.accesscontextmanager.v1.ReplaceServicePerimetersRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ReplaceServicePerimetersRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ReplaceServicePerimetersRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ReplaceServicePerimetersResponse. */
+ interface IReplaceServicePerimetersResponse {
+
+ /** ReplaceServicePerimetersResponse servicePerimeters */
+ servicePerimeters?: (google.identity.accesscontextmanager.v1.IServicePerimeter[]|null);
+ }
+
+ /** Represents a ReplaceServicePerimetersResponse. */
+ class ReplaceServicePerimetersResponse implements IReplaceServicePerimetersResponse {
+
+ /**
+ * Constructs a new ReplaceServicePerimetersResponse.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.identity.accesscontextmanager.v1.IReplaceServicePerimetersResponse);
+
+ /** ReplaceServicePerimetersResponse servicePerimeters. */
+ public servicePerimeters: google.identity.accesscontextmanager.v1.IServicePerimeter[];
+
+ /**
+ * Creates a new ReplaceServicePerimetersResponse instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ReplaceServicePerimetersResponse instance
+ */
+ public static create(properties?: google.identity.accesscontextmanager.v1.IReplaceServicePerimetersResponse): google.identity.accesscontextmanager.v1.ReplaceServicePerimetersResponse;
+
+ /**
+ * Encodes the specified ReplaceServicePerimetersResponse message. Does not implicitly {@link google.identity.accesscontextmanager.v1.ReplaceServicePerimetersResponse.verify|verify} messages.
+ * @param message ReplaceServicePerimetersResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.identity.accesscontextmanager.v1.IReplaceServicePerimetersResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ReplaceServicePerimetersResponse message, length delimited. Does not implicitly {@link google.identity.accesscontextmanager.v1.ReplaceServicePerimetersResponse.verify|verify} messages.
+ * @param message ReplaceServicePerimetersResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.identity.accesscontextmanager.v1.IReplaceServicePerimetersResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ReplaceServicePerimetersResponse message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ReplaceServicePerimetersResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.identity.accesscontextmanager.v1.ReplaceServicePerimetersResponse;
+
+ /**
+ * Decodes a ReplaceServicePerimetersResponse message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ReplaceServicePerimetersResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.identity.accesscontextmanager.v1.ReplaceServicePerimetersResponse;
+
+ /**
+ * Verifies a ReplaceServicePerimetersResponse message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ReplaceServicePerimetersResponse message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ReplaceServicePerimetersResponse
+ */
+ public static fromObject(object: { [k: string]: any }): google.identity.accesscontextmanager.v1.ReplaceServicePerimetersResponse;
+
+ /**
+ * Creates a plain object from a ReplaceServicePerimetersResponse message. Also converts values to other types if specified.
+ * @param message ReplaceServicePerimetersResponse
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.identity.accesscontextmanager.v1.ReplaceServicePerimetersResponse, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ReplaceServicePerimetersResponse to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ReplaceServicePerimetersResponse
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a CommitServicePerimetersRequest. */
+ interface ICommitServicePerimetersRequest {
+
+ /** CommitServicePerimetersRequest parent */
+ parent?: (string|null);
+
+ /** CommitServicePerimetersRequest etag */
+ etag?: (string|null);
+ }
+
+ /** Represents a CommitServicePerimetersRequest. */
+ class CommitServicePerimetersRequest implements ICommitServicePerimetersRequest {
+
+ /**
+ * Constructs a new CommitServicePerimetersRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.identity.accesscontextmanager.v1.ICommitServicePerimetersRequest);
+
+ /** CommitServicePerimetersRequest parent. */
+ public parent: string;
+
+ /** CommitServicePerimetersRequest etag. */
+ public etag: string;
+
+ /**
+ * Creates a new CommitServicePerimetersRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns CommitServicePerimetersRequest instance
+ */
+ public static create(properties?: google.identity.accesscontextmanager.v1.ICommitServicePerimetersRequest): google.identity.accesscontextmanager.v1.CommitServicePerimetersRequest;
+
+ /**
+ * Encodes the specified CommitServicePerimetersRequest message. Does not implicitly {@link google.identity.accesscontextmanager.v1.CommitServicePerimetersRequest.verify|verify} messages.
+ * @param message CommitServicePerimetersRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.identity.accesscontextmanager.v1.ICommitServicePerimetersRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified CommitServicePerimetersRequest message, length delimited. Does not implicitly {@link google.identity.accesscontextmanager.v1.CommitServicePerimetersRequest.verify|verify} messages.
+ * @param message CommitServicePerimetersRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.identity.accesscontextmanager.v1.ICommitServicePerimetersRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a CommitServicePerimetersRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns CommitServicePerimetersRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.identity.accesscontextmanager.v1.CommitServicePerimetersRequest;
+
+ /**
+ * Decodes a CommitServicePerimetersRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns CommitServicePerimetersRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.identity.accesscontextmanager.v1.CommitServicePerimetersRequest;
+
+ /**
+ * Verifies a CommitServicePerimetersRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a CommitServicePerimetersRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns CommitServicePerimetersRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.identity.accesscontextmanager.v1.CommitServicePerimetersRequest;
+
+ /**
+ * Creates a plain object from a CommitServicePerimetersRequest message. Also converts values to other types if specified.
+ * @param message CommitServicePerimetersRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.identity.accesscontextmanager.v1.CommitServicePerimetersRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this CommitServicePerimetersRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for CommitServicePerimetersRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a CommitServicePerimetersResponse. */
+ interface ICommitServicePerimetersResponse {
+
+ /** CommitServicePerimetersResponse servicePerimeters */
+ servicePerimeters?: (google.identity.accesscontextmanager.v1.IServicePerimeter[]|null);
+ }
+
+ /** Represents a CommitServicePerimetersResponse. */
+ class CommitServicePerimetersResponse implements ICommitServicePerimetersResponse {
+
+ /**
+ * Constructs a new CommitServicePerimetersResponse.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.identity.accesscontextmanager.v1.ICommitServicePerimetersResponse);
+
+ /** CommitServicePerimetersResponse servicePerimeters. */
+ public servicePerimeters: google.identity.accesscontextmanager.v1.IServicePerimeter[];
+
+ /**
+ * Creates a new CommitServicePerimetersResponse instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns CommitServicePerimetersResponse instance
+ */
+ public static create(properties?: google.identity.accesscontextmanager.v1.ICommitServicePerimetersResponse): google.identity.accesscontextmanager.v1.CommitServicePerimetersResponse;
+
+ /**
+ * Encodes the specified CommitServicePerimetersResponse message. Does not implicitly {@link google.identity.accesscontextmanager.v1.CommitServicePerimetersResponse.verify|verify} messages.
+ * @param message CommitServicePerimetersResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.identity.accesscontextmanager.v1.ICommitServicePerimetersResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified CommitServicePerimetersResponse message, length delimited. Does not implicitly {@link google.identity.accesscontextmanager.v1.CommitServicePerimetersResponse.verify|verify} messages.
+ * @param message CommitServicePerimetersResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.identity.accesscontextmanager.v1.ICommitServicePerimetersResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a CommitServicePerimetersResponse message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns CommitServicePerimetersResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.identity.accesscontextmanager.v1.CommitServicePerimetersResponse;
+
+ /**
+ * Decodes a CommitServicePerimetersResponse message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns CommitServicePerimetersResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.identity.accesscontextmanager.v1.CommitServicePerimetersResponse;
+
+ /**
+ * Verifies a CommitServicePerimetersResponse message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a CommitServicePerimetersResponse message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns CommitServicePerimetersResponse
+ */
+ public static fromObject(object: { [k: string]: any }): google.identity.accesscontextmanager.v1.CommitServicePerimetersResponse;
+
+ /**
+ * Creates a plain object from a CommitServicePerimetersResponse message. Also converts values to other types if specified.
+ * @param message CommitServicePerimetersResponse
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.identity.accesscontextmanager.v1.CommitServicePerimetersResponse, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this CommitServicePerimetersResponse to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for CommitServicePerimetersResponse
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** LevelFormat enum. */
+ enum LevelFormat {
+ LEVEL_FORMAT_UNSPECIFIED = 0,
+ AS_DEFINED = 1,
+ CEL = 2
+ }
+
+ /** Properties of a ListGcpUserAccessBindingsRequest. */
+ interface IListGcpUserAccessBindingsRequest {
+
+ /** ListGcpUserAccessBindingsRequest parent */
+ parent?: (string|null);
+
+ /** ListGcpUserAccessBindingsRequest pageSize */
+ pageSize?: (number|null);
+
+ /** ListGcpUserAccessBindingsRequest pageToken */
+ pageToken?: (string|null);
+ }
+
+ /** Represents a ListGcpUserAccessBindingsRequest. */
+ class ListGcpUserAccessBindingsRequest implements IListGcpUserAccessBindingsRequest {
+
+ /**
+ * Constructs a new ListGcpUserAccessBindingsRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.identity.accesscontextmanager.v1.IListGcpUserAccessBindingsRequest);
+
+ /** ListGcpUserAccessBindingsRequest parent. */
+ public parent: string;
+
+ /** ListGcpUserAccessBindingsRequest pageSize. */
+ public pageSize: number;
+
+ /** ListGcpUserAccessBindingsRequest pageToken. */
+ public pageToken: string;
+
+ /**
+ * Creates a new ListGcpUserAccessBindingsRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ListGcpUserAccessBindingsRequest instance
+ */
+ public static create(properties?: google.identity.accesscontextmanager.v1.IListGcpUserAccessBindingsRequest): google.identity.accesscontextmanager.v1.ListGcpUserAccessBindingsRequest;
+
+ /**
+ * Encodes the specified ListGcpUserAccessBindingsRequest message. Does not implicitly {@link google.identity.accesscontextmanager.v1.ListGcpUserAccessBindingsRequest.verify|verify} messages.
+ * @param message ListGcpUserAccessBindingsRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.identity.accesscontextmanager.v1.IListGcpUserAccessBindingsRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ListGcpUserAccessBindingsRequest message, length delimited. Does not implicitly {@link google.identity.accesscontextmanager.v1.ListGcpUserAccessBindingsRequest.verify|verify} messages.
+ * @param message ListGcpUserAccessBindingsRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.identity.accesscontextmanager.v1.IListGcpUserAccessBindingsRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ListGcpUserAccessBindingsRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ListGcpUserAccessBindingsRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.identity.accesscontextmanager.v1.ListGcpUserAccessBindingsRequest;
+
+ /**
+ * Decodes a ListGcpUserAccessBindingsRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ListGcpUserAccessBindingsRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.identity.accesscontextmanager.v1.ListGcpUserAccessBindingsRequest;
+
+ /**
+ * Verifies a ListGcpUserAccessBindingsRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ListGcpUserAccessBindingsRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ListGcpUserAccessBindingsRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.identity.accesscontextmanager.v1.ListGcpUserAccessBindingsRequest;
+
+ /**
+ * Creates a plain object from a ListGcpUserAccessBindingsRequest message. Also converts values to other types if specified.
+ * @param message ListGcpUserAccessBindingsRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.identity.accesscontextmanager.v1.ListGcpUserAccessBindingsRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ListGcpUserAccessBindingsRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ListGcpUserAccessBindingsRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ListGcpUserAccessBindingsResponse. */
+ interface IListGcpUserAccessBindingsResponse {
+
+ /** ListGcpUserAccessBindingsResponse gcpUserAccessBindings */
+ gcpUserAccessBindings?: (google.identity.accesscontextmanager.v1.IGcpUserAccessBinding[]|null);
+
+ /** ListGcpUserAccessBindingsResponse nextPageToken */
+ nextPageToken?: (string|null);
+ }
+
+ /** Represents a ListGcpUserAccessBindingsResponse. */
+ class ListGcpUserAccessBindingsResponse implements IListGcpUserAccessBindingsResponse {
+
+ /**
+ * Constructs a new ListGcpUserAccessBindingsResponse.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.identity.accesscontextmanager.v1.IListGcpUserAccessBindingsResponse);
+
+ /** ListGcpUserAccessBindingsResponse gcpUserAccessBindings. */
+ public gcpUserAccessBindings: google.identity.accesscontextmanager.v1.IGcpUserAccessBinding[];
+
+ /** ListGcpUserAccessBindingsResponse nextPageToken. */
+ public nextPageToken: string;
+
+ /**
+ * Creates a new ListGcpUserAccessBindingsResponse instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ListGcpUserAccessBindingsResponse instance
+ */
+ public static create(properties?: google.identity.accesscontextmanager.v1.IListGcpUserAccessBindingsResponse): google.identity.accesscontextmanager.v1.ListGcpUserAccessBindingsResponse;
+
+ /**
+ * Encodes the specified ListGcpUserAccessBindingsResponse message. Does not implicitly {@link google.identity.accesscontextmanager.v1.ListGcpUserAccessBindingsResponse.verify|verify} messages.
+ * @param message ListGcpUserAccessBindingsResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.identity.accesscontextmanager.v1.IListGcpUserAccessBindingsResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ListGcpUserAccessBindingsResponse message, length delimited. Does not implicitly {@link google.identity.accesscontextmanager.v1.ListGcpUserAccessBindingsResponse.verify|verify} messages.
+ * @param message ListGcpUserAccessBindingsResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.identity.accesscontextmanager.v1.IListGcpUserAccessBindingsResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ListGcpUserAccessBindingsResponse message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ListGcpUserAccessBindingsResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.identity.accesscontextmanager.v1.ListGcpUserAccessBindingsResponse;
+
+ /**
+ * Decodes a ListGcpUserAccessBindingsResponse message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ListGcpUserAccessBindingsResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.identity.accesscontextmanager.v1.ListGcpUserAccessBindingsResponse;
+
+ /**
+ * Verifies a ListGcpUserAccessBindingsResponse message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ListGcpUserAccessBindingsResponse message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ListGcpUserAccessBindingsResponse
+ */
+ public static fromObject(object: { [k: string]: any }): google.identity.accesscontextmanager.v1.ListGcpUserAccessBindingsResponse;
+
+ /**
+ * Creates a plain object from a ListGcpUserAccessBindingsResponse message. Also converts values to other types if specified.
+ * @param message ListGcpUserAccessBindingsResponse
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.identity.accesscontextmanager.v1.ListGcpUserAccessBindingsResponse, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ListGcpUserAccessBindingsResponse to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ListGcpUserAccessBindingsResponse
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a GetGcpUserAccessBindingRequest. */
+ interface IGetGcpUserAccessBindingRequest {
+
+ /** GetGcpUserAccessBindingRequest name */
+ name?: (string|null);
+ }
+
+ /** Represents a GetGcpUserAccessBindingRequest. */
+ class GetGcpUserAccessBindingRequest implements IGetGcpUserAccessBindingRequest {
+
+ /**
+ * Constructs a new GetGcpUserAccessBindingRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.identity.accesscontextmanager.v1.IGetGcpUserAccessBindingRequest);
+
+ /** GetGcpUserAccessBindingRequest name. */
+ public name: string;
+
+ /**
+ * Creates a new GetGcpUserAccessBindingRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns GetGcpUserAccessBindingRequest instance
+ */
+ public static create(properties?: google.identity.accesscontextmanager.v1.IGetGcpUserAccessBindingRequest): google.identity.accesscontextmanager.v1.GetGcpUserAccessBindingRequest;
+
+ /**
+ * Encodes the specified GetGcpUserAccessBindingRequest message. Does not implicitly {@link google.identity.accesscontextmanager.v1.GetGcpUserAccessBindingRequest.verify|verify} messages.
+ * @param message GetGcpUserAccessBindingRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.identity.accesscontextmanager.v1.IGetGcpUserAccessBindingRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified GetGcpUserAccessBindingRequest message, length delimited. Does not implicitly {@link google.identity.accesscontextmanager.v1.GetGcpUserAccessBindingRequest.verify|verify} messages.
+ * @param message GetGcpUserAccessBindingRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.identity.accesscontextmanager.v1.IGetGcpUserAccessBindingRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a GetGcpUserAccessBindingRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns GetGcpUserAccessBindingRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.identity.accesscontextmanager.v1.GetGcpUserAccessBindingRequest;
+
+ /**
+ * Decodes a GetGcpUserAccessBindingRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns GetGcpUserAccessBindingRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.identity.accesscontextmanager.v1.GetGcpUserAccessBindingRequest;
+
+ /**
+ * Verifies a GetGcpUserAccessBindingRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a GetGcpUserAccessBindingRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns GetGcpUserAccessBindingRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.identity.accesscontextmanager.v1.GetGcpUserAccessBindingRequest;
+
+ /**
+ * Creates a plain object from a GetGcpUserAccessBindingRequest message. Also converts values to other types if specified.
+ * @param message GetGcpUserAccessBindingRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.identity.accesscontextmanager.v1.GetGcpUserAccessBindingRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this GetGcpUserAccessBindingRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for GetGcpUserAccessBindingRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a CreateGcpUserAccessBindingRequest. */
+ interface ICreateGcpUserAccessBindingRequest {
+
+ /** CreateGcpUserAccessBindingRequest parent */
+ parent?: (string|null);
+
+ /** CreateGcpUserAccessBindingRequest gcpUserAccessBinding */
+ gcpUserAccessBinding?: (google.identity.accesscontextmanager.v1.IGcpUserAccessBinding|null);
+ }
+
+ /** Represents a CreateGcpUserAccessBindingRequest. */
+ class CreateGcpUserAccessBindingRequest implements ICreateGcpUserAccessBindingRequest {
+
+ /**
+ * Constructs a new CreateGcpUserAccessBindingRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.identity.accesscontextmanager.v1.ICreateGcpUserAccessBindingRequest);
+
+ /** CreateGcpUserAccessBindingRequest parent. */
+ public parent: string;
+
+ /** CreateGcpUserAccessBindingRequest gcpUserAccessBinding. */
+ public gcpUserAccessBinding?: (google.identity.accesscontextmanager.v1.IGcpUserAccessBinding|null);
+
+ /**
+ * Creates a new CreateGcpUserAccessBindingRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns CreateGcpUserAccessBindingRequest instance
+ */
+ public static create(properties?: google.identity.accesscontextmanager.v1.ICreateGcpUserAccessBindingRequest): google.identity.accesscontextmanager.v1.CreateGcpUserAccessBindingRequest;
+
+ /**
+ * Encodes the specified CreateGcpUserAccessBindingRequest message. Does not implicitly {@link google.identity.accesscontextmanager.v1.CreateGcpUserAccessBindingRequest.verify|verify} messages.
+ * @param message CreateGcpUserAccessBindingRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.identity.accesscontextmanager.v1.ICreateGcpUserAccessBindingRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified CreateGcpUserAccessBindingRequest message, length delimited. Does not implicitly {@link google.identity.accesscontextmanager.v1.CreateGcpUserAccessBindingRequest.verify|verify} messages.
+ * @param message CreateGcpUserAccessBindingRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.identity.accesscontextmanager.v1.ICreateGcpUserAccessBindingRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a CreateGcpUserAccessBindingRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns CreateGcpUserAccessBindingRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.identity.accesscontextmanager.v1.CreateGcpUserAccessBindingRequest;
+
+ /**
+ * Decodes a CreateGcpUserAccessBindingRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns CreateGcpUserAccessBindingRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.identity.accesscontextmanager.v1.CreateGcpUserAccessBindingRequest;
+
+ /**
+ * Verifies a CreateGcpUserAccessBindingRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a CreateGcpUserAccessBindingRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns CreateGcpUserAccessBindingRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.identity.accesscontextmanager.v1.CreateGcpUserAccessBindingRequest;
+
+ /**
+ * Creates a plain object from a CreateGcpUserAccessBindingRequest message. Also converts values to other types if specified.
+ * @param message CreateGcpUserAccessBindingRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.identity.accesscontextmanager.v1.CreateGcpUserAccessBindingRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this CreateGcpUserAccessBindingRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for CreateGcpUserAccessBindingRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an UpdateGcpUserAccessBindingRequest. */
+ interface IUpdateGcpUserAccessBindingRequest {
+
+ /** UpdateGcpUserAccessBindingRequest gcpUserAccessBinding */
+ gcpUserAccessBinding?: (google.identity.accesscontextmanager.v1.IGcpUserAccessBinding|null);
+
+ /** UpdateGcpUserAccessBindingRequest updateMask */
+ updateMask?: (google.protobuf.IFieldMask|null);
+ }
+
+ /** Represents an UpdateGcpUserAccessBindingRequest. */
+ class UpdateGcpUserAccessBindingRequest implements IUpdateGcpUserAccessBindingRequest {
+
+ /**
+ * Constructs a new UpdateGcpUserAccessBindingRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.identity.accesscontextmanager.v1.IUpdateGcpUserAccessBindingRequest);
+
+ /** UpdateGcpUserAccessBindingRequest gcpUserAccessBinding. */
+ public gcpUserAccessBinding?: (google.identity.accesscontextmanager.v1.IGcpUserAccessBinding|null);
+
+ /** UpdateGcpUserAccessBindingRequest updateMask. */
+ public updateMask?: (google.protobuf.IFieldMask|null);
+
+ /**
+ * Creates a new UpdateGcpUserAccessBindingRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns UpdateGcpUserAccessBindingRequest instance
+ */
+ public static create(properties?: google.identity.accesscontextmanager.v1.IUpdateGcpUserAccessBindingRequest): google.identity.accesscontextmanager.v1.UpdateGcpUserAccessBindingRequest;
+
+ /**
+ * Encodes the specified UpdateGcpUserAccessBindingRequest message. Does not implicitly {@link google.identity.accesscontextmanager.v1.UpdateGcpUserAccessBindingRequest.verify|verify} messages.
+ * @param message UpdateGcpUserAccessBindingRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.identity.accesscontextmanager.v1.IUpdateGcpUserAccessBindingRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified UpdateGcpUserAccessBindingRequest message, length delimited. Does not implicitly {@link google.identity.accesscontextmanager.v1.UpdateGcpUserAccessBindingRequest.verify|verify} messages.
+ * @param message UpdateGcpUserAccessBindingRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.identity.accesscontextmanager.v1.IUpdateGcpUserAccessBindingRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an UpdateGcpUserAccessBindingRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns UpdateGcpUserAccessBindingRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.identity.accesscontextmanager.v1.UpdateGcpUserAccessBindingRequest;
+
+ /**
+ * Decodes an UpdateGcpUserAccessBindingRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns UpdateGcpUserAccessBindingRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.identity.accesscontextmanager.v1.UpdateGcpUserAccessBindingRequest;
+
+ /**
+ * Verifies an UpdateGcpUserAccessBindingRequest message.
+ * @param message Plain 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 UpdateGcpUserAccessBindingRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns UpdateGcpUserAccessBindingRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.identity.accesscontextmanager.v1.UpdateGcpUserAccessBindingRequest;
+
+ /**
+ * Creates a plain object from an UpdateGcpUserAccessBindingRequest message. Also converts values to other types if specified.
+ * @param message UpdateGcpUserAccessBindingRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.identity.accesscontextmanager.v1.UpdateGcpUserAccessBindingRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this UpdateGcpUserAccessBindingRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for UpdateGcpUserAccessBindingRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a DeleteGcpUserAccessBindingRequest. */
+ interface IDeleteGcpUserAccessBindingRequest {
+
+ /** DeleteGcpUserAccessBindingRequest name */
+ name?: (string|null);
+ }
+
+ /** Represents a DeleteGcpUserAccessBindingRequest. */
+ class DeleteGcpUserAccessBindingRequest implements IDeleteGcpUserAccessBindingRequest {
+
+ /**
+ * Constructs a new DeleteGcpUserAccessBindingRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.identity.accesscontextmanager.v1.IDeleteGcpUserAccessBindingRequest);
+
+ /** DeleteGcpUserAccessBindingRequest name. */
+ public name: string;
+
+ /**
+ * Creates a new DeleteGcpUserAccessBindingRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns DeleteGcpUserAccessBindingRequest instance
+ */
+ public static create(properties?: google.identity.accesscontextmanager.v1.IDeleteGcpUserAccessBindingRequest): google.identity.accesscontextmanager.v1.DeleteGcpUserAccessBindingRequest;
+
+ /**
+ * Encodes the specified DeleteGcpUserAccessBindingRequest message. Does not implicitly {@link google.identity.accesscontextmanager.v1.DeleteGcpUserAccessBindingRequest.verify|verify} messages.
+ * @param message DeleteGcpUserAccessBindingRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.identity.accesscontextmanager.v1.IDeleteGcpUserAccessBindingRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified DeleteGcpUserAccessBindingRequest message, length delimited. Does not implicitly {@link google.identity.accesscontextmanager.v1.DeleteGcpUserAccessBindingRequest.verify|verify} messages.
+ * @param message DeleteGcpUserAccessBindingRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.identity.accesscontextmanager.v1.IDeleteGcpUserAccessBindingRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a DeleteGcpUserAccessBindingRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns DeleteGcpUserAccessBindingRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.identity.accesscontextmanager.v1.DeleteGcpUserAccessBindingRequest;
+
+ /**
+ * Decodes a DeleteGcpUserAccessBindingRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns DeleteGcpUserAccessBindingRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.identity.accesscontextmanager.v1.DeleteGcpUserAccessBindingRequest;
+
+ /**
+ * Verifies a DeleteGcpUserAccessBindingRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a DeleteGcpUserAccessBindingRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns DeleteGcpUserAccessBindingRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.identity.accesscontextmanager.v1.DeleteGcpUserAccessBindingRequest;
+
+ /**
+ * Creates a plain object from a DeleteGcpUserAccessBindingRequest message. Also converts values to other types if specified.
+ * @param message DeleteGcpUserAccessBindingRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.identity.accesscontextmanager.v1.DeleteGcpUserAccessBindingRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this DeleteGcpUserAccessBindingRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for DeleteGcpUserAccessBindingRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a GcpUserAccessBindingOperationMetadata. */
+ interface IGcpUserAccessBindingOperationMetadata {
+ }
+
+ /** Represents a GcpUserAccessBindingOperationMetadata. */
+ class GcpUserAccessBindingOperationMetadata implements IGcpUserAccessBindingOperationMetadata {
+
+ /**
+ * Constructs a new GcpUserAccessBindingOperationMetadata.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.identity.accesscontextmanager.v1.IGcpUserAccessBindingOperationMetadata);
+
+ /**
+ * Creates a new GcpUserAccessBindingOperationMetadata instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns GcpUserAccessBindingOperationMetadata instance
+ */
+ public static create(properties?: google.identity.accesscontextmanager.v1.IGcpUserAccessBindingOperationMetadata): google.identity.accesscontextmanager.v1.GcpUserAccessBindingOperationMetadata;
+
+ /**
+ * Encodes the specified GcpUserAccessBindingOperationMetadata message. Does not implicitly {@link google.identity.accesscontextmanager.v1.GcpUserAccessBindingOperationMetadata.verify|verify} messages.
+ * @param message GcpUserAccessBindingOperationMetadata message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.identity.accesscontextmanager.v1.IGcpUserAccessBindingOperationMetadata, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified GcpUserAccessBindingOperationMetadata message, length delimited. Does not implicitly {@link google.identity.accesscontextmanager.v1.GcpUserAccessBindingOperationMetadata.verify|verify} messages.
+ * @param message GcpUserAccessBindingOperationMetadata message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.identity.accesscontextmanager.v1.IGcpUserAccessBindingOperationMetadata, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a GcpUserAccessBindingOperationMetadata message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns GcpUserAccessBindingOperationMetadata
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.identity.accesscontextmanager.v1.GcpUserAccessBindingOperationMetadata;
+
+ /**
+ * Decodes a GcpUserAccessBindingOperationMetadata message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns GcpUserAccessBindingOperationMetadata
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.identity.accesscontextmanager.v1.GcpUserAccessBindingOperationMetadata;
+
+ /**
+ * Verifies a GcpUserAccessBindingOperationMetadata message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a GcpUserAccessBindingOperationMetadata message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns GcpUserAccessBindingOperationMetadata
+ */
+ public static fromObject(object: { [k: string]: any }): google.identity.accesscontextmanager.v1.GcpUserAccessBindingOperationMetadata;
+
+ /**
+ * Creates a plain object from a GcpUserAccessBindingOperationMetadata message. Also converts values to other types if specified.
+ * @param message GcpUserAccessBindingOperationMetadata
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.identity.accesscontextmanager.v1.GcpUserAccessBindingOperationMetadata, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this GcpUserAccessBindingOperationMetadata to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for GcpUserAccessBindingOperationMetadata
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an AccessContextManagerOperationMetadata. */
+ interface IAccessContextManagerOperationMetadata {
+ }
+
+ /** Represents an AccessContextManagerOperationMetadata. */
+ class AccessContextManagerOperationMetadata implements IAccessContextManagerOperationMetadata {
+
+ /**
+ * Constructs a new AccessContextManagerOperationMetadata.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.identity.accesscontextmanager.v1.IAccessContextManagerOperationMetadata);
+
+ /**
+ * Creates a new AccessContextManagerOperationMetadata instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns AccessContextManagerOperationMetadata instance
+ */
+ public static create(properties?: google.identity.accesscontextmanager.v1.IAccessContextManagerOperationMetadata): google.identity.accesscontextmanager.v1.AccessContextManagerOperationMetadata;
+
+ /**
+ * Encodes the specified AccessContextManagerOperationMetadata message. Does not implicitly {@link google.identity.accesscontextmanager.v1.AccessContextManagerOperationMetadata.verify|verify} messages.
+ * @param message AccessContextManagerOperationMetadata message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.identity.accesscontextmanager.v1.IAccessContextManagerOperationMetadata, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified AccessContextManagerOperationMetadata message, length delimited. Does not implicitly {@link google.identity.accesscontextmanager.v1.AccessContextManagerOperationMetadata.verify|verify} messages.
+ * @param message AccessContextManagerOperationMetadata message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.identity.accesscontextmanager.v1.IAccessContextManagerOperationMetadata, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an AccessContextManagerOperationMetadata message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns AccessContextManagerOperationMetadata
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.identity.accesscontextmanager.v1.AccessContextManagerOperationMetadata;
+
+ /**
+ * Decodes an AccessContextManagerOperationMetadata message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns AccessContextManagerOperationMetadata
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.identity.accesscontextmanager.v1.AccessContextManagerOperationMetadata;
+
+ /**
+ * Verifies an AccessContextManagerOperationMetadata message.
+ * @param message Plain 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 AccessContextManagerOperationMetadata message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns AccessContextManagerOperationMetadata
+ */
+ public static fromObject(object: { [k: string]: any }): google.identity.accesscontextmanager.v1.AccessContextManagerOperationMetadata;
+
+ /**
+ * Creates a plain object from an AccessContextManagerOperationMetadata message. Also converts values to other types if specified.
+ * @param message AccessContextManagerOperationMetadata
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.identity.accesscontextmanager.v1.AccessContextManagerOperationMetadata, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this AccessContextManagerOperationMetadata to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for AccessContextManagerOperationMetadata
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an AccessLevel. */
+ interface IAccessLevel {
+
+ /** AccessLevel name */
+ name?: (string|null);
+
+ /** AccessLevel title */
+ title?: (string|null);
+
+ /** AccessLevel description */
+ description?: (string|null);
+
+ /** AccessLevel basic */
+ basic?: (google.identity.accesscontextmanager.v1.IBasicLevel|null);
+
+ /** AccessLevel custom */
+ custom?: (google.identity.accesscontextmanager.v1.ICustomLevel|null);
+
+ /** AccessLevel createTime */
+ createTime?: (google.protobuf.ITimestamp|null);
+
+ /** AccessLevel updateTime */
+ updateTime?: (google.protobuf.ITimestamp|null);
+ }
+
+ /** Represents an AccessLevel. */
+ class AccessLevel implements IAccessLevel {
+
+ /**
+ * Constructs a new AccessLevel.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.identity.accesscontextmanager.v1.IAccessLevel);
+
+ /** AccessLevel name. */
+ public name: string;
+
+ /** AccessLevel title. */
+ public title: string;
+
+ /** AccessLevel description. */
+ public description: string;
+
+ /** AccessLevel basic. */
+ public basic?: (google.identity.accesscontextmanager.v1.IBasicLevel|null);
+
+ /** AccessLevel custom. */
+ public custom?: (google.identity.accesscontextmanager.v1.ICustomLevel|null);
+
+ /** AccessLevel createTime. */
+ public createTime?: (google.protobuf.ITimestamp|null);
+
+ /** AccessLevel updateTime. */
+ public updateTime?: (google.protobuf.ITimestamp|null);
+
+ /** AccessLevel level. */
+ public level?: ("basic"|"custom");
+
+ /**
+ * Creates a new AccessLevel instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns AccessLevel instance
+ */
+ public static create(properties?: google.identity.accesscontextmanager.v1.IAccessLevel): google.identity.accesscontextmanager.v1.AccessLevel;
+
+ /**
+ * Encodes the specified AccessLevel message. Does not implicitly {@link google.identity.accesscontextmanager.v1.AccessLevel.verify|verify} messages.
+ * @param message AccessLevel message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.identity.accesscontextmanager.v1.IAccessLevel, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified AccessLevel message, length delimited. Does not implicitly {@link google.identity.accesscontextmanager.v1.AccessLevel.verify|verify} messages.
+ * @param message AccessLevel message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.identity.accesscontextmanager.v1.IAccessLevel, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an AccessLevel message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns AccessLevel
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.identity.accesscontextmanager.v1.AccessLevel;
+
+ /**
+ * Decodes an AccessLevel message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns AccessLevel
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.identity.accesscontextmanager.v1.AccessLevel;
+
+ /**
+ * Verifies an AccessLevel message.
+ * @param message Plain 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 AccessLevel message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns AccessLevel
+ */
+ public static fromObject(object: { [k: string]: any }): google.identity.accesscontextmanager.v1.AccessLevel;
+
+ /**
+ * Creates a plain object from an AccessLevel message. Also converts values to other types if specified.
+ * @param message AccessLevel
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.identity.accesscontextmanager.v1.AccessLevel, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this AccessLevel to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for AccessLevel
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a BasicLevel. */
+ interface IBasicLevel {
+
+ /** BasicLevel conditions */
+ conditions?: (google.identity.accesscontextmanager.v1.ICondition[]|null);
+
+ /** BasicLevel combiningFunction */
+ combiningFunction?: (google.identity.accesscontextmanager.v1.BasicLevel.ConditionCombiningFunction|keyof typeof google.identity.accesscontextmanager.v1.BasicLevel.ConditionCombiningFunction|null);
+ }
+
+ /** Represents a BasicLevel. */
+ class BasicLevel implements IBasicLevel {
+
+ /**
+ * Constructs a new BasicLevel.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.identity.accesscontextmanager.v1.IBasicLevel);
+
+ /** BasicLevel conditions. */
+ public conditions: google.identity.accesscontextmanager.v1.ICondition[];
+
+ /** BasicLevel combiningFunction. */
+ public combiningFunction: (google.identity.accesscontextmanager.v1.BasicLevel.ConditionCombiningFunction|keyof typeof google.identity.accesscontextmanager.v1.BasicLevel.ConditionCombiningFunction);
+
+ /**
+ * Creates a new BasicLevel instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns BasicLevel instance
+ */
+ public static create(properties?: google.identity.accesscontextmanager.v1.IBasicLevel): google.identity.accesscontextmanager.v1.BasicLevel;
+
+ /**
+ * Encodes the specified BasicLevel message. Does not implicitly {@link google.identity.accesscontextmanager.v1.BasicLevel.verify|verify} messages.
+ * @param message BasicLevel message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.identity.accesscontextmanager.v1.IBasicLevel, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified BasicLevel message, length delimited. Does not implicitly {@link google.identity.accesscontextmanager.v1.BasicLevel.verify|verify} messages.
+ * @param message BasicLevel message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.identity.accesscontextmanager.v1.IBasicLevel, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a BasicLevel message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns BasicLevel
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.identity.accesscontextmanager.v1.BasicLevel;
+
+ /**
+ * Decodes a BasicLevel message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns BasicLevel
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.identity.accesscontextmanager.v1.BasicLevel;
+
+ /**
+ * Verifies a BasicLevel message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a BasicLevel message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns BasicLevel
+ */
+ public static fromObject(object: { [k: string]: any }): google.identity.accesscontextmanager.v1.BasicLevel;
+
+ /**
+ * Creates a plain object from a BasicLevel message. Also converts values to other types if specified.
+ * @param message BasicLevel
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.identity.accesscontextmanager.v1.BasicLevel, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this BasicLevel to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for BasicLevel
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace BasicLevel {
+
+ /** ConditionCombiningFunction enum. */
+ enum ConditionCombiningFunction {
+ AND = 0,
+ OR = 1
+ }
+ }
+
+ /** Properties of a Condition. */
+ interface ICondition {
+
+ /** Condition ipSubnetworks */
+ ipSubnetworks?: (string[]|null);
+
+ /** Condition devicePolicy */
+ devicePolicy?: (google.identity.accesscontextmanager.v1.IDevicePolicy|null);
+
+ /** Condition requiredAccessLevels */
+ requiredAccessLevels?: (string[]|null);
+
+ /** Condition negate */
+ negate?: (boolean|null);
+
+ /** Condition members */
+ members?: (string[]|null);
+
+ /** Condition regions */
+ regions?: (string[]|null);
+ }
+
+ /** Represents a Condition. */
+ class Condition implements ICondition {
+
+ /**
+ * Constructs a new Condition.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.identity.accesscontextmanager.v1.ICondition);
+
+ /** Condition ipSubnetworks. */
+ public ipSubnetworks: string[];
+
+ /** Condition devicePolicy. */
+ public devicePolicy?: (google.identity.accesscontextmanager.v1.IDevicePolicy|null);
+
+ /** Condition requiredAccessLevels. */
+ public requiredAccessLevels: string[];
+
+ /** Condition negate. */
+ public negate: boolean;
+
+ /** Condition members. */
+ public members: string[];
+
+ /** Condition regions. */
+ public regions: string[];
+
+ /**
+ * Creates a new Condition instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Condition instance
+ */
+ public static create(properties?: google.identity.accesscontextmanager.v1.ICondition): google.identity.accesscontextmanager.v1.Condition;
+
+ /**
+ * Encodes the specified Condition message. Does not implicitly {@link google.identity.accesscontextmanager.v1.Condition.verify|verify} messages.
+ * @param message Condition message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.identity.accesscontextmanager.v1.ICondition, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Condition message, length delimited. Does not implicitly {@link google.identity.accesscontextmanager.v1.Condition.verify|verify} messages.
+ * @param message Condition message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.identity.accesscontextmanager.v1.ICondition, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Condition message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Condition
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.identity.accesscontextmanager.v1.Condition;
+
+ /**
+ * Decodes a Condition message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Condition
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.identity.accesscontextmanager.v1.Condition;
+
+ /**
+ * Verifies a Condition message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a Condition message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Condition
+ */
+ public static fromObject(object: { [k: string]: any }): google.identity.accesscontextmanager.v1.Condition;
+
+ /**
+ * Creates a plain object from a Condition message. Also converts values to other types if specified.
+ * @param message Condition
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.identity.accesscontextmanager.v1.Condition, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Condition to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Condition
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a CustomLevel. */
+ interface ICustomLevel {
+
+ /** CustomLevel expr */
+ expr?: (google.type.IExpr|null);
+ }
+
+ /** Represents a CustomLevel. */
+ class CustomLevel implements ICustomLevel {
+
+ /**
+ * Constructs a new CustomLevel.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.identity.accesscontextmanager.v1.ICustomLevel);
+
+ /** CustomLevel expr. */
+ public expr?: (google.type.IExpr|null);
+
+ /**
+ * Creates a new CustomLevel instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns CustomLevel instance
+ */
+ public static create(properties?: google.identity.accesscontextmanager.v1.ICustomLevel): google.identity.accesscontextmanager.v1.CustomLevel;
+
+ /**
+ * Encodes the specified CustomLevel message. Does not implicitly {@link google.identity.accesscontextmanager.v1.CustomLevel.verify|verify} messages.
+ * @param message CustomLevel message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.identity.accesscontextmanager.v1.ICustomLevel, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified CustomLevel message, length delimited. Does not implicitly {@link google.identity.accesscontextmanager.v1.CustomLevel.verify|verify} messages.
+ * @param message CustomLevel message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.identity.accesscontextmanager.v1.ICustomLevel, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a CustomLevel message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns CustomLevel
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.identity.accesscontextmanager.v1.CustomLevel;
+
+ /**
+ * Decodes a CustomLevel message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns CustomLevel
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.identity.accesscontextmanager.v1.CustomLevel;
+
+ /**
+ * Verifies a CustomLevel message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a CustomLevel message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns CustomLevel
+ */
+ public static fromObject(object: { [k: string]: any }): google.identity.accesscontextmanager.v1.CustomLevel;
+
+ /**
+ * Creates a plain object from a CustomLevel message. Also converts values to other types if specified.
+ * @param message CustomLevel
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.identity.accesscontextmanager.v1.CustomLevel, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this CustomLevel to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for CustomLevel
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a DevicePolicy. */
+ interface IDevicePolicy {
+
+ /** DevicePolicy requireScreenlock */
+ requireScreenlock?: (boolean|null);
+
+ /** DevicePolicy allowedEncryptionStatuses */
+ allowedEncryptionStatuses?: (google.identity.accesscontextmanager.type.DeviceEncryptionStatus[]|null);
+
+ /** DevicePolicy osConstraints */
+ osConstraints?: (google.identity.accesscontextmanager.v1.IOsConstraint[]|null);
+
+ /** DevicePolicy allowedDeviceManagementLevels */
+ allowedDeviceManagementLevels?: (google.identity.accesscontextmanager.type.DeviceManagementLevel[]|null);
+
+ /** DevicePolicy requireAdminApproval */
+ requireAdminApproval?: (boolean|null);
+
+ /** DevicePolicy requireCorpOwned */
+ requireCorpOwned?: (boolean|null);
+ }
+
+ /** Represents a DevicePolicy. */
+ class DevicePolicy implements IDevicePolicy {
+
+ /**
+ * Constructs a new DevicePolicy.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.identity.accesscontextmanager.v1.IDevicePolicy);
+
+ /** DevicePolicy requireScreenlock. */
+ public requireScreenlock: boolean;
+
+ /** DevicePolicy allowedEncryptionStatuses. */
+ public allowedEncryptionStatuses: google.identity.accesscontextmanager.type.DeviceEncryptionStatus[];
+
+ /** DevicePolicy osConstraints. */
+ public osConstraints: google.identity.accesscontextmanager.v1.IOsConstraint[];
+
+ /** DevicePolicy allowedDeviceManagementLevels. */
+ public allowedDeviceManagementLevels: google.identity.accesscontextmanager.type.DeviceManagementLevel[];
+
+ /** DevicePolicy requireAdminApproval. */
+ public requireAdminApproval: boolean;
+
+ /** DevicePolicy requireCorpOwned. */
+ public requireCorpOwned: boolean;
+
+ /**
+ * Creates a new DevicePolicy instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns DevicePolicy instance
+ */
+ public static create(properties?: google.identity.accesscontextmanager.v1.IDevicePolicy): google.identity.accesscontextmanager.v1.DevicePolicy;
+
+ /**
+ * Encodes the specified DevicePolicy message. Does not implicitly {@link google.identity.accesscontextmanager.v1.DevicePolicy.verify|verify} messages.
+ * @param message DevicePolicy message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.identity.accesscontextmanager.v1.IDevicePolicy, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified DevicePolicy message, length delimited. Does not implicitly {@link google.identity.accesscontextmanager.v1.DevicePolicy.verify|verify} messages.
+ * @param message DevicePolicy message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.identity.accesscontextmanager.v1.IDevicePolicy, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a DevicePolicy message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns DevicePolicy
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.identity.accesscontextmanager.v1.DevicePolicy;
+
+ /**
+ * Decodes a DevicePolicy message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns DevicePolicy
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.identity.accesscontextmanager.v1.DevicePolicy;
+
+ /**
+ * Verifies a DevicePolicy message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a DevicePolicy message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns DevicePolicy
+ */
+ public static fromObject(object: { [k: string]: any }): google.identity.accesscontextmanager.v1.DevicePolicy;
+
+ /**
+ * Creates a plain object from a DevicePolicy message. Also converts values to other types if specified.
+ * @param message DevicePolicy
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.identity.accesscontextmanager.v1.DevicePolicy, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this DevicePolicy to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for DevicePolicy
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an OsConstraint. */
+ interface IOsConstraint {
+
+ /** OsConstraint osType */
+ osType?: (google.identity.accesscontextmanager.type.OsType|keyof typeof google.identity.accesscontextmanager.type.OsType|null);
+
+ /** OsConstraint minimumVersion */
+ minimumVersion?: (string|null);
+
+ /** OsConstraint requireVerifiedChromeOs */
+ requireVerifiedChromeOs?: (boolean|null);
+ }
+
+ /** Represents an OsConstraint. */
+ class OsConstraint implements IOsConstraint {
+
+ /**
+ * Constructs a new OsConstraint.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.identity.accesscontextmanager.v1.IOsConstraint);
+
+ /** OsConstraint osType. */
+ public osType: (google.identity.accesscontextmanager.type.OsType|keyof typeof google.identity.accesscontextmanager.type.OsType);
+
+ /** OsConstraint minimumVersion. */
+ public minimumVersion: string;
+
+ /** OsConstraint requireVerifiedChromeOs. */
+ public requireVerifiedChromeOs: boolean;
+
+ /**
+ * Creates a new OsConstraint instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns OsConstraint instance
+ */
+ public static create(properties?: google.identity.accesscontextmanager.v1.IOsConstraint): google.identity.accesscontextmanager.v1.OsConstraint;
+
+ /**
+ * Encodes the specified OsConstraint message. Does not implicitly {@link google.identity.accesscontextmanager.v1.OsConstraint.verify|verify} messages.
+ * @param message OsConstraint message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.identity.accesscontextmanager.v1.IOsConstraint, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified OsConstraint message, length delimited. Does not implicitly {@link google.identity.accesscontextmanager.v1.OsConstraint.verify|verify} messages.
+ * @param message OsConstraint message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.identity.accesscontextmanager.v1.IOsConstraint, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an OsConstraint message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns OsConstraint
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.identity.accesscontextmanager.v1.OsConstraint;
+
+ /**
+ * Decodes an OsConstraint message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns OsConstraint
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.identity.accesscontextmanager.v1.OsConstraint;
+
+ /**
+ * Verifies an OsConstraint message.
+ * @param message Plain 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 OsConstraint message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns OsConstraint
+ */
+ public static fromObject(object: { [k: string]: any }): google.identity.accesscontextmanager.v1.OsConstraint;
+
+ /**
+ * Creates a plain object from an OsConstraint message. Also converts values to other types if specified.
+ * @param message OsConstraint
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.identity.accesscontextmanager.v1.OsConstraint, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this OsConstraint to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for OsConstraint
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an AccessPolicy. */
+ interface IAccessPolicy {
+
+ /** AccessPolicy name */
+ name?: (string|null);
+
+ /** AccessPolicy parent */
+ parent?: (string|null);
+
+ /** AccessPolicy title */
+ title?: (string|null);
+
+ /** AccessPolicy scopes */
+ scopes?: (string[]|null);
+
+ /** AccessPolicy createTime */
+ createTime?: (google.protobuf.ITimestamp|null);
+
+ /** AccessPolicy updateTime */
+ updateTime?: (google.protobuf.ITimestamp|null);
+
+ /** AccessPolicy etag */
+ etag?: (string|null);
+ }
+
+ /** Represents an AccessPolicy. */
+ class AccessPolicy implements IAccessPolicy {
+
+ /**
+ * Constructs a new AccessPolicy.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.identity.accesscontextmanager.v1.IAccessPolicy);
+
+ /** AccessPolicy name. */
+ public name: string;
+
+ /** AccessPolicy parent. */
+ public parent: string;
+
+ /** AccessPolicy title. */
+ public title: string;
+
+ /** AccessPolicy scopes. */
+ public scopes: string[];
+
+ /** AccessPolicy createTime. */
+ public createTime?: (google.protobuf.ITimestamp|null);
+
+ /** AccessPolicy updateTime. */
+ public updateTime?: (google.protobuf.ITimestamp|null);
+
+ /** AccessPolicy etag. */
+ public etag: string;
+
+ /**
+ * Creates a new AccessPolicy instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns AccessPolicy instance
+ */
+ public static create(properties?: google.identity.accesscontextmanager.v1.IAccessPolicy): google.identity.accesscontextmanager.v1.AccessPolicy;
+
+ /**
+ * Encodes the specified AccessPolicy message. Does not implicitly {@link google.identity.accesscontextmanager.v1.AccessPolicy.verify|verify} messages.
+ * @param message AccessPolicy message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.identity.accesscontextmanager.v1.IAccessPolicy, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified AccessPolicy message, length delimited. Does not implicitly {@link google.identity.accesscontextmanager.v1.AccessPolicy.verify|verify} messages.
+ * @param message AccessPolicy message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.identity.accesscontextmanager.v1.IAccessPolicy, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an AccessPolicy message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns AccessPolicy
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.identity.accesscontextmanager.v1.AccessPolicy;
+
+ /**
+ * Decodes an AccessPolicy message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns AccessPolicy
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.identity.accesscontextmanager.v1.AccessPolicy;
+
+ /**
+ * Verifies an AccessPolicy message.
+ * @param message Plain 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 AccessPolicy message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns AccessPolicy
+ */
+ public static fromObject(object: { [k: string]: any }): google.identity.accesscontextmanager.v1.AccessPolicy;
+
+ /**
+ * Creates a plain object from an AccessPolicy message. Also converts values to other types if specified.
+ * @param message AccessPolicy
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.identity.accesscontextmanager.v1.AccessPolicy, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this AccessPolicy to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for AccessPolicy
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a GcpUserAccessBinding. */
+ interface IGcpUserAccessBinding {
+
+ /** GcpUserAccessBinding name */
+ name?: (string|null);
+
+ /** GcpUserAccessBinding groupKey */
+ groupKey?: (string|null);
+
+ /** GcpUserAccessBinding accessLevels */
+ accessLevels?: (string[]|null);
+ }
+
+ /** Represents a GcpUserAccessBinding. */
+ class GcpUserAccessBinding implements IGcpUserAccessBinding {
+
+ /**
+ * Constructs a new GcpUserAccessBinding.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.identity.accesscontextmanager.v1.IGcpUserAccessBinding);
+
+ /** GcpUserAccessBinding name. */
+ public name: string;
+
+ /** GcpUserAccessBinding groupKey. */
+ public groupKey: string;
+
+ /** GcpUserAccessBinding accessLevels. */
+ public accessLevels: string[];
+
+ /**
+ * Creates a new GcpUserAccessBinding instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns GcpUserAccessBinding instance
+ */
+ public static create(properties?: google.identity.accesscontextmanager.v1.IGcpUserAccessBinding): google.identity.accesscontextmanager.v1.GcpUserAccessBinding;
+
+ /**
+ * Encodes the specified GcpUserAccessBinding message. Does not implicitly {@link google.identity.accesscontextmanager.v1.GcpUserAccessBinding.verify|verify} messages.
+ * @param message GcpUserAccessBinding message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.identity.accesscontextmanager.v1.IGcpUserAccessBinding, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified GcpUserAccessBinding message, length delimited. Does not implicitly {@link google.identity.accesscontextmanager.v1.GcpUserAccessBinding.verify|verify} messages.
+ * @param message GcpUserAccessBinding message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.identity.accesscontextmanager.v1.IGcpUserAccessBinding, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a GcpUserAccessBinding message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns GcpUserAccessBinding
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.identity.accesscontextmanager.v1.GcpUserAccessBinding;
+
+ /**
+ * Decodes a GcpUserAccessBinding message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns GcpUserAccessBinding
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.identity.accesscontextmanager.v1.GcpUserAccessBinding;
+
+ /**
+ * Verifies a GcpUserAccessBinding message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a GcpUserAccessBinding message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns GcpUserAccessBinding
+ */
+ public static fromObject(object: { [k: string]: any }): google.identity.accesscontextmanager.v1.GcpUserAccessBinding;
+
+ /**
+ * Creates a plain object from a GcpUserAccessBinding message. Also converts values to other types if specified.
+ * @param message GcpUserAccessBinding
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.identity.accesscontextmanager.v1.GcpUserAccessBinding, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this GcpUserAccessBinding to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for GcpUserAccessBinding
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ServicePerimeter. */
+ interface IServicePerimeter {
+
+ /** ServicePerimeter name */
+ name?: (string|null);
+
+ /** ServicePerimeter title */
+ title?: (string|null);
+
+ /** ServicePerimeter description */
+ description?: (string|null);
+
+ /** ServicePerimeter createTime */
+ createTime?: (google.protobuf.ITimestamp|null);
+
+ /** ServicePerimeter updateTime */
+ updateTime?: (google.protobuf.ITimestamp|null);
+
+ /** ServicePerimeter perimeterType */
+ perimeterType?: (google.identity.accesscontextmanager.v1.ServicePerimeter.PerimeterType|keyof typeof google.identity.accesscontextmanager.v1.ServicePerimeter.PerimeterType|null);
+
+ /** ServicePerimeter status */
+ status?: (google.identity.accesscontextmanager.v1.IServicePerimeterConfig|null);
+
+ /** ServicePerimeter spec */
+ spec?: (google.identity.accesscontextmanager.v1.IServicePerimeterConfig|null);
+
+ /** ServicePerimeter useExplicitDryRunSpec */
+ useExplicitDryRunSpec?: (boolean|null);
+ }
+
+ /** Represents a ServicePerimeter. */
+ class ServicePerimeter implements IServicePerimeter {
+
+ /**
+ * Constructs a new ServicePerimeter.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.identity.accesscontextmanager.v1.IServicePerimeter);
+
+ /** ServicePerimeter name. */
+ public name: string;
+
+ /** ServicePerimeter title. */
+ public title: string;
+
+ /** ServicePerimeter description. */
+ public description: string;
+
+ /** ServicePerimeter createTime. */
+ public createTime?: (google.protobuf.ITimestamp|null);
+
+ /** ServicePerimeter updateTime. */
+ public updateTime?: (google.protobuf.ITimestamp|null);
+
+ /** ServicePerimeter perimeterType. */
+ public perimeterType: (google.identity.accesscontextmanager.v1.ServicePerimeter.PerimeterType|keyof typeof google.identity.accesscontextmanager.v1.ServicePerimeter.PerimeterType);
+
+ /** ServicePerimeter status. */
+ public status?: (google.identity.accesscontextmanager.v1.IServicePerimeterConfig|null);
+
+ /** ServicePerimeter spec. */
+ public spec?: (google.identity.accesscontextmanager.v1.IServicePerimeterConfig|null);
+
+ /** ServicePerimeter useExplicitDryRunSpec. */
+ public useExplicitDryRunSpec: boolean;
+
+ /**
+ * Creates a new ServicePerimeter instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ServicePerimeter instance
+ */
+ public static create(properties?: google.identity.accesscontextmanager.v1.IServicePerimeter): google.identity.accesscontextmanager.v1.ServicePerimeter;
+
+ /**
+ * Encodes the specified ServicePerimeter message. Does not implicitly {@link google.identity.accesscontextmanager.v1.ServicePerimeter.verify|verify} messages.
+ * @param message ServicePerimeter message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.identity.accesscontextmanager.v1.IServicePerimeter, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ServicePerimeter message, length delimited. Does not implicitly {@link google.identity.accesscontextmanager.v1.ServicePerimeter.verify|verify} messages.
+ * @param message ServicePerimeter message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.identity.accesscontextmanager.v1.IServicePerimeter, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ServicePerimeter message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ServicePerimeter
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.identity.accesscontextmanager.v1.ServicePerimeter;
+
+ /**
+ * Decodes a ServicePerimeter message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ServicePerimeter
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.identity.accesscontextmanager.v1.ServicePerimeter;
+
+ /**
+ * Verifies a ServicePerimeter message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ServicePerimeter message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ServicePerimeter
+ */
+ public static fromObject(object: { [k: string]: any }): google.identity.accesscontextmanager.v1.ServicePerimeter;
+
+ /**
+ * Creates a plain object from a ServicePerimeter message. Also converts values to other types if specified.
+ * @param message ServicePerimeter
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.identity.accesscontextmanager.v1.ServicePerimeter, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ServicePerimeter to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ServicePerimeter
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace ServicePerimeter {
+
+ /** PerimeterType enum. */
+ enum PerimeterType {
+ PERIMETER_TYPE_REGULAR = 0,
+ PERIMETER_TYPE_BRIDGE = 1
+ }
+ }
+
+ /** Properties of a ServicePerimeterConfig. */
+ interface IServicePerimeterConfig {
+
+ /** ServicePerimeterConfig resources */
+ resources?: (string[]|null);
+
+ /** ServicePerimeterConfig accessLevels */
+ accessLevels?: (string[]|null);
+
+ /** ServicePerimeterConfig restrictedServices */
+ restrictedServices?: (string[]|null);
+
+ /** ServicePerimeterConfig vpcAccessibleServices */
+ vpcAccessibleServices?: (google.identity.accesscontextmanager.v1.ServicePerimeterConfig.IVpcAccessibleServices|null);
+
+ /** ServicePerimeterConfig ingressPolicies */
+ ingressPolicies?: (google.identity.accesscontextmanager.v1.ServicePerimeterConfig.IIngressPolicy[]|null);
+
+ /** ServicePerimeterConfig egressPolicies */
+ egressPolicies?: (google.identity.accesscontextmanager.v1.ServicePerimeterConfig.IEgressPolicy[]|null);
+ }
+
+ /** Represents a ServicePerimeterConfig. */
+ class ServicePerimeterConfig implements IServicePerimeterConfig {
+
+ /**
+ * Constructs a new ServicePerimeterConfig.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.identity.accesscontextmanager.v1.IServicePerimeterConfig);
+
+ /** ServicePerimeterConfig resources. */
+ public resources: string[];
+
+ /** ServicePerimeterConfig accessLevels. */
+ public accessLevels: string[];
+
+ /** ServicePerimeterConfig restrictedServices. */
+ public restrictedServices: string[];
+
+ /** ServicePerimeterConfig vpcAccessibleServices. */
+ public vpcAccessibleServices?: (google.identity.accesscontextmanager.v1.ServicePerimeterConfig.IVpcAccessibleServices|null);
+
+ /** ServicePerimeterConfig ingressPolicies. */
+ public ingressPolicies: google.identity.accesscontextmanager.v1.ServicePerimeterConfig.IIngressPolicy[];
+
+ /** ServicePerimeterConfig egressPolicies. */
+ public egressPolicies: google.identity.accesscontextmanager.v1.ServicePerimeterConfig.IEgressPolicy[];
+
+ /**
+ * Creates a new ServicePerimeterConfig instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ServicePerimeterConfig instance
+ */
+ public static create(properties?: google.identity.accesscontextmanager.v1.IServicePerimeterConfig): google.identity.accesscontextmanager.v1.ServicePerimeterConfig;
+
+ /**
+ * Encodes the specified ServicePerimeterConfig message. Does not implicitly {@link google.identity.accesscontextmanager.v1.ServicePerimeterConfig.verify|verify} messages.
+ * @param message ServicePerimeterConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.identity.accesscontextmanager.v1.IServicePerimeterConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ServicePerimeterConfig message, length delimited. Does not implicitly {@link google.identity.accesscontextmanager.v1.ServicePerimeterConfig.verify|verify} messages.
+ * @param message ServicePerimeterConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.identity.accesscontextmanager.v1.IServicePerimeterConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ServicePerimeterConfig message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ServicePerimeterConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.identity.accesscontextmanager.v1.ServicePerimeterConfig;
+
+ /**
+ * Decodes a ServicePerimeterConfig message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ServicePerimeterConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.identity.accesscontextmanager.v1.ServicePerimeterConfig;
+
+ /**
+ * Verifies a ServicePerimeterConfig message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ServicePerimeterConfig message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ServicePerimeterConfig
+ */
+ public static fromObject(object: { [k: string]: any }): google.identity.accesscontextmanager.v1.ServicePerimeterConfig;
+
+ /**
+ * Creates a plain object from a ServicePerimeterConfig message. Also converts values to other types if specified.
+ * @param message ServicePerimeterConfig
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.identity.accesscontextmanager.v1.ServicePerimeterConfig, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ServicePerimeterConfig to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ServicePerimeterConfig
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace ServicePerimeterConfig {
+
+ /** Properties of a VpcAccessibleServices. */
+ interface IVpcAccessibleServices {
+
+ /** VpcAccessibleServices enableRestriction */
+ enableRestriction?: (boolean|null);
+
+ /** VpcAccessibleServices allowedServices */
+ allowedServices?: (string[]|null);
+ }
+
+ /** Represents a VpcAccessibleServices. */
+ class VpcAccessibleServices implements IVpcAccessibleServices {
+
+ /**
+ * Constructs a new VpcAccessibleServices.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.identity.accesscontextmanager.v1.ServicePerimeterConfig.IVpcAccessibleServices);
+
+ /** VpcAccessibleServices enableRestriction. */
+ public enableRestriction: boolean;
+
+ /** VpcAccessibleServices allowedServices. */
+ public allowedServices: string[];
+
+ /**
+ * Creates a new VpcAccessibleServices instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns VpcAccessibleServices instance
+ */
+ public static create(properties?: google.identity.accesscontextmanager.v1.ServicePerimeterConfig.IVpcAccessibleServices): google.identity.accesscontextmanager.v1.ServicePerimeterConfig.VpcAccessibleServices;
+
+ /**
+ * Encodes the specified VpcAccessibleServices message. Does not implicitly {@link google.identity.accesscontextmanager.v1.ServicePerimeterConfig.VpcAccessibleServices.verify|verify} messages.
+ * @param message VpcAccessibleServices message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.identity.accesscontextmanager.v1.ServicePerimeterConfig.IVpcAccessibleServices, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified VpcAccessibleServices message, length delimited. Does not implicitly {@link google.identity.accesscontextmanager.v1.ServicePerimeterConfig.VpcAccessibleServices.verify|verify} messages.
+ * @param message VpcAccessibleServices message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.identity.accesscontextmanager.v1.ServicePerimeterConfig.IVpcAccessibleServices, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a VpcAccessibleServices message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns VpcAccessibleServices
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.identity.accesscontextmanager.v1.ServicePerimeterConfig.VpcAccessibleServices;
+
+ /**
+ * Decodes a VpcAccessibleServices message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns VpcAccessibleServices
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.identity.accesscontextmanager.v1.ServicePerimeterConfig.VpcAccessibleServices;
+
+ /**
+ * Verifies a VpcAccessibleServices message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a VpcAccessibleServices message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns VpcAccessibleServices
+ */
+ public static fromObject(object: { [k: string]: any }): google.identity.accesscontextmanager.v1.ServicePerimeterConfig.VpcAccessibleServices;
+
+ /**
+ * Creates a plain object from a VpcAccessibleServices message. Also converts values to other types if specified.
+ * @param message VpcAccessibleServices
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.identity.accesscontextmanager.v1.ServicePerimeterConfig.VpcAccessibleServices, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this VpcAccessibleServices to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for VpcAccessibleServices
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** IdentityType enum. */
+ enum IdentityType {
+ IDENTITY_TYPE_UNSPECIFIED = 0,
+ ANY_IDENTITY = 1,
+ ANY_USER_ACCOUNT = 2,
+ ANY_SERVICE_ACCOUNT = 3
+ }
+
+ /** Properties of a MethodSelector. */
+ interface IMethodSelector {
+
+ /** MethodSelector method */
+ method?: (string|null);
+
+ /** MethodSelector permission */
+ permission?: (string|null);
+ }
+
+ /** Represents a MethodSelector. */
+ class MethodSelector implements IMethodSelector {
+
+ /**
+ * Constructs a new MethodSelector.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.identity.accesscontextmanager.v1.ServicePerimeterConfig.IMethodSelector);
+
+ /** MethodSelector method. */
+ public method?: (string|null);
+
+ /** MethodSelector permission. */
+ public permission?: (string|null);
+
+ /** MethodSelector kind. */
+ public kind?: ("method"|"permission");
+
+ /**
+ * Creates a new MethodSelector instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns MethodSelector instance
+ */
+ public static create(properties?: google.identity.accesscontextmanager.v1.ServicePerimeterConfig.IMethodSelector): google.identity.accesscontextmanager.v1.ServicePerimeterConfig.MethodSelector;
+
+ /**
+ * Encodes the specified MethodSelector message. Does not implicitly {@link google.identity.accesscontextmanager.v1.ServicePerimeterConfig.MethodSelector.verify|verify} messages.
+ * @param message MethodSelector message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.identity.accesscontextmanager.v1.ServicePerimeterConfig.IMethodSelector, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified MethodSelector message, length delimited. Does not implicitly {@link google.identity.accesscontextmanager.v1.ServicePerimeterConfig.MethodSelector.verify|verify} messages.
+ * @param message MethodSelector message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.identity.accesscontextmanager.v1.ServicePerimeterConfig.IMethodSelector, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a MethodSelector message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns MethodSelector
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.identity.accesscontextmanager.v1.ServicePerimeterConfig.MethodSelector;
+
+ /**
+ * Decodes a MethodSelector message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns MethodSelector
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.identity.accesscontextmanager.v1.ServicePerimeterConfig.MethodSelector;
+
+ /**
+ * Verifies a MethodSelector message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a MethodSelector message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns MethodSelector
+ */
+ public static fromObject(object: { [k: string]: any }): google.identity.accesscontextmanager.v1.ServicePerimeterConfig.MethodSelector;
+
+ /**
+ * Creates a plain object from a MethodSelector message. Also converts values to other types if specified.
+ * @param message MethodSelector
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.identity.accesscontextmanager.v1.ServicePerimeterConfig.MethodSelector, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this MethodSelector to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for MethodSelector
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an ApiOperation. */
+ interface IApiOperation {
+
+ /** ApiOperation serviceName */
+ serviceName?: (string|null);
+
+ /** ApiOperation methodSelectors */
+ methodSelectors?: (google.identity.accesscontextmanager.v1.ServicePerimeterConfig.IMethodSelector[]|null);
+ }
+
+ /** Represents an ApiOperation. */
+ class ApiOperation implements IApiOperation {
+
+ /**
+ * Constructs a new ApiOperation.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.identity.accesscontextmanager.v1.ServicePerimeterConfig.IApiOperation);
+
+ /** ApiOperation serviceName. */
+ public serviceName: string;
+
+ /** ApiOperation methodSelectors. */
+ public methodSelectors: google.identity.accesscontextmanager.v1.ServicePerimeterConfig.IMethodSelector[];
+
+ /**
+ * Creates a new ApiOperation instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ApiOperation instance
+ */
+ public static create(properties?: google.identity.accesscontextmanager.v1.ServicePerimeterConfig.IApiOperation): google.identity.accesscontextmanager.v1.ServicePerimeterConfig.ApiOperation;
+
+ /**
+ * Encodes the specified ApiOperation message. Does not implicitly {@link google.identity.accesscontextmanager.v1.ServicePerimeterConfig.ApiOperation.verify|verify} messages.
+ * @param message ApiOperation message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.identity.accesscontextmanager.v1.ServicePerimeterConfig.IApiOperation, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ApiOperation message, length delimited. Does not implicitly {@link google.identity.accesscontextmanager.v1.ServicePerimeterConfig.ApiOperation.verify|verify} messages.
+ * @param message ApiOperation message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.identity.accesscontextmanager.v1.ServicePerimeterConfig.IApiOperation, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an ApiOperation message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ApiOperation
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.identity.accesscontextmanager.v1.ServicePerimeterConfig.ApiOperation;
+
+ /**
+ * Decodes an ApiOperation message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ApiOperation
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.identity.accesscontextmanager.v1.ServicePerimeterConfig.ApiOperation;
+
+ /**
+ * Verifies an ApiOperation message.
+ * @param message Plain 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 ApiOperation message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ApiOperation
+ */
+ public static fromObject(object: { [k: string]: any }): google.identity.accesscontextmanager.v1.ServicePerimeterConfig.ApiOperation;
+
+ /**
+ * Creates a plain object from an ApiOperation message. Also converts values to other types if specified.
+ * @param message ApiOperation
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.identity.accesscontextmanager.v1.ServicePerimeterConfig.ApiOperation, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ApiOperation to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ApiOperation
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an IngressSource. */
+ interface IIngressSource {
+
+ /** IngressSource accessLevel */
+ accessLevel?: (string|null);
+
+ /** IngressSource resource */
+ resource?: (string|null);
+ }
+
+ /** Represents an IngressSource. */
+ class IngressSource implements IIngressSource {
+
+ /**
+ * Constructs a new IngressSource.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.identity.accesscontextmanager.v1.ServicePerimeterConfig.IIngressSource);
+
+ /** IngressSource accessLevel. */
+ public accessLevel?: (string|null);
+
+ /** IngressSource resource. */
+ public resource?: (string|null);
+
+ /** IngressSource source. */
+ public source?: ("accessLevel"|"resource");
+
+ /**
+ * Creates a new IngressSource instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns IngressSource instance
+ */
+ public static create(properties?: google.identity.accesscontextmanager.v1.ServicePerimeterConfig.IIngressSource): google.identity.accesscontextmanager.v1.ServicePerimeterConfig.IngressSource;
+
+ /**
+ * Encodes the specified IngressSource message. Does not implicitly {@link google.identity.accesscontextmanager.v1.ServicePerimeterConfig.IngressSource.verify|verify} messages.
+ * @param message IngressSource message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.identity.accesscontextmanager.v1.ServicePerimeterConfig.IIngressSource, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified IngressSource message, length delimited. Does not implicitly {@link google.identity.accesscontextmanager.v1.ServicePerimeterConfig.IngressSource.verify|verify} messages.
+ * @param message IngressSource message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.identity.accesscontextmanager.v1.ServicePerimeterConfig.IIngressSource, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an IngressSource message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns IngressSource
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.identity.accesscontextmanager.v1.ServicePerimeterConfig.IngressSource;
+
+ /**
+ * Decodes an IngressSource message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns IngressSource
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.identity.accesscontextmanager.v1.ServicePerimeterConfig.IngressSource;
+
+ /**
+ * Verifies an IngressSource message.
+ * @param message Plain 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 IngressSource message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns IngressSource
+ */
+ public static fromObject(object: { [k: string]: any }): google.identity.accesscontextmanager.v1.ServicePerimeterConfig.IngressSource;
+
+ /**
+ * Creates a plain object from an IngressSource message. Also converts values to other types if specified.
+ * @param message IngressSource
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.identity.accesscontextmanager.v1.ServicePerimeterConfig.IngressSource, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this IngressSource to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for IngressSource
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an IngressFrom. */
+ interface IIngressFrom {
+
+ /** IngressFrom sources */
+ sources?: (google.identity.accesscontextmanager.v1.ServicePerimeterConfig.IIngressSource[]|null);
+
+ /** IngressFrom identities */
+ identities?: (string[]|null);
+
+ /** IngressFrom identityType */
+ identityType?: (google.identity.accesscontextmanager.v1.ServicePerimeterConfig.IdentityType|keyof typeof google.identity.accesscontextmanager.v1.ServicePerimeterConfig.IdentityType|null);
+ }
+
+ /** Represents an IngressFrom. */
+ class IngressFrom implements IIngressFrom {
+
+ /**
+ * Constructs a new IngressFrom.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.identity.accesscontextmanager.v1.ServicePerimeterConfig.IIngressFrom);
+
+ /** IngressFrom sources. */
+ public sources: google.identity.accesscontextmanager.v1.ServicePerimeterConfig.IIngressSource[];
+
+ /** IngressFrom identities. */
+ public identities: string[];
+
+ /** IngressFrom identityType. */
+ public identityType: (google.identity.accesscontextmanager.v1.ServicePerimeterConfig.IdentityType|keyof typeof google.identity.accesscontextmanager.v1.ServicePerimeterConfig.IdentityType);
+
+ /**
+ * Creates a new IngressFrom instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns IngressFrom instance
+ */
+ public static create(properties?: google.identity.accesscontextmanager.v1.ServicePerimeterConfig.IIngressFrom): google.identity.accesscontextmanager.v1.ServicePerimeterConfig.IngressFrom;
+
+ /**
+ * Encodes the specified IngressFrom message. Does not implicitly {@link google.identity.accesscontextmanager.v1.ServicePerimeterConfig.IngressFrom.verify|verify} messages.
+ * @param message IngressFrom message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.identity.accesscontextmanager.v1.ServicePerimeterConfig.IIngressFrom, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified IngressFrom message, length delimited. Does not implicitly {@link google.identity.accesscontextmanager.v1.ServicePerimeterConfig.IngressFrom.verify|verify} messages.
+ * @param message IngressFrom message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.identity.accesscontextmanager.v1.ServicePerimeterConfig.IIngressFrom, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an IngressFrom message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns IngressFrom
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.identity.accesscontextmanager.v1.ServicePerimeterConfig.IngressFrom;
+
+ /**
+ * Decodes an IngressFrom message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns IngressFrom
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.identity.accesscontextmanager.v1.ServicePerimeterConfig.IngressFrom;
+
+ /**
+ * Verifies an IngressFrom message.
+ * @param message Plain 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 IngressFrom message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns IngressFrom
+ */
+ public static fromObject(object: { [k: string]: any }): google.identity.accesscontextmanager.v1.ServicePerimeterConfig.IngressFrom;
+
+ /**
+ * Creates a plain object from an IngressFrom message. Also converts values to other types if specified.
+ * @param message IngressFrom
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.identity.accesscontextmanager.v1.ServicePerimeterConfig.IngressFrom, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this IngressFrom to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for IngressFrom
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an IngressTo. */
+ interface IIngressTo {
+
+ /** IngressTo operations */
+ operations?: (google.identity.accesscontextmanager.v1.ServicePerimeterConfig.IApiOperation[]|null);
+
+ /** IngressTo resources */
+ resources?: (string[]|null);
+ }
+
+ /** Represents an IngressTo. */
+ class IngressTo implements IIngressTo {
+
+ /**
+ * Constructs a new IngressTo.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.identity.accesscontextmanager.v1.ServicePerimeterConfig.IIngressTo);
+
+ /** IngressTo operations. */
+ public operations: google.identity.accesscontextmanager.v1.ServicePerimeterConfig.IApiOperation[];
+
+ /** IngressTo resources. */
+ public resources: string[];
+
+ /**
+ * Creates a new IngressTo instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns IngressTo instance
+ */
+ public static create(properties?: google.identity.accesscontextmanager.v1.ServicePerimeterConfig.IIngressTo): google.identity.accesscontextmanager.v1.ServicePerimeterConfig.IngressTo;
+
+ /**
+ * Encodes the specified IngressTo message. Does not implicitly {@link google.identity.accesscontextmanager.v1.ServicePerimeterConfig.IngressTo.verify|verify} messages.
+ * @param message IngressTo message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.identity.accesscontextmanager.v1.ServicePerimeterConfig.IIngressTo, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified IngressTo message, length delimited. Does not implicitly {@link google.identity.accesscontextmanager.v1.ServicePerimeterConfig.IngressTo.verify|verify} messages.
+ * @param message IngressTo message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.identity.accesscontextmanager.v1.ServicePerimeterConfig.IIngressTo, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an IngressTo message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns IngressTo
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.identity.accesscontextmanager.v1.ServicePerimeterConfig.IngressTo;
+
+ /**
+ * Decodes an IngressTo message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns IngressTo
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.identity.accesscontextmanager.v1.ServicePerimeterConfig.IngressTo;
+
+ /**
+ * Verifies an IngressTo message.
+ * @param message Plain 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 IngressTo message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns IngressTo
+ */
+ public static fromObject(object: { [k: string]: any }): google.identity.accesscontextmanager.v1.ServicePerimeterConfig.IngressTo;
+
+ /**
+ * Creates a plain object from an IngressTo message. Also converts values to other types if specified.
+ * @param message IngressTo
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.identity.accesscontextmanager.v1.ServicePerimeterConfig.IngressTo, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this IngressTo to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for IngressTo
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an IngressPolicy. */
+ interface IIngressPolicy {
+
+ /** IngressPolicy ingressFrom */
+ ingressFrom?: (google.identity.accesscontextmanager.v1.ServicePerimeterConfig.IIngressFrom|null);
+
+ /** IngressPolicy ingressTo */
+ ingressTo?: (google.identity.accesscontextmanager.v1.ServicePerimeterConfig.IIngressTo|null);
+ }
+
+ /** Represents an IngressPolicy. */
+ class IngressPolicy implements IIngressPolicy {
+
+ /**
+ * Constructs a new IngressPolicy.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.identity.accesscontextmanager.v1.ServicePerimeterConfig.IIngressPolicy);
+
+ /** IngressPolicy ingressFrom. */
+ public ingressFrom?: (google.identity.accesscontextmanager.v1.ServicePerimeterConfig.IIngressFrom|null);
+
+ /** IngressPolicy ingressTo. */
+ public ingressTo?: (google.identity.accesscontextmanager.v1.ServicePerimeterConfig.IIngressTo|null);
+
+ /**
+ * Creates a new IngressPolicy instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns IngressPolicy instance
+ */
+ public static create(properties?: google.identity.accesscontextmanager.v1.ServicePerimeterConfig.IIngressPolicy): google.identity.accesscontextmanager.v1.ServicePerimeterConfig.IngressPolicy;
+
+ /**
+ * Encodes the specified IngressPolicy message. Does not implicitly {@link google.identity.accesscontextmanager.v1.ServicePerimeterConfig.IngressPolicy.verify|verify} messages.
+ * @param message IngressPolicy message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.identity.accesscontextmanager.v1.ServicePerimeterConfig.IIngressPolicy, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified IngressPolicy message, length delimited. Does not implicitly {@link google.identity.accesscontextmanager.v1.ServicePerimeterConfig.IngressPolicy.verify|verify} messages.
+ * @param message IngressPolicy message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.identity.accesscontextmanager.v1.ServicePerimeterConfig.IIngressPolicy, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an IngressPolicy message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns IngressPolicy
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.identity.accesscontextmanager.v1.ServicePerimeterConfig.IngressPolicy;
+
+ /**
+ * Decodes an IngressPolicy message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns IngressPolicy
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.identity.accesscontextmanager.v1.ServicePerimeterConfig.IngressPolicy;
+
+ /**
+ * Verifies an IngressPolicy message.
+ * @param message Plain 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 IngressPolicy message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns IngressPolicy
+ */
+ public static fromObject(object: { [k: string]: any }): google.identity.accesscontextmanager.v1.ServicePerimeterConfig.IngressPolicy;
+
+ /**
+ * Creates a plain object from an IngressPolicy message. Also converts values to other types if specified.
+ * @param message IngressPolicy
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.identity.accesscontextmanager.v1.ServicePerimeterConfig.IngressPolicy, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this IngressPolicy to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for IngressPolicy
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an EgressFrom. */
+ interface IEgressFrom {
+
+ /** EgressFrom identities */
+ identities?: (string[]|null);
+
+ /** EgressFrom identityType */
+ identityType?: (google.identity.accesscontextmanager.v1.ServicePerimeterConfig.IdentityType|keyof typeof google.identity.accesscontextmanager.v1.ServicePerimeterConfig.IdentityType|null);
+ }
+
+ /** Represents an EgressFrom. */
+ class EgressFrom implements IEgressFrom {
+
+ /**
+ * Constructs a new EgressFrom.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.identity.accesscontextmanager.v1.ServicePerimeterConfig.IEgressFrom);
+
+ /** EgressFrom identities. */
+ public identities: string[];
+
+ /** EgressFrom identityType. */
+ public identityType: (google.identity.accesscontextmanager.v1.ServicePerimeterConfig.IdentityType|keyof typeof google.identity.accesscontextmanager.v1.ServicePerimeterConfig.IdentityType);
+
+ /**
+ * Creates a new EgressFrom instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns EgressFrom instance
+ */
+ public static create(properties?: google.identity.accesscontextmanager.v1.ServicePerimeterConfig.IEgressFrom): google.identity.accesscontextmanager.v1.ServicePerimeterConfig.EgressFrom;
+
+ /**
+ * Encodes the specified EgressFrom message. Does not implicitly {@link google.identity.accesscontextmanager.v1.ServicePerimeterConfig.EgressFrom.verify|verify} messages.
+ * @param message EgressFrom message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.identity.accesscontextmanager.v1.ServicePerimeterConfig.IEgressFrom, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified EgressFrom message, length delimited. Does not implicitly {@link google.identity.accesscontextmanager.v1.ServicePerimeterConfig.EgressFrom.verify|verify} messages.
+ * @param message EgressFrom message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.identity.accesscontextmanager.v1.ServicePerimeterConfig.IEgressFrom, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an EgressFrom message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns EgressFrom
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.identity.accesscontextmanager.v1.ServicePerimeterConfig.EgressFrom;
+
+ /**
+ * Decodes an EgressFrom message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns EgressFrom
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.identity.accesscontextmanager.v1.ServicePerimeterConfig.EgressFrom;
+
+ /**
+ * Verifies an EgressFrom message.
+ * @param message Plain 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 EgressFrom message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns EgressFrom
+ */
+ public static fromObject(object: { [k: string]: any }): google.identity.accesscontextmanager.v1.ServicePerimeterConfig.EgressFrom;
+
+ /**
+ * Creates a plain object from an EgressFrom message. Also converts values to other types if specified.
+ * @param message EgressFrom
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.identity.accesscontextmanager.v1.ServicePerimeterConfig.EgressFrom, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this EgressFrom to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for EgressFrom
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an EgressTo. */
+ interface IEgressTo {
+
+ /** EgressTo resources */
+ resources?: (string[]|null);
+
+ /** EgressTo operations */
+ operations?: (google.identity.accesscontextmanager.v1.ServicePerimeterConfig.IApiOperation[]|null);
+
+ /** EgressTo externalResources */
+ externalResources?: (string[]|null);
+ }
+
+ /** Represents an EgressTo. */
+ class EgressTo implements IEgressTo {
+
+ /**
+ * Constructs a new EgressTo.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.identity.accesscontextmanager.v1.ServicePerimeterConfig.IEgressTo);
+
+ /** EgressTo resources. */
+ public resources: string[];
+
+ /** EgressTo operations. */
+ public operations: google.identity.accesscontextmanager.v1.ServicePerimeterConfig.IApiOperation[];
+
+ /** EgressTo externalResources. */
+ public externalResources: string[];
+
+ /**
+ * Creates a new EgressTo instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns EgressTo instance
+ */
+ public static create(properties?: google.identity.accesscontextmanager.v1.ServicePerimeterConfig.IEgressTo): google.identity.accesscontextmanager.v1.ServicePerimeterConfig.EgressTo;
+
+ /**
+ * Encodes the specified EgressTo message. Does not implicitly {@link google.identity.accesscontextmanager.v1.ServicePerimeterConfig.EgressTo.verify|verify} messages.
+ * @param message EgressTo message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.identity.accesscontextmanager.v1.ServicePerimeterConfig.IEgressTo, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified EgressTo message, length delimited. Does not implicitly {@link google.identity.accesscontextmanager.v1.ServicePerimeterConfig.EgressTo.verify|verify} messages.
+ * @param message EgressTo message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.identity.accesscontextmanager.v1.ServicePerimeterConfig.IEgressTo, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an EgressTo message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns EgressTo
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.identity.accesscontextmanager.v1.ServicePerimeterConfig.EgressTo;
+
+ /**
+ * Decodes an EgressTo message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns EgressTo
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.identity.accesscontextmanager.v1.ServicePerimeterConfig.EgressTo;
+
+ /**
+ * Verifies an EgressTo message.
+ * @param message Plain 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 EgressTo message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns EgressTo
+ */
+ public static fromObject(object: { [k: string]: any }): google.identity.accesscontextmanager.v1.ServicePerimeterConfig.EgressTo;
+
+ /**
+ * Creates a plain object from an EgressTo message. Also converts values to other types if specified.
+ * @param message EgressTo
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.identity.accesscontextmanager.v1.ServicePerimeterConfig.EgressTo, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this EgressTo to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for EgressTo
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an EgressPolicy. */
+ interface IEgressPolicy {
+
+ /** EgressPolicy egressFrom */
+ egressFrom?: (google.identity.accesscontextmanager.v1.ServicePerimeterConfig.IEgressFrom|null);
+
+ /** EgressPolicy egressTo */
+ egressTo?: (google.identity.accesscontextmanager.v1.ServicePerimeterConfig.IEgressTo|null);
+ }
+
+ /** Represents an EgressPolicy. */
+ class EgressPolicy implements IEgressPolicy {
+
+ /**
+ * Constructs a new EgressPolicy.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.identity.accesscontextmanager.v1.ServicePerimeterConfig.IEgressPolicy);
+
+ /** EgressPolicy egressFrom. */
+ public egressFrom?: (google.identity.accesscontextmanager.v1.ServicePerimeterConfig.IEgressFrom|null);
+
+ /** EgressPolicy egressTo. */
+ public egressTo?: (google.identity.accesscontextmanager.v1.ServicePerimeterConfig.IEgressTo|null);
+
+ /**
+ * Creates a new EgressPolicy instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns EgressPolicy instance
+ */
+ public static create(properties?: google.identity.accesscontextmanager.v1.ServicePerimeterConfig.IEgressPolicy): google.identity.accesscontextmanager.v1.ServicePerimeterConfig.EgressPolicy;
+
+ /**
+ * Encodes the specified EgressPolicy message. Does not implicitly {@link google.identity.accesscontextmanager.v1.ServicePerimeterConfig.EgressPolicy.verify|verify} messages.
+ * @param message EgressPolicy message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.identity.accesscontextmanager.v1.ServicePerimeterConfig.IEgressPolicy, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified EgressPolicy message, length delimited. Does not implicitly {@link google.identity.accesscontextmanager.v1.ServicePerimeterConfig.EgressPolicy.verify|verify} messages.
+ * @param message EgressPolicy message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.identity.accesscontextmanager.v1.ServicePerimeterConfig.IEgressPolicy, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an EgressPolicy message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns EgressPolicy
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.identity.accesscontextmanager.v1.ServicePerimeterConfig.EgressPolicy;
+
+ /**
+ * Decodes an EgressPolicy message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns EgressPolicy
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.identity.accesscontextmanager.v1.ServicePerimeterConfig.EgressPolicy;
+
+ /**
+ * Verifies an EgressPolicy message.
+ * @param message Plain 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 EgressPolicy message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns EgressPolicy
+ */
+ public static fromObject(object: { [k: string]: any }): google.identity.accesscontextmanager.v1.ServicePerimeterConfig.EgressPolicy;
+
+ /**
+ * Creates a plain object from an EgressPolicy message. Also converts values to other types if specified.
+ * @param message EgressPolicy
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.identity.accesscontextmanager.v1.ServicePerimeterConfig.EgressPolicy, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this EgressPolicy to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for EgressPolicy
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+ }
+ }
+ }
+ }
+
+ /** Namespace api. */
+ namespace api {
+
+ /** Properties of a Http. */
+ interface IHttp {
+
+ /** Http rules */
+ rules?: (google.api.IHttpRule[]|null);
+
+ /** Http fullyDecodeReservedExpansion */
+ fullyDecodeReservedExpansion?: (boolean|null);
+ }
+
+ /** Represents a Http. */
+ class Http implements IHttp {
+
+ /**
+ * Constructs a new Http.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.api.IHttp);
+
+ /** Http rules. */
+ public rules: google.api.IHttpRule[];
+
+ /** Http fullyDecodeReservedExpansion. */
+ public fullyDecodeReservedExpansion: boolean;
+
+ /**
+ * Creates a new Http instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Http instance
+ */
+ public static create(properties?: google.api.IHttp): google.api.Http;
+
+ /**
+ * Encodes the specified Http message. Does not implicitly {@link google.api.Http.verify|verify} messages.
+ * @param message Http message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.api.IHttp, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Http message, length delimited. Does not implicitly {@link google.api.Http.verify|verify} messages.
+ * @param message Http message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.api.IHttp, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Http message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Http
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.api.Http;
+
+ /**
+ * Decodes a Http message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Http
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.api.Http;
+
+ /**
+ * Verifies a Http message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a Http message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Http
+ */
+ public static fromObject(object: { [k: string]: any }): google.api.Http;
+
+ /**
+ * Creates a plain object from a Http message. Also converts values to other types if specified.
+ * @param message Http
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.api.Http, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Http to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Http
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a HttpRule. */
+ interface IHttpRule {
+
+ /** HttpRule selector */
+ selector?: (string|null);
+
+ /** HttpRule get */
+ get?: (string|null);
+
+ /** HttpRule put */
+ put?: (string|null);
+
+ /** HttpRule post */
+ post?: (string|null);
+
+ /** HttpRule delete */
+ "delete"?: (string|null);
+
+ /** HttpRule patch */
+ patch?: (string|null);
+
+ /** HttpRule custom */
+ custom?: (google.api.ICustomHttpPattern|null);
+
+ /** HttpRule body */
+ body?: (string|null);
+
+ /** HttpRule responseBody */
+ responseBody?: (string|null);
+
+ /** HttpRule additionalBindings */
+ additionalBindings?: (google.api.IHttpRule[]|null);
+ }
+
+ /** Represents a HttpRule. */
+ class HttpRule implements IHttpRule {
+
+ /**
+ * Constructs a new HttpRule.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.api.IHttpRule);
+
+ /** HttpRule selector. */
+ public selector: string;
+
+ /** HttpRule get. */
+ public get?: (string|null);
+
+ /** HttpRule put. */
+ public put?: (string|null);
+
+ /** HttpRule post. */
+ public post?: (string|null);
+
+ /** HttpRule delete. */
+ public delete?: (string|null);
+
+ /** HttpRule patch. */
+ public patch?: (string|null);
+
+ /** HttpRule custom. */
+ public custom?: (google.api.ICustomHttpPattern|null);
+
+ /** HttpRule body. */
+ public body: string;
+
+ /** HttpRule responseBody. */
+ public responseBody: string;
+
+ /** HttpRule additionalBindings. */
+ public additionalBindings: google.api.IHttpRule[];
+
+ /** HttpRule pattern. */
+ public pattern?: ("get"|"put"|"post"|"delete"|"patch"|"custom");
+
+ /**
+ * Creates a new HttpRule instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns HttpRule instance
+ */
+ public static create(properties?: google.api.IHttpRule): google.api.HttpRule;
+
+ /**
+ * Encodes the specified HttpRule message. Does not implicitly {@link google.api.HttpRule.verify|verify} messages.
+ * @param message HttpRule message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.api.IHttpRule, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified HttpRule message, length delimited. Does not implicitly {@link google.api.HttpRule.verify|verify} messages.
+ * @param message HttpRule message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.api.IHttpRule, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a HttpRule message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns HttpRule
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.api.HttpRule;
+
+ /**
+ * Decodes a HttpRule message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns HttpRule
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.api.HttpRule;
+
+ /**
+ * Verifies a HttpRule message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a HttpRule message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns HttpRule
+ */
+ public static fromObject(object: { [k: string]: any }): google.api.HttpRule;
+
+ /**
+ * Creates a plain object from a HttpRule message. Also converts values to other types if specified.
+ * @param message HttpRule
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.api.HttpRule, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this HttpRule to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for HttpRule
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a CustomHttpPattern. */
+ interface ICustomHttpPattern {
+
+ /** CustomHttpPattern kind */
+ kind?: (string|null);
+
+ /** CustomHttpPattern path */
+ path?: (string|null);
+ }
+
+ /** Represents a CustomHttpPattern. */
+ class CustomHttpPattern implements ICustomHttpPattern {
+
+ /**
+ * Constructs a new CustomHttpPattern.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.api.ICustomHttpPattern);
+
+ /** CustomHttpPattern kind. */
+ public kind: string;
+
+ /** CustomHttpPattern path. */
+ public path: string;
+
+ /**
+ * Creates a new CustomHttpPattern instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns CustomHttpPattern instance
+ */
+ public static create(properties?: google.api.ICustomHttpPattern): google.api.CustomHttpPattern;
+
+ /**
+ * Encodes the specified CustomHttpPattern message. Does not implicitly {@link google.api.CustomHttpPattern.verify|verify} messages.
+ * @param message CustomHttpPattern message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.api.ICustomHttpPattern, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified CustomHttpPattern message, length delimited. Does not implicitly {@link google.api.CustomHttpPattern.verify|verify} messages.
+ * @param message CustomHttpPattern message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.api.ICustomHttpPattern, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a CustomHttpPattern message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns CustomHttpPattern
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.api.CustomHttpPattern;
+
+ /**
+ * Decodes a CustomHttpPattern message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns CustomHttpPattern
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.api.CustomHttpPattern;
+
+ /**
+ * Verifies a CustomHttpPattern message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a CustomHttpPattern message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns CustomHttpPattern
+ */
+ public static fromObject(object: { [k: string]: any }): google.api.CustomHttpPattern;
+
+ /**
+ * Creates a plain object from a CustomHttpPattern message. Also converts values to other types if specified.
+ * @param message CustomHttpPattern
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.api.CustomHttpPattern, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this CustomHttpPattern to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for CustomHttpPattern
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** FieldBehavior enum. */
+ enum FieldBehavior {
+ FIELD_BEHAVIOR_UNSPECIFIED = 0,
+ OPTIONAL = 1,
+ REQUIRED = 2,
+ OUTPUT_ONLY = 3,
+ INPUT_ONLY = 4,
+ IMMUTABLE = 5,
+ UNORDERED_LIST = 6,
+ NON_EMPTY_DEFAULT = 7
+ }
+
+ /** Properties of a ResourceDescriptor. */
+ interface IResourceDescriptor {
+
+ /** ResourceDescriptor type */
+ type?: (string|null);
+
+ /** ResourceDescriptor pattern */
+ pattern?: (string[]|null);
+
+ /** ResourceDescriptor nameField */
+ nameField?: (string|null);
+
+ /** ResourceDescriptor history */
+ history?: (google.api.ResourceDescriptor.History|keyof typeof google.api.ResourceDescriptor.History|null);
+
+ /** ResourceDescriptor plural */
+ plural?: (string|null);
+
+ /** ResourceDescriptor singular */
+ singular?: (string|null);
+
+ /** ResourceDescriptor style */
+ style?: (google.api.ResourceDescriptor.Style[]|null);
+ }
+
+ /** Represents a ResourceDescriptor. */
+ class ResourceDescriptor implements IResourceDescriptor {
+
+ /**
+ * Constructs a new ResourceDescriptor.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.api.IResourceDescriptor);
+
+ /** ResourceDescriptor type. */
+ public type: string;
+
+ /** ResourceDescriptor pattern. */
+ public pattern: string[];
+
+ /** ResourceDescriptor nameField. */
+ public nameField: string;
+
+ /** ResourceDescriptor history. */
+ public history: (google.api.ResourceDescriptor.History|keyof typeof google.api.ResourceDescriptor.History);
+
+ /** ResourceDescriptor plural. */
+ public plural: string;
+
+ /** ResourceDescriptor singular. */
+ public singular: string;
+
+ /** ResourceDescriptor style. */
+ public style: google.api.ResourceDescriptor.Style[];
+
+ /**
+ * Creates a new ResourceDescriptor instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ResourceDescriptor instance
+ */
+ public static create(properties?: google.api.IResourceDescriptor): google.api.ResourceDescriptor;
+
+ /**
+ * Encodes the specified ResourceDescriptor message. Does not implicitly {@link google.api.ResourceDescriptor.verify|verify} messages.
+ * @param message ResourceDescriptor message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.api.IResourceDescriptor, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ResourceDescriptor message, length delimited. Does not implicitly {@link google.api.ResourceDescriptor.verify|verify} messages.
+ * @param message ResourceDescriptor message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.api.IResourceDescriptor, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ResourceDescriptor message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ResourceDescriptor
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.api.ResourceDescriptor;
+
+ /**
+ * Decodes a ResourceDescriptor message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ResourceDescriptor
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.api.ResourceDescriptor;
+
+ /**
+ * Verifies a ResourceDescriptor message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ResourceDescriptor message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ResourceDescriptor
+ */
+ public static fromObject(object: { [k: string]: any }): google.api.ResourceDescriptor;
+
+ /**
+ * Creates a plain object from a ResourceDescriptor message. Also converts values to other types if specified.
+ * @param message ResourceDescriptor
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.api.ResourceDescriptor, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ResourceDescriptor to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ResourceDescriptor
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace ResourceDescriptor {
+
+ /** History enum. */
+ enum History {
+ HISTORY_UNSPECIFIED = 0,
+ ORIGINALLY_SINGLE_PATTERN = 1,
+ FUTURE_MULTI_PATTERN = 2
+ }
+
+ /** Style enum. */
+ enum Style {
+ STYLE_UNSPECIFIED = 0,
+ DECLARATIVE_FRIENDLY = 1
+ }
+ }
+
+ /** Properties of a ResourceReference. */
+ interface IResourceReference {
+
+ /** ResourceReference type */
+ type?: (string|null);
+
+ /** ResourceReference childType */
+ childType?: (string|null);
+ }
+
+ /** Represents a ResourceReference. */
+ class ResourceReference implements IResourceReference {
+
+ /**
+ * Constructs a new ResourceReference.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.api.IResourceReference);
+
+ /** ResourceReference type. */
+ public type: string;
+
+ /** ResourceReference childType. */
+ public childType: string;
+
+ /**
+ * Creates a new ResourceReference instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ResourceReference instance
+ */
+ public static create(properties?: google.api.IResourceReference): google.api.ResourceReference;
+
+ /**
+ * Encodes the specified ResourceReference message. Does not implicitly {@link google.api.ResourceReference.verify|verify} messages.
+ * @param message ResourceReference message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.api.IResourceReference, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ResourceReference message, length delimited. Does not implicitly {@link google.api.ResourceReference.verify|verify} messages.
+ * @param message ResourceReference message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.api.IResourceReference, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ResourceReference message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ResourceReference
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.api.ResourceReference;
+
+ /**
+ * Decodes a ResourceReference message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ResourceReference
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.api.ResourceReference;
+
+ /**
+ * Verifies a ResourceReference message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ResourceReference message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ResourceReference
+ */
+ public static fromObject(object: { [k: string]: any }): google.api.ResourceReference;
+
+ /**
+ * Creates a plain object from a ResourceReference message. Also converts values to other types if specified.
+ * @param message ResourceReference
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.api.ResourceReference, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ResourceReference to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ResourceReference
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+ }
+
+ /** Namespace protobuf. */
+ namespace protobuf {
+
+ /** Properties of a FileDescriptorSet. */
+ interface IFileDescriptorSet {
+
+ /** FileDescriptorSet file */
+ file?: (google.protobuf.IFileDescriptorProto[]|null);
+ }
+
+ /** Represents a FileDescriptorSet. */
+ class FileDescriptorSet implements IFileDescriptorSet {
+
+ /**
+ * Constructs a new FileDescriptorSet.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.IFileDescriptorSet);
+
+ /** FileDescriptorSet file. */
+ public file: google.protobuf.IFileDescriptorProto[];
+
+ /**
+ * Creates a new FileDescriptorSet instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns FileDescriptorSet instance
+ */
+ public static create(properties?: google.protobuf.IFileDescriptorSet): google.protobuf.FileDescriptorSet;
+
+ /**
+ * Encodes the specified FileDescriptorSet message. Does not implicitly {@link google.protobuf.FileDescriptorSet.verify|verify} messages.
+ * @param message FileDescriptorSet message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.IFileDescriptorSet, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified FileDescriptorSet message, length delimited. Does not implicitly {@link google.protobuf.FileDescriptorSet.verify|verify} messages.
+ * @param message FileDescriptorSet message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.IFileDescriptorSet, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a FileDescriptorSet message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns FileDescriptorSet
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.FileDescriptorSet;
+
+ /**
+ * Decodes a FileDescriptorSet message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns FileDescriptorSet
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.FileDescriptorSet;
+
+ /**
+ * Verifies a FileDescriptorSet message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a FileDescriptorSet message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns FileDescriptorSet
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.FileDescriptorSet;
+
+ /**
+ * Creates a plain object from a FileDescriptorSet message. Also converts values to other types if specified.
+ * @param message FileDescriptorSet
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.FileDescriptorSet, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this FileDescriptorSet to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for FileDescriptorSet
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a FileDescriptorProto. */
+ interface IFileDescriptorProto {
+
+ /** FileDescriptorProto name */
+ name?: (string|null);
+
+ /** FileDescriptorProto package */
+ "package"?: (string|null);
+
+ /** FileDescriptorProto dependency */
+ dependency?: (string[]|null);
+
+ /** FileDescriptorProto publicDependency */
+ publicDependency?: (number[]|null);
+
+ /** FileDescriptorProto weakDependency */
+ weakDependency?: (number[]|null);
+
+ /** FileDescriptorProto messageType */
+ messageType?: (google.protobuf.IDescriptorProto[]|null);
+
+ /** FileDescriptorProto enumType */
+ enumType?: (google.protobuf.IEnumDescriptorProto[]|null);
+
+ /** FileDescriptorProto service */
+ service?: (google.protobuf.IServiceDescriptorProto[]|null);
+
+ /** FileDescriptorProto extension */
+ extension?: (google.protobuf.IFieldDescriptorProto[]|null);
+
+ /** FileDescriptorProto options */
+ options?: (google.protobuf.IFileOptions|null);
+
+ /** FileDescriptorProto sourceCodeInfo */
+ sourceCodeInfo?: (google.protobuf.ISourceCodeInfo|null);
+
+ /** FileDescriptorProto syntax */
+ syntax?: (string|null);
+
+ /** FileDescriptorProto edition */
+ edition?: (string|null);
+ }
+
+ /** Represents a FileDescriptorProto. */
+ class FileDescriptorProto implements IFileDescriptorProto {
+
+ /**
+ * Constructs a new FileDescriptorProto.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.IFileDescriptorProto);
+
+ /** FileDescriptorProto name. */
+ public name: string;
+
+ /** FileDescriptorProto package. */
+ public package: string;
+
+ /** FileDescriptorProto dependency. */
+ public dependency: string[];
+
+ /** FileDescriptorProto publicDependency. */
+ public publicDependency: number[];
+
+ /** FileDescriptorProto weakDependency. */
+ public weakDependency: number[];
+
+ /** FileDescriptorProto messageType. */
+ public messageType: google.protobuf.IDescriptorProto[];
+
+ /** FileDescriptorProto enumType. */
+ public enumType: google.protobuf.IEnumDescriptorProto[];
+
+ /** FileDescriptorProto service. */
+ public service: google.protobuf.IServiceDescriptorProto[];
+
+ /** FileDescriptorProto extension. */
+ public extension: google.protobuf.IFieldDescriptorProto[];
+
+ /** FileDescriptorProto options. */
+ public options?: (google.protobuf.IFileOptions|null);
+
+ /** FileDescriptorProto sourceCodeInfo. */
+ public sourceCodeInfo?: (google.protobuf.ISourceCodeInfo|null);
+
+ /** FileDescriptorProto syntax. */
+ public syntax: string;
+
+ /** FileDescriptorProto edition. */
+ public edition: string;
+
+ /**
+ * Creates a new FileDescriptorProto instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns FileDescriptorProto instance
+ */
+ public static create(properties?: google.protobuf.IFileDescriptorProto): google.protobuf.FileDescriptorProto;
+
+ /**
+ * Encodes the specified FileDescriptorProto message. Does not implicitly {@link google.protobuf.FileDescriptorProto.verify|verify} messages.
+ * @param message FileDescriptorProto message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.IFileDescriptorProto, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified FileDescriptorProto message, length delimited. Does not implicitly {@link google.protobuf.FileDescriptorProto.verify|verify} messages.
+ * @param message FileDescriptorProto message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.IFileDescriptorProto, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a FileDescriptorProto message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns FileDescriptorProto
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.FileDescriptorProto;
+
+ /**
+ * Decodes a FileDescriptorProto message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns FileDescriptorProto
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.FileDescriptorProto;
+
+ /**
+ * Verifies a FileDescriptorProto message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a FileDescriptorProto message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns FileDescriptorProto
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.FileDescriptorProto;
+
+ /**
+ * Creates a plain object from a FileDescriptorProto message. Also converts values to other types if specified.
+ * @param message FileDescriptorProto
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.FileDescriptorProto, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this FileDescriptorProto to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for FileDescriptorProto
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a DescriptorProto. */
+ interface IDescriptorProto {
+
+ /** DescriptorProto name */
+ name?: (string|null);
+
+ /** DescriptorProto field */
+ field?: (google.protobuf.IFieldDescriptorProto[]|null);
+
+ /** DescriptorProto extension */
+ extension?: (google.protobuf.IFieldDescriptorProto[]|null);
+
+ /** DescriptorProto nestedType */
+ nestedType?: (google.protobuf.IDescriptorProto[]|null);
+
+ /** DescriptorProto enumType */
+ enumType?: (google.protobuf.IEnumDescriptorProto[]|null);
+
+ /** DescriptorProto extensionRange */
+ extensionRange?: (google.protobuf.DescriptorProto.IExtensionRange[]|null);
+
+ /** DescriptorProto oneofDecl */
+ oneofDecl?: (google.protobuf.IOneofDescriptorProto[]|null);
+
+ /** DescriptorProto options */
+ options?: (google.protobuf.IMessageOptions|null);
+
+ /** DescriptorProto reservedRange */
+ reservedRange?: (google.protobuf.DescriptorProto.IReservedRange[]|null);
+
+ /** DescriptorProto reservedName */
+ reservedName?: (string[]|null);
+ }
+
+ /** Represents a DescriptorProto. */
+ class DescriptorProto implements IDescriptorProto {
+
+ /**
+ * Constructs a new DescriptorProto.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.IDescriptorProto);
+
+ /** DescriptorProto name. */
+ public name: string;
+
+ /** DescriptorProto field. */
+ public field: google.protobuf.IFieldDescriptorProto[];
+
+ /** DescriptorProto extension. */
+ public extension: google.protobuf.IFieldDescriptorProto[];
+
+ /** DescriptorProto nestedType. */
+ public nestedType: google.protobuf.IDescriptorProto[];
+
+ /** DescriptorProto enumType. */
+ public enumType: google.protobuf.IEnumDescriptorProto[];
+
+ /** DescriptorProto extensionRange. */
+ public extensionRange: google.protobuf.DescriptorProto.IExtensionRange[];
+
+ /** DescriptorProto oneofDecl. */
+ public oneofDecl: google.protobuf.IOneofDescriptorProto[];
+
+ /** DescriptorProto options. */
+ public options?: (google.protobuf.IMessageOptions|null);
+
+ /** DescriptorProto reservedRange. */
+ public reservedRange: google.protobuf.DescriptorProto.IReservedRange[];
+
+ /** DescriptorProto reservedName. */
+ public reservedName: string[];
+
+ /**
+ * Creates a new DescriptorProto instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns DescriptorProto instance
+ */
+ public static create(properties?: google.protobuf.IDescriptorProto): google.protobuf.DescriptorProto;
+
+ /**
+ * Encodes the specified DescriptorProto message. Does not implicitly {@link google.protobuf.DescriptorProto.verify|verify} messages.
+ * @param message DescriptorProto message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.IDescriptorProto, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified DescriptorProto message, length delimited. Does not implicitly {@link google.protobuf.DescriptorProto.verify|verify} messages.
+ * @param message DescriptorProto message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.IDescriptorProto, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a DescriptorProto message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns DescriptorProto
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.DescriptorProto;
+
+ /**
+ * Decodes a DescriptorProto message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns DescriptorProto
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.DescriptorProto;
+
+ /**
+ * Verifies a DescriptorProto message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a DescriptorProto message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns DescriptorProto
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.DescriptorProto;
+
+ /**
+ * Creates a plain object from a DescriptorProto message. Also converts values to other types if specified.
+ * @param message DescriptorProto
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.DescriptorProto, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this DescriptorProto to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for DescriptorProto
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace DescriptorProto {
+
+ /** Properties of an ExtensionRange. */
+ interface IExtensionRange {
+
+ /** ExtensionRange start */
+ start?: (number|null);
+
+ /** ExtensionRange end */
+ end?: (number|null);
+
+ /** ExtensionRange options */
+ options?: (google.protobuf.IExtensionRangeOptions|null);
+ }
+
+ /** Represents an ExtensionRange. */
+ class ExtensionRange implements IExtensionRange {
+
+ /**
+ * Constructs a new ExtensionRange.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.DescriptorProto.IExtensionRange);
+
+ /** ExtensionRange start. */
+ public start: number;
+
+ /** ExtensionRange end. */
+ public end: number;
+
+ /** ExtensionRange options. */
+ public options?: (google.protobuf.IExtensionRangeOptions|null);
+
+ /**
+ * Creates a new ExtensionRange instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ExtensionRange instance
+ */
+ public static create(properties?: google.protobuf.DescriptorProto.IExtensionRange): google.protobuf.DescriptorProto.ExtensionRange;
+
+ /**
+ * Encodes the specified ExtensionRange message. Does not implicitly {@link google.protobuf.DescriptorProto.ExtensionRange.verify|verify} messages.
+ * @param message ExtensionRange message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.DescriptorProto.IExtensionRange, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ExtensionRange message, length delimited. Does not implicitly {@link google.protobuf.DescriptorProto.ExtensionRange.verify|verify} messages.
+ * @param message ExtensionRange message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.DescriptorProto.IExtensionRange, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an ExtensionRange message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ExtensionRange
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.DescriptorProto.ExtensionRange;
+
+ /**
+ * Decodes an ExtensionRange message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ExtensionRange
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.DescriptorProto.ExtensionRange;
+
+ /**
+ * Verifies an ExtensionRange message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates an ExtensionRange message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ExtensionRange
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.DescriptorProto.ExtensionRange;
+
+ /**
+ * Creates a plain object from an ExtensionRange message. Also converts values to other types if specified.
+ * @param message ExtensionRange
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.DescriptorProto.ExtensionRange, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ExtensionRange to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ExtensionRange
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ReservedRange. */
+ interface IReservedRange {
+
+ /** ReservedRange start */
+ start?: (number|null);
+
+ /** ReservedRange end */
+ end?: (number|null);
+ }
+
+ /** Represents a ReservedRange. */
+ class ReservedRange implements IReservedRange {
+
+ /**
+ * Constructs a new ReservedRange.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.DescriptorProto.IReservedRange);
+
+ /** ReservedRange start. */
+ public start: number;
+
+ /** ReservedRange end. */
+ public end: number;
+
+ /**
+ * Creates a new ReservedRange instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ReservedRange instance
+ */
+ public static create(properties?: google.protobuf.DescriptorProto.IReservedRange): google.protobuf.DescriptorProto.ReservedRange;
+
+ /**
+ * Encodes the specified ReservedRange message. Does not implicitly {@link google.protobuf.DescriptorProto.ReservedRange.verify|verify} messages.
+ * @param message ReservedRange message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.DescriptorProto.IReservedRange, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ReservedRange message, length delimited. Does not implicitly {@link google.protobuf.DescriptorProto.ReservedRange.verify|verify} messages.
+ * @param message ReservedRange message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.DescriptorProto.IReservedRange, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ReservedRange message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ReservedRange
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.DescriptorProto.ReservedRange;
+
+ /**
+ * Decodes a ReservedRange message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ReservedRange
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.DescriptorProto.ReservedRange;
+
+ /**
+ * Verifies a ReservedRange message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ReservedRange message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ReservedRange
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.DescriptorProto.ReservedRange;
+
+ /**
+ * Creates a plain object from a ReservedRange message. Also converts values to other types if specified.
+ * @param message ReservedRange
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.DescriptorProto.ReservedRange, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ReservedRange to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ReservedRange
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+ }
+
+ /** Properties of an ExtensionRangeOptions. */
+ interface IExtensionRangeOptions {
+
+ /** ExtensionRangeOptions uninterpretedOption */
+ uninterpretedOption?: (google.protobuf.IUninterpretedOption[]|null);
+ }
+
+ /** Represents an ExtensionRangeOptions. */
+ class ExtensionRangeOptions implements IExtensionRangeOptions {
+
+ /**
+ * Constructs a new ExtensionRangeOptions.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.IExtensionRangeOptions);
+
+ /** ExtensionRangeOptions uninterpretedOption. */
+ public uninterpretedOption: google.protobuf.IUninterpretedOption[];
+
+ /**
+ * Creates a new ExtensionRangeOptions instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ExtensionRangeOptions instance
+ */
+ public static create(properties?: google.protobuf.IExtensionRangeOptions): google.protobuf.ExtensionRangeOptions;
+
+ /**
+ * Encodes the specified ExtensionRangeOptions message. Does not implicitly {@link google.protobuf.ExtensionRangeOptions.verify|verify} messages.
+ * @param message ExtensionRangeOptions message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.IExtensionRangeOptions, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ExtensionRangeOptions message, length delimited. Does not implicitly {@link google.protobuf.ExtensionRangeOptions.verify|verify} messages.
+ * @param message ExtensionRangeOptions message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.IExtensionRangeOptions, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an ExtensionRangeOptions message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ExtensionRangeOptions
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.ExtensionRangeOptions;
+
+ /**
+ * Decodes an ExtensionRangeOptions message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ExtensionRangeOptions
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.ExtensionRangeOptions;
+
+ /**
+ * Verifies an ExtensionRangeOptions message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates an ExtensionRangeOptions message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ExtensionRangeOptions
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.ExtensionRangeOptions;
+
+ /**
+ * Creates a plain object from an ExtensionRangeOptions message. Also converts values to other types if specified.
+ * @param message ExtensionRangeOptions
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.ExtensionRangeOptions, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ExtensionRangeOptions to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ExtensionRangeOptions
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a FieldDescriptorProto. */
+ interface IFieldDescriptorProto {
+
+ /** FieldDescriptorProto name */
+ name?: (string|null);
+
+ /** FieldDescriptorProto number */
+ number?: (number|null);
+
+ /** FieldDescriptorProto label */
+ label?: (google.protobuf.FieldDescriptorProto.Label|keyof typeof google.protobuf.FieldDescriptorProto.Label|null);
+
+ /** FieldDescriptorProto type */
+ type?: (google.protobuf.FieldDescriptorProto.Type|keyof typeof google.protobuf.FieldDescriptorProto.Type|null);
+
+ /** FieldDescriptorProto typeName */
+ typeName?: (string|null);
+
+ /** FieldDescriptorProto extendee */
+ extendee?: (string|null);
+
+ /** FieldDescriptorProto defaultValue */
+ defaultValue?: (string|null);
+
+ /** FieldDescriptorProto oneofIndex */
+ oneofIndex?: (number|null);
+
+ /** FieldDescriptorProto jsonName */
+ jsonName?: (string|null);
+
+ /** FieldDescriptorProto options */
+ options?: (google.protobuf.IFieldOptions|null);
+
+ /** FieldDescriptorProto proto3Optional */
+ proto3Optional?: (boolean|null);
+ }
+
+ /** Represents a FieldDescriptorProto. */
+ class FieldDescriptorProto implements IFieldDescriptorProto {
+
+ /**
+ * Constructs a new FieldDescriptorProto.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.IFieldDescriptorProto);
+
+ /** FieldDescriptorProto name. */
+ public name: string;
+
+ /** FieldDescriptorProto number. */
+ public number: number;
+
+ /** FieldDescriptorProto label. */
+ public label: (google.protobuf.FieldDescriptorProto.Label|keyof typeof google.protobuf.FieldDescriptorProto.Label);
+
+ /** FieldDescriptorProto type. */
+ public type: (google.protobuf.FieldDescriptorProto.Type|keyof typeof google.protobuf.FieldDescriptorProto.Type);
+
+ /** FieldDescriptorProto typeName. */
+ public typeName: string;
+
+ /** FieldDescriptorProto extendee. */
+ public extendee: string;
+
+ /** FieldDescriptorProto defaultValue. */
+ public defaultValue: string;
+
+ /** FieldDescriptorProto oneofIndex. */
+ public oneofIndex: number;
+
+ /** FieldDescriptorProto jsonName. */
+ public jsonName: string;
+
+ /** FieldDescriptorProto options. */
+ public options?: (google.protobuf.IFieldOptions|null);
+
+ /** FieldDescriptorProto proto3Optional. */
+ public proto3Optional: boolean;
+
+ /**
+ * Creates a new FieldDescriptorProto instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns FieldDescriptorProto instance
+ */
+ public static create(properties?: google.protobuf.IFieldDescriptorProto): google.protobuf.FieldDescriptorProto;
+
+ /**
+ * Encodes the specified FieldDescriptorProto message. Does not implicitly {@link google.protobuf.FieldDescriptorProto.verify|verify} messages.
+ * @param message FieldDescriptorProto message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.IFieldDescriptorProto, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified FieldDescriptorProto message, length delimited. Does not implicitly {@link google.protobuf.FieldDescriptorProto.verify|verify} messages.
+ * @param message FieldDescriptorProto message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.IFieldDescriptorProto, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a FieldDescriptorProto message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns FieldDescriptorProto
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.FieldDescriptorProto;
+
+ /**
+ * Decodes a FieldDescriptorProto message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns FieldDescriptorProto
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.FieldDescriptorProto;
+
+ /**
+ * Verifies a FieldDescriptorProto message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a FieldDescriptorProto message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns FieldDescriptorProto
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.FieldDescriptorProto;
+
+ /**
+ * Creates a plain object from a FieldDescriptorProto message. Also converts values to other types if specified.
+ * @param message FieldDescriptorProto
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.FieldDescriptorProto, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this FieldDescriptorProto to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for FieldDescriptorProto
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace FieldDescriptorProto {
+
+ /** Type enum. */
+ enum Type {
+ TYPE_DOUBLE = 1,
+ TYPE_FLOAT = 2,
+ TYPE_INT64 = 3,
+ TYPE_UINT64 = 4,
+ TYPE_INT32 = 5,
+ TYPE_FIXED64 = 6,
+ TYPE_FIXED32 = 7,
+ TYPE_BOOL = 8,
+ TYPE_STRING = 9,
+ TYPE_GROUP = 10,
+ TYPE_MESSAGE = 11,
+ TYPE_BYTES = 12,
+ TYPE_UINT32 = 13,
+ TYPE_ENUM = 14,
+ TYPE_SFIXED32 = 15,
+ TYPE_SFIXED64 = 16,
+ TYPE_SINT32 = 17,
+ TYPE_SINT64 = 18
+ }
+
+ /** Label enum. */
+ enum Label {
+ LABEL_OPTIONAL = 1,
+ LABEL_REQUIRED = 2,
+ LABEL_REPEATED = 3
+ }
+ }
+
+ /** Properties of an OneofDescriptorProto. */
+ interface IOneofDescriptorProto {
+
+ /** OneofDescriptorProto name */
+ name?: (string|null);
+
+ /** OneofDescriptorProto options */
+ options?: (google.protobuf.IOneofOptions|null);
+ }
+
+ /** Represents an OneofDescriptorProto. */
+ class OneofDescriptorProto implements IOneofDescriptorProto {
+
+ /**
+ * Constructs a new OneofDescriptorProto.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.IOneofDescriptorProto);
+
+ /** OneofDescriptorProto name. */
+ public name: string;
+
+ /** OneofDescriptorProto options. */
+ public options?: (google.protobuf.IOneofOptions|null);
+
+ /**
+ * Creates a new OneofDescriptorProto instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns OneofDescriptorProto instance
+ */
+ public static create(properties?: google.protobuf.IOneofDescriptorProto): google.protobuf.OneofDescriptorProto;
+
+ /**
+ * Encodes the specified OneofDescriptorProto message. Does not implicitly {@link google.protobuf.OneofDescriptorProto.verify|verify} messages.
+ * @param message OneofDescriptorProto message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.IOneofDescriptorProto, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified OneofDescriptorProto message, length delimited. Does not implicitly {@link google.protobuf.OneofDescriptorProto.verify|verify} messages.
+ * @param message OneofDescriptorProto message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.IOneofDescriptorProto, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an OneofDescriptorProto message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns OneofDescriptorProto
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.OneofDescriptorProto;
+
+ /**
+ * Decodes an OneofDescriptorProto message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns OneofDescriptorProto
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.OneofDescriptorProto;
+
+ /**
+ * Verifies an OneofDescriptorProto message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates an OneofDescriptorProto message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns OneofDescriptorProto
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.OneofDescriptorProto;
+
+ /**
+ * Creates a plain object from an OneofDescriptorProto message. Also converts values to other types if specified.
+ * @param message OneofDescriptorProto
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.OneofDescriptorProto, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this OneofDescriptorProto to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for OneofDescriptorProto
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an EnumDescriptorProto. */
+ interface IEnumDescriptorProto {
+
+ /** EnumDescriptorProto name */
+ name?: (string|null);
+
+ /** EnumDescriptorProto value */
+ value?: (google.protobuf.IEnumValueDescriptorProto[]|null);
+
+ /** EnumDescriptorProto options */
+ options?: (google.protobuf.IEnumOptions|null);
+
+ /** EnumDescriptorProto reservedRange */
+ reservedRange?: (google.protobuf.EnumDescriptorProto.IEnumReservedRange[]|null);
+
+ /** EnumDescriptorProto reservedName */
+ reservedName?: (string[]|null);
+ }
+
+ /** Represents an EnumDescriptorProto. */
+ class EnumDescriptorProto implements IEnumDescriptorProto {
+
+ /**
+ * Constructs a new EnumDescriptorProto.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.IEnumDescriptorProto);
+
+ /** EnumDescriptorProto name. */
+ public name: string;
+
+ /** EnumDescriptorProto value. */
+ public value: google.protobuf.IEnumValueDescriptorProto[];
+
+ /** EnumDescriptorProto options. */
+ public options?: (google.protobuf.IEnumOptions|null);
+
+ /** EnumDescriptorProto reservedRange. */
+ public reservedRange: google.protobuf.EnumDescriptorProto.IEnumReservedRange[];
+
+ /** EnumDescriptorProto reservedName. */
+ public reservedName: string[];
+
+ /**
+ * Creates a new EnumDescriptorProto instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns EnumDescriptorProto instance
+ */
+ public static create(properties?: google.protobuf.IEnumDescriptorProto): google.protobuf.EnumDescriptorProto;
+
+ /**
+ * Encodes the specified EnumDescriptorProto message. Does not implicitly {@link google.protobuf.EnumDescriptorProto.verify|verify} messages.
+ * @param message EnumDescriptorProto message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.IEnumDescriptorProto, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified EnumDescriptorProto message, length delimited. Does not implicitly {@link google.protobuf.EnumDescriptorProto.verify|verify} messages.
+ * @param message EnumDescriptorProto message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.IEnumDescriptorProto, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an EnumDescriptorProto message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns EnumDescriptorProto
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.EnumDescriptorProto;
+
+ /**
+ * Decodes an EnumDescriptorProto message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns EnumDescriptorProto
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.EnumDescriptorProto;
+
+ /**
+ * Verifies an EnumDescriptorProto message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates an EnumDescriptorProto message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns EnumDescriptorProto
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.EnumDescriptorProto;
+
+ /**
+ * Creates a plain object from an EnumDescriptorProto message. Also converts values to other types if specified.
+ * @param message EnumDescriptorProto
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.EnumDescriptorProto, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this EnumDescriptorProto to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for EnumDescriptorProto
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace EnumDescriptorProto {
+
+ /** Properties of an EnumReservedRange. */
+ interface IEnumReservedRange {
+
+ /** EnumReservedRange start */
+ start?: (number|null);
+
+ /** EnumReservedRange end */
+ end?: (number|null);
+ }
+
+ /** Represents an EnumReservedRange. */
+ class EnumReservedRange implements IEnumReservedRange {
+
+ /**
+ * Constructs a new EnumReservedRange.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.EnumDescriptorProto.IEnumReservedRange);
+
+ /** EnumReservedRange start. */
+ public start: number;
+
+ /** EnumReservedRange end. */
+ public end: number;
+
+ /**
+ * Creates a new EnumReservedRange instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns EnumReservedRange instance
+ */
+ public static create(properties?: google.protobuf.EnumDescriptorProto.IEnumReservedRange): google.protobuf.EnumDescriptorProto.EnumReservedRange;
+
+ /**
+ * Encodes the specified EnumReservedRange message. Does not implicitly {@link google.protobuf.EnumDescriptorProto.EnumReservedRange.verify|verify} messages.
+ * @param message EnumReservedRange message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.EnumDescriptorProto.IEnumReservedRange, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified EnumReservedRange message, length delimited. Does not implicitly {@link google.protobuf.EnumDescriptorProto.EnumReservedRange.verify|verify} messages.
+ * @param message EnumReservedRange message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.EnumDescriptorProto.IEnumReservedRange, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an EnumReservedRange message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns EnumReservedRange
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.EnumDescriptorProto.EnumReservedRange;
+
+ /**
+ * Decodes an EnumReservedRange message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns EnumReservedRange
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.EnumDescriptorProto.EnumReservedRange;
+
+ /**
+ * Verifies an EnumReservedRange message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates an EnumReservedRange message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns EnumReservedRange
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.EnumDescriptorProto.EnumReservedRange;
+
+ /**
+ * Creates a plain object from an EnumReservedRange message. Also converts values to other types if specified.
+ * @param message EnumReservedRange
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.EnumDescriptorProto.EnumReservedRange, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this EnumReservedRange to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for EnumReservedRange
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+ }
+
+ /** Properties of an EnumValueDescriptorProto. */
+ interface IEnumValueDescriptorProto {
+
+ /** EnumValueDescriptorProto name */
+ name?: (string|null);
+
+ /** EnumValueDescriptorProto number */
+ number?: (number|null);
+
+ /** EnumValueDescriptorProto options */
+ options?: (google.protobuf.IEnumValueOptions|null);
+ }
+
+ /** Represents an EnumValueDescriptorProto. */
+ class EnumValueDescriptorProto implements IEnumValueDescriptorProto {
+
+ /**
+ * Constructs a new EnumValueDescriptorProto.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.IEnumValueDescriptorProto);
+
+ /** EnumValueDescriptorProto name. */
+ public name: string;
+
+ /** EnumValueDescriptorProto number. */
+ public number: number;
+
+ /** EnumValueDescriptorProto options. */
+ public options?: (google.protobuf.IEnumValueOptions|null);
+
+ /**
+ * Creates a new EnumValueDescriptorProto instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns EnumValueDescriptorProto instance
+ */
+ public static create(properties?: google.protobuf.IEnumValueDescriptorProto): google.protobuf.EnumValueDescriptorProto;
+
+ /**
+ * Encodes the specified EnumValueDescriptorProto message. Does not implicitly {@link google.protobuf.EnumValueDescriptorProto.verify|verify} messages.
+ * @param message EnumValueDescriptorProto message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.IEnumValueDescriptorProto, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified EnumValueDescriptorProto message, length delimited. Does not implicitly {@link google.protobuf.EnumValueDescriptorProto.verify|verify} messages.
+ * @param message EnumValueDescriptorProto message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.IEnumValueDescriptorProto, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an EnumValueDescriptorProto message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns EnumValueDescriptorProto
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.EnumValueDescriptorProto;
+
+ /**
+ * Decodes an EnumValueDescriptorProto message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns EnumValueDescriptorProto
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.EnumValueDescriptorProto;
+
+ /**
+ * Verifies an EnumValueDescriptorProto message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates an EnumValueDescriptorProto message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns EnumValueDescriptorProto
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.EnumValueDescriptorProto;
+
+ /**
+ * Creates a plain object from an EnumValueDescriptorProto message. Also converts values to other types if specified.
+ * @param message EnumValueDescriptorProto
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.EnumValueDescriptorProto, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this EnumValueDescriptorProto to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for EnumValueDescriptorProto
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ServiceDescriptorProto. */
+ interface IServiceDescriptorProto {
+
+ /** ServiceDescriptorProto name */
+ name?: (string|null);
+
+ /** ServiceDescriptorProto method */
+ method?: (google.protobuf.IMethodDescriptorProto[]|null);
+
+ /** ServiceDescriptorProto options */
+ options?: (google.protobuf.IServiceOptions|null);
+ }
+
+ /** Represents a ServiceDescriptorProto. */
+ class ServiceDescriptorProto implements IServiceDescriptorProto {
+
+ /**
+ * Constructs a new ServiceDescriptorProto.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.IServiceDescriptorProto);
+
+ /** ServiceDescriptorProto name. */
+ public name: string;
+
+ /** ServiceDescriptorProto method. */
+ public method: google.protobuf.IMethodDescriptorProto[];
+
+ /** ServiceDescriptorProto options. */
+ public options?: (google.protobuf.IServiceOptions|null);
+
+ /**
+ * Creates a new ServiceDescriptorProto instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ServiceDescriptorProto instance
+ */
+ public static create(properties?: google.protobuf.IServiceDescriptorProto): google.protobuf.ServiceDescriptorProto;
+
+ /**
+ * Encodes the specified ServiceDescriptorProto message. Does not implicitly {@link google.protobuf.ServiceDescriptorProto.verify|verify} messages.
+ * @param message ServiceDescriptorProto message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.IServiceDescriptorProto, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ServiceDescriptorProto message, length delimited. Does not implicitly {@link google.protobuf.ServiceDescriptorProto.verify|verify} messages.
+ * @param message ServiceDescriptorProto message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.IServiceDescriptorProto, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ServiceDescriptorProto message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ServiceDescriptorProto
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.ServiceDescriptorProto;
+
+ /**
+ * Decodes a ServiceDescriptorProto message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ServiceDescriptorProto
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.ServiceDescriptorProto;
+
+ /**
+ * Verifies a ServiceDescriptorProto message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ServiceDescriptorProto message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ServiceDescriptorProto
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.ServiceDescriptorProto;
+
+ /**
+ * Creates a plain object from a ServiceDescriptorProto message. Also converts values to other types if specified.
+ * @param message ServiceDescriptorProto
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.ServiceDescriptorProto, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ServiceDescriptorProto to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ServiceDescriptorProto
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a MethodDescriptorProto. */
+ interface IMethodDescriptorProto {
+
+ /** MethodDescriptorProto name */
+ name?: (string|null);
+
+ /** MethodDescriptorProto inputType */
+ inputType?: (string|null);
+
+ /** MethodDescriptorProto outputType */
+ outputType?: (string|null);
+
+ /** MethodDescriptorProto options */
+ options?: (google.protobuf.IMethodOptions|null);
+
+ /** MethodDescriptorProto clientStreaming */
+ clientStreaming?: (boolean|null);
+
+ /** MethodDescriptorProto serverStreaming */
+ serverStreaming?: (boolean|null);
+ }
+
+ /** Represents a MethodDescriptorProto. */
+ class MethodDescriptorProto implements IMethodDescriptorProto {
+
+ /**
+ * Constructs a new MethodDescriptorProto.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.IMethodDescriptorProto);
+
+ /** MethodDescriptorProto name. */
+ public name: string;
+
+ /** MethodDescriptorProto inputType. */
+ public inputType: string;
+
+ /** MethodDescriptorProto outputType. */
+ public outputType: string;
+
+ /** MethodDescriptorProto options. */
+ public options?: (google.protobuf.IMethodOptions|null);
+
+ /** MethodDescriptorProto clientStreaming. */
+ public clientStreaming: boolean;
+
+ /** MethodDescriptorProto serverStreaming. */
+ public serverStreaming: boolean;
+
+ /**
+ * Creates a new MethodDescriptorProto instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns MethodDescriptorProto instance
+ */
+ public static create(properties?: google.protobuf.IMethodDescriptorProto): google.protobuf.MethodDescriptorProto;
+
+ /**
+ * Encodes the specified MethodDescriptorProto message. Does not implicitly {@link google.protobuf.MethodDescriptorProto.verify|verify} messages.
+ * @param message MethodDescriptorProto message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.IMethodDescriptorProto, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified MethodDescriptorProto message, length delimited. Does not implicitly {@link google.protobuf.MethodDescriptorProto.verify|verify} messages.
+ * @param message MethodDescriptorProto message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.IMethodDescriptorProto, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a MethodDescriptorProto message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns MethodDescriptorProto
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.MethodDescriptorProto;
+
+ /**
+ * Decodes a MethodDescriptorProto message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns MethodDescriptorProto
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.MethodDescriptorProto;
+
+ /**
+ * Verifies a MethodDescriptorProto message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a MethodDescriptorProto message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns MethodDescriptorProto
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.MethodDescriptorProto;
+
+ /**
+ * Creates a plain object from a MethodDescriptorProto message. Also converts values to other types if specified.
+ * @param message MethodDescriptorProto
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.MethodDescriptorProto, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this MethodDescriptorProto to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for MethodDescriptorProto
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a FileOptions. */
+ interface IFileOptions {
+
+ /** FileOptions javaPackage */
+ javaPackage?: (string|null);
+
+ /** FileOptions javaOuterClassname */
+ javaOuterClassname?: (string|null);
+
+ /** FileOptions javaMultipleFiles */
+ javaMultipleFiles?: (boolean|null);
+
+ /** FileOptions javaGenerateEqualsAndHash */
+ javaGenerateEqualsAndHash?: (boolean|null);
+
+ /** FileOptions javaStringCheckUtf8 */
+ javaStringCheckUtf8?: (boolean|null);
+
+ /** FileOptions optimizeFor */
+ optimizeFor?: (google.protobuf.FileOptions.OptimizeMode|keyof typeof google.protobuf.FileOptions.OptimizeMode|null);
+
+ /** FileOptions goPackage */
+ goPackage?: (string|null);
+
+ /** FileOptions ccGenericServices */
+ ccGenericServices?: (boolean|null);
+
+ /** FileOptions javaGenericServices */
+ javaGenericServices?: (boolean|null);
+
+ /** FileOptions pyGenericServices */
+ pyGenericServices?: (boolean|null);
+
+ /** FileOptions phpGenericServices */
+ phpGenericServices?: (boolean|null);
+
+ /** FileOptions deprecated */
+ deprecated?: (boolean|null);
+
+ /** FileOptions ccEnableArenas */
+ ccEnableArenas?: (boolean|null);
+
+ /** FileOptions objcClassPrefix */
+ objcClassPrefix?: (string|null);
+
+ /** FileOptions csharpNamespace */
+ csharpNamespace?: (string|null);
+
+ /** FileOptions swiftPrefix */
+ swiftPrefix?: (string|null);
+
+ /** FileOptions phpClassPrefix */
+ phpClassPrefix?: (string|null);
+
+ /** FileOptions phpNamespace */
+ phpNamespace?: (string|null);
+
+ /** FileOptions phpMetadataNamespace */
+ phpMetadataNamespace?: (string|null);
+
+ /** FileOptions rubyPackage */
+ rubyPackage?: (string|null);
+
+ /** FileOptions uninterpretedOption */
+ uninterpretedOption?: (google.protobuf.IUninterpretedOption[]|null);
+
+ /** FileOptions .google.api.resourceDefinition */
+ ".google.api.resourceDefinition"?: (google.api.IResourceDescriptor[]|null);
+ }
+
+ /** Represents a FileOptions. */
+ class FileOptions implements IFileOptions {
+
+ /**
+ * Constructs a new FileOptions.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.IFileOptions);
+
+ /** FileOptions javaPackage. */
+ public javaPackage: string;
+
+ /** FileOptions javaOuterClassname. */
+ public javaOuterClassname: string;
+
+ /** FileOptions javaMultipleFiles. */
+ public javaMultipleFiles: boolean;
+
+ /** FileOptions javaGenerateEqualsAndHash. */
+ public javaGenerateEqualsAndHash: boolean;
+
+ /** FileOptions javaStringCheckUtf8. */
+ public javaStringCheckUtf8: boolean;
+
+ /** FileOptions optimizeFor. */
+ public optimizeFor: (google.protobuf.FileOptions.OptimizeMode|keyof typeof google.protobuf.FileOptions.OptimizeMode);
+
+ /** FileOptions goPackage. */
+ public goPackage: string;
+
+ /** FileOptions ccGenericServices. */
+ public ccGenericServices: boolean;
+
+ /** FileOptions javaGenericServices. */
+ public javaGenericServices: boolean;
+
+ /** FileOptions pyGenericServices. */
+ public pyGenericServices: boolean;
+
+ /** FileOptions phpGenericServices. */
+ public phpGenericServices: boolean;
+
+ /** FileOptions deprecated. */
+ public deprecated: boolean;
+
+ /** FileOptions ccEnableArenas. */
+ public ccEnableArenas: boolean;
+
+ /** FileOptions objcClassPrefix. */
+ public objcClassPrefix: string;
+
+ /** FileOptions csharpNamespace. */
+ public csharpNamespace: string;
+
+ /** FileOptions swiftPrefix. */
+ public swiftPrefix: string;
+
+ /** FileOptions phpClassPrefix. */
+ public phpClassPrefix: string;
+
+ /** FileOptions phpNamespace. */
+ public phpNamespace: string;
+
+ /** FileOptions phpMetadataNamespace. */
+ public phpMetadataNamespace: string;
+
+ /** FileOptions rubyPackage. */
+ public rubyPackage: string;
+
+ /** FileOptions uninterpretedOption. */
+ public uninterpretedOption: google.protobuf.IUninterpretedOption[];
+
+ /**
+ * Creates a new FileOptions instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns FileOptions instance
+ */
+ public static create(properties?: google.protobuf.IFileOptions): google.protobuf.FileOptions;
+
+ /**
+ * Encodes the specified FileOptions message. Does not implicitly {@link google.protobuf.FileOptions.verify|verify} messages.
+ * @param message FileOptions message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.IFileOptions, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified FileOptions message, length delimited. Does not implicitly {@link google.protobuf.FileOptions.verify|verify} messages.
+ * @param message FileOptions message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.IFileOptions, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a FileOptions message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns FileOptions
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.FileOptions;
+
+ /**
+ * Decodes a FileOptions message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns FileOptions
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.FileOptions;
+
+ /**
+ * Verifies a FileOptions message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a FileOptions message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns FileOptions
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.FileOptions;
+
+ /**
+ * Creates a plain object from a FileOptions message. Also converts values to other types if specified.
+ * @param message FileOptions
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.FileOptions, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this FileOptions to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for FileOptions
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace FileOptions {
+
+ /** OptimizeMode enum. */
+ enum OptimizeMode {
+ SPEED = 1,
+ CODE_SIZE = 2,
+ LITE_RUNTIME = 3
+ }
+ }
+
+ /** Properties of a MessageOptions. */
+ interface IMessageOptions {
+
+ /** MessageOptions messageSetWireFormat */
+ messageSetWireFormat?: (boolean|null);
+
+ /** MessageOptions noStandardDescriptorAccessor */
+ noStandardDescriptorAccessor?: (boolean|null);
+
+ /** MessageOptions deprecated */
+ deprecated?: (boolean|null);
+
+ /** MessageOptions mapEntry */
+ mapEntry?: (boolean|null);
+
+ /** MessageOptions uninterpretedOption */
+ uninterpretedOption?: (google.protobuf.IUninterpretedOption[]|null);
+
+ /** MessageOptions .google.api.resource */
+ ".google.api.resource"?: (google.api.IResourceDescriptor|null);
+ }
+
+ /** Represents a MessageOptions. */
+ class MessageOptions implements IMessageOptions {
+
+ /**
+ * Constructs a new MessageOptions.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.IMessageOptions);
+
+ /** MessageOptions messageSetWireFormat. */
+ public messageSetWireFormat: boolean;
+
+ /** MessageOptions noStandardDescriptorAccessor. */
+ public noStandardDescriptorAccessor: boolean;
+
+ /** MessageOptions deprecated. */
+ public deprecated: boolean;
+
+ /** MessageOptions mapEntry. */
+ public mapEntry: boolean;
+
+ /** MessageOptions uninterpretedOption. */
+ public uninterpretedOption: google.protobuf.IUninterpretedOption[];
+
+ /**
+ * Creates a new MessageOptions instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns MessageOptions instance
+ */
+ public static create(properties?: google.protobuf.IMessageOptions): google.protobuf.MessageOptions;
+
+ /**
+ * Encodes the specified MessageOptions message. Does not implicitly {@link google.protobuf.MessageOptions.verify|verify} messages.
+ * @param message MessageOptions message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.IMessageOptions, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified MessageOptions message, length delimited. Does not implicitly {@link google.protobuf.MessageOptions.verify|verify} messages.
+ * @param message MessageOptions message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.IMessageOptions, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a MessageOptions message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns MessageOptions
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.MessageOptions;
+
+ /**
+ * Decodes a MessageOptions message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns MessageOptions
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.MessageOptions;
+
+ /**
+ * Verifies a MessageOptions message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a MessageOptions message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns MessageOptions
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.MessageOptions;
+
+ /**
+ * Creates a plain object from a MessageOptions message. Also converts values to other types if specified.
+ * @param message MessageOptions
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.MessageOptions, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this MessageOptions to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for MessageOptions
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a FieldOptions. */
+ interface IFieldOptions {
+
+ /** FieldOptions ctype */
+ ctype?: (google.protobuf.FieldOptions.CType|keyof typeof google.protobuf.FieldOptions.CType|null);
+
+ /** FieldOptions packed */
+ packed?: (boolean|null);
+
+ /** FieldOptions jstype */
+ jstype?: (google.protobuf.FieldOptions.JSType|keyof typeof google.protobuf.FieldOptions.JSType|null);
+
+ /** FieldOptions lazy */
+ lazy?: (boolean|null);
+
+ /** FieldOptions unverifiedLazy */
+ unverifiedLazy?: (boolean|null);
+
+ /** FieldOptions deprecated */
+ deprecated?: (boolean|null);
+
+ /** FieldOptions weak */
+ weak?: (boolean|null);
+
+ /** FieldOptions uninterpretedOption */
+ uninterpretedOption?: (google.protobuf.IUninterpretedOption[]|null);
+
+ /** FieldOptions .google.api.fieldBehavior */
+ ".google.api.fieldBehavior"?: (google.api.FieldBehavior[]|null);
+
+ /** FieldOptions .google.api.resourceReference */
+ ".google.api.resourceReference"?: (google.api.IResourceReference|null);
+ }
+
+ /** Represents a FieldOptions. */
+ class FieldOptions implements IFieldOptions {
+
+ /**
+ * Constructs a new FieldOptions.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.IFieldOptions);
+
+ /** FieldOptions ctype. */
+ public ctype: (google.protobuf.FieldOptions.CType|keyof typeof google.protobuf.FieldOptions.CType);
+
+ /** FieldOptions packed. */
+ public packed: boolean;
+
+ /** FieldOptions jstype. */
+ public jstype: (google.protobuf.FieldOptions.JSType|keyof typeof google.protobuf.FieldOptions.JSType);
+
+ /** FieldOptions lazy. */
+ public lazy: boolean;
+
+ /** FieldOptions unverifiedLazy. */
+ public unverifiedLazy: boolean;
+
+ /** FieldOptions deprecated. */
+ public deprecated: boolean;
+
+ /** FieldOptions weak. */
+ public weak: boolean;
+
+ /** FieldOptions uninterpretedOption. */
+ public uninterpretedOption: google.protobuf.IUninterpretedOption[];
+
+ /**
+ * Creates a new FieldOptions instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns FieldOptions instance
+ */
+ public static create(properties?: google.protobuf.IFieldOptions): google.protobuf.FieldOptions;
+
+ /**
+ * Encodes the specified FieldOptions message. Does not implicitly {@link google.protobuf.FieldOptions.verify|verify} messages.
+ * @param message FieldOptions message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.IFieldOptions, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified FieldOptions message, length delimited. Does not implicitly {@link google.protobuf.FieldOptions.verify|verify} messages.
+ * @param message FieldOptions message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.IFieldOptions, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a FieldOptions message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns FieldOptions
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.FieldOptions;
+
+ /**
+ * Decodes a FieldOptions message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns FieldOptions
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.FieldOptions;
+
+ /**
+ * Verifies a FieldOptions message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a FieldOptions message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns FieldOptions
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.FieldOptions;
+
+ /**
+ * Creates a plain object from a FieldOptions message. Also converts values to other types if specified.
+ * @param message FieldOptions
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.FieldOptions, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this FieldOptions to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for FieldOptions
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace FieldOptions {
+
+ /** CType enum. */
+ enum CType {
+ STRING = 0,
+ CORD = 1,
+ STRING_PIECE = 2
+ }
+
+ /** JSType enum. */
+ enum JSType {
+ JS_NORMAL = 0,
+ JS_STRING = 1,
+ JS_NUMBER = 2
+ }
+ }
+
+ /** Properties of an OneofOptions. */
+ interface IOneofOptions {
+
+ /** OneofOptions uninterpretedOption */
+ uninterpretedOption?: (google.protobuf.IUninterpretedOption[]|null);
+ }
+
+ /** Represents an OneofOptions. */
+ class OneofOptions implements IOneofOptions {
+
+ /**
+ * Constructs a new OneofOptions.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.IOneofOptions);
+
+ /** OneofOptions uninterpretedOption. */
+ public uninterpretedOption: google.protobuf.IUninterpretedOption[];
+
+ /**
+ * Creates a new OneofOptions instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns OneofOptions instance
+ */
+ public static create(properties?: google.protobuf.IOneofOptions): google.protobuf.OneofOptions;
+
+ /**
+ * Encodes the specified OneofOptions message. Does not implicitly {@link google.protobuf.OneofOptions.verify|verify} messages.
+ * @param message OneofOptions message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.IOneofOptions, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified OneofOptions message, length delimited. Does not implicitly {@link google.protobuf.OneofOptions.verify|verify} messages.
+ * @param message OneofOptions message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.IOneofOptions, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an OneofOptions message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns OneofOptions
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.OneofOptions;
+
+ /**
+ * Decodes an OneofOptions message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns OneofOptions
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.OneofOptions;
+
+ /**
+ * Verifies an OneofOptions message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates an OneofOptions message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns OneofOptions
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.OneofOptions;
+
+ /**
+ * Creates a plain object from an OneofOptions message. Also converts values to other types if specified.
+ * @param message OneofOptions
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.OneofOptions, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this OneofOptions to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for OneofOptions
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an EnumOptions. */
+ interface IEnumOptions {
+
+ /** EnumOptions allowAlias */
+ allowAlias?: (boolean|null);
+
+ /** EnumOptions deprecated */
+ deprecated?: (boolean|null);
+
+ /** EnumOptions uninterpretedOption */
+ uninterpretedOption?: (google.protobuf.IUninterpretedOption[]|null);
+ }
+
+ /** Represents an EnumOptions. */
+ class EnumOptions implements IEnumOptions {
+
+ /**
+ * Constructs a new EnumOptions.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.IEnumOptions);
+
+ /** EnumOptions allowAlias. */
+ public allowAlias: boolean;
+
+ /** EnumOptions deprecated. */
+ public deprecated: boolean;
+
+ /** EnumOptions uninterpretedOption. */
+ public uninterpretedOption: google.protobuf.IUninterpretedOption[];
+
+ /**
+ * Creates a new EnumOptions instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns EnumOptions instance
+ */
+ public static create(properties?: google.protobuf.IEnumOptions): google.protobuf.EnumOptions;
+
+ /**
+ * Encodes the specified EnumOptions message. Does not implicitly {@link google.protobuf.EnumOptions.verify|verify} messages.
+ * @param message EnumOptions message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.IEnumOptions, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified EnumOptions message, length delimited. Does not implicitly {@link google.protobuf.EnumOptions.verify|verify} messages.
+ * @param message EnumOptions message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.IEnumOptions, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an EnumOptions message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns EnumOptions
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.EnumOptions;
+
+ /**
+ * Decodes an EnumOptions message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns EnumOptions
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.EnumOptions;
+
+ /**
+ * Verifies an EnumOptions message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates an EnumOptions message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns EnumOptions
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.EnumOptions;
+
+ /**
+ * Creates a plain object from an EnumOptions message. Also converts values to other types if specified.
+ * @param message EnumOptions
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.EnumOptions, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this EnumOptions to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for EnumOptions
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an EnumValueOptions. */
+ interface IEnumValueOptions {
+
+ /** EnumValueOptions deprecated */
+ deprecated?: (boolean|null);
+
+ /** EnumValueOptions uninterpretedOption */
+ uninterpretedOption?: (google.protobuf.IUninterpretedOption[]|null);
+ }
+
+ /** Represents an EnumValueOptions. */
+ class EnumValueOptions implements IEnumValueOptions {
+
+ /**
+ * Constructs a new EnumValueOptions.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.IEnumValueOptions);
+
+ /** EnumValueOptions deprecated. */
+ public deprecated: boolean;
+
+ /** EnumValueOptions uninterpretedOption. */
+ public uninterpretedOption: google.protobuf.IUninterpretedOption[];
+
+ /**
+ * Creates a new EnumValueOptions instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns EnumValueOptions instance
+ */
+ public static create(properties?: google.protobuf.IEnumValueOptions): google.protobuf.EnumValueOptions;
+
+ /**
+ * Encodes the specified EnumValueOptions message. Does not implicitly {@link google.protobuf.EnumValueOptions.verify|verify} messages.
+ * @param message EnumValueOptions message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.IEnumValueOptions, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified EnumValueOptions message, length delimited. Does not implicitly {@link google.protobuf.EnumValueOptions.verify|verify} messages.
+ * @param message EnumValueOptions message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.IEnumValueOptions, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an EnumValueOptions message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns EnumValueOptions
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.EnumValueOptions;
+
+ /**
+ * Decodes an EnumValueOptions message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns EnumValueOptions
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.EnumValueOptions;
+
+ /**
+ * Verifies an EnumValueOptions message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates an EnumValueOptions message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns EnumValueOptions
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.EnumValueOptions;
+
+ /**
+ * Creates a plain object from an EnumValueOptions message. Also converts values to other types if specified.
+ * @param message EnumValueOptions
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.EnumValueOptions, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this EnumValueOptions to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for EnumValueOptions
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ServiceOptions. */
+ interface IServiceOptions {
+
+ /** ServiceOptions deprecated */
+ deprecated?: (boolean|null);
+
+ /** ServiceOptions uninterpretedOption */
+ uninterpretedOption?: (google.protobuf.IUninterpretedOption[]|null);
+
+ /** ServiceOptions .google.api.defaultHost */
+ ".google.api.defaultHost"?: (string|null);
+
+ /** ServiceOptions .google.api.oauthScopes */
+ ".google.api.oauthScopes"?: (string|null);
+ }
+
+ /** Represents a ServiceOptions. */
+ class ServiceOptions implements IServiceOptions {
+
+ /**
+ * Constructs a new ServiceOptions.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.IServiceOptions);
+
+ /** ServiceOptions deprecated. */
+ public deprecated: boolean;
+
+ /** ServiceOptions uninterpretedOption. */
+ public uninterpretedOption: google.protobuf.IUninterpretedOption[];
+
+ /**
+ * Creates a new ServiceOptions instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ServiceOptions instance
+ */
+ public static create(properties?: google.protobuf.IServiceOptions): google.protobuf.ServiceOptions;
+
+ /**
+ * Encodes the specified ServiceOptions message. Does not implicitly {@link google.protobuf.ServiceOptions.verify|verify} messages.
+ * @param message ServiceOptions message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.IServiceOptions, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ServiceOptions message, length delimited. Does not implicitly {@link google.protobuf.ServiceOptions.verify|verify} messages.
+ * @param message ServiceOptions message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.IServiceOptions, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ServiceOptions message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ServiceOptions
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.ServiceOptions;
+
+ /**
+ * Decodes a ServiceOptions message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ServiceOptions
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.ServiceOptions;
+
+ /**
+ * Verifies a ServiceOptions message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ServiceOptions message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ServiceOptions
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.ServiceOptions;
+
+ /**
+ * Creates a plain object from a ServiceOptions message. Also converts values to other types if specified.
+ * @param message ServiceOptions
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.ServiceOptions, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ServiceOptions to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ServiceOptions
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a MethodOptions. */
+ interface IMethodOptions {
+
+ /** MethodOptions deprecated */
+ deprecated?: (boolean|null);
+
+ /** MethodOptions idempotencyLevel */
+ idempotencyLevel?: (google.protobuf.MethodOptions.IdempotencyLevel|keyof typeof google.protobuf.MethodOptions.IdempotencyLevel|null);
+
+ /** MethodOptions uninterpretedOption */
+ uninterpretedOption?: (google.protobuf.IUninterpretedOption[]|null);
+
+ /** MethodOptions .google.api.http */
+ ".google.api.http"?: (google.api.IHttpRule|null);
+
+ /** MethodOptions .google.api.methodSignature */
+ ".google.api.methodSignature"?: (string[]|null);
+
+ /** 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 iam. */
+ namespace iam {
+
+ /** Namespace v1. */
+ namespace v1 {
+
+ /** Represents a IAMPolicy */
+ class IAMPolicy extends $protobuf.rpc.Service {
+
+ /**
+ * Constructs a new IAMPolicy service.
+ * @param rpcImpl RPC implementation
+ * @param [requestDelimited=false] Whether requests are length-delimited
+ * @param [responseDelimited=false] Whether responses are length-delimited
+ */
+ constructor(rpcImpl: $protobuf.RPCImpl, requestDelimited?: boolean, responseDelimited?: boolean);
+
+ /**
+ * Creates new IAMPolicy service using the specified rpc implementation.
+ * @param rpcImpl RPC implementation
+ * @param [requestDelimited=false] Whether requests are length-delimited
+ * @param [responseDelimited=false] Whether responses are length-delimited
+ * @returns RPC service. Useful where requests and/or responses are streamed.
+ */
+ public static create(rpcImpl: $protobuf.RPCImpl, requestDelimited?: boolean, responseDelimited?: boolean): IAMPolicy;
+
+ /**
+ * Calls SetIamPolicy.
+ * @param request SetIamPolicyRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Policy
+ */
+ public setIamPolicy(request: google.iam.v1.ISetIamPolicyRequest, callback: google.iam.v1.IAMPolicy.SetIamPolicyCallback): void;
+
+ /**
+ * Calls SetIamPolicy.
+ * @param request SetIamPolicyRequest message or plain object
+ * @returns Promise
+ */
+ public setIamPolicy(request: google.iam.v1.ISetIamPolicyRequest): Promise;
+
+ /**
+ * Calls GetIamPolicy.
+ * @param request GetIamPolicyRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Policy
+ */
+ public getIamPolicy(request: google.iam.v1.IGetIamPolicyRequest, callback: google.iam.v1.IAMPolicy.GetIamPolicyCallback): void;
+
+ /**
+ * Calls GetIamPolicy.
+ * @param request GetIamPolicyRequest message or plain object
+ * @returns Promise
+ */
+ public getIamPolicy(request: google.iam.v1.IGetIamPolicyRequest): Promise;
+
+ /**
+ * Calls TestIamPermissions.
+ * @param request TestIamPermissionsRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and TestIamPermissionsResponse
+ */
+ public testIamPermissions(request: google.iam.v1.ITestIamPermissionsRequest, callback: google.iam.v1.IAMPolicy.TestIamPermissionsCallback): void;
+
+ /**
+ * Calls TestIamPermissions.
+ * @param request TestIamPermissionsRequest message or plain object
+ * @returns Promise
+ */
+ public testIamPermissions(request: google.iam.v1.ITestIamPermissionsRequest): Promise;
+ }
+
+ namespace IAMPolicy {
+
+ /**
+ * Callback as used by {@link google.iam.v1.IAMPolicy|setIamPolicy}.
+ * @param error Error, if any
+ * @param [response] Policy
+ */
+ type SetIamPolicyCallback = (error: (Error|null), response?: google.iam.v1.Policy) => void;
+
+ /**
+ * Callback as used by {@link google.iam.v1.IAMPolicy|getIamPolicy}.
+ * @param error Error, if any
+ * @param [response] Policy
+ */
+ type GetIamPolicyCallback = (error: (Error|null), response?: google.iam.v1.Policy) => void;
+
+ /**
+ * Callback as used by {@link google.iam.v1.IAMPolicy|testIamPermissions}.
+ * @param error Error, if any
+ * @param [response] TestIamPermissionsResponse
+ */
+ type TestIamPermissionsCallback = (error: (Error|null), response?: google.iam.v1.TestIamPermissionsResponse) => void;
+ }
+
+ /** Properties of a SetIamPolicyRequest. */
+ interface ISetIamPolicyRequest {
+
+ /** SetIamPolicyRequest resource */
+ resource?: (string|null);
+
+ /** SetIamPolicyRequest policy */
+ policy?: (google.iam.v1.IPolicy|null);
+
+ /** SetIamPolicyRequest updateMask */
+ updateMask?: (google.protobuf.IFieldMask|null);
+ }
+
+ /** Represents a SetIamPolicyRequest. */
+ class SetIamPolicyRequest implements ISetIamPolicyRequest {
+
+ /**
+ * Constructs a new SetIamPolicyRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.iam.v1.ISetIamPolicyRequest);
+
+ /** SetIamPolicyRequest resource. */
+ public resource: string;
+
+ /** SetIamPolicyRequest policy. */
+ public policy?: (google.iam.v1.IPolicy|null);
+
+ /** SetIamPolicyRequest updateMask. */
+ public updateMask?: (google.protobuf.IFieldMask|null);
+
+ /**
+ * Creates a new SetIamPolicyRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns SetIamPolicyRequest instance
+ */
+ public static create(properties?: google.iam.v1.ISetIamPolicyRequest): google.iam.v1.SetIamPolicyRequest;
+
+ /**
+ * Encodes the specified SetIamPolicyRequest message. Does not implicitly {@link google.iam.v1.SetIamPolicyRequest.verify|verify} messages.
+ * @param message SetIamPolicyRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.iam.v1.ISetIamPolicyRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified SetIamPolicyRequest message, length delimited. Does not implicitly {@link google.iam.v1.SetIamPolicyRequest.verify|verify} messages.
+ * @param message SetIamPolicyRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.iam.v1.ISetIamPolicyRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a SetIamPolicyRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns SetIamPolicyRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.iam.v1.SetIamPolicyRequest;
+
+ /**
+ * Decodes a SetIamPolicyRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns SetIamPolicyRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.iam.v1.SetIamPolicyRequest;
+
+ /**
+ * Verifies a SetIamPolicyRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a SetIamPolicyRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns SetIamPolicyRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.iam.v1.SetIamPolicyRequest;
+
+ /**
+ * Creates a plain object from a SetIamPolicyRequest message. Also converts values to other types if specified.
+ * @param message SetIamPolicyRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.iam.v1.SetIamPolicyRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this SetIamPolicyRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for SetIamPolicyRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a GetIamPolicyRequest. */
+ interface IGetIamPolicyRequest {
+
+ /** GetIamPolicyRequest resource */
+ resource?: (string|null);
+
+ /** GetIamPolicyRequest options */
+ options?: (google.iam.v1.IGetPolicyOptions|null);
+ }
+
+ /** Represents a GetIamPolicyRequest. */
+ class GetIamPolicyRequest implements IGetIamPolicyRequest {
+
+ /**
+ * Constructs a new GetIamPolicyRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.iam.v1.IGetIamPolicyRequest);
+
+ /** GetIamPolicyRequest resource. */
+ public resource: string;
+
+ /** GetIamPolicyRequest options. */
+ public options?: (google.iam.v1.IGetPolicyOptions|null);
+
+ /**
+ * Creates a new GetIamPolicyRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns GetIamPolicyRequest instance
+ */
+ public static create(properties?: google.iam.v1.IGetIamPolicyRequest): google.iam.v1.GetIamPolicyRequest;
+
+ /**
+ * Encodes the specified GetIamPolicyRequest message. Does not implicitly {@link google.iam.v1.GetIamPolicyRequest.verify|verify} messages.
+ * @param message GetIamPolicyRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.iam.v1.IGetIamPolicyRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified GetIamPolicyRequest message, length delimited. Does not implicitly {@link google.iam.v1.GetIamPolicyRequest.verify|verify} messages.
+ * @param message GetIamPolicyRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.iam.v1.IGetIamPolicyRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a GetIamPolicyRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns GetIamPolicyRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.iam.v1.GetIamPolicyRequest;
+
+ /**
+ * Decodes a GetIamPolicyRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns GetIamPolicyRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.iam.v1.GetIamPolicyRequest;
+
+ /**
+ * Verifies a GetIamPolicyRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a GetIamPolicyRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns GetIamPolicyRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.iam.v1.GetIamPolicyRequest;
+
+ /**
+ * Creates a plain object from a GetIamPolicyRequest message. Also converts values to other types if specified.
+ * @param message GetIamPolicyRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.iam.v1.GetIamPolicyRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this GetIamPolicyRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for GetIamPolicyRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a TestIamPermissionsRequest. */
+ interface ITestIamPermissionsRequest {
+
+ /** TestIamPermissionsRequest resource */
+ resource?: (string|null);
+
+ /** TestIamPermissionsRequest permissions */
+ permissions?: (string[]|null);
+ }
+
+ /** Represents a TestIamPermissionsRequest. */
+ class TestIamPermissionsRequest implements ITestIamPermissionsRequest {
+
+ /**
+ * Constructs a new TestIamPermissionsRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.iam.v1.ITestIamPermissionsRequest);
+
+ /** TestIamPermissionsRequest resource. */
+ public resource: string;
+
+ /** TestIamPermissionsRequest permissions. */
+ public permissions: string[];
+
+ /**
+ * Creates a new TestIamPermissionsRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns TestIamPermissionsRequest instance
+ */
+ public static create(properties?: google.iam.v1.ITestIamPermissionsRequest): google.iam.v1.TestIamPermissionsRequest;
+
+ /**
+ * Encodes the specified TestIamPermissionsRequest message. Does not implicitly {@link google.iam.v1.TestIamPermissionsRequest.verify|verify} messages.
+ * @param message TestIamPermissionsRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.iam.v1.ITestIamPermissionsRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified TestIamPermissionsRequest message, length delimited. Does not implicitly {@link google.iam.v1.TestIamPermissionsRequest.verify|verify} messages.
+ * @param message TestIamPermissionsRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.iam.v1.ITestIamPermissionsRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a TestIamPermissionsRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns TestIamPermissionsRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.iam.v1.TestIamPermissionsRequest;
+
+ /**
+ * Decodes a TestIamPermissionsRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns TestIamPermissionsRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.iam.v1.TestIamPermissionsRequest;
+
+ /**
+ * Verifies a TestIamPermissionsRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a TestIamPermissionsRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns TestIamPermissionsRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.iam.v1.TestIamPermissionsRequest;
+
+ /**
+ * Creates a plain object from a TestIamPermissionsRequest message. Also converts values to other types if specified.
+ * @param message TestIamPermissionsRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.iam.v1.TestIamPermissionsRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this TestIamPermissionsRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for TestIamPermissionsRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a TestIamPermissionsResponse. */
+ interface ITestIamPermissionsResponse {
+
+ /** TestIamPermissionsResponse permissions */
+ permissions?: (string[]|null);
+ }
+
+ /** Represents a TestIamPermissionsResponse. */
+ class TestIamPermissionsResponse implements ITestIamPermissionsResponse {
+
+ /**
+ * Constructs a new TestIamPermissionsResponse.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.iam.v1.ITestIamPermissionsResponse);
+
+ /** TestIamPermissionsResponse permissions. */
+ public permissions: string[];
+
+ /**
+ * Creates a new TestIamPermissionsResponse instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns TestIamPermissionsResponse instance
+ */
+ public static create(properties?: google.iam.v1.ITestIamPermissionsResponse): google.iam.v1.TestIamPermissionsResponse;
+
+ /**
+ * Encodes the specified TestIamPermissionsResponse message. Does not implicitly {@link google.iam.v1.TestIamPermissionsResponse.verify|verify} messages.
+ * @param message TestIamPermissionsResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.iam.v1.ITestIamPermissionsResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified TestIamPermissionsResponse message, length delimited. Does not implicitly {@link google.iam.v1.TestIamPermissionsResponse.verify|verify} messages.
+ * @param message TestIamPermissionsResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.iam.v1.ITestIamPermissionsResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a TestIamPermissionsResponse message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns TestIamPermissionsResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.iam.v1.TestIamPermissionsResponse;
+
+ /**
+ * Decodes a TestIamPermissionsResponse message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns TestIamPermissionsResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.iam.v1.TestIamPermissionsResponse;
+
+ /**
+ * Verifies a TestIamPermissionsResponse message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a TestIamPermissionsResponse message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns TestIamPermissionsResponse
+ */
+ public static fromObject(object: { [k: string]: any }): google.iam.v1.TestIamPermissionsResponse;
+
+ /**
+ * Creates a plain object from a TestIamPermissionsResponse message. Also converts values to other types if specified.
+ * @param message TestIamPermissionsResponse
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.iam.v1.TestIamPermissionsResponse, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this TestIamPermissionsResponse to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for TestIamPermissionsResponse
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a GetPolicyOptions. */
+ interface IGetPolicyOptions {
+
+ /** GetPolicyOptions requestedPolicyVersion */
+ requestedPolicyVersion?: (number|null);
+ }
+
+ /** Represents a GetPolicyOptions. */
+ class GetPolicyOptions implements IGetPolicyOptions {
+
+ /**
+ * Constructs a new GetPolicyOptions.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.iam.v1.IGetPolicyOptions);
+
+ /** GetPolicyOptions requestedPolicyVersion. */
+ public requestedPolicyVersion: number;
+
+ /**
+ * Creates a new GetPolicyOptions instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns GetPolicyOptions instance
+ */
+ public static create(properties?: google.iam.v1.IGetPolicyOptions): google.iam.v1.GetPolicyOptions;
+
+ /**
+ * Encodes the specified GetPolicyOptions message. Does not implicitly {@link google.iam.v1.GetPolicyOptions.verify|verify} messages.
+ * @param message GetPolicyOptions message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.iam.v1.IGetPolicyOptions, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified GetPolicyOptions message, length delimited. Does not implicitly {@link google.iam.v1.GetPolicyOptions.verify|verify} messages.
+ * @param message GetPolicyOptions message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.iam.v1.IGetPolicyOptions, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a GetPolicyOptions message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns GetPolicyOptions
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.iam.v1.GetPolicyOptions;
+
+ /**
+ * Decodes a GetPolicyOptions message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns GetPolicyOptions
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.iam.v1.GetPolicyOptions;
+
+ /**
+ * Verifies a GetPolicyOptions message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a GetPolicyOptions message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns GetPolicyOptions
+ */
+ public static fromObject(object: { [k: string]: any }): google.iam.v1.GetPolicyOptions;
+
+ /**
+ * Creates a plain object from a GetPolicyOptions message. Also converts values to other types if specified.
+ * @param message GetPolicyOptions
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.iam.v1.GetPolicyOptions, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this GetPolicyOptions to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for GetPolicyOptions
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a Policy. */
+ interface IPolicy {
+
+ /** Policy version */
+ version?: (number|null);
+
+ /** Policy bindings */
+ bindings?: (google.iam.v1.IBinding[]|null);
+
+ /** Policy auditConfigs */
+ auditConfigs?: (google.iam.v1.IAuditConfig[]|null);
+
+ /** Policy etag */
+ etag?: (Uint8Array|string|null);
+ }
+
+ /** Represents a Policy. */
+ class Policy implements IPolicy {
+
+ /**
+ * Constructs a new Policy.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.iam.v1.IPolicy);
+
+ /** Policy version. */
+ public version: number;
+
+ /** Policy bindings. */
+ public bindings: google.iam.v1.IBinding[];
+
+ /** Policy auditConfigs. */
+ public auditConfigs: google.iam.v1.IAuditConfig[];
+
+ /** Policy etag. */
+ public etag: (Uint8Array|string);
+
+ /**
+ * Creates a new Policy instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Policy instance
+ */
+ public static create(properties?: google.iam.v1.IPolicy): google.iam.v1.Policy;
+
+ /**
+ * Encodes the specified Policy message. Does not implicitly {@link google.iam.v1.Policy.verify|verify} messages.
+ * @param message Policy message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.iam.v1.IPolicy, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Policy message, length delimited. Does not implicitly {@link google.iam.v1.Policy.verify|verify} messages.
+ * @param message Policy message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.iam.v1.IPolicy, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Policy message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Policy
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.iam.v1.Policy;
+
+ /**
+ * Decodes a Policy message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Policy
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.iam.v1.Policy;
+
+ /**
+ * Verifies a Policy message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a Policy message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Policy
+ */
+ public static fromObject(object: { [k: string]: any }): google.iam.v1.Policy;
+
+ /**
+ * Creates a plain object from a Policy message. Also converts values to other types if specified.
+ * @param message Policy
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.iam.v1.Policy, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Policy to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Policy
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a Binding. */
+ interface IBinding {
+
+ /** Binding role */
+ role?: (string|null);
+
+ /** Binding members */
+ members?: (string[]|null);
+
+ /** Binding condition */
+ condition?: (google.type.IExpr|null);
+ }
+
+ /** Represents a Binding. */
+ class Binding implements IBinding {
+
+ /**
+ * Constructs a new Binding.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.iam.v1.IBinding);
+
+ /** Binding role. */
+ public role: string;
+
+ /** Binding members. */
+ public members: string[];
+
+ /** Binding condition. */
+ public condition?: (google.type.IExpr|null);
+
+ /**
+ * Creates a new Binding instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Binding instance
+ */
+ public static create(properties?: google.iam.v1.IBinding): google.iam.v1.Binding;
+
+ /**
+ * Encodes the specified Binding message. Does not implicitly {@link google.iam.v1.Binding.verify|verify} messages.
+ * @param message Binding message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.iam.v1.IBinding, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Binding message, length delimited. Does not implicitly {@link google.iam.v1.Binding.verify|verify} messages.
+ * @param message Binding message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.iam.v1.IBinding, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Binding message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Binding
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.iam.v1.Binding;
+
+ /**
+ * Decodes a Binding message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Binding
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.iam.v1.Binding;
+
+ /**
+ * Verifies a Binding message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a Binding message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Binding
+ */
+ public static fromObject(object: { [k: string]: any }): google.iam.v1.Binding;
+
+ /**
+ * Creates a plain object from a Binding message. Also converts values to other types if specified.
+ * @param message Binding
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.iam.v1.Binding, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Binding to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Binding
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an AuditConfig. */
+ interface IAuditConfig {
+
+ /** AuditConfig service */
+ service?: (string|null);
+
+ /** AuditConfig auditLogConfigs */
+ auditLogConfigs?: (google.iam.v1.IAuditLogConfig[]|null);
+ }
+
+ /** Represents an AuditConfig. */
+ class AuditConfig implements IAuditConfig {
+
+ /**
+ * Constructs a new AuditConfig.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.iam.v1.IAuditConfig);
+
+ /** AuditConfig service. */
+ public service: string;
+
+ /** AuditConfig auditLogConfigs. */
+ public auditLogConfigs: google.iam.v1.IAuditLogConfig[];
+
+ /**
+ * Creates a new AuditConfig instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns AuditConfig instance
+ */
+ public static create(properties?: google.iam.v1.IAuditConfig): google.iam.v1.AuditConfig;
+
+ /**
+ * Encodes the specified AuditConfig message. Does not implicitly {@link google.iam.v1.AuditConfig.verify|verify} messages.
+ * @param message AuditConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.iam.v1.IAuditConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified AuditConfig message, length delimited. Does not implicitly {@link google.iam.v1.AuditConfig.verify|verify} messages.
+ * @param message AuditConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.iam.v1.IAuditConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an AuditConfig message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns AuditConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.iam.v1.AuditConfig;
+
+ /**
+ * Decodes an AuditConfig message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns AuditConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.iam.v1.AuditConfig;
+
+ /**
+ * Verifies an AuditConfig message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates an AuditConfig message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns AuditConfig
+ */
+ public static fromObject(object: { [k: string]: any }): google.iam.v1.AuditConfig;
+
+ /**
+ * Creates a plain object from an AuditConfig message. Also converts values to other types if specified.
+ * @param message AuditConfig
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.iam.v1.AuditConfig, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this AuditConfig to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for AuditConfig
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an AuditLogConfig. */
+ interface IAuditLogConfig {
+
+ /** AuditLogConfig logType */
+ logType?: (google.iam.v1.AuditLogConfig.LogType|keyof typeof google.iam.v1.AuditLogConfig.LogType|null);
+
+ /** AuditLogConfig exemptedMembers */
+ exemptedMembers?: (string[]|null);
+ }
+
+ /** Represents an AuditLogConfig. */
+ class AuditLogConfig implements IAuditLogConfig {
+
+ /**
+ * Constructs a new AuditLogConfig.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.iam.v1.IAuditLogConfig);
+
+ /** AuditLogConfig logType. */
+ public logType: (google.iam.v1.AuditLogConfig.LogType|keyof typeof google.iam.v1.AuditLogConfig.LogType);
+
+ /** AuditLogConfig exemptedMembers. */
+ public exemptedMembers: string[];
+
+ /**
+ * Creates a new AuditLogConfig instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns AuditLogConfig instance
+ */
+ public static create(properties?: google.iam.v1.IAuditLogConfig): google.iam.v1.AuditLogConfig;
+
+ /**
+ * Encodes the specified AuditLogConfig message. Does not implicitly {@link google.iam.v1.AuditLogConfig.verify|verify} messages.
+ * @param message AuditLogConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.iam.v1.IAuditLogConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified AuditLogConfig message, length delimited. Does not implicitly {@link google.iam.v1.AuditLogConfig.verify|verify} messages.
+ * @param message AuditLogConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.iam.v1.IAuditLogConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an AuditLogConfig message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns AuditLogConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.iam.v1.AuditLogConfig;
+
+ /**
+ * Decodes an AuditLogConfig message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns AuditLogConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.iam.v1.AuditLogConfig;
+
+ /**
+ * Verifies an AuditLogConfig message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates an AuditLogConfig message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns AuditLogConfig
+ */
+ public static fromObject(object: { [k: string]: any }): google.iam.v1.AuditLogConfig;
+
+ /**
+ * Creates a plain object from an AuditLogConfig message. Also converts values to other types if specified.
+ * @param message AuditLogConfig
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.iam.v1.AuditLogConfig, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this AuditLogConfig to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for AuditLogConfig
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace AuditLogConfig {
+
+ /** LogType enum. */
+ enum LogType {
+ LOG_TYPE_UNSPECIFIED = 0,
+ ADMIN_READ = 1,
+ DATA_WRITE = 2,
+ DATA_READ = 3
+ }
+ }
+
+ /** Properties of a PolicyDelta. */
+ interface IPolicyDelta {
+
+ /** PolicyDelta bindingDeltas */
+ bindingDeltas?: (google.iam.v1.IBindingDelta[]|null);
+
+ /** PolicyDelta auditConfigDeltas */
+ auditConfigDeltas?: (google.iam.v1.IAuditConfigDelta[]|null);
+ }
+
+ /** Represents a PolicyDelta. */
+ class PolicyDelta implements IPolicyDelta {
+
+ /**
+ * Constructs a new PolicyDelta.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.iam.v1.IPolicyDelta);
+
+ /** PolicyDelta bindingDeltas. */
+ public bindingDeltas: google.iam.v1.IBindingDelta[];
+
+ /** PolicyDelta auditConfigDeltas. */
+ public auditConfigDeltas: google.iam.v1.IAuditConfigDelta[];
+
+ /**
+ * Creates a new PolicyDelta instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns PolicyDelta instance
+ */
+ public static create(properties?: google.iam.v1.IPolicyDelta): google.iam.v1.PolicyDelta;
+
+ /**
+ * Encodes the specified PolicyDelta message. Does not implicitly {@link google.iam.v1.PolicyDelta.verify|verify} messages.
+ * @param message PolicyDelta message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.iam.v1.IPolicyDelta, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified PolicyDelta message, length delimited. Does not implicitly {@link google.iam.v1.PolicyDelta.verify|verify} messages.
+ * @param message PolicyDelta message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.iam.v1.IPolicyDelta, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a PolicyDelta message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns PolicyDelta
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.iam.v1.PolicyDelta;
+
+ /**
+ * Decodes a PolicyDelta message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns PolicyDelta
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.iam.v1.PolicyDelta;
+
+ /**
+ * Verifies a PolicyDelta message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a PolicyDelta message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns PolicyDelta
+ */
+ public static fromObject(object: { [k: string]: any }): google.iam.v1.PolicyDelta;
+
+ /**
+ * Creates a plain object from a PolicyDelta message. Also converts values to other types if specified.
+ * @param message PolicyDelta
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.iam.v1.PolicyDelta, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this PolicyDelta to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for PolicyDelta
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a BindingDelta. */
+ interface IBindingDelta {
+
+ /** BindingDelta action */
+ action?: (google.iam.v1.BindingDelta.Action|keyof typeof google.iam.v1.BindingDelta.Action|null);
+
+ /** BindingDelta role */
+ role?: (string|null);
+
+ /** BindingDelta member */
+ member?: (string|null);
+
+ /** BindingDelta condition */
+ condition?: (google.type.IExpr|null);
+ }
+
+ /** Represents a BindingDelta. */
+ class BindingDelta implements IBindingDelta {
+
+ /**
+ * Constructs a new BindingDelta.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.iam.v1.IBindingDelta);
+
+ /** BindingDelta action. */
+ public action: (google.iam.v1.BindingDelta.Action|keyof typeof google.iam.v1.BindingDelta.Action);
+
+ /** BindingDelta role. */
+ public role: string;
+
+ /** BindingDelta member. */
+ public member: string;
+
+ /** BindingDelta condition. */
+ public condition?: (google.type.IExpr|null);
+
+ /**
+ * Creates a new BindingDelta instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns BindingDelta instance
+ */
+ public static create(properties?: google.iam.v1.IBindingDelta): google.iam.v1.BindingDelta;
+
+ /**
+ * Encodes the specified BindingDelta message. Does not implicitly {@link google.iam.v1.BindingDelta.verify|verify} messages.
+ * @param message BindingDelta message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.iam.v1.IBindingDelta, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified BindingDelta message, length delimited. Does not implicitly {@link google.iam.v1.BindingDelta.verify|verify} messages.
+ * @param message BindingDelta message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.iam.v1.IBindingDelta, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a BindingDelta message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns BindingDelta
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.iam.v1.BindingDelta;
+
+ /**
+ * Decodes a BindingDelta message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns BindingDelta
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.iam.v1.BindingDelta;
+
+ /**
+ * Verifies a BindingDelta message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a BindingDelta message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns BindingDelta
+ */
+ public static fromObject(object: { [k: string]: any }): google.iam.v1.BindingDelta;
+
+ /**
+ * Creates a plain object from a BindingDelta message. Also converts values to other types if specified.
+ * @param message BindingDelta
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.iam.v1.BindingDelta, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this BindingDelta to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for BindingDelta
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace BindingDelta {
+
+ /** Action enum. */
+ enum Action {
+ ACTION_UNSPECIFIED = 0,
+ ADD = 1,
+ REMOVE = 2
+ }
+ }
+
+ /** Properties of an AuditConfigDelta. */
+ interface IAuditConfigDelta {
+
+ /** AuditConfigDelta action */
+ action?: (google.iam.v1.AuditConfigDelta.Action|keyof typeof google.iam.v1.AuditConfigDelta.Action|null);
+
+ /** AuditConfigDelta service */
+ service?: (string|null);
+
+ /** AuditConfigDelta exemptedMember */
+ exemptedMember?: (string|null);
+
+ /** AuditConfigDelta logType */
+ logType?: (string|null);
+ }
+
+ /** Represents an AuditConfigDelta. */
+ class AuditConfigDelta implements IAuditConfigDelta {
+
+ /**
+ * Constructs a new AuditConfigDelta.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.iam.v1.IAuditConfigDelta);
+
+ /** AuditConfigDelta action. */
+ public action: (google.iam.v1.AuditConfigDelta.Action|keyof typeof google.iam.v1.AuditConfigDelta.Action);
+
+ /** AuditConfigDelta service. */
+ public service: string;
+
+ /** AuditConfigDelta exemptedMember. */
+ public exemptedMember: string;
+
+ /** AuditConfigDelta logType. */
+ public logType: string;
+
+ /**
+ * Creates a new AuditConfigDelta instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns AuditConfigDelta instance
+ */
+ public static create(properties?: google.iam.v1.IAuditConfigDelta): google.iam.v1.AuditConfigDelta;
+
+ /**
+ * Encodes the specified AuditConfigDelta message. Does not implicitly {@link google.iam.v1.AuditConfigDelta.verify|verify} messages.
+ * @param message AuditConfigDelta message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.iam.v1.IAuditConfigDelta, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified AuditConfigDelta message, length delimited. Does not implicitly {@link google.iam.v1.AuditConfigDelta.verify|verify} messages.
+ * @param message AuditConfigDelta message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.iam.v1.IAuditConfigDelta, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an AuditConfigDelta message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns AuditConfigDelta
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.iam.v1.AuditConfigDelta;
+
+ /**
+ * Decodes an AuditConfigDelta message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns AuditConfigDelta
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.iam.v1.AuditConfigDelta;
+
+ /**
+ * Verifies an AuditConfigDelta message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates an AuditConfigDelta message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns AuditConfigDelta
+ */
+ public static fromObject(object: { [k: string]: any }): google.iam.v1.AuditConfigDelta;
+
+ /**
+ * Creates a plain object from an AuditConfigDelta message. Also converts values to other types if specified.
+ * @param message AuditConfigDelta
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.iam.v1.AuditConfigDelta, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this AuditConfigDelta to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for AuditConfigDelta
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace AuditConfigDelta {
+
+ /** Action enum. */
+ enum Action {
+ ACTION_UNSPECIFIED = 0,
+ ADD = 1,
+ REMOVE = 2
+ }
+ }
+ }
+ }
+
+ /** Namespace type. */
+ namespace type {
+
+ /** Properties of an Expr. */
+ interface IExpr {
+
+ /** Expr expression */
+ expression?: (string|null);
+
+ /** Expr title */
+ title?: (string|null);
+
+ /** Expr description */
+ description?: (string|null);
+
+ /** Expr location */
+ location?: (string|null);
+ }
+
+ /** Represents an Expr. */
+ class Expr implements IExpr {
+
+ /**
+ * Constructs a new Expr.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.type.IExpr);
+
+ /** Expr expression. */
+ public expression: string;
+
+ /** Expr title. */
+ public title: string;
+
+ /** Expr description. */
+ public description: string;
+
+ /** Expr location. */
+ public location: string;
+
+ /**
+ * Creates a new Expr instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Expr instance
+ */
+ public static create(properties?: google.type.IExpr): google.type.Expr;
+
+ /**
+ * Encodes the specified Expr message. Does not implicitly {@link google.type.Expr.verify|verify} messages.
+ * @param message Expr message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.type.IExpr, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Expr message, length delimited. Does not implicitly {@link google.type.Expr.verify|verify} messages.
+ * @param message Expr message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.type.IExpr, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an Expr message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Expr
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.type.Expr;
+
+ /**
+ * Decodes an Expr message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Expr
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.type.Expr;
+
+ /**
+ * Verifies an Expr message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates an Expr message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Expr
+ */
+ public static fromObject(object: { [k: string]: any }): google.type.Expr;
+
+ /**
+ * Creates a plain object from an Expr message. Also converts values to other types if specified.
+ * @param message Expr
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.type.Expr, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Expr to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Expr
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+ }
+
+ /** Namespace 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-identity-accesscontextmanager/protos/protos.js b/packages/google-identity-accesscontextmanager/protos/protos.js
new file mode 100644
index 00000000000..148fd988624
--- /dev/null
+++ b/packages/google-identity-accesscontextmanager/protos/protos.js
@@ -0,0 +1,32620 @@
+// 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_access_context_manager_protos || ($protobuf.roots._google_cloud_access_context_manager_protos = {});
+
+ $root.google = (function() {
+
+ /**
+ * Namespace google.
+ * @exports google
+ * @namespace
+ */
+ var google = {};
+
+ google.identity = (function() {
+
+ /**
+ * Namespace identity.
+ * @memberof google
+ * @namespace
+ */
+ var identity = {};
+
+ identity.accesscontextmanager = (function() {
+
+ /**
+ * Namespace accesscontextmanager.
+ * @memberof google.identity
+ * @namespace
+ */
+ var accesscontextmanager = {};
+
+ accesscontextmanager.type = (function() {
+
+ /**
+ * Namespace type.
+ * @memberof google.identity.accesscontextmanager
+ * @namespace
+ */
+ var type = {};
+
+ /**
+ * DeviceEncryptionStatus enum.
+ * @name google.identity.accesscontextmanager.type.DeviceEncryptionStatus
+ * @enum {number}
+ * @property {number} ENCRYPTION_UNSPECIFIED=0 ENCRYPTION_UNSPECIFIED value
+ * @property {number} ENCRYPTION_UNSUPPORTED=1 ENCRYPTION_UNSUPPORTED value
+ * @property {number} UNENCRYPTED=2 UNENCRYPTED value
+ * @property {number} ENCRYPTED=3 ENCRYPTED value
+ */
+ type.DeviceEncryptionStatus = (function() {
+ var valuesById = {}, values = Object.create(valuesById);
+ values[valuesById[0] = "ENCRYPTION_UNSPECIFIED"] = 0;
+ values[valuesById[1] = "ENCRYPTION_UNSUPPORTED"] = 1;
+ values[valuesById[2] = "UNENCRYPTED"] = 2;
+ values[valuesById[3] = "ENCRYPTED"] = 3;
+ return values;
+ })();
+
+ /**
+ * OsType enum.
+ * @name google.identity.accesscontextmanager.type.OsType
+ * @enum {number}
+ * @property {number} OS_UNSPECIFIED=0 OS_UNSPECIFIED value
+ * @property {number} DESKTOP_MAC=1 DESKTOP_MAC value
+ * @property {number} DESKTOP_WINDOWS=2 DESKTOP_WINDOWS value
+ * @property {number} DESKTOP_LINUX=3 DESKTOP_LINUX value
+ * @property {number} DESKTOP_CHROME_OS=6 DESKTOP_CHROME_OS value
+ * @property {number} ANDROID=4 ANDROID value
+ * @property {number} IOS=5 IOS value
+ */
+ type.OsType = (function() {
+ var valuesById = {}, values = Object.create(valuesById);
+ values[valuesById[0] = "OS_UNSPECIFIED"] = 0;
+ values[valuesById[1] = "DESKTOP_MAC"] = 1;
+ values[valuesById[2] = "DESKTOP_WINDOWS"] = 2;
+ values[valuesById[3] = "DESKTOP_LINUX"] = 3;
+ values[valuesById[6] = "DESKTOP_CHROME_OS"] = 6;
+ values[valuesById[4] = "ANDROID"] = 4;
+ values[valuesById[5] = "IOS"] = 5;
+ return values;
+ })();
+
+ /**
+ * DeviceManagementLevel enum.
+ * @name google.identity.accesscontextmanager.type.DeviceManagementLevel
+ * @enum {number}
+ * @property {number} MANAGEMENT_UNSPECIFIED=0 MANAGEMENT_UNSPECIFIED value
+ * @property {number} NONE=1 NONE value
+ * @property {number} BASIC=2 BASIC value
+ * @property {number} COMPLETE=3 COMPLETE value
+ */
+ type.DeviceManagementLevel = (function() {
+ var valuesById = {}, values = Object.create(valuesById);
+ values[valuesById[0] = "MANAGEMENT_UNSPECIFIED"] = 0;
+ values[valuesById[1] = "NONE"] = 1;
+ values[valuesById[2] = "BASIC"] = 2;
+ values[valuesById[3] = "COMPLETE"] = 3;
+ return values;
+ })();
+
+ return type;
+ })();
+
+ accesscontextmanager.v1 = (function() {
+
+ /**
+ * Namespace v1.
+ * @memberof google.identity.accesscontextmanager
+ * @namespace
+ */
+ var v1 = {};
+
+ v1.AccessContextManager = (function() {
+
+ /**
+ * Constructs a new AccessContextManager service.
+ * @memberof google.identity.accesscontextmanager.v1
+ * @classdesc Represents an AccessContextManager
+ * @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 AccessContextManager(rpcImpl, requestDelimited, responseDelimited) {
+ $protobuf.rpc.Service.call(this, rpcImpl, requestDelimited, responseDelimited);
+ }
+
+ (AccessContextManager.prototype = Object.create($protobuf.rpc.Service.prototype)).constructor = AccessContextManager;
+
+ /**
+ * Creates new AccessContextManager service using the specified rpc implementation.
+ * @function create
+ * @memberof google.identity.accesscontextmanager.v1.AccessContextManager
+ * @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 {AccessContextManager} RPC service. Useful where requests and/or responses are streamed.
+ */
+ AccessContextManager.create = function create(rpcImpl, requestDelimited, responseDelimited) {
+ return new this(rpcImpl, requestDelimited, responseDelimited);
+ };
+
+ /**
+ * Callback as used by {@link google.identity.accesscontextmanager.v1.AccessContextManager|listAccessPolicies}.
+ * @memberof google.identity.accesscontextmanager.v1.AccessContextManager
+ * @typedef ListAccessPoliciesCallback
+ * @type {function}
+ * @param {Error|null} error Error, if any
+ * @param {google.identity.accesscontextmanager.v1.ListAccessPoliciesResponse} [response] ListAccessPoliciesResponse
+ */
+
+ /**
+ * Calls ListAccessPolicies.
+ * @function listAccessPolicies
+ * @memberof google.identity.accesscontextmanager.v1.AccessContextManager
+ * @instance
+ * @param {google.identity.accesscontextmanager.v1.IListAccessPoliciesRequest} request ListAccessPoliciesRequest message or plain object
+ * @param {google.identity.accesscontextmanager.v1.AccessContextManager.ListAccessPoliciesCallback} callback Node-style callback called with the error, if any, and ListAccessPoliciesResponse
+ * @returns {undefined}
+ * @variation 1
+ */
+ Object.defineProperty(AccessContextManager.prototype.listAccessPolicies = function listAccessPolicies(request, callback) {
+ return this.rpcCall(listAccessPolicies, $root.google.identity.accesscontextmanager.v1.ListAccessPoliciesRequest, $root.google.identity.accesscontextmanager.v1.ListAccessPoliciesResponse, request, callback);
+ }, "name", { value: "ListAccessPolicies" });
+
+ /**
+ * Calls ListAccessPolicies.
+ * @function listAccessPolicies
+ * @memberof google.identity.accesscontextmanager.v1.AccessContextManager
+ * @instance
+ * @param {google.identity.accesscontextmanager.v1.IListAccessPoliciesRequest} request ListAccessPoliciesRequest message or plain object
+ * @returns {Promise} Promise
+ * @variation 2
+ */
+
+ /**
+ * Callback as used by {@link google.identity.accesscontextmanager.v1.AccessContextManager|getAccessPolicy}.
+ * @memberof google.identity.accesscontextmanager.v1.AccessContextManager
+ * @typedef GetAccessPolicyCallback
+ * @type {function}
+ * @param {Error|null} error Error, if any
+ * @param {google.identity.accesscontextmanager.v1.AccessPolicy} [response] AccessPolicy
+ */
+
+ /**
+ * Calls GetAccessPolicy.
+ * @function getAccessPolicy
+ * @memberof google.identity.accesscontextmanager.v1.AccessContextManager
+ * @instance
+ * @param {google.identity.accesscontextmanager.v1.IGetAccessPolicyRequest} request GetAccessPolicyRequest message or plain object
+ * @param {google.identity.accesscontextmanager.v1.AccessContextManager.GetAccessPolicyCallback} callback Node-style callback called with the error, if any, and AccessPolicy
+ * @returns {undefined}
+ * @variation 1
+ */
+ Object.defineProperty(AccessContextManager.prototype.getAccessPolicy = function getAccessPolicy(request, callback) {
+ return this.rpcCall(getAccessPolicy, $root.google.identity.accesscontextmanager.v1.GetAccessPolicyRequest, $root.google.identity.accesscontextmanager.v1.AccessPolicy, request, callback);
+ }, "name", { value: "GetAccessPolicy" });
+
+ /**
+ * Calls GetAccessPolicy.
+ * @function getAccessPolicy
+ * @memberof google.identity.accesscontextmanager.v1.AccessContextManager
+ * @instance
+ * @param {google.identity.accesscontextmanager.v1.IGetAccessPolicyRequest} request GetAccessPolicyRequest message or plain object
+ * @returns {Promise} Promise
+ * @variation 2
+ */
+
+ /**
+ * Callback as used by {@link google.identity.accesscontextmanager.v1.AccessContextManager|createAccessPolicy}.
+ * @memberof google.identity.accesscontextmanager.v1.AccessContextManager
+ * @typedef CreateAccessPolicyCallback
+ * @type {function}
+ * @param {Error|null} error Error, if any
+ * @param {google.longrunning.Operation} [response] Operation
+ */
+
+ /**
+ * Calls CreateAccessPolicy.
+ * @function createAccessPolicy
+ * @memberof google.identity.accesscontextmanager.v1.AccessContextManager
+ * @instance
+ * @param {google.identity.accesscontextmanager.v1.IAccessPolicy} request AccessPolicy message or plain object
+ * @param {google.identity.accesscontextmanager.v1.AccessContextManager.CreateAccessPolicyCallback} callback Node-style callback called with the error, if any, and Operation
+ * @returns {undefined}
+ * @variation 1
+ */
+ Object.defineProperty(AccessContextManager.prototype.createAccessPolicy = function createAccessPolicy(request, callback) {
+ return this.rpcCall(createAccessPolicy, $root.google.identity.accesscontextmanager.v1.AccessPolicy, $root.google.longrunning.Operation, request, callback);
+ }, "name", { value: "CreateAccessPolicy" });
+
+ /**
+ * Calls CreateAccessPolicy.
+ * @function createAccessPolicy
+ * @memberof google.identity.accesscontextmanager.v1.AccessContextManager
+ * @instance
+ * @param {google.identity.accesscontextmanager.v1.IAccessPolicy} request AccessPolicy message or plain object
+ * @returns {Promise} Promise
+ * @variation 2
+ */
+
+ /**
+ * Callback as used by {@link google.identity.accesscontextmanager.v1.AccessContextManager|updateAccessPolicy}.
+ * @memberof google.identity.accesscontextmanager.v1.AccessContextManager
+ * @typedef UpdateAccessPolicyCallback
+ * @type {function}
+ * @param {Error|null} error Error, if any
+ * @param {google.longrunning.Operation} [response] Operation
+ */
+
+ /**
+ * Calls UpdateAccessPolicy.
+ * @function updateAccessPolicy
+ * @memberof google.identity.accesscontextmanager.v1.AccessContextManager
+ * @instance
+ * @param {google.identity.accesscontextmanager.v1.IUpdateAccessPolicyRequest} request UpdateAccessPolicyRequest message or plain object
+ * @param {google.identity.accesscontextmanager.v1.AccessContextManager.UpdateAccessPolicyCallback} callback Node-style callback called with the error, if any, and Operation
+ * @returns {undefined}
+ * @variation 1
+ */
+ Object.defineProperty(AccessContextManager.prototype.updateAccessPolicy = function updateAccessPolicy(request, callback) {
+ return this.rpcCall(updateAccessPolicy, $root.google.identity.accesscontextmanager.v1.UpdateAccessPolicyRequest, $root.google.longrunning.Operation, request, callback);
+ }, "name", { value: "UpdateAccessPolicy" });
+
+ /**
+ * Calls UpdateAccessPolicy.
+ * @function updateAccessPolicy
+ * @memberof google.identity.accesscontextmanager.v1.AccessContextManager
+ * @instance
+ * @param {google.identity.accesscontextmanager.v1.IUpdateAccessPolicyRequest} request UpdateAccessPolicyRequest message or plain object
+ * @returns {Promise} Promise
+ * @variation 2
+ */
+
+ /**
+ * Callback as used by {@link google.identity.accesscontextmanager.v1.AccessContextManager|deleteAccessPolicy}.
+ * @memberof google.identity.accesscontextmanager.v1.AccessContextManager
+ * @typedef DeleteAccessPolicyCallback
+ * @type {function}
+ * @param {Error|null} error Error, if any
+ * @param {google.longrunning.Operation} [response] Operation
+ */
+
+ /**
+ * Calls DeleteAccessPolicy.
+ * @function deleteAccessPolicy
+ * @memberof google.identity.accesscontextmanager.v1.AccessContextManager
+ * @instance
+ * @param {google.identity.accesscontextmanager.v1.IDeleteAccessPolicyRequest} request DeleteAccessPolicyRequest message or plain object
+ * @param {google.identity.accesscontextmanager.v1.AccessContextManager.DeleteAccessPolicyCallback} callback Node-style callback called with the error, if any, and Operation
+ * @returns {undefined}
+ * @variation 1
+ */
+ Object.defineProperty(AccessContextManager.prototype.deleteAccessPolicy = function deleteAccessPolicy(request, callback) {
+ return this.rpcCall(deleteAccessPolicy, $root.google.identity.accesscontextmanager.v1.DeleteAccessPolicyRequest, $root.google.longrunning.Operation, request, callback);
+ }, "name", { value: "DeleteAccessPolicy" });
+
+ /**
+ * Calls DeleteAccessPolicy.
+ * @function deleteAccessPolicy
+ * @memberof google.identity.accesscontextmanager.v1.AccessContextManager
+ * @instance
+ * @param {google.identity.accesscontextmanager.v1.IDeleteAccessPolicyRequest} request DeleteAccessPolicyRequest message or plain object
+ * @returns {Promise} Promise
+ * @variation 2
+ */
+
+ /**
+ * Callback as used by {@link google.identity.accesscontextmanager.v1.AccessContextManager|listAccessLevels}.
+ * @memberof google.identity.accesscontextmanager.v1.AccessContextManager
+ * @typedef ListAccessLevelsCallback
+ * @type {function}
+ * @param {Error|null} error Error, if any
+ * @param {google.identity.accesscontextmanager.v1.ListAccessLevelsResponse} [response] ListAccessLevelsResponse
+ */
+
+ /**
+ * Calls ListAccessLevels.
+ * @function listAccessLevels
+ * @memberof google.identity.accesscontextmanager.v1.AccessContextManager
+ * @instance
+ * @param {google.identity.accesscontextmanager.v1.IListAccessLevelsRequest} request ListAccessLevelsRequest message or plain object
+ * @param {google.identity.accesscontextmanager.v1.AccessContextManager.ListAccessLevelsCallback} callback Node-style callback called with the error, if any, and ListAccessLevelsResponse
+ * @returns {undefined}
+ * @variation 1
+ */
+ Object.defineProperty(AccessContextManager.prototype.listAccessLevels = function listAccessLevels(request, callback) {
+ return this.rpcCall(listAccessLevels, $root.google.identity.accesscontextmanager.v1.ListAccessLevelsRequest, $root.google.identity.accesscontextmanager.v1.ListAccessLevelsResponse, request, callback);
+ }, "name", { value: "ListAccessLevels" });
+
+ /**
+ * Calls ListAccessLevels.
+ * @function listAccessLevels
+ * @memberof google.identity.accesscontextmanager.v1.AccessContextManager
+ * @instance
+ * @param {google.identity.accesscontextmanager.v1.IListAccessLevelsRequest} request ListAccessLevelsRequest message or plain object
+ * @returns {Promise} Promise
+ * @variation 2
+ */
+
+ /**
+ * Callback as used by {@link google.identity.accesscontextmanager.v1.AccessContextManager|getAccessLevel}.
+ * @memberof google.identity.accesscontextmanager.v1.AccessContextManager
+ * @typedef GetAccessLevelCallback
+ * @type {function}
+ * @param {Error|null} error Error, if any
+ * @param {google.identity.accesscontextmanager.v1.AccessLevel} [response] AccessLevel
+ */
+
+ /**
+ * Calls GetAccessLevel.
+ * @function getAccessLevel
+ * @memberof google.identity.accesscontextmanager.v1.AccessContextManager
+ * @instance
+ * @param {google.identity.accesscontextmanager.v1.IGetAccessLevelRequest} request GetAccessLevelRequest message or plain object
+ * @param {google.identity.accesscontextmanager.v1.AccessContextManager.GetAccessLevelCallback} callback Node-style callback called with the error, if any, and AccessLevel
+ * @returns {undefined}
+ * @variation 1
+ */
+ Object.defineProperty(AccessContextManager.prototype.getAccessLevel = function getAccessLevel(request, callback) {
+ return this.rpcCall(getAccessLevel, $root.google.identity.accesscontextmanager.v1.GetAccessLevelRequest, $root.google.identity.accesscontextmanager.v1.AccessLevel, request, callback);
+ }, "name", { value: "GetAccessLevel" });
+
+ /**
+ * Calls GetAccessLevel.
+ * @function getAccessLevel
+ * @memberof google.identity.accesscontextmanager.v1.AccessContextManager
+ * @instance
+ * @param {google.identity.accesscontextmanager.v1.IGetAccessLevelRequest} request GetAccessLevelRequest message or plain object
+ * @returns {Promise} Promise
+ * @variation 2
+ */
+
+ /**
+ * Callback as used by {@link google.identity.accesscontextmanager.v1.AccessContextManager|createAccessLevel}.
+ * @memberof google.identity.accesscontextmanager.v1.AccessContextManager
+ * @typedef CreateAccessLevelCallback
+ * @type {function}
+ * @param {Error|null} error Error, if any
+ * @param {google.longrunning.Operation} [response] Operation
+ */
+
+ /**
+ * Calls CreateAccessLevel.
+ * @function createAccessLevel
+ * @memberof google.identity.accesscontextmanager.v1.AccessContextManager
+ * @instance
+ * @param {google.identity.accesscontextmanager.v1.ICreateAccessLevelRequest} request CreateAccessLevelRequest message or plain object
+ * @param {google.identity.accesscontextmanager.v1.AccessContextManager.CreateAccessLevelCallback} callback Node-style callback called with the error, if any, and Operation
+ * @returns {undefined}
+ * @variation 1
+ */
+ Object.defineProperty(AccessContextManager.prototype.createAccessLevel = function createAccessLevel(request, callback) {
+ return this.rpcCall(createAccessLevel, $root.google.identity.accesscontextmanager.v1.CreateAccessLevelRequest, $root.google.longrunning.Operation, request, callback);
+ }, "name", { value: "CreateAccessLevel" });
+
+ /**
+ * Calls CreateAccessLevel.
+ * @function createAccessLevel
+ * @memberof google.identity.accesscontextmanager.v1.AccessContextManager
+ * @instance
+ * @param {google.identity.accesscontextmanager.v1.ICreateAccessLevelRequest} request CreateAccessLevelRequest message or plain object
+ * @returns {Promise} Promise
+ * @variation 2
+ */
+
+ /**
+ * Callback as used by {@link google.identity.accesscontextmanager.v1.AccessContextManager|updateAccessLevel}.
+ * @memberof google.identity.accesscontextmanager.v1.AccessContextManager
+ * @typedef UpdateAccessLevelCallback
+ * @type {function}
+ * @param {Error|null} error Error, if any
+ * @param {google.longrunning.Operation} [response] Operation
+ */
+
+ /**
+ * Calls UpdateAccessLevel.
+ * @function updateAccessLevel
+ * @memberof google.identity.accesscontextmanager.v1.AccessContextManager
+ * @instance
+ * @param {google.identity.accesscontextmanager.v1.IUpdateAccessLevelRequest} request UpdateAccessLevelRequest message or plain object
+ * @param {google.identity.accesscontextmanager.v1.AccessContextManager.UpdateAccessLevelCallback} callback Node-style callback called with the error, if any, and Operation
+ * @returns {undefined}
+ * @variation 1
+ */
+ Object.defineProperty(AccessContextManager.prototype.updateAccessLevel = function updateAccessLevel(request, callback) {
+ return this.rpcCall(updateAccessLevel, $root.google.identity.accesscontextmanager.v1.UpdateAccessLevelRequest, $root.google.longrunning.Operation, request, callback);
+ }, "name", { value: "UpdateAccessLevel" });
+
+ /**
+ * Calls UpdateAccessLevel.
+ * @function updateAccessLevel
+ * @memberof google.identity.accesscontextmanager.v1.AccessContextManager
+ * @instance
+ * @param {google.identity.accesscontextmanager.v1.IUpdateAccessLevelRequest} request UpdateAccessLevelRequest message or plain object
+ * @returns {Promise} Promise
+ * @variation 2
+ */
+
+ /**
+ * Callback as used by {@link google.identity.accesscontextmanager.v1.AccessContextManager|deleteAccessLevel}.
+ * @memberof google.identity.accesscontextmanager.v1.AccessContextManager
+ * @typedef DeleteAccessLevelCallback
+ * @type {function}
+ * @param {Error|null} error Error, if any
+ * @param {google.longrunning.Operation} [response] Operation
+ */
+
+ /**
+ * Calls DeleteAccessLevel.
+ * @function deleteAccessLevel
+ * @memberof google.identity.accesscontextmanager.v1.AccessContextManager
+ * @instance
+ * @param {google.identity.accesscontextmanager.v1.IDeleteAccessLevelRequest} request DeleteAccessLevelRequest message or plain object
+ * @param {google.identity.accesscontextmanager.v1.AccessContextManager.DeleteAccessLevelCallback} callback Node-style callback called with the error, if any, and Operation
+ * @returns {undefined}
+ * @variation 1
+ */
+ Object.defineProperty(AccessContextManager.prototype.deleteAccessLevel = function deleteAccessLevel(request, callback) {
+ return this.rpcCall(deleteAccessLevel, $root.google.identity.accesscontextmanager.v1.DeleteAccessLevelRequest, $root.google.longrunning.Operation, request, callback);
+ }, "name", { value: "DeleteAccessLevel" });
+
+ /**
+ * Calls DeleteAccessLevel.
+ * @function deleteAccessLevel
+ * @memberof google.identity.accesscontextmanager.v1.AccessContextManager
+ * @instance
+ * @param {google.identity.accesscontextmanager.v1.IDeleteAccessLevelRequest} request DeleteAccessLevelRequest message or plain object
+ * @returns {Promise} Promise
+ * @variation 2
+ */
+
+ /**
+ * Callback as used by {@link google.identity.accesscontextmanager.v1.AccessContextManager|replaceAccessLevels}.
+ * @memberof google.identity.accesscontextmanager.v1.AccessContextManager
+ * @typedef ReplaceAccessLevelsCallback
+ * @type {function}
+ * @param {Error|null} error Error, if any
+ * @param {google.longrunning.Operation} [response] Operation
+ */
+
+ /**
+ * Calls ReplaceAccessLevels.
+ * @function replaceAccessLevels
+ * @memberof google.identity.accesscontextmanager.v1.AccessContextManager
+ * @instance
+ * @param {google.identity.accesscontextmanager.v1.IReplaceAccessLevelsRequest} request ReplaceAccessLevelsRequest message or plain object
+ * @param {google.identity.accesscontextmanager.v1.AccessContextManager.ReplaceAccessLevelsCallback} callback Node-style callback called with the error, if any, and Operation
+ * @returns {undefined}
+ * @variation 1
+ */
+ Object.defineProperty(AccessContextManager.prototype.replaceAccessLevels = function replaceAccessLevels(request, callback) {
+ return this.rpcCall(replaceAccessLevels, $root.google.identity.accesscontextmanager.v1.ReplaceAccessLevelsRequest, $root.google.longrunning.Operation, request, callback);
+ }, "name", { value: "ReplaceAccessLevels" });
+
+ /**
+ * Calls ReplaceAccessLevels.
+ * @function replaceAccessLevels
+ * @memberof google.identity.accesscontextmanager.v1.AccessContextManager
+ * @instance
+ * @param {google.identity.accesscontextmanager.v1.IReplaceAccessLevelsRequest} request ReplaceAccessLevelsRequest message or plain object
+ * @returns {Promise} Promise
+ * @variation 2
+ */
+
+ /**
+ * Callback as used by {@link google.identity.accesscontextmanager.v1.AccessContextManager|listServicePerimeters}.
+ * @memberof google.identity.accesscontextmanager.v1.AccessContextManager
+ * @typedef ListServicePerimetersCallback
+ * @type {function}
+ * @param {Error|null} error Error, if any
+ * @param {google.identity.accesscontextmanager.v1.ListServicePerimetersResponse} [response] ListServicePerimetersResponse
+ */
+
+ /**
+ * Calls ListServicePerimeters.
+ * @function listServicePerimeters
+ * @memberof google.identity.accesscontextmanager.v1.AccessContextManager
+ * @instance
+ * @param {google.identity.accesscontextmanager.v1.IListServicePerimetersRequest} request ListServicePerimetersRequest message or plain object
+ * @param {google.identity.accesscontextmanager.v1.AccessContextManager.ListServicePerimetersCallback} callback Node-style callback called with the error, if any, and ListServicePerimetersResponse
+ * @returns {undefined}
+ * @variation 1
+ */
+ Object.defineProperty(AccessContextManager.prototype.listServicePerimeters = function listServicePerimeters(request, callback) {
+ return this.rpcCall(listServicePerimeters, $root.google.identity.accesscontextmanager.v1.ListServicePerimetersRequest, $root.google.identity.accesscontextmanager.v1.ListServicePerimetersResponse, request, callback);
+ }, "name", { value: "ListServicePerimeters" });
+
+ /**
+ * Calls ListServicePerimeters.
+ * @function listServicePerimeters
+ * @memberof google.identity.accesscontextmanager.v1.AccessContextManager
+ * @instance
+ * @param {google.identity.accesscontextmanager.v1.IListServicePerimetersRequest} request ListServicePerimetersRequest message or plain object
+ * @returns {Promise} Promise
+ * @variation 2
+ */
+
+ /**
+ * Callback as used by {@link google.identity.accesscontextmanager.v1.AccessContextManager|getServicePerimeter}.
+ * @memberof google.identity.accesscontextmanager.v1.AccessContextManager
+ * @typedef GetServicePerimeterCallback
+ * @type {function}
+ * @param {Error|null} error Error, if any
+ * @param {google.identity.accesscontextmanager.v1.ServicePerimeter} [response] ServicePerimeter
+ */
+
+ /**
+ * Calls GetServicePerimeter.
+ * @function getServicePerimeter
+ * @memberof google.identity.accesscontextmanager.v1.AccessContextManager
+ * @instance
+ * @param {google.identity.accesscontextmanager.v1.IGetServicePerimeterRequest} request GetServicePerimeterRequest message or plain object
+ * @param {google.identity.accesscontextmanager.v1.AccessContextManager.GetServicePerimeterCallback} callback Node-style callback called with the error, if any, and ServicePerimeter
+ * @returns {undefined}
+ * @variation 1
+ */
+ Object.defineProperty(AccessContextManager.prototype.getServicePerimeter = function getServicePerimeter(request, callback) {
+ return this.rpcCall(getServicePerimeter, $root.google.identity.accesscontextmanager.v1.GetServicePerimeterRequest, $root.google.identity.accesscontextmanager.v1.ServicePerimeter, request, callback);
+ }, "name", { value: "GetServicePerimeter" });
+
+ /**
+ * Calls GetServicePerimeter.
+ * @function getServicePerimeter
+ * @memberof google.identity.accesscontextmanager.v1.AccessContextManager
+ * @instance
+ * @param {google.identity.accesscontextmanager.v1.IGetServicePerimeterRequest} request GetServicePerimeterRequest message or plain object
+ * @returns {Promise} Promise
+ * @variation 2
+ */
+
+ /**
+ * Callback as used by {@link google.identity.accesscontextmanager.v1.AccessContextManager|createServicePerimeter}.
+ * @memberof google.identity.accesscontextmanager.v1.AccessContextManager
+ * @typedef CreateServicePerimeterCallback
+ * @type {function}
+ * @param {Error|null} error Error, if any
+ * @param {google.longrunning.Operation} [response] Operation
+ */
+
+ /**
+ * Calls CreateServicePerimeter.
+ * @function createServicePerimeter
+ * @memberof google.identity.accesscontextmanager.v1.AccessContextManager
+ * @instance
+ * @param {google.identity.accesscontextmanager.v1.ICreateServicePerimeterRequest} request CreateServicePerimeterRequest message or plain object
+ * @param {google.identity.accesscontextmanager.v1.AccessContextManager.CreateServicePerimeterCallback} callback Node-style callback called with the error, if any, and Operation
+ * @returns {undefined}
+ * @variation 1
+ */
+ Object.defineProperty(AccessContextManager.prototype.createServicePerimeter = function createServicePerimeter(request, callback) {
+ return this.rpcCall(createServicePerimeter, $root.google.identity.accesscontextmanager.v1.CreateServicePerimeterRequest, $root.google.longrunning.Operation, request, callback);
+ }, "name", { value: "CreateServicePerimeter" });
+
+ /**
+ * Calls CreateServicePerimeter.
+ * @function createServicePerimeter
+ * @memberof google.identity.accesscontextmanager.v1.AccessContextManager
+ * @instance
+ * @param {google.identity.accesscontextmanager.v1.ICreateServicePerimeterRequest} request CreateServicePerimeterRequest message or plain object
+ * @returns {Promise} Promise
+ * @variation 2
+ */
+
+ /**
+ * Callback as used by {@link google.identity.accesscontextmanager.v1.AccessContextManager|updateServicePerimeter}.
+ * @memberof google.identity.accesscontextmanager.v1.AccessContextManager
+ * @typedef UpdateServicePerimeterCallback
+ * @type {function}
+ * @param {Error|null} error Error, if any
+ * @param {google.longrunning.Operation} [response] Operation
+ */
+
+ /**
+ * Calls UpdateServicePerimeter.
+ * @function updateServicePerimeter
+ * @memberof google.identity.accesscontextmanager.v1.AccessContextManager
+ * @instance
+ * @param {google.identity.accesscontextmanager.v1.IUpdateServicePerimeterRequest} request UpdateServicePerimeterRequest message or plain object
+ * @param {google.identity.accesscontextmanager.v1.AccessContextManager.UpdateServicePerimeterCallback} callback Node-style callback called with the error, if any, and Operation
+ * @returns {undefined}
+ * @variation 1
+ */
+ Object.defineProperty(AccessContextManager.prototype.updateServicePerimeter = function updateServicePerimeter(request, callback) {
+ return this.rpcCall(updateServicePerimeter, $root.google.identity.accesscontextmanager.v1.UpdateServicePerimeterRequest, $root.google.longrunning.Operation, request, callback);
+ }, "name", { value: "UpdateServicePerimeter" });
+
+ /**
+ * Calls UpdateServicePerimeter.
+ * @function updateServicePerimeter
+ * @memberof google.identity.accesscontextmanager.v1.AccessContextManager
+ * @instance
+ * @param {google.identity.accesscontextmanager.v1.IUpdateServicePerimeterRequest} request UpdateServicePerimeterRequest message or plain object
+ * @returns {Promise} Promise
+ * @variation 2
+ */
+
+ /**
+ * Callback as used by {@link google.identity.accesscontextmanager.v1.AccessContextManager|deleteServicePerimeter}.
+ * @memberof google.identity.accesscontextmanager.v1.AccessContextManager
+ * @typedef DeleteServicePerimeterCallback
+ * @type {function}
+ * @param {Error|null} error Error, if any
+ * @param {google.longrunning.Operation} [response] Operation
+ */
+
+ /**
+ * Calls DeleteServicePerimeter.
+ * @function deleteServicePerimeter
+ * @memberof google.identity.accesscontextmanager.v1.AccessContextManager
+ * @instance
+ * @param {google.identity.accesscontextmanager.v1.IDeleteServicePerimeterRequest} request DeleteServicePerimeterRequest message or plain object
+ * @param {google.identity.accesscontextmanager.v1.AccessContextManager.DeleteServicePerimeterCallback} callback Node-style callback called with the error, if any, and Operation
+ * @returns {undefined}
+ * @variation 1
+ */
+ Object.defineProperty(AccessContextManager.prototype.deleteServicePerimeter = function deleteServicePerimeter(request, callback) {
+ return this.rpcCall(deleteServicePerimeter, $root.google.identity.accesscontextmanager.v1.DeleteServicePerimeterRequest, $root.google.longrunning.Operation, request, callback);
+ }, "name", { value: "DeleteServicePerimeter" });
+
+ /**
+ * Calls DeleteServicePerimeter.
+ * @function deleteServicePerimeter
+ * @memberof google.identity.accesscontextmanager.v1.AccessContextManager
+ * @instance
+ * @param {google.identity.accesscontextmanager.v1.IDeleteServicePerimeterRequest} request DeleteServicePerimeterRequest message or plain object
+ * @returns {Promise} Promise
+ * @variation 2
+ */
+
+ /**
+ * Callback as used by {@link google.identity.accesscontextmanager.v1.AccessContextManager|replaceServicePerimeters}.
+ * @memberof google.identity.accesscontextmanager.v1.AccessContextManager
+ * @typedef ReplaceServicePerimetersCallback
+ * @type {function}
+ * @param {Error|null} error Error, if any
+ * @param {google.longrunning.Operation} [response] Operation
+ */
+
+ /**
+ * Calls ReplaceServicePerimeters.
+ * @function replaceServicePerimeters
+ * @memberof google.identity.accesscontextmanager.v1.AccessContextManager
+ * @instance
+ * @param {google.identity.accesscontextmanager.v1.IReplaceServicePerimetersRequest} request ReplaceServicePerimetersRequest message or plain object
+ * @param {google.identity.accesscontextmanager.v1.AccessContextManager.ReplaceServicePerimetersCallback} callback Node-style callback called with the error, if any, and Operation
+ * @returns {undefined}
+ * @variation 1
+ */
+ Object.defineProperty(AccessContextManager.prototype.replaceServicePerimeters = function replaceServicePerimeters(request, callback) {
+ return this.rpcCall(replaceServicePerimeters, $root.google.identity.accesscontextmanager.v1.ReplaceServicePerimetersRequest, $root.google.longrunning.Operation, request, callback);
+ }, "name", { value: "ReplaceServicePerimeters" });
+
+ /**
+ * Calls ReplaceServicePerimeters.
+ * @function replaceServicePerimeters
+ * @memberof google.identity.accesscontextmanager.v1.AccessContextManager
+ * @instance
+ * @param {google.identity.accesscontextmanager.v1.IReplaceServicePerimetersRequest} request ReplaceServicePerimetersRequest message or plain object
+ * @returns {Promise} Promise
+ * @variation 2
+ */
+
+ /**
+ * Callback as used by {@link google.identity.accesscontextmanager.v1.AccessContextManager|commitServicePerimeters}.
+ * @memberof google.identity.accesscontextmanager.v1.AccessContextManager
+ * @typedef CommitServicePerimetersCallback
+ * @type {function}
+ * @param {Error|null} error Error, if any
+ * @param {google.longrunning.Operation} [response] Operation
+ */
+
+ /**
+ * Calls CommitServicePerimeters.
+ * @function commitServicePerimeters
+ * @memberof google.identity.accesscontextmanager.v1.AccessContextManager
+ * @instance
+ * @param {google.identity.accesscontextmanager.v1.ICommitServicePerimetersRequest} request CommitServicePerimetersRequest message or plain object
+ * @param {google.identity.accesscontextmanager.v1.AccessContextManager.CommitServicePerimetersCallback} callback Node-style callback called with the error, if any, and Operation
+ * @returns {undefined}
+ * @variation 1
+ */
+ Object.defineProperty(AccessContextManager.prototype.commitServicePerimeters = function commitServicePerimeters(request, callback) {
+ return this.rpcCall(commitServicePerimeters, $root.google.identity.accesscontextmanager.v1.CommitServicePerimetersRequest, $root.google.longrunning.Operation, request, callback);
+ }, "name", { value: "CommitServicePerimeters" });
+
+ /**
+ * Calls CommitServicePerimeters.
+ * @function commitServicePerimeters
+ * @memberof google.identity.accesscontextmanager.v1.AccessContextManager
+ * @instance
+ * @param {google.identity.accesscontextmanager.v1.ICommitServicePerimetersRequest} request CommitServicePerimetersRequest message or plain object
+ * @returns {Promise} Promise
+ * @variation 2
+ */
+
+ /**
+ * Callback as used by {@link google.identity.accesscontextmanager.v1.AccessContextManager|listGcpUserAccessBindings}.
+ * @memberof google.identity.accesscontextmanager.v1.AccessContextManager
+ * @typedef ListGcpUserAccessBindingsCallback
+ * @type {function}
+ * @param {Error|null} error Error, if any
+ * @param {google.identity.accesscontextmanager.v1.ListGcpUserAccessBindingsResponse} [response] ListGcpUserAccessBindingsResponse
+ */
+
+ /**
+ * Calls ListGcpUserAccessBindings.
+ * @function listGcpUserAccessBindings
+ * @memberof google.identity.accesscontextmanager.v1.AccessContextManager
+ * @instance
+ * @param {google.identity.accesscontextmanager.v1.IListGcpUserAccessBindingsRequest} request ListGcpUserAccessBindingsRequest message or plain object
+ * @param {google.identity.accesscontextmanager.v1.AccessContextManager.ListGcpUserAccessBindingsCallback} callback Node-style callback called with the error, if any, and ListGcpUserAccessBindingsResponse
+ * @returns {undefined}
+ * @variation 1
+ */
+ Object.defineProperty(AccessContextManager.prototype.listGcpUserAccessBindings = function listGcpUserAccessBindings(request, callback) {
+ return this.rpcCall(listGcpUserAccessBindings, $root.google.identity.accesscontextmanager.v1.ListGcpUserAccessBindingsRequest, $root.google.identity.accesscontextmanager.v1.ListGcpUserAccessBindingsResponse, request, callback);
+ }, "name", { value: "ListGcpUserAccessBindings" });
+
+ /**
+ * Calls ListGcpUserAccessBindings.
+ * @function listGcpUserAccessBindings
+ * @memberof google.identity.accesscontextmanager.v1.AccessContextManager
+ * @instance
+ * @param {google.identity.accesscontextmanager.v1.IListGcpUserAccessBindingsRequest} request ListGcpUserAccessBindingsRequest message or plain object
+ * @returns {Promise} Promise
+ * @variation 2
+ */
+
+ /**
+ * Callback as used by {@link google.identity.accesscontextmanager.v1.AccessContextManager|getGcpUserAccessBinding}.
+ * @memberof google.identity.accesscontextmanager.v1.AccessContextManager
+ * @typedef GetGcpUserAccessBindingCallback
+ * @type {function}
+ * @param {Error|null} error Error, if any
+ * @param {google.identity.accesscontextmanager.v1.GcpUserAccessBinding} [response] GcpUserAccessBinding
+ */
+
+ /**
+ * Calls GetGcpUserAccessBinding.
+ * @function getGcpUserAccessBinding
+ * @memberof google.identity.accesscontextmanager.v1.AccessContextManager
+ * @instance
+ * @param {google.identity.accesscontextmanager.v1.IGetGcpUserAccessBindingRequest} request GetGcpUserAccessBindingRequest message or plain object
+ * @param {google.identity.accesscontextmanager.v1.AccessContextManager.GetGcpUserAccessBindingCallback} callback Node-style callback called with the error, if any, and GcpUserAccessBinding
+ * @returns {undefined}
+ * @variation 1
+ */
+ Object.defineProperty(AccessContextManager.prototype.getGcpUserAccessBinding = function getGcpUserAccessBinding(request, callback) {
+ return this.rpcCall(getGcpUserAccessBinding, $root.google.identity.accesscontextmanager.v1.GetGcpUserAccessBindingRequest, $root.google.identity.accesscontextmanager.v1.GcpUserAccessBinding, request, callback);
+ }, "name", { value: "GetGcpUserAccessBinding" });
+
+ /**
+ * Calls GetGcpUserAccessBinding.
+ * @function getGcpUserAccessBinding
+ * @memberof google.identity.accesscontextmanager.v1.AccessContextManager
+ * @instance
+ * @param {google.identity.accesscontextmanager.v1.IGetGcpUserAccessBindingRequest} request GetGcpUserAccessBindingRequest message or plain object
+ * @returns {Promise} Promise
+ * @variation 2
+ */
+
+ /**
+ * Callback as used by {@link google.identity.accesscontextmanager.v1.AccessContextManager|createGcpUserAccessBinding}.
+ * @memberof google.identity.accesscontextmanager.v1.AccessContextManager
+ * @typedef CreateGcpUserAccessBindingCallback
+ * @type {function}
+ * @param {Error|null} error Error, if any
+ * @param {google.longrunning.Operation} [response] Operation
+ */
+
+ /**
+ * Calls CreateGcpUserAccessBinding.
+ * @function createGcpUserAccessBinding
+ * @memberof google.identity.accesscontextmanager.v1.AccessContextManager
+ * @instance
+ * @param {google.identity.accesscontextmanager.v1.ICreateGcpUserAccessBindingRequest} request CreateGcpUserAccessBindingRequest message or plain object
+ * @param {google.identity.accesscontextmanager.v1.AccessContextManager.CreateGcpUserAccessBindingCallback} callback Node-style callback called with the error, if any, and Operation
+ * @returns {undefined}
+ * @variation 1
+ */
+ Object.defineProperty(AccessContextManager.prototype.createGcpUserAccessBinding = function createGcpUserAccessBinding(request, callback) {
+ return this.rpcCall(createGcpUserAccessBinding, $root.google.identity.accesscontextmanager.v1.CreateGcpUserAccessBindingRequest, $root.google.longrunning.Operation, request, callback);
+ }, "name", { value: "CreateGcpUserAccessBinding" });
+
+ /**
+ * Calls CreateGcpUserAccessBinding.
+ * @function createGcpUserAccessBinding
+ * @memberof google.identity.accesscontextmanager.v1.AccessContextManager
+ * @instance
+ * @param {google.identity.accesscontextmanager.v1.ICreateGcpUserAccessBindingRequest} request CreateGcpUserAccessBindingRequest message or plain object
+ * @returns {Promise} Promise
+ * @variation 2
+ */
+
+ /**
+ * Callback as used by {@link google.identity.accesscontextmanager.v1.AccessContextManager|updateGcpUserAccessBinding}.
+ * @memberof google.identity.accesscontextmanager.v1.AccessContextManager
+ * @typedef UpdateGcpUserAccessBindingCallback
+ * @type {function}
+ * @param {Error|null} error Error, if any
+ * @param {google.longrunning.Operation} [response] Operation
+ */
+
+ /**
+ * Calls UpdateGcpUserAccessBinding.
+ * @function updateGcpUserAccessBinding
+ * @memberof google.identity.accesscontextmanager.v1.AccessContextManager
+ * @instance
+ * @param {google.identity.accesscontextmanager.v1.IUpdateGcpUserAccessBindingRequest} request UpdateGcpUserAccessBindingRequest message or plain object
+ * @param {google.identity.accesscontextmanager.v1.AccessContextManager.UpdateGcpUserAccessBindingCallback} callback Node-style callback called with the error, if any, and Operation
+ * @returns {undefined}
+ * @variation 1
+ */
+ Object.defineProperty(AccessContextManager.prototype.updateGcpUserAccessBinding = function updateGcpUserAccessBinding(request, callback) {
+ return this.rpcCall(updateGcpUserAccessBinding, $root.google.identity.accesscontextmanager.v1.UpdateGcpUserAccessBindingRequest, $root.google.longrunning.Operation, request, callback);
+ }, "name", { value: "UpdateGcpUserAccessBinding" });
+
+ /**
+ * Calls UpdateGcpUserAccessBinding.
+ * @function updateGcpUserAccessBinding
+ * @memberof google.identity.accesscontextmanager.v1.AccessContextManager
+ * @instance
+ * @param {google.identity.accesscontextmanager.v1.IUpdateGcpUserAccessBindingRequest} request UpdateGcpUserAccessBindingRequest message or plain object
+ * @returns {Promise} Promise
+ * @variation 2
+ */
+
+ /**
+ * Callback as used by {@link google.identity.accesscontextmanager.v1.AccessContextManager|deleteGcpUserAccessBinding}.
+ * @memberof google.identity.accesscontextmanager.v1.AccessContextManager
+ * @typedef DeleteGcpUserAccessBindingCallback
+ * @type {function}
+ * @param {Error|null} error Error, if any
+ * @param {google.longrunning.Operation} [response] Operation
+ */
+
+ /**
+ * Calls DeleteGcpUserAccessBinding.
+ * @function deleteGcpUserAccessBinding
+ * @memberof google.identity.accesscontextmanager.v1.AccessContextManager
+ * @instance
+ * @param {google.identity.accesscontextmanager.v1.IDeleteGcpUserAccessBindingRequest} request DeleteGcpUserAccessBindingRequest message or plain object
+ * @param {google.identity.accesscontextmanager.v1.AccessContextManager.DeleteGcpUserAccessBindingCallback} callback Node-style callback called with the error, if any, and Operation
+ * @returns {undefined}
+ * @variation 1
+ */
+ Object.defineProperty(AccessContextManager.prototype.deleteGcpUserAccessBinding = function deleteGcpUserAccessBinding(request, callback) {
+ return this.rpcCall(deleteGcpUserAccessBinding, $root.google.identity.accesscontextmanager.v1.DeleteGcpUserAccessBindingRequest, $root.google.longrunning.Operation, request, callback);
+ }, "name", { value: "DeleteGcpUserAccessBinding" });
+
+ /**
+ * Calls DeleteGcpUserAccessBinding.
+ * @function deleteGcpUserAccessBinding
+ * @memberof google.identity.accesscontextmanager.v1.AccessContextManager
+ * @instance
+ * @param {google.identity.accesscontextmanager.v1.IDeleteGcpUserAccessBindingRequest} request DeleteGcpUserAccessBindingRequest message or plain object
+ * @returns {Promise} Promise
+ * @variation 2
+ */
+
+ /**
+ * Callback as used by {@link google.identity.accesscontextmanager.v1.AccessContextManager|setIamPolicy}.
+ * @memberof google.identity.accesscontextmanager.v1.AccessContextManager
+ * @typedef SetIamPolicyCallback
+ * @type {function}
+ * @param {Error|null} error Error, if any
+ * @param {google.iam.v1.Policy} [response] Policy
+ */
+
+ /**
+ * Calls SetIamPolicy.
+ * @function setIamPolicy
+ * @memberof google.identity.accesscontextmanager.v1.AccessContextManager
+ * @instance
+ * @param {google.iam.v1.ISetIamPolicyRequest} request SetIamPolicyRequest message or plain object
+ * @param {google.identity.accesscontextmanager.v1.AccessContextManager.SetIamPolicyCallback} callback Node-style callback called with the error, if any, and Policy
+ * @returns {undefined}
+ * @variation 1
+ */
+ Object.defineProperty(AccessContextManager.prototype.setIamPolicy = function setIamPolicy(request, callback) {
+ return this.rpcCall(setIamPolicy, $root.google.iam.v1.SetIamPolicyRequest, $root.google.iam.v1.Policy, request, callback);
+ }, "name", { value: "SetIamPolicy" });
+
+ /**
+ * Calls SetIamPolicy.
+ * @function setIamPolicy
+ * @memberof google.identity.accesscontextmanager.v1.AccessContextManager
+ * @instance
+ * @param {google.iam.v1.ISetIamPolicyRequest} request SetIamPolicyRequest message or plain object
+ * @returns {Promise} Promise
+ * @variation 2
+ */
+
+ /**
+ * Callback as used by {@link google.identity.accesscontextmanager.v1.AccessContextManager|getIamPolicy}.
+ * @memberof google.identity.accesscontextmanager.v1.AccessContextManager
+ * @typedef GetIamPolicyCallback
+ * @type {function}
+ * @param {Error|null} error Error, if any
+ * @param {google.iam.v1.Policy} [response] Policy
+ */
+
+ /**
+ * Calls GetIamPolicy.
+ * @function getIamPolicy
+ * @memberof google.identity.accesscontextmanager.v1.AccessContextManager
+ * @instance
+ * @param {google.iam.v1.IGetIamPolicyRequest} request GetIamPolicyRequest message or plain object
+ * @param {google.identity.accesscontextmanager.v1.AccessContextManager.GetIamPolicyCallback} callback Node-style callback called with the error, if any, and Policy
+ * @returns {undefined}
+ * @variation 1
+ */
+ Object.defineProperty(AccessContextManager.prototype.getIamPolicy = function getIamPolicy(request, callback) {
+ return this.rpcCall(getIamPolicy, $root.google.iam.v1.GetIamPolicyRequest, $root.google.iam.v1.Policy, request, callback);
+ }, "name", { value: "GetIamPolicy" });
+
+ /**
+ * Calls GetIamPolicy.
+ * @function getIamPolicy
+ * @memberof google.identity.accesscontextmanager.v1.AccessContextManager
+ * @instance
+ * @param {google.iam.v1.IGetIamPolicyRequest} request GetIamPolicyRequest message or plain object
+ * @returns {Promise} Promise
+ * @variation 2
+ */
+
+ /**
+ * Callback as used by {@link google.identity.accesscontextmanager.v1.AccessContextManager|testIamPermissions}.
+ * @memberof google.identity.accesscontextmanager.v1.AccessContextManager
+ * @typedef TestIamPermissionsCallback
+ * @type {function}
+ * @param {Error|null} error Error, if any
+ * @param {google.iam.v1.TestIamPermissionsResponse} [response] TestIamPermissionsResponse
+ */
+
+ /**
+ * Calls TestIamPermissions.
+ * @function testIamPermissions
+ * @memberof google.identity.accesscontextmanager.v1.AccessContextManager
+ * @instance
+ * @param {google.iam.v1.ITestIamPermissionsRequest} request TestIamPermissionsRequest message or plain object
+ * @param {google.identity.accesscontextmanager.v1.AccessContextManager.TestIamPermissionsCallback} callback Node-style callback called with the error, if any, and TestIamPermissionsResponse
+ * @returns {undefined}
+ * @variation 1
+ */
+ Object.defineProperty(AccessContextManager.prototype.testIamPermissions = function testIamPermissions(request, callback) {
+ return this.rpcCall(testIamPermissions, $root.google.iam.v1.TestIamPermissionsRequest, $root.google.iam.v1.TestIamPermissionsResponse, request, callback);
+ }, "name", { value: "TestIamPermissions" });
+
+ /**
+ * Calls TestIamPermissions.
+ * @function testIamPermissions
+ * @memberof google.identity.accesscontextmanager.v1.AccessContextManager
+ * @instance
+ * @param {google.iam.v1.ITestIamPermissionsRequest} request TestIamPermissionsRequest message or plain object
+ * @returns {Promise} Promise
+ * @variation 2
+ */
+
+ return AccessContextManager;
+ })();
+
+ v1.ListAccessPoliciesRequest = (function() {
+
+ /**
+ * Properties of a ListAccessPoliciesRequest.
+ * @memberof google.identity.accesscontextmanager.v1
+ * @interface IListAccessPoliciesRequest
+ * @property {string|null} [parent] ListAccessPoliciesRequest parent
+ * @property {number|null} [pageSize] ListAccessPoliciesRequest pageSize
+ * @property {string|null} [pageToken] ListAccessPoliciesRequest pageToken
+ */
+
+ /**
+ * Constructs a new ListAccessPoliciesRequest.
+ * @memberof google.identity.accesscontextmanager.v1
+ * @classdesc Represents a ListAccessPoliciesRequest.
+ * @implements IListAccessPoliciesRequest
+ * @constructor
+ * @param {google.identity.accesscontextmanager.v1.IListAccessPoliciesRequest=} [properties] Properties to set
+ */
+ function ListAccessPoliciesRequest(properties) {
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * ListAccessPoliciesRequest parent.
+ * @member {string} parent
+ * @memberof google.identity.accesscontextmanager.v1.ListAccessPoliciesRequest
+ * @instance
+ */
+ ListAccessPoliciesRequest.prototype.parent = "";
+
+ /**
+ * ListAccessPoliciesRequest pageSize.
+ * @member {number} pageSize
+ * @memberof google.identity.accesscontextmanager.v1.ListAccessPoliciesRequest
+ * @instance
+ */
+ ListAccessPoliciesRequest.prototype.pageSize = 0;
+
+ /**
+ * ListAccessPoliciesRequest pageToken.
+ * @member {string} pageToken
+ * @memberof google.identity.accesscontextmanager.v1.ListAccessPoliciesRequest
+ * @instance
+ */
+ ListAccessPoliciesRequest.prototype.pageToken = "";
+
+ /**
+ * Creates a new ListAccessPoliciesRequest instance using the specified properties.
+ * @function create
+ * @memberof google.identity.accesscontextmanager.v1.ListAccessPoliciesRequest
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.IListAccessPoliciesRequest=} [properties] Properties to set
+ * @returns {google.identity.accesscontextmanager.v1.ListAccessPoliciesRequest} ListAccessPoliciesRequest instance
+ */
+ ListAccessPoliciesRequest.create = function create(properties) {
+ return new ListAccessPoliciesRequest(properties);
+ };
+
+ /**
+ * Encodes the specified ListAccessPoliciesRequest message. Does not implicitly {@link google.identity.accesscontextmanager.v1.ListAccessPoliciesRequest.verify|verify} messages.
+ * @function encode
+ * @memberof google.identity.accesscontextmanager.v1.ListAccessPoliciesRequest
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.IListAccessPoliciesRequest} message ListAccessPoliciesRequest message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ ListAccessPoliciesRequest.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.parent != null && Object.hasOwnProperty.call(message, "parent"))
+ writer.uint32(/* id 1, wireType 2 =*/10).string(message.parent);
+ if (message.pageSize != null && Object.hasOwnProperty.call(message, "pageSize"))
+ writer.uint32(/* id 2, wireType 0 =*/16).int32(message.pageSize);
+ if (message.pageToken != null && Object.hasOwnProperty.call(message, "pageToken"))
+ writer.uint32(/* id 3, wireType 2 =*/26).string(message.pageToken);
+ return writer;
+ };
+
+ /**
+ * Encodes the specified ListAccessPoliciesRequest message, length delimited. Does not implicitly {@link google.identity.accesscontextmanager.v1.ListAccessPoliciesRequest.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.identity.accesscontextmanager.v1.ListAccessPoliciesRequest
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.IListAccessPoliciesRequest} message ListAccessPoliciesRequest message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ ListAccessPoliciesRequest.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a ListAccessPoliciesRequest message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.identity.accesscontextmanager.v1.ListAccessPoliciesRequest
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.identity.accesscontextmanager.v1.ListAccessPoliciesRequest} ListAccessPoliciesRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ ListAccessPoliciesRequest.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.identity.accesscontextmanager.v1.ListAccessPoliciesRequest();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.parent = reader.string();
+ break;
+ }
+ case 2: {
+ message.pageSize = reader.int32();
+ break;
+ }
+ case 3: {
+ message.pageToken = reader.string();
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a ListAccessPoliciesRequest message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.identity.accesscontextmanager.v1.ListAccessPoliciesRequest
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.identity.accesscontextmanager.v1.ListAccessPoliciesRequest} ListAccessPoliciesRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ ListAccessPoliciesRequest.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a ListAccessPoliciesRequest message.
+ * @function verify
+ * @memberof google.identity.accesscontextmanager.v1.ListAccessPoliciesRequest
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ ListAccessPoliciesRequest.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.parent != null && message.hasOwnProperty("parent"))
+ if (!$util.isString(message.parent))
+ return "parent: string expected";
+ if (message.pageSize != null && message.hasOwnProperty("pageSize"))
+ if (!$util.isInteger(message.pageSize))
+ return "pageSize: integer expected";
+ if (message.pageToken != null && message.hasOwnProperty("pageToken"))
+ if (!$util.isString(message.pageToken))
+ return "pageToken: string expected";
+ return null;
+ };
+
+ /**
+ * Creates a ListAccessPoliciesRequest message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.identity.accesscontextmanager.v1.ListAccessPoliciesRequest
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.identity.accesscontextmanager.v1.ListAccessPoliciesRequest} ListAccessPoliciesRequest
+ */
+ ListAccessPoliciesRequest.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.identity.accesscontextmanager.v1.ListAccessPoliciesRequest)
+ return object;
+ var message = new $root.google.identity.accesscontextmanager.v1.ListAccessPoliciesRequest();
+ if (object.parent != null)
+ message.parent = String(object.parent);
+ if (object.pageSize != null)
+ message.pageSize = object.pageSize | 0;
+ if (object.pageToken != null)
+ message.pageToken = String(object.pageToken);
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a ListAccessPoliciesRequest message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.identity.accesscontextmanager.v1.ListAccessPoliciesRequest
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.ListAccessPoliciesRequest} message ListAccessPoliciesRequest
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ ListAccessPoliciesRequest.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.defaults) {
+ object.parent = "";
+ object.pageSize = 0;
+ object.pageToken = "";
+ }
+ if (message.parent != null && message.hasOwnProperty("parent"))
+ object.parent = message.parent;
+ if (message.pageSize != null && message.hasOwnProperty("pageSize"))
+ object.pageSize = message.pageSize;
+ if (message.pageToken != null && message.hasOwnProperty("pageToken"))
+ object.pageToken = message.pageToken;
+ return object;
+ };
+
+ /**
+ * Converts this ListAccessPoliciesRequest to JSON.
+ * @function toJSON
+ * @memberof google.identity.accesscontextmanager.v1.ListAccessPoliciesRequest
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ ListAccessPoliciesRequest.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for ListAccessPoliciesRequest
+ * @function getTypeUrl
+ * @memberof google.identity.accesscontextmanager.v1.ListAccessPoliciesRequest
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ ListAccessPoliciesRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.identity.accesscontextmanager.v1.ListAccessPoliciesRequest";
+ };
+
+ return ListAccessPoliciesRequest;
+ })();
+
+ v1.ListAccessPoliciesResponse = (function() {
+
+ /**
+ * Properties of a ListAccessPoliciesResponse.
+ * @memberof google.identity.accesscontextmanager.v1
+ * @interface IListAccessPoliciesResponse
+ * @property {Array.|null} [accessPolicies] ListAccessPoliciesResponse accessPolicies
+ * @property {string|null} [nextPageToken] ListAccessPoliciesResponse nextPageToken
+ */
+
+ /**
+ * Constructs a new ListAccessPoliciesResponse.
+ * @memberof google.identity.accesscontextmanager.v1
+ * @classdesc Represents a ListAccessPoliciesResponse.
+ * @implements IListAccessPoliciesResponse
+ * @constructor
+ * @param {google.identity.accesscontextmanager.v1.IListAccessPoliciesResponse=} [properties] Properties to set
+ */
+ function ListAccessPoliciesResponse(properties) {
+ this.accessPolicies = [];
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * ListAccessPoliciesResponse accessPolicies.
+ * @member {Array.} accessPolicies
+ * @memberof google.identity.accesscontextmanager.v1.ListAccessPoliciesResponse
+ * @instance
+ */
+ ListAccessPoliciesResponse.prototype.accessPolicies = $util.emptyArray;
+
+ /**
+ * ListAccessPoliciesResponse nextPageToken.
+ * @member {string} nextPageToken
+ * @memberof google.identity.accesscontextmanager.v1.ListAccessPoliciesResponse
+ * @instance
+ */
+ ListAccessPoliciesResponse.prototype.nextPageToken = "";
+
+ /**
+ * Creates a new ListAccessPoliciesResponse instance using the specified properties.
+ * @function create
+ * @memberof google.identity.accesscontextmanager.v1.ListAccessPoliciesResponse
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.IListAccessPoliciesResponse=} [properties] Properties to set
+ * @returns {google.identity.accesscontextmanager.v1.ListAccessPoliciesResponse} ListAccessPoliciesResponse instance
+ */
+ ListAccessPoliciesResponse.create = function create(properties) {
+ return new ListAccessPoliciesResponse(properties);
+ };
+
+ /**
+ * Encodes the specified ListAccessPoliciesResponse message. Does not implicitly {@link google.identity.accesscontextmanager.v1.ListAccessPoliciesResponse.verify|verify} messages.
+ * @function encode
+ * @memberof google.identity.accesscontextmanager.v1.ListAccessPoliciesResponse
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.IListAccessPoliciesResponse} message ListAccessPoliciesResponse message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ ListAccessPoliciesResponse.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.accessPolicies != null && message.accessPolicies.length)
+ for (var i = 0; i < message.accessPolicies.length; ++i)
+ $root.google.identity.accesscontextmanager.v1.AccessPolicy.encode(message.accessPolicies[i], writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim();
+ if (message.nextPageToken != null && Object.hasOwnProperty.call(message, "nextPageToken"))
+ writer.uint32(/* id 2, wireType 2 =*/18).string(message.nextPageToken);
+ return writer;
+ };
+
+ /**
+ * Encodes the specified ListAccessPoliciesResponse message, length delimited. Does not implicitly {@link google.identity.accesscontextmanager.v1.ListAccessPoliciesResponse.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.identity.accesscontextmanager.v1.ListAccessPoliciesResponse
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.IListAccessPoliciesResponse} message ListAccessPoliciesResponse message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ ListAccessPoliciesResponse.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a ListAccessPoliciesResponse message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.identity.accesscontextmanager.v1.ListAccessPoliciesResponse
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.identity.accesscontextmanager.v1.ListAccessPoliciesResponse} ListAccessPoliciesResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ ListAccessPoliciesResponse.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.identity.accesscontextmanager.v1.ListAccessPoliciesResponse();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ if (!(message.accessPolicies && message.accessPolicies.length))
+ message.accessPolicies = [];
+ message.accessPolicies.push($root.google.identity.accesscontextmanager.v1.AccessPolicy.decode(reader, reader.uint32()));
+ break;
+ }
+ case 2: {
+ message.nextPageToken = reader.string();
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a ListAccessPoliciesResponse message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.identity.accesscontextmanager.v1.ListAccessPoliciesResponse
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.identity.accesscontextmanager.v1.ListAccessPoliciesResponse} ListAccessPoliciesResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ ListAccessPoliciesResponse.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a ListAccessPoliciesResponse message.
+ * @function verify
+ * @memberof google.identity.accesscontextmanager.v1.ListAccessPoliciesResponse
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ ListAccessPoliciesResponse.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.accessPolicies != null && message.hasOwnProperty("accessPolicies")) {
+ if (!Array.isArray(message.accessPolicies))
+ return "accessPolicies: array expected";
+ for (var i = 0; i < message.accessPolicies.length; ++i) {
+ var error = $root.google.identity.accesscontextmanager.v1.AccessPolicy.verify(message.accessPolicies[i]);
+ if (error)
+ return "accessPolicies." + error;
+ }
+ }
+ if (message.nextPageToken != null && message.hasOwnProperty("nextPageToken"))
+ if (!$util.isString(message.nextPageToken))
+ return "nextPageToken: string expected";
+ return null;
+ };
+
+ /**
+ * Creates a ListAccessPoliciesResponse message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.identity.accesscontextmanager.v1.ListAccessPoliciesResponse
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.identity.accesscontextmanager.v1.ListAccessPoliciesResponse} ListAccessPoliciesResponse
+ */
+ ListAccessPoliciesResponse.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.identity.accesscontextmanager.v1.ListAccessPoliciesResponse)
+ return object;
+ var message = new $root.google.identity.accesscontextmanager.v1.ListAccessPoliciesResponse();
+ if (object.accessPolicies) {
+ if (!Array.isArray(object.accessPolicies))
+ throw TypeError(".google.identity.accesscontextmanager.v1.ListAccessPoliciesResponse.accessPolicies: array expected");
+ message.accessPolicies = [];
+ for (var i = 0; i < object.accessPolicies.length; ++i) {
+ if (typeof object.accessPolicies[i] !== "object")
+ throw TypeError(".google.identity.accesscontextmanager.v1.ListAccessPoliciesResponse.accessPolicies: object expected");
+ message.accessPolicies[i] = $root.google.identity.accesscontextmanager.v1.AccessPolicy.fromObject(object.accessPolicies[i]);
+ }
+ }
+ if (object.nextPageToken != null)
+ message.nextPageToken = String(object.nextPageToken);
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a ListAccessPoliciesResponse message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.identity.accesscontextmanager.v1.ListAccessPoliciesResponse
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.ListAccessPoliciesResponse} message ListAccessPoliciesResponse
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ ListAccessPoliciesResponse.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.arrays || options.defaults)
+ object.accessPolicies = [];
+ if (options.defaults)
+ object.nextPageToken = "";
+ if (message.accessPolicies && message.accessPolicies.length) {
+ object.accessPolicies = [];
+ for (var j = 0; j < message.accessPolicies.length; ++j)
+ object.accessPolicies[j] = $root.google.identity.accesscontextmanager.v1.AccessPolicy.toObject(message.accessPolicies[j], options);
+ }
+ if (message.nextPageToken != null && message.hasOwnProperty("nextPageToken"))
+ object.nextPageToken = message.nextPageToken;
+ return object;
+ };
+
+ /**
+ * Converts this ListAccessPoliciesResponse to JSON.
+ * @function toJSON
+ * @memberof google.identity.accesscontextmanager.v1.ListAccessPoliciesResponse
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ ListAccessPoliciesResponse.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for ListAccessPoliciesResponse
+ * @function getTypeUrl
+ * @memberof google.identity.accesscontextmanager.v1.ListAccessPoliciesResponse
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ ListAccessPoliciesResponse.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.identity.accesscontextmanager.v1.ListAccessPoliciesResponse";
+ };
+
+ return ListAccessPoliciesResponse;
+ })();
+
+ v1.GetAccessPolicyRequest = (function() {
+
+ /**
+ * Properties of a GetAccessPolicyRequest.
+ * @memberof google.identity.accesscontextmanager.v1
+ * @interface IGetAccessPolicyRequest
+ * @property {string|null} [name] GetAccessPolicyRequest name
+ */
+
+ /**
+ * Constructs a new GetAccessPolicyRequest.
+ * @memberof google.identity.accesscontextmanager.v1
+ * @classdesc Represents a GetAccessPolicyRequest.
+ * @implements IGetAccessPolicyRequest
+ * @constructor
+ * @param {google.identity.accesscontextmanager.v1.IGetAccessPolicyRequest=} [properties] Properties to set
+ */
+ function GetAccessPolicyRequest(properties) {
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * GetAccessPolicyRequest name.
+ * @member {string} name
+ * @memberof google.identity.accesscontextmanager.v1.GetAccessPolicyRequest
+ * @instance
+ */
+ GetAccessPolicyRequest.prototype.name = "";
+
+ /**
+ * Creates a new GetAccessPolicyRequest instance using the specified properties.
+ * @function create
+ * @memberof google.identity.accesscontextmanager.v1.GetAccessPolicyRequest
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.IGetAccessPolicyRequest=} [properties] Properties to set
+ * @returns {google.identity.accesscontextmanager.v1.GetAccessPolicyRequest} GetAccessPolicyRequest instance
+ */
+ GetAccessPolicyRequest.create = function create(properties) {
+ return new GetAccessPolicyRequest(properties);
+ };
+
+ /**
+ * Encodes the specified GetAccessPolicyRequest message. Does not implicitly {@link google.identity.accesscontextmanager.v1.GetAccessPolicyRequest.verify|verify} messages.
+ * @function encode
+ * @memberof google.identity.accesscontextmanager.v1.GetAccessPolicyRequest
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.IGetAccessPolicyRequest} message GetAccessPolicyRequest message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ GetAccessPolicyRequest.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 GetAccessPolicyRequest message, length delimited. Does not implicitly {@link google.identity.accesscontextmanager.v1.GetAccessPolicyRequest.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.identity.accesscontextmanager.v1.GetAccessPolicyRequest
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.IGetAccessPolicyRequest} message GetAccessPolicyRequest message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ GetAccessPolicyRequest.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a GetAccessPolicyRequest message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.identity.accesscontextmanager.v1.GetAccessPolicyRequest
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.identity.accesscontextmanager.v1.GetAccessPolicyRequest} GetAccessPolicyRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ GetAccessPolicyRequest.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.identity.accesscontextmanager.v1.GetAccessPolicyRequest();
+ 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 GetAccessPolicyRequest message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.identity.accesscontextmanager.v1.GetAccessPolicyRequest
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.identity.accesscontextmanager.v1.GetAccessPolicyRequest} GetAccessPolicyRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ GetAccessPolicyRequest.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a GetAccessPolicyRequest message.
+ * @function verify
+ * @memberof google.identity.accesscontextmanager.v1.GetAccessPolicyRequest
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ GetAccessPolicyRequest.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 GetAccessPolicyRequest message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.identity.accesscontextmanager.v1.GetAccessPolicyRequest
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.identity.accesscontextmanager.v1.GetAccessPolicyRequest} GetAccessPolicyRequest
+ */
+ GetAccessPolicyRequest.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.identity.accesscontextmanager.v1.GetAccessPolicyRequest)
+ return object;
+ var message = new $root.google.identity.accesscontextmanager.v1.GetAccessPolicyRequest();
+ if (object.name != null)
+ message.name = String(object.name);
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a GetAccessPolicyRequest message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.identity.accesscontextmanager.v1.GetAccessPolicyRequest
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.GetAccessPolicyRequest} message GetAccessPolicyRequest
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ GetAccessPolicyRequest.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 GetAccessPolicyRequest to JSON.
+ * @function toJSON
+ * @memberof google.identity.accesscontextmanager.v1.GetAccessPolicyRequest
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ GetAccessPolicyRequest.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for GetAccessPolicyRequest
+ * @function getTypeUrl
+ * @memberof google.identity.accesscontextmanager.v1.GetAccessPolicyRequest
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ GetAccessPolicyRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.identity.accesscontextmanager.v1.GetAccessPolicyRequest";
+ };
+
+ return GetAccessPolicyRequest;
+ })();
+
+ v1.UpdateAccessPolicyRequest = (function() {
+
+ /**
+ * Properties of an UpdateAccessPolicyRequest.
+ * @memberof google.identity.accesscontextmanager.v1
+ * @interface IUpdateAccessPolicyRequest
+ * @property {google.identity.accesscontextmanager.v1.IAccessPolicy|null} [policy] UpdateAccessPolicyRequest policy
+ * @property {google.protobuf.IFieldMask|null} [updateMask] UpdateAccessPolicyRequest updateMask
+ */
+
+ /**
+ * Constructs a new UpdateAccessPolicyRequest.
+ * @memberof google.identity.accesscontextmanager.v1
+ * @classdesc Represents an UpdateAccessPolicyRequest.
+ * @implements IUpdateAccessPolicyRequest
+ * @constructor
+ * @param {google.identity.accesscontextmanager.v1.IUpdateAccessPolicyRequest=} [properties] Properties to set
+ */
+ function UpdateAccessPolicyRequest(properties) {
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * UpdateAccessPolicyRequest policy.
+ * @member {google.identity.accesscontextmanager.v1.IAccessPolicy|null|undefined} policy
+ * @memberof google.identity.accesscontextmanager.v1.UpdateAccessPolicyRequest
+ * @instance
+ */
+ UpdateAccessPolicyRequest.prototype.policy = null;
+
+ /**
+ * UpdateAccessPolicyRequest updateMask.
+ * @member {google.protobuf.IFieldMask|null|undefined} updateMask
+ * @memberof google.identity.accesscontextmanager.v1.UpdateAccessPolicyRequest
+ * @instance
+ */
+ UpdateAccessPolicyRequest.prototype.updateMask = null;
+
+ /**
+ * Creates a new UpdateAccessPolicyRequest instance using the specified properties.
+ * @function create
+ * @memberof google.identity.accesscontextmanager.v1.UpdateAccessPolicyRequest
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.IUpdateAccessPolicyRequest=} [properties] Properties to set
+ * @returns {google.identity.accesscontextmanager.v1.UpdateAccessPolicyRequest} UpdateAccessPolicyRequest instance
+ */
+ UpdateAccessPolicyRequest.create = function create(properties) {
+ return new UpdateAccessPolicyRequest(properties);
+ };
+
+ /**
+ * Encodes the specified UpdateAccessPolicyRequest message. Does not implicitly {@link google.identity.accesscontextmanager.v1.UpdateAccessPolicyRequest.verify|verify} messages.
+ * @function encode
+ * @memberof google.identity.accesscontextmanager.v1.UpdateAccessPolicyRequest
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.IUpdateAccessPolicyRequest} message UpdateAccessPolicyRequest message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ UpdateAccessPolicyRequest.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.policy != null && Object.hasOwnProperty.call(message, "policy"))
+ $root.google.identity.accesscontextmanager.v1.AccessPolicy.encode(message.policy, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim();
+ if (message.updateMask != null && Object.hasOwnProperty.call(message, "updateMask"))
+ $root.google.protobuf.FieldMask.encode(message.updateMask, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim();
+ return writer;
+ };
+
+ /**
+ * Encodes the specified UpdateAccessPolicyRequest message, length delimited. Does not implicitly {@link google.identity.accesscontextmanager.v1.UpdateAccessPolicyRequest.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.identity.accesscontextmanager.v1.UpdateAccessPolicyRequest
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.IUpdateAccessPolicyRequest} message UpdateAccessPolicyRequest message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ UpdateAccessPolicyRequest.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes an UpdateAccessPolicyRequest message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.identity.accesscontextmanager.v1.UpdateAccessPolicyRequest
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.identity.accesscontextmanager.v1.UpdateAccessPolicyRequest} UpdateAccessPolicyRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ UpdateAccessPolicyRequest.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.identity.accesscontextmanager.v1.UpdateAccessPolicyRequest();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.policy = $root.google.identity.accesscontextmanager.v1.AccessPolicy.decode(reader, reader.uint32());
+ break;
+ }
+ case 2: {
+ message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32());
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes an UpdateAccessPolicyRequest message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.identity.accesscontextmanager.v1.UpdateAccessPolicyRequest
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.identity.accesscontextmanager.v1.UpdateAccessPolicyRequest} UpdateAccessPolicyRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ UpdateAccessPolicyRequest.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies an UpdateAccessPolicyRequest message.
+ * @function verify
+ * @memberof google.identity.accesscontextmanager.v1.UpdateAccessPolicyRequest
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ UpdateAccessPolicyRequest.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.policy != null && message.hasOwnProperty("policy")) {
+ var error = $root.google.identity.accesscontextmanager.v1.AccessPolicy.verify(message.policy);
+ if (error)
+ return "policy." + error;
+ }
+ if (message.updateMask != null && message.hasOwnProperty("updateMask")) {
+ var error = $root.google.protobuf.FieldMask.verify(message.updateMask);
+ if (error)
+ return "updateMask." + error;
+ }
+ return null;
+ };
+
+ /**
+ * Creates an UpdateAccessPolicyRequest message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.identity.accesscontextmanager.v1.UpdateAccessPolicyRequest
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.identity.accesscontextmanager.v1.UpdateAccessPolicyRequest} UpdateAccessPolicyRequest
+ */
+ UpdateAccessPolicyRequest.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.identity.accesscontextmanager.v1.UpdateAccessPolicyRequest)
+ return object;
+ var message = new $root.google.identity.accesscontextmanager.v1.UpdateAccessPolicyRequest();
+ if (object.policy != null) {
+ if (typeof object.policy !== "object")
+ throw TypeError(".google.identity.accesscontextmanager.v1.UpdateAccessPolicyRequest.policy: object expected");
+ message.policy = $root.google.identity.accesscontextmanager.v1.AccessPolicy.fromObject(object.policy);
+ }
+ if (object.updateMask != null) {
+ if (typeof object.updateMask !== "object")
+ throw TypeError(".google.identity.accesscontextmanager.v1.UpdateAccessPolicyRequest.updateMask: object expected");
+ message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask);
+ }
+ return message;
+ };
+
+ /**
+ * Creates a plain object from an UpdateAccessPolicyRequest message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.identity.accesscontextmanager.v1.UpdateAccessPolicyRequest
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.UpdateAccessPolicyRequest} message UpdateAccessPolicyRequest
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ UpdateAccessPolicyRequest.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.defaults) {
+ object.policy = null;
+ object.updateMask = null;
+ }
+ if (message.policy != null && message.hasOwnProperty("policy"))
+ object.policy = $root.google.identity.accesscontextmanager.v1.AccessPolicy.toObject(message.policy, options);
+ if (message.updateMask != null && message.hasOwnProperty("updateMask"))
+ object.updateMask = $root.google.protobuf.FieldMask.toObject(message.updateMask, options);
+ return object;
+ };
+
+ /**
+ * Converts this UpdateAccessPolicyRequest to JSON.
+ * @function toJSON
+ * @memberof google.identity.accesscontextmanager.v1.UpdateAccessPolicyRequest
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ UpdateAccessPolicyRequest.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for UpdateAccessPolicyRequest
+ * @function getTypeUrl
+ * @memberof google.identity.accesscontextmanager.v1.UpdateAccessPolicyRequest
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ UpdateAccessPolicyRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.identity.accesscontextmanager.v1.UpdateAccessPolicyRequest";
+ };
+
+ return UpdateAccessPolicyRequest;
+ })();
+
+ v1.DeleteAccessPolicyRequest = (function() {
+
+ /**
+ * Properties of a DeleteAccessPolicyRequest.
+ * @memberof google.identity.accesscontextmanager.v1
+ * @interface IDeleteAccessPolicyRequest
+ * @property {string|null} [name] DeleteAccessPolicyRequest name
+ */
+
+ /**
+ * Constructs a new DeleteAccessPolicyRequest.
+ * @memberof google.identity.accesscontextmanager.v1
+ * @classdesc Represents a DeleteAccessPolicyRequest.
+ * @implements IDeleteAccessPolicyRequest
+ * @constructor
+ * @param {google.identity.accesscontextmanager.v1.IDeleteAccessPolicyRequest=} [properties] Properties to set
+ */
+ function DeleteAccessPolicyRequest(properties) {
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * DeleteAccessPolicyRequest name.
+ * @member {string} name
+ * @memberof google.identity.accesscontextmanager.v1.DeleteAccessPolicyRequest
+ * @instance
+ */
+ DeleteAccessPolicyRequest.prototype.name = "";
+
+ /**
+ * Creates a new DeleteAccessPolicyRequest instance using the specified properties.
+ * @function create
+ * @memberof google.identity.accesscontextmanager.v1.DeleteAccessPolicyRequest
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.IDeleteAccessPolicyRequest=} [properties] Properties to set
+ * @returns {google.identity.accesscontextmanager.v1.DeleteAccessPolicyRequest} DeleteAccessPolicyRequest instance
+ */
+ DeleteAccessPolicyRequest.create = function create(properties) {
+ return new DeleteAccessPolicyRequest(properties);
+ };
+
+ /**
+ * Encodes the specified DeleteAccessPolicyRequest message. Does not implicitly {@link google.identity.accesscontextmanager.v1.DeleteAccessPolicyRequest.verify|verify} messages.
+ * @function encode
+ * @memberof google.identity.accesscontextmanager.v1.DeleteAccessPolicyRequest
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.IDeleteAccessPolicyRequest} message DeleteAccessPolicyRequest message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ DeleteAccessPolicyRequest.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 DeleteAccessPolicyRequest message, length delimited. Does not implicitly {@link google.identity.accesscontextmanager.v1.DeleteAccessPolicyRequest.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.identity.accesscontextmanager.v1.DeleteAccessPolicyRequest
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.IDeleteAccessPolicyRequest} message DeleteAccessPolicyRequest message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ DeleteAccessPolicyRequest.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a DeleteAccessPolicyRequest message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.identity.accesscontextmanager.v1.DeleteAccessPolicyRequest
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.identity.accesscontextmanager.v1.DeleteAccessPolicyRequest} DeleteAccessPolicyRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ DeleteAccessPolicyRequest.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.identity.accesscontextmanager.v1.DeleteAccessPolicyRequest();
+ 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 DeleteAccessPolicyRequest message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.identity.accesscontextmanager.v1.DeleteAccessPolicyRequest
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.identity.accesscontextmanager.v1.DeleteAccessPolicyRequest} DeleteAccessPolicyRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ DeleteAccessPolicyRequest.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a DeleteAccessPolicyRequest message.
+ * @function verify
+ * @memberof google.identity.accesscontextmanager.v1.DeleteAccessPolicyRequest
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ DeleteAccessPolicyRequest.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 DeleteAccessPolicyRequest message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.identity.accesscontextmanager.v1.DeleteAccessPolicyRequest
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.identity.accesscontextmanager.v1.DeleteAccessPolicyRequest} DeleteAccessPolicyRequest
+ */
+ DeleteAccessPolicyRequest.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.identity.accesscontextmanager.v1.DeleteAccessPolicyRequest)
+ return object;
+ var message = new $root.google.identity.accesscontextmanager.v1.DeleteAccessPolicyRequest();
+ if (object.name != null)
+ message.name = String(object.name);
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a DeleteAccessPolicyRequest message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.identity.accesscontextmanager.v1.DeleteAccessPolicyRequest
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.DeleteAccessPolicyRequest} message DeleteAccessPolicyRequest
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ DeleteAccessPolicyRequest.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 DeleteAccessPolicyRequest to JSON.
+ * @function toJSON
+ * @memberof google.identity.accesscontextmanager.v1.DeleteAccessPolicyRequest
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ DeleteAccessPolicyRequest.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for DeleteAccessPolicyRequest
+ * @function getTypeUrl
+ * @memberof google.identity.accesscontextmanager.v1.DeleteAccessPolicyRequest
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ DeleteAccessPolicyRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.identity.accesscontextmanager.v1.DeleteAccessPolicyRequest";
+ };
+
+ return DeleteAccessPolicyRequest;
+ })();
+
+ v1.ListAccessLevelsRequest = (function() {
+
+ /**
+ * Properties of a ListAccessLevelsRequest.
+ * @memberof google.identity.accesscontextmanager.v1
+ * @interface IListAccessLevelsRequest
+ * @property {string|null} [parent] ListAccessLevelsRequest parent
+ * @property {number|null} [pageSize] ListAccessLevelsRequest pageSize
+ * @property {string|null} [pageToken] ListAccessLevelsRequest pageToken
+ * @property {google.identity.accesscontextmanager.v1.LevelFormat|null} [accessLevelFormat] ListAccessLevelsRequest accessLevelFormat
+ */
+
+ /**
+ * Constructs a new ListAccessLevelsRequest.
+ * @memberof google.identity.accesscontextmanager.v1
+ * @classdesc Represents a ListAccessLevelsRequest.
+ * @implements IListAccessLevelsRequest
+ * @constructor
+ * @param {google.identity.accesscontextmanager.v1.IListAccessLevelsRequest=} [properties] Properties to set
+ */
+ function ListAccessLevelsRequest(properties) {
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * ListAccessLevelsRequest parent.
+ * @member {string} parent
+ * @memberof google.identity.accesscontextmanager.v1.ListAccessLevelsRequest
+ * @instance
+ */
+ ListAccessLevelsRequest.prototype.parent = "";
+
+ /**
+ * ListAccessLevelsRequest pageSize.
+ * @member {number} pageSize
+ * @memberof google.identity.accesscontextmanager.v1.ListAccessLevelsRequest
+ * @instance
+ */
+ ListAccessLevelsRequest.prototype.pageSize = 0;
+
+ /**
+ * ListAccessLevelsRequest pageToken.
+ * @member {string} pageToken
+ * @memberof google.identity.accesscontextmanager.v1.ListAccessLevelsRequest
+ * @instance
+ */
+ ListAccessLevelsRequest.prototype.pageToken = "";
+
+ /**
+ * ListAccessLevelsRequest accessLevelFormat.
+ * @member {google.identity.accesscontextmanager.v1.LevelFormat} accessLevelFormat
+ * @memberof google.identity.accesscontextmanager.v1.ListAccessLevelsRequest
+ * @instance
+ */
+ ListAccessLevelsRequest.prototype.accessLevelFormat = 0;
+
+ /**
+ * Creates a new ListAccessLevelsRequest instance using the specified properties.
+ * @function create
+ * @memberof google.identity.accesscontextmanager.v1.ListAccessLevelsRequest
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.IListAccessLevelsRequest=} [properties] Properties to set
+ * @returns {google.identity.accesscontextmanager.v1.ListAccessLevelsRequest} ListAccessLevelsRequest instance
+ */
+ ListAccessLevelsRequest.create = function create(properties) {
+ return new ListAccessLevelsRequest(properties);
+ };
+
+ /**
+ * Encodes the specified ListAccessLevelsRequest message. Does not implicitly {@link google.identity.accesscontextmanager.v1.ListAccessLevelsRequest.verify|verify} messages.
+ * @function encode
+ * @memberof google.identity.accesscontextmanager.v1.ListAccessLevelsRequest
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.IListAccessLevelsRequest} message ListAccessLevelsRequest message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ ListAccessLevelsRequest.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.accessLevelFormat != null && Object.hasOwnProperty.call(message, "accessLevelFormat"))
+ writer.uint32(/* id 4, wireType 0 =*/32).int32(message.accessLevelFormat);
+ return writer;
+ };
+
+ /**
+ * Encodes the specified ListAccessLevelsRequest message, length delimited. Does not implicitly {@link google.identity.accesscontextmanager.v1.ListAccessLevelsRequest.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.identity.accesscontextmanager.v1.ListAccessLevelsRequest
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.IListAccessLevelsRequest} message ListAccessLevelsRequest message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ ListAccessLevelsRequest.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a ListAccessLevelsRequest message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.identity.accesscontextmanager.v1.ListAccessLevelsRequest
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.identity.accesscontextmanager.v1.ListAccessLevelsRequest} ListAccessLevelsRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ ListAccessLevelsRequest.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.identity.accesscontextmanager.v1.ListAccessLevelsRequest();
+ 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.accessLevelFormat = reader.int32();
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a ListAccessLevelsRequest message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.identity.accesscontextmanager.v1.ListAccessLevelsRequest
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.identity.accesscontextmanager.v1.ListAccessLevelsRequest} ListAccessLevelsRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ ListAccessLevelsRequest.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a ListAccessLevelsRequest message.
+ * @function verify
+ * @memberof google.identity.accesscontextmanager.v1.ListAccessLevelsRequest
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ ListAccessLevelsRequest.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.accessLevelFormat != null && message.hasOwnProperty("accessLevelFormat"))
+ switch (message.accessLevelFormat) {
+ default:
+ return "accessLevelFormat: enum value expected";
+ case 0:
+ case 1:
+ case 2:
+ break;
+ }
+ return null;
+ };
+
+ /**
+ * Creates a ListAccessLevelsRequest message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.identity.accesscontextmanager.v1.ListAccessLevelsRequest
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.identity.accesscontextmanager.v1.ListAccessLevelsRequest} ListAccessLevelsRequest
+ */
+ ListAccessLevelsRequest.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.identity.accesscontextmanager.v1.ListAccessLevelsRequest)
+ return object;
+ var message = new $root.google.identity.accesscontextmanager.v1.ListAccessLevelsRequest();
+ 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);
+ switch (object.accessLevelFormat) {
+ default:
+ if (typeof object.accessLevelFormat === "number") {
+ message.accessLevelFormat = object.accessLevelFormat;
+ break;
+ }
+ break;
+ case "LEVEL_FORMAT_UNSPECIFIED":
+ case 0:
+ message.accessLevelFormat = 0;
+ break;
+ case "AS_DEFINED":
+ case 1:
+ message.accessLevelFormat = 1;
+ break;
+ case "CEL":
+ case 2:
+ message.accessLevelFormat = 2;
+ break;
+ }
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a ListAccessLevelsRequest message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.identity.accesscontextmanager.v1.ListAccessLevelsRequest
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.ListAccessLevelsRequest} message ListAccessLevelsRequest
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ ListAccessLevelsRequest.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.defaults) {
+ object.parent = "";
+ object.pageSize = 0;
+ object.pageToken = "";
+ object.accessLevelFormat = options.enums === String ? "LEVEL_FORMAT_UNSPECIFIED" : 0;
+ }
+ 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.accessLevelFormat != null && message.hasOwnProperty("accessLevelFormat"))
+ object.accessLevelFormat = options.enums === String ? $root.google.identity.accesscontextmanager.v1.LevelFormat[message.accessLevelFormat] === undefined ? message.accessLevelFormat : $root.google.identity.accesscontextmanager.v1.LevelFormat[message.accessLevelFormat] : message.accessLevelFormat;
+ return object;
+ };
+
+ /**
+ * Converts this ListAccessLevelsRequest to JSON.
+ * @function toJSON
+ * @memberof google.identity.accesscontextmanager.v1.ListAccessLevelsRequest
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ ListAccessLevelsRequest.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for ListAccessLevelsRequest
+ * @function getTypeUrl
+ * @memberof google.identity.accesscontextmanager.v1.ListAccessLevelsRequest
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ ListAccessLevelsRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.identity.accesscontextmanager.v1.ListAccessLevelsRequest";
+ };
+
+ return ListAccessLevelsRequest;
+ })();
+
+ v1.ListAccessLevelsResponse = (function() {
+
+ /**
+ * Properties of a ListAccessLevelsResponse.
+ * @memberof google.identity.accesscontextmanager.v1
+ * @interface IListAccessLevelsResponse
+ * @property {Array.|null} [accessLevels] ListAccessLevelsResponse accessLevels
+ * @property {string|null} [nextPageToken] ListAccessLevelsResponse nextPageToken
+ */
+
+ /**
+ * Constructs a new ListAccessLevelsResponse.
+ * @memberof google.identity.accesscontextmanager.v1
+ * @classdesc Represents a ListAccessLevelsResponse.
+ * @implements IListAccessLevelsResponse
+ * @constructor
+ * @param {google.identity.accesscontextmanager.v1.IListAccessLevelsResponse=} [properties] Properties to set
+ */
+ function ListAccessLevelsResponse(properties) {
+ this.accessLevels = [];
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * ListAccessLevelsResponse accessLevels.
+ * @member {Array.} accessLevels
+ * @memberof google.identity.accesscontextmanager.v1.ListAccessLevelsResponse
+ * @instance
+ */
+ ListAccessLevelsResponse.prototype.accessLevels = $util.emptyArray;
+
+ /**
+ * ListAccessLevelsResponse nextPageToken.
+ * @member {string} nextPageToken
+ * @memberof google.identity.accesscontextmanager.v1.ListAccessLevelsResponse
+ * @instance
+ */
+ ListAccessLevelsResponse.prototype.nextPageToken = "";
+
+ /**
+ * Creates a new ListAccessLevelsResponse instance using the specified properties.
+ * @function create
+ * @memberof google.identity.accesscontextmanager.v1.ListAccessLevelsResponse
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.IListAccessLevelsResponse=} [properties] Properties to set
+ * @returns {google.identity.accesscontextmanager.v1.ListAccessLevelsResponse} ListAccessLevelsResponse instance
+ */
+ ListAccessLevelsResponse.create = function create(properties) {
+ return new ListAccessLevelsResponse(properties);
+ };
+
+ /**
+ * Encodes the specified ListAccessLevelsResponse message. Does not implicitly {@link google.identity.accesscontextmanager.v1.ListAccessLevelsResponse.verify|verify} messages.
+ * @function encode
+ * @memberof google.identity.accesscontextmanager.v1.ListAccessLevelsResponse
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.IListAccessLevelsResponse} message ListAccessLevelsResponse message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ ListAccessLevelsResponse.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.accessLevels != null && message.accessLevels.length)
+ for (var i = 0; i < message.accessLevels.length; ++i)
+ $root.google.identity.accesscontextmanager.v1.AccessLevel.encode(message.accessLevels[i], writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim();
+ if (message.nextPageToken != null && Object.hasOwnProperty.call(message, "nextPageToken"))
+ writer.uint32(/* id 2, wireType 2 =*/18).string(message.nextPageToken);
+ return writer;
+ };
+
+ /**
+ * Encodes the specified ListAccessLevelsResponse message, length delimited. Does not implicitly {@link google.identity.accesscontextmanager.v1.ListAccessLevelsResponse.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.identity.accesscontextmanager.v1.ListAccessLevelsResponse
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.IListAccessLevelsResponse} message ListAccessLevelsResponse message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ ListAccessLevelsResponse.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a ListAccessLevelsResponse message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.identity.accesscontextmanager.v1.ListAccessLevelsResponse
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.identity.accesscontextmanager.v1.ListAccessLevelsResponse} ListAccessLevelsResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ ListAccessLevelsResponse.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.identity.accesscontextmanager.v1.ListAccessLevelsResponse();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ if (!(message.accessLevels && message.accessLevels.length))
+ message.accessLevels = [];
+ message.accessLevels.push($root.google.identity.accesscontextmanager.v1.AccessLevel.decode(reader, reader.uint32()));
+ break;
+ }
+ case 2: {
+ message.nextPageToken = reader.string();
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a ListAccessLevelsResponse message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.identity.accesscontextmanager.v1.ListAccessLevelsResponse
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.identity.accesscontextmanager.v1.ListAccessLevelsResponse} ListAccessLevelsResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ ListAccessLevelsResponse.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a ListAccessLevelsResponse message.
+ * @function verify
+ * @memberof google.identity.accesscontextmanager.v1.ListAccessLevelsResponse
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ ListAccessLevelsResponse.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.accessLevels != null && message.hasOwnProperty("accessLevels")) {
+ if (!Array.isArray(message.accessLevels))
+ return "accessLevels: array expected";
+ for (var i = 0; i < message.accessLevels.length; ++i) {
+ var error = $root.google.identity.accesscontextmanager.v1.AccessLevel.verify(message.accessLevels[i]);
+ if (error)
+ return "accessLevels." + error;
+ }
+ }
+ if (message.nextPageToken != null && message.hasOwnProperty("nextPageToken"))
+ if (!$util.isString(message.nextPageToken))
+ return "nextPageToken: string expected";
+ return null;
+ };
+
+ /**
+ * Creates a ListAccessLevelsResponse message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.identity.accesscontextmanager.v1.ListAccessLevelsResponse
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.identity.accesscontextmanager.v1.ListAccessLevelsResponse} ListAccessLevelsResponse
+ */
+ ListAccessLevelsResponse.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.identity.accesscontextmanager.v1.ListAccessLevelsResponse)
+ return object;
+ var message = new $root.google.identity.accesscontextmanager.v1.ListAccessLevelsResponse();
+ if (object.accessLevels) {
+ if (!Array.isArray(object.accessLevels))
+ throw TypeError(".google.identity.accesscontextmanager.v1.ListAccessLevelsResponse.accessLevels: array expected");
+ message.accessLevels = [];
+ for (var i = 0; i < object.accessLevels.length; ++i) {
+ if (typeof object.accessLevels[i] !== "object")
+ throw TypeError(".google.identity.accesscontextmanager.v1.ListAccessLevelsResponse.accessLevels: object expected");
+ message.accessLevels[i] = $root.google.identity.accesscontextmanager.v1.AccessLevel.fromObject(object.accessLevels[i]);
+ }
+ }
+ if (object.nextPageToken != null)
+ message.nextPageToken = String(object.nextPageToken);
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a ListAccessLevelsResponse message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.identity.accesscontextmanager.v1.ListAccessLevelsResponse
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.ListAccessLevelsResponse} message ListAccessLevelsResponse
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ ListAccessLevelsResponse.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.arrays || options.defaults)
+ object.accessLevels = [];
+ if (options.defaults)
+ object.nextPageToken = "";
+ if (message.accessLevels && message.accessLevels.length) {
+ object.accessLevels = [];
+ for (var j = 0; j < message.accessLevels.length; ++j)
+ object.accessLevels[j] = $root.google.identity.accesscontextmanager.v1.AccessLevel.toObject(message.accessLevels[j], options);
+ }
+ if (message.nextPageToken != null && message.hasOwnProperty("nextPageToken"))
+ object.nextPageToken = message.nextPageToken;
+ return object;
+ };
+
+ /**
+ * Converts this ListAccessLevelsResponse to JSON.
+ * @function toJSON
+ * @memberof google.identity.accesscontextmanager.v1.ListAccessLevelsResponse
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ ListAccessLevelsResponse.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for ListAccessLevelsResponse
+ * @function getTypeUrl
+ * @memberof google.identity.accesscontextmanager.v1.ListAccessLevelsResponse
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ ListAccessLevelsResponse.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.identity.accesscontextmanager.v1.ListAccessLevelsResponse";
+ };
+
+ return ListAccessLevelsResponse;
+ })();
+
+ v1.GetAccessLevelRequest = (function() {
+
+ /**
+ * Properties of a GetAccessLevelRequest.
+ * @memberof google.identity.accesscontextmanager.v1
+ * @interface IGetAccessLevelRequest
+ * @property {string|null} [name] GetAccessLevelRequest name
+ * @property {google.identity.accesscontextmanager.v1.LevelFormat|null} [accessLevelFormat] GetAccessLevelRequest accessLevelFormat
+ */
+
+ /**
+ * Constructs a new GetAccessLevelRequest.
+ * @memberof google.identity.accesscontextmanager.v1
+ * @classdesc Represents a GetAccessLevelRequest.
+ * @implements IGetAccessLevelRequest
+ * @constructor
+ * @param {google.identity.accesscontextmanager.v1.IGetAccessLevelRequest=} [properties] Properties to set
+ */
+ function GetAccessLevelRequest(properties) {
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * GetAccessLevelRequest name.
+ * @member {string} name
+ * @memberof google.identity.accesscontextmanager.v1.GetAccessLevelRequest
+ * @instance
+ */
+ GetAccessLevelRequest.prototype.name = "";
+
+ /**
+ * GetAccessLevelRequest accessLevelFormat.
+ * @member {google.identity.accesscontextmanager.v1.LevelFormat} accessLevelFormat
+ * @memberof google.identity.accesscontextmanager.v1.GetAccessLevelRequest
+ * @instance
+ */
+ GetAccessLevelRequest.prototype.accessLevelFormat = 0;
+
+ /**
+ * Creates a new GetAccessLevelRequest instance using the specified properties.
+ * @function create
+ * @memberof google.identity.accesscontextmanager.v1.GetAccessLevelRequest
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.IGetAccessLevelRequest=} [properties] Properties to set
+ * @returns {google.identity.accesscontextmanager.v1.GetAccessLevelRequest} GetAccessLevelRequest instance
+ */
+ GetAccessLevelRequest.create = function create(properties) {
+ return new GetAccessLevelRequest(properties);
+ };
+
+ /**
+ * Encodes the specified GetAccessLevelRequest message. Does not implicitly {@link google.identity.accesscontextmanager.v1.GetAccessLevelRequest.verify|verify} messages.
+ * @function encode
+ * @memberof google.identity.accesscontextmanager.v1.GetAccessLevelRequest
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.IGetAccessLevelRequest} message GetAccessLevelRequest message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ GetAccessLevelRequest.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.accessLevelFormat != null && Object.hasOwnProperty.call(message, "accessLevelFormat"))
+ writer.uint32(/* id 2, wireType 0 =*/16).int32(message.accessLevelFormat);
+ return writer;
+ };
+
+ /**
+ * Encodes the specified GetAccessLevelRequest message, length delimited. Does not implicitly {@link google.identity.accesscontextmanager.v1.GetAccessLevelRequest.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.identity.accesscontextmanager.v1.GetAccessLevelRequest
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.IGetAccessLevelRequest} message GetAccessLevelRequest message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ GetAccessLevelRequest.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a GetAccessLevelRequest message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.identity.accesscontextmanager.v1.GetAccessLevelRequest
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.identity.accesscontextmanager.v1.GetAccessLevelRequest} GetAccessLevelRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ GetAccessLevelRequest.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.identity.accesscontextmanager.v1.GetAccessLevelRequest();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.name = reader.string();
+ break;
+ }
+ case 2: {
+ message.accessLevelFormat = reader.int32();
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a GetAccessLevelRequest message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.identity.accesscontextmanager.v1.GetAccessLevelRequest
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.identity.accesscontextmanager.v1.GetAccessLevelRequest} GetAccessLevelRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ GetAccessLevelRequest.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a GetAccessLevelRequest message.
+ * @function verify
+ * @memberof google.identity.accesscontextmanager.v1.GetAccessLevelRequest
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ GetAccessLevelRequest.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.accessLevelFormat != null && message.hasOwnProperty("accessLevelFormat"))
+ switch (message.accessLevelFormat) {
+ default:
+ return "accessLevelFormat: enum value expected";
+ case 0:
+ case 1:
+ case 2:
+ break;
+ }
+ return null;
+ };
+
+ /**
+ * Creates a GetAccessLevelRequest message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.identity.accesscontextmanager.v1.GetAccessLevelRequest
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.identity.accesscontextmanager.v1.GetAccessLevelRequest} GetAccessLevelRequest
+ */
+ GetAccessLevelRequest.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.identity.accesscontextmanager.v1.GetAccessLevelRequest)
+ return object;
+ var message = new $root.google.identity.accesscontextmanager.v1.GetAccessLevelRequest();
+ if (object.name != null)
+ message.name = String(object.name);
+ switch (object.accessLevelFormat) {
+ default:
+ if (typeof object.accessLevelFormat === "number") {
+ message.accessLevelFormat = object.accessLevelFormat;
+ break;
+ }
+ break;
+ case "LEVEL_FORMAT_UNSPECIFIED":
+ case 0:
+ message.accessLevelFormat = 0;
+ break;
+ case "AS_DEFINED":
+ case 1:
+ message.accessLevelFormat = 1;
+ break;
+ case "CEL":
+ case 2:
+ message.accessLevelFormat = 2;
+ break;
+ }
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a GetAccessLevelRequest message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.identity.accesscontextmanager.v1.GetAccessLevelRequest
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.GetAccessLevelRequest} message GetAccessLevelRequest
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ GetAccessLevelRequest.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.defaults) {
+ object.name = "";
+ object.accessLevelFormat = options.enums === String ? "LEVEL_FORMAT_UNSPECIFIED" : 0;
+ }
+ if (message.name != null && message.hasOwnProperty("name"))
+ object.name = message.name;
+ if (message.accessLevelFormat != null && message.hasOwnProperty("accessLevelFormat"))
+ object.accessLevelFormat = options.enums === String ? $root.google.identity.accesscontextmanager.v1.LevelFormat[message.accessLevelFormat] === undefined ? message.accessLevelFormat : $root.google.identity.accesscontextmanager.v1.LevelFormat[message.accessLevelFormat] : message.accessLevelFormat;
+ return object;
+ };
+
+ /**
+ * Converts this GetAccessLevelRequest to JSON.
+ * @function toJSON
+ * @memberof google.identity.accesscontextmanager.v1.GetAccessLevelRequest
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ GetAccessLevelRequest.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for GetAccessLevelRequest
+ * @function getTypeUrl
+ * @memberof google.identity.accesscontextmanager.v1.GetAccessLevelRequest
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ GetAccessLevelRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.identity.accesscontextmanager.v1.GetAccessLevelRequest";
+ };
+
+ return GetAccessLevelRequest;
+ })();
+
+ v1.CreateAccessLevelRequest = (function() {
+
+ /**
+ * Properties of a CreateAccessLevelRequest.
+ * @memberof google.identity.accesscontextmanager.v1
+ * @interface ICreateAccessLevelRequest
+ * @property {string|null} [parent] CreateAccessLevelRequest parent
+ * @property {google.identity.accesscontextmanager.v1.IAccessLevel|null} [accessLevel] CreateAccessLevelRequest accessLevel
+ */
+
+ /**
+ * Constructs a new CreateAccessLevelRequest.
+ * @memberof google.identity.accesscontextmanager.v1
+ * @classdesc Represents a CreateAccessLevelRequest.
+ * @implements ICreateAccessLevelRequest
+ * @constructor
+ * @param {google.identity.accesscontextmanager.v1.ICreateAccessLevelRequest=} [properties] Properties to set
+ */
+ function CreateAccessLevelRequest(properties) {
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * CreateAccessLevelRequest parent.
+ * @member {string} parent
+ * @memberof google.identity.accesscontextmanager.v1.CreateAccessLevelRequest
+ * @instance
+ */
+ CreateAccessLevelRequest.prototype.parent = "";
+
+ /**
+ * CreateAccessLevelRequest accessLevel.
+ * @member {google.identity.accesscontextmanager.v1.IAccessLevel|null|undefined} accessLevel
+ * @memberof google.identity.accesscontextmanager.v1.CreateAccessLevelRequest
+ * @instance
+ */
+ CreateAccessLevelRequest.prototype.accessLevel = null;
+
+ /**
+ * Creates a new CreateAccessLevelRequest instance using the specified properties.
+ * @function create
+ * @memberof google.identity.accesscontextmanager.v1.CreateAccessLevelRequest
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.ICreateAccessLevelRequest=} [properties] Properties to set
+ * @returns {google.identity.accesscontextmanager.v1.CreateAccessLevelRequest} CreateAccessLevelRequest instance
+ */
+ CreateAccessLevelRequest.create = function create(properties) {
+ return new CreateAccessLevelRequest(properties);
+ };
+
+ /**
+ * Encodes the specified CreateAccessLevelRequest message. Does not implicitly {@link google.identity.accesscontextmanager.v1.CreateAccessLevelRequest.verify|verify} messages.
+ * @function encode
+ * @memberof google.identity.accesscontextmanager.v1.CreateAccessLevelRequest
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.ICreateAccessLevelRequest} message CreateAccessLevelRequest message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ CreateAccessLevelRequest.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.accessLevel != null && Object.hasOwnProperty.call(message, "accessLevel"))
+ $root.google.identity.accesscontextmanager.v1.AccessLevel.encode(message.accessLevel, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim();
+ return writer;
+ };
+
+ /**
+ * Encodes the specified CreateAccessLevelRequest message, length delimited. Does not implicitly {@link google.identity.accesscontextmanager.v1.CreateAccessLevelRequest.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.identity.accesscontextmanager.v1.CreateAccessLevelRequest
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.ICreateAccessLevelRequest} message CreateAccessLevelRequest message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ CreateAccessLevelRequest.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a CreateAccessLevelRequest message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.identity.accesscontextmanager.v1.CreateAccessLevelRequest
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.identity.accesscontextmanager.v1.CreateAccessLevelRequest} CreateAccessLevelRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ CreateAccessLevelRequest.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.identity.accesscontextmanager.v1.CreateAccessLevelRequest();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.parent = reader.string();
+ break;
+ }
+ case 2: {
+ message.accessLevel = $root.google.identity.accesscontextmanager.v1.AccessLevel.decode(reader, reader.uint32());
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a CreateAccessLevelRequest message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.identity.accesscontextmanager.v1.CreateAccessLevelRequest
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.identity.accesscontextmanager.v1.CreateAccessLevelRequest} CreateAccessLevelRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ CreateAccessLevelRequest.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a CreateAccessLevelRequest message.
+ * @function verify
+ * @memberof google.identity.accesscontextmanager.v1.CreateAccessLevelRequest
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ CreateAccessLevelRequest.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.accessLevel != null && message.hasOwnProperty("accessLevel")) {
+ var error = $root.google.identity.accesscontextmanager.v1.AccessLevel.verify(message.accessLevel);
+ if (error)
+ return "accessLevel." + error;
+ }
+ return null;
+ };
+
+ /**
+ * Creates a CreateAccessLevelRequest message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.identity.accesscontextmanager.v1.CreateAccessLevelRequest
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.identity.accesscontextmanager.v1.CreateAccessLevelRequest} CreateAccessLevelRequest
+ */
+ CreateAccessLevelRequest.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.identity.accesscontextmanager.v1.CreateAccessLevelRequest)
+ return object;
+ var message = new $root.google.identity.accesscontextmanager.v1.CreateAccessLevelRequest();
+ if (object.parent != null)
+ message.parent = String(object.parent);
+ if (object.accessLevel != null) {
+ if (typeof object.accessLevel !== "object")
+ throw TypeError(".google.identity.accesscontextmanager.v1.CreateAccessLevelRequest.accessLevel: object expected");
+ message.accessLevel = $root.google.identity.accesscontextmanager.v1.AccessLevel.fromObject(object.accessLevel);
+ }
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a CreateAccessLevelRequest message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.identity.accesscontextmanager.v1.CreateAccessLevelRequest
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.CreateAccessLevelRequest} message CreateAccessLevelRequest
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ CreateAccessLevelRequest.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.defaults) {
+ object.parent = "";
+ object.accessLevel = null;
+ }
+ if (message.parent != null && message.hasOwnProperty("parent"))
+ object.parent = message.parent;
+ if (message.accessLevel != null && message.hasOwnProperty("accessLevel"))
+ object.accessLevel = $root.google.identity.accesscontextmanager.v1.AccessLevel.toObject(message.accessLevel, options);
+ return object;
+ };
+
+ /**
+ * Converts this CreateAccessLevelRequest to JSON.
+ * @function toJSON
+ * @memberof google.identity.accesscontextmanager.v1.CreateAccessLevelRequest
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ CreateAccessLevelRequest.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for CreateAccessLevelRequest
+ * @function getTypeUrl
+ * @memberof google.identity.accesscontextmanager.v1.CreateAccessLevelRequest
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ CreateAccessLevelRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.identity.accesscontextmanager.v1.CreateAccessLevelRequest";
+ };
+
+ return CreateAccessLevelRequest;
+ })();
+
+ v1.UpdateAccessLevelRequest = (function() {
+
+ /**
+ * Properties of an UpdateAccessLevelRequest.
+ * @memberof google.identity.accesscontextmanager.v1
+ * @interface IUpdateAccessLevelRequest
+ * @property {google.identity.accesscontextmanager.v1.IAccessLevel|null} [accessLevel] UpdateAccessLevelRequest accessLevel
+ * @property {google.protobuf.IFieldMask|null} [updateMask] UpdateAccessLevelRequest updateMask
+ */
+
+ /**
+ * Constructs a new UpdateAccessLevelRequest.
+ * @memberof google.identity.accesscontextmanager.v1
+ * @classdesc Represents an UpdateAccessLevelRequest.
+ * @implements IUpdateAccessLevelRequest
+ * @constructor
+ * @param {google.identity.accesscontextmanager.v1.IUpdateAccessLevelRequest=} [properties] Properties to set
+ */
+ function UpdateAccessLevelRequest(properties) {
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * UpdateAccessLevelRequest accessLevel.
+ * @member {google.identity.accesscontextmanager.v1.IAccessLevel|null|undefined} accessLevel
+ * @memberof google.identity.accesscontextmanager.v1.UpdateAccessLevelRequest
+ * @instance
+ */
+ UpdateAccessLevelRequest.prototype.accessLevel = null;
+
+ /**
+ * UpdateAccessLevelRequest updateMask.
+ * @member {google.protobuf.IFieldMask|null|undefined} updateMask
+ * @memberof google.identity.accesscontextmanager.v1.UpdateAccessLevelRequest
+ * @instance
+ */
+ UpdateAccessLevelRequest.prototype.updateMask = null;
+
+ /**
+ * Creates a new UpdateAccessLevelRequest instance using the specified properties.
+ * @function create
+ * @memberof google.identity.accesscontextmanager.v1.UpdateAccessLevelRequest
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.IUpdateAccessLevelRequest=} [properties] Properties to set
+ * @returns {google.identity.accesscontextmanager.v1.UpdateAccessLevelRequest} UpdateAccessLevelRequest instance
+ */
+ UpdateAccessLevelRequest.create = function create(properties) {
+ return new UpdateAccessLevelRequest(properties);
+ };
+
+ /**
+ * Encodes the specified UpdateAccessLevelRequest message. Does not implicitly {@link google.identity.accesscontextmanager.v1.UpdateAccessLevelRequest.verify|verify} messages.
+ * @function encode
+ * @memberof google.identity.accesscontextmanager.v1.UpdateAccessLevelRequest
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.IUpdateAccessLevelRequest} message UpdateAccessLevelRequest message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ UpdateAccessLevelRequest.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.accessLevel != null && Object.hasOwnProperty.call(message, "accessLevel"))
+ $root.google.identity.accesscontextmanager.v1.AccessLevel.encode(message.accessLevel, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim();
+ if (message.updateMask != null && Object.hasOwnProperty.call(message, "updateMask"))
+ $root.google.protobuf.FieldMask.encode(message.updateMask, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim();
+ return writer;
+ };
+
+ /**
+ * Encodes the specified UpdateAccessLevelRequest message, length delimited. Does not implicitly {@link google.identity.accesscontextmanager.v1.UpdateAccessLevelRequest.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.identity.accesscontextmanager.v1.UpdateAccessLevelRequest
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.IUpdateAccessLevelRequest} message UpdateAccessLevelRequest message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ UpdateAccessLevelRequest.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes an UpdateAccessLevelRequest message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.identity.accesscontextmanager.v1.UpdateAccessLevelRequest
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.identity.accesscontextmanager.v1.UpdateAccessLevelRequest} UpdateAccessLevelRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ UpdateAccessLevelRequest.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.identity.accesscontextmanager.v1.UpdateAccessLevelRequest();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.accessLevel = $root.google.identity.accesscontextmanager.v1.AccessLevel.decode(reader, reader.uint32());
+ break;
+ }
+ case 2: {
+ message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32());
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes an UpdateAccessLevelRequest message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.identity.accesscontextmanager.v1.UpdateAccessLevelRequest
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.identity.accesscontextmanager.v1.UpdateAccessLevelRequest} UpdateAccessLevelRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ UpdateAccessLevelRequest.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies an UpdateAccessLevelRequest message.
+ * @function verify
+ * @memberof google.identity.accesscontextmanager.v1.UpdateAccessLevelRequest
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ UpdateAccessLevelRequest.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.accessLevel != null && message.hasOwnProperty("accessLevel")) {
+ var error = $root.google.identity.accesscontextmanager.v1.AccessLevel.verify(message.accessLevel);
+ if (error)
+ return "accessLevel." + error;
+ }
+ if (message.updateMask != null && message.hasOwnProperty("updateMask")) {
+ var error = $root.google.protobuf.FieldMask.verify(message.updateMask);
+ if (error)
+ return "updateMask." + error;
+ }
+ return null;
+ };
+
+ /**
+ * Creates an UpdateAccessLevelRequest message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.identity.accesscontextmanager.v1.UpdateAccessLevelRequest
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.identity.accesscontextmanager.v1.UpdateAccessLevelRequest} UpdateAccessLevelRequest
+ */
+ UpdateAccessLevelRequest.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.identity.accesscontextmanager.v1.UpdateAccessLevelRequest)
+ return object;
+ var message = new $root.google.identity.accesscontextmanager.v1.UpdateAccessLevelRequest();
+ if (object.accessLevel != null) {
+ if (typeof object.accessLevel !== "object")
+ throw TypeError(".google.identity.accesscontextmanager.v1.UpdateAccessLevelRequest.accessLevel: object expected");
+ message.accessLevel = $root.google.identity.accesscontextmanager.v1.AccessLevel.fromObject(object.accessLevel);
+ }
+ if (object.updateMask != null) {
+ if (typeof object.updateMask !== "object")
+ throw TypeError(".google.identity.accesscontextmanager.v1.UpdateAccessLevelRequest.updateMask: object expected");
+ message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask);
+ }
+ return message;
+ };
+
+ /**
+ * Creates a plain object from an UpdateAccessLevelRequest message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.identity.accesscontextmanager.v1.UpdateAccessLevelRequest
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.UpdateAccessLevelRequest} message UpdateAccessLevelRequest
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ UpdateAccessLevelRequest.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.defaults) {
+ object.accessLevel = null;
+ object.updateMask = null;
+ }
+ if (message.accessLevel != null && message.hasOwnProperty("accessLevel"))
+ object.accessLevel = $root.google.identity.accesscontextmanager.v1.AccessLevel.toObject(message.accessLevel, options);
+ if (message.updateMask != null && message.hasOwnProperty("updateMask"))
+ object.updateMask = $root.google.protobuf.FieldMask.toObject(message.updateMask, options);
+ return object;
+ };
+
+ /**
+ * Converts this UpdateAccessLevelRequest to JSON.
+ * @function toJSON
+ * @memberof google.identity.accesscontextmanager.v1.UpdateAccessLevelRequest
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ UpdateAccessLevelRequest.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for UpdateAccessLevelRequest
+ * @function getTypeUrl
+ * @memberof google.identity.accesscontextmanager.v1.UpdateAccessLevelRequest
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ UpdateAccessLevelRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.identity.accesscontextmanager.v1.UpdateAccessLevelRequest";
+ };
+
+ return UpdateAccessLevelRequest;
+ })();
+
+ v1.DeleteAccessLevelRequest = (function() {
+
+ /**
+ * Properties of a DeleteAccessLevelRequest.
+ * @memberof google.identity.accesscontextmanager.v1
+ * @interface IDeleteAccessLevelRequest
+ * @property {string|null} [name] DeleteAccessLevelRequest name
+ */
+
+ /**
+ * Constructs a new DeleteAccessLevelRequest.
+ * @memberof google.identity.accesscontextmanager.v1
+ * @classdesc Represents a DeleteAccessLevelRequest.
+ * @implements IDeleteAccessLevelRequest
+ * @constructor
+ * @param {google.identity.accesscontextmanager.v1.IDeleteAccessLevelRequest=} [properties] Properties to set
+ */
+ function DeleteAccessLevelRequest(properties) {
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * DeleteAccessLevelRequest name.
+ * @member {string} name
+ * @memberof google.identity.accesscontextmanager.v1.DeleteAccessLevelRequest
+ * @instance
+ */
+ DeleteAccessLevelRequest.prototype.name = "";
+
+ /**
+ * Creates a new DeleteAccessLevelRequest instance using the specified properties.
+ * @function create
+ * @memberof google.identity.accesscontextmanager.v1.DeleteAccessLevelRequest
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.IDeleteAccessLevelRequest=} [properties] Properties to set
+ * @returns {google.identity.accesscontextmanager.v1.DeleteAccessLevelRequest} DeleteAccessLevelRequest instance
+ */
+ DeleteAccessLevelRequest.create = function create(properties) {
+ return new DeleteAccessLevelRequest(properties);
+ };
+
+ /**
+ * Encodes the specified DeleteAccessLevelRequest message. Does not implicitly {@link google.identity.accesscontextmanager.v1.DeleteAccessLevelRequest.verify|verify} messages.
+ * @function encode
+ * @memberof google.identity.accesscontextmanager.v1.DeleteAccessLevelRequest
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.IDeleteAccessLevelRequest} message DeleteAccessLevelRequest message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ DeleteAccessLevelRequest.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 DeleteAccessLevelRequest message, length delimited. Does not implicitly {@link google.identity.accesscontextmanager.v1.DeleteAccessLevelRequest.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.identity.accesscontextmanager.v1.DeleteAccessLevelRequest
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.IDeleteAccessLevelRequest} message DeleteAccessLevelRequest message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ DeleteAccessLevelRequest.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a DeleteAccessLevelRequest message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.identity.accesscontextmanager.v1.DeleteAccessLevelRequest
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.identity.accesscontextmanager.v1.DeleteAccessLevelRequest} DeleteAccessLevelRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ DeleteAccessLevelRequest.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.identity.accesscontextmanager.v1.DeleteAccessLevelRequest();
+ 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 DeleteAccessLevelRequest message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.identity.accesscontextmanager.v1.DeleteAccessLevelRequest
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.identity.accesscontextmanager.v1.DeleteAccessLevelRequest} DeleteAccessLevelRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ DeleteAccessLevelRequest.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a DeleteAccessLevelRequest message.
+ * @function verify
+ * @memberof google.identity.accesscontextmanager.v1.DeleteAccessLevelRequest
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ DeleteAccessLevelRequest.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 DeleteAccessLevelRequest message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.identity.accesscontextmanager.v1.DeleteAccessLevelRequest
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.identity.accesscontextmanager.v1.DeleteAccessLevelRequest} DeleteAccessLevelRequest
+ */
+ DeleteAccessLevelRequest.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.identity.accesscontextmanager.v1.DeleteAccessLevelRequest)
+ return object;
+ var message = new $root.google.identity.accesscontextmanager.v1.DeleteAccessLevelRequest();
+ if (object.name != null)
+ message.name = String(object.name);
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a DeleteAccessLevelRequest message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.identity.accesscontextmanager.v1.DeleteAccessLevelRequest
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.DeleteAccessLevelRequest} message DeleteAccessLevelRequest
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ DeleteAccessLevelRequest.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 DeleteAccessLevelRequest to JSON.
+ * @function toJSON
+ * @memberof google.identity.accesscontextmanager.v1.DeleteAccessLevelRequest
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ DeleteAccessLevelRequest.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for DeleteAccessLevelRequest
+ * @function getTypeUrl
+ * @memberof google.identity.accesscontextmanager.v1.DeleteAccessLevelRequest
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ DeleteAccessLevelRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.identity.accesscontextmanager.v1.DeleteAccessLevelRequest";
+ };
+
+ return DeleteAccessLevelRequest;
+ })();
+
+ v1.ReplaceAccessLevelsRequest = (function() {
+
+ /**
+ * Properties of a ReplaceAccessLevelsRequest.
+ * @memberof google.identity.accesscontextmanager.v1
+ * @interface IReplaceAccessLevelsRequest
+ * @property {string|null} [parent] ReplaceAccessLevelsRequest parent
+ * @property {Array.|null} [accessLevels] ReplaceAccessLevelsRequest accessLevels
+ * @property {string|null} [etag] ReplaceAccessLevelsRequest etag
+ */
+
+ /**
+ * Constructs a new ReplaceAccessLevelsRequest.
+ * @memberof google.identity.accesscontextmanager.v1
+ * @classdesc Represents a ReplaceAccessLevelsRequest.
+ * @implements IReplaceAccessLevelsRequest
+ * @constructor
+ * @param {google.identity.accesscontextmanager.v1.IReplaceAccessLevelsRequest=} [properties] Properties to set
+ */
+ function ReplaceAccessLevelsRequest(properties) {
+ this.accessLevels = [];
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * ReplaceAccessLevelsRequest parent.
+ * @member {string} parent
+ * @memberof google.identity.accesscontextmanager.v1.ReplaceAccessLevelsRequest
+ * @instance
+ */
+ ReplaceAccessLevelsRequest.prototype.parent = "";
+
+ /**
+ * ReplaceAccessLevelsRequest accessLevels.
+ * @member {Array.} accessLevels
+ * @memberof google.identity.accesscontextmanager.v1.ReplaceAccessLevelsRequest
+ * @instance
+ */
+ ReplaceAccessLevelsRequest.prototype.accessLevels = $util.emptyArray;
+
+ /**
+ * ReplaceAccessLevelsRequest etag.
+ * @member {string} etag
+ * @memberof google.identity.accesscontextmanager.v1.ReplaceAccessLevelsRequest
+ * @instance
+ */
+ ReplaceAccessLevelsRequest.prototype.etag = "";
+
+ /**
+ * Creates a new ReplaceAccessLevelsRequest instance using the specified properties.
+ * @function create
+ * @memberof google.identity.accesscontextmanager.v1.ReplaceAccessLevelsRequest
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.IReplaceAccessLevelsRequest=} [properties] Properties to set
+ * @returns {google.identity.accesscontextmanager.v1.ReplaceAccessLevelsRequest} ReplaceAccessLevelsRequest instance
+ */
+ ReplaceAccessLevelsRequest.create = function create(properties) {
+ return new ReplaceAccessLevelsRequest(properties);
+ };
+
+ /**
+ * Encodes the specified ReplaceAccessLevelsRequest message. Does not implicitly {@link google.identity.accesscontextmanager.v1.ReplaceAccessLevelsRequest.verify|verify} messages.
+ * @function encode
+ * @memberof google.identity.accesscontextmanager.v1.ReplaceAccessLevelsRequest
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.IReplaceAccessLevelsRequest} message ReplaceAccessLevelsRequest message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ ReplaceAccessLevelsRequest.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.accessLevels != null && message.accessLevels.length)
+ for (var i = 0; i < message.accessLevels.length; ++i)
+ $root.google.identity.accesscontextmanager.v1.AccessLevel.encode(message.accessLevels[i], writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim();
+ if (message.etag != null && Object.hasOwnProperty.call(message, "etag"))
+ writer.uint32(/* id 4, wireType 2 =*/34).string(message.etag);
+ return writer;
+ };
+
+ /**
+ * Encodes the specified ReplaceAccessLevelsRequest message, length delimited. Does not implicitly {@link google.identity.accesscontextmanager.v1.ReplaceAccessLevelsRequest.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.identity.accesscontextmanager.v1.ReplaceAccessLevelsRequest
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.IReplaceAccessLevelsRequest} message ReplaceAccessLevelsRequest message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ ReplaceAccessLevelsRequest.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a ReplaceAccessLevelsRequest message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.identity.accesscontextmanager.v1.ReplaceAccessLevelsRequest
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.identity.accesscontextmanager.v1.ReplaceAccessLevelsRequest} ReplaceAccessLevelsRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ ReplaceAccessLevelsRequest.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.identity.accesscontextmanager.v1.ReplaceAccessLevelsRequest();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.parent = reader.string();
+ break;
+ }
+ case 2: {
+ if (!(message.accessLevels && message.accessLevels.length))
+ message.accessLevels = [];
+ message.accessLevels.push($root.google.identity.accesscontextmanager.v1.AccessLevel.decode(reader, reader.uint32()));
+ break;
+ }
+ case 4: {
+ message.etag = reader.string();
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a ReplaceAccessLevelsRequest message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.identity.accesscontextmanager.v1.ReplaceAccessLevelsRequest
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.identity.accesscontextmanager.v1.ReplaceAccessLevelsRequest} ReplaceAccessLevelsRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ ReplaceAccessLevelsRequest.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a ReplaceAccessLevelsRequest message.
+ * @function verify
+ * @memberof google.identity.accesscontextmanager.v1.ReplaceAccessLevelsRequest
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ ReplaceAccessLevelsRequest.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.accessLevels != null && message.hasOwnProperty("accessLevels")) {
+ if (!Array.isArray(message.accessLevels))
+ return "accessLevels: array expected";
+ for (var i = 0; i < message.accessLevels.length; ++i) {
+ var error = $root.google.identity.accesscontextmanager.v1.AccessLevel.verify(message.accessLevels[i]);
+ if (error)
+ return "accessLevels." + error;
+ }
+ }
+ if (message.etag != null && message.hasOwnProperty("etag"))
+ if (!$util.isString(message.etag))
+ return "etag: string expected";
+ return null;
+ };
+
+ /**
+ * Creates a ReplaceAccessLevelsRequest message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.identity.accesscontextmanager.v1.ReplaceAccessLevelsRequest
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.identity.accesscontextmanager.v1.ReplaceAccessLevelsRequest} ReplaceAccessLevelsRequest
+ */
+ ReplaceAccessLevelsRequest.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.identity.accesscontextmanager.v1.ReplaceAccessLevelsRequest)
+ return object;
+ var message = new $root.google.identity.accesscontextmanager.v1.ReplaceAccessLevelsRequest();
+ if (object.parent != null)
+ message.parent = String(object.parent);
+ if (object.accessLevels) {
+ if (!Array.isArray(object.accessLevels))
+ throw TypeError(".google.identity.accesscontextmanager.v1.ReplaceAccessLevelsRequest.accessLevels: array expected");
+ message.accessLevels = [];
+ for (var i = 0; i < object.accessLevels.length; ++i) {
+ if (typeof object.accessLevels[i] !== "object")
+ throw TypeError(".google.identity.accesscontextmanager.v1.ReplaceAccessLevelsRequest.accessLevels: object expected");
+ message.accessLevels[i] = $root.google.identity.accesscontextmanager.v1.AccessLevel.fromObject(object.accessLevels[i]);
+ }
+ }
+ if (object.etag != null)
+ message.etag = String(object.etag);
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a ReplaceAccessLevelsRequest message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.identity.accesscontextmanager.v1.ReplaceAccessLevelsRequest
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.ReplaceAccessLevelsRequest} message ReplaceAccessLevelsRequest
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ ReplaceAccessLevelsRequest.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.arrays || options.defaults)
+ object.accessLevels = [];
+ if (options.defaults) {
+ object.parent = "";
+ object.etag = "";
+ }
+ if (message.parent != null && message.hasOwnProperty("parent"))
+ object.parent = message.parent;
+ if (message.accessLevels && message.accessLevels.length) {
+ object.accessLevels = [];
+ for (var j = 0; j < message.accessLevels.length; ++j)
+ object.accessLevels[j] = $root.google.identity.accesscontextmanager.v1.AccessLevel.toObject(message.accessLevels[j], options);
+ }
+ if (message.etag != null && message.hasOwnProperty("etag"))
+ object.etag = message.etag;
+ return object;
+ };
+
+ /**
+ * Converts this ReplaceAccessLevelsRequest to JSON.
+ * @function toJSON
+ * @memberof google.identity.accesscontextmanager.v1.ReplaceAccessLevelsRequest
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ ReplaceAccessLevelsRequest.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for ReplaceAccessLevelsRequest
+ * @function getTypeUrl
+ * @memberof google.identity.accesscontextmanager.v1.ReplaceAccessLevelsRequest
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ ReplaceAccessLevelsRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.identity.accesscontextmanager.v1.ReplaceAccessLevelsRequest";
+ };
+
+ return ReplaceAccessLevelsRequest;
+ })();
+
+ v1.ReplaceAccessLevelsResponse = (function() {
+
+ /**
+ * Properties of a ReplaceAccessLevelsResponse.
+ * @memberof google.identity.accesscontextmanager.v1
+ * @interface IReplaceAccessLevelsResponse
+ * @property {Array.|null} [accessLevels] ReplaceAccessLevelsResponse accessLevels
+ */
+
+ /**
+ * Constructs a new ReplaceAccessLevelsResponse.
+ * @memberof google.identity.accesscontextmanager.v1
+ * @classdesc Represents a ReplaceAccessLevelsResponse.
+ * @implements IReplaceAccessLevelsResponse
+ * @constructor
+ * @param {google.identity.accesscontextmanager.v1.IReplaceAccessLevelsResponse=} [properties] Properties to set
+ */
+ function ReplaceAccessLevelsResponse(properties) {
+ this.accessLevels = [];
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * ReplaceAccessLevelsResponse accessLevels.
+ * @member {Array.} accessLevels
+ * @memberof google.identity.accesscontextmanager.v1.ReplaceAccessLevelsResponse
+ * @instance
+ */
+ ReplaceAccessLevelsResponse.prototype.accessLevels = $util.emptyArray;
+
+ /**
+ * Creates a new ReplaceAccessLevelsResponse instance using the specified properties.
+ * @function create
+ * @memberof google.identity.accesscontextmanager.v1.ReplaceAccessLevelsResponse
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.IReplaceAccessLevelsResponse=} [properties] Properties to set
+ * @returns {google.identity.accesscontextmanager.v1.ReplaceAccessLevelsResponse} ReplaceAccessLevelsResponse instance
+ */
+ ReplaceAccessLevelsResponse.create = function create(properties) {
+ return new ReplaceAccessLevelsResponse(properties);
+ };
+
+ /**
+ * Encodes the specified ReplaceAccessLevelsResponse message. Does not implicitly {@link google.identity.accesscontextmanager.v1.ReplaceAccessLevelsResponse.verify|verify} messages.
+ * @function encode
+ * @memberof google.identity.accesscontextmanager.v1.ReplaceAccessLevelsResponse
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.IReplaceAccessLevelsResponse} message ReplaceAccessLevelsResponse message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ ReplaceAccessLevelsResponse.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.accessLevels != null && message.accessLevels.length)
+ for (var i = 0; i < message.accessLevels.length; ++i)
+ $root.google.identity.accesscontextmanager.v1.AccessLevel.encode(message.accessLevels[i], writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim();
+ return writer;
+ };
+
+ /**
+ * Encodes the specified ReplaceAccessLevelsResponse message, length delimited. Does not implicitly {@link google.identity.accesscontextmanager.v1.ReplaceAccessLevelsResponse.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.identity.accesscontextmanager.v1.ReplaceAccessLevelsResponse
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.IReplaceAccessLevelsResponse} message ReplaceAccessLevelsResponse message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ ReplaceAccessLevelsResponse.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a ReplaceAccessLevelsResponse message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.identity.accesscontextmanager.v1.ReplaceAccessLevelsResponse
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.identity.accesscontextmanager.v1.ReplaceAccessLevelsResponse} ReplaceAccessLevelsResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ ReplaceAccessLevelsResponse.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.identity.accesscontextmanager.v1.ReplaceAccessLevelsResponse();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ if (!(message.accessLevels && message.accessLevels.length))
+ message.accessLevels = [];
+ message.accessLevels.push($root.google.identity.accesscontextmanager.v1.AccessLevel.decode(reader, reader.uint32()));
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a ReplaceAccessLevelsResponse message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.identity.accesscontextmanager.v1.ReplaceAccessLevelsResponse
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.identity.accesscontextmanager.v1.ReplaceAccessLevelsResponse} ReplaceAccessLevelsResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ ReplaceAccessLevelsResponse.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a ReplaceAccessLevelsResponse message.
+ * @function verify
+ * @memberof google.identity.accesscontextmanager.v1.ReplaceAccessLevelsResponse
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ ReplaceAccessLevelsResponse.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.accessLevels != null && message.hasOwnProperty("accessLevels")) {
+ if (!Array.isArray(message.accessLevels))
+ return "accessLevels: array expected";
+ for (var i = 0; i < message.accessLevels.length; ++i) {
+ var error = $root.google.identity.accesscontextmanager.v1.AccessLevel.verify(message.accessLevels[i]);
+ if (error)
+ return "accessLevels." + error;
+ }
+ }
+ return null;
+ };
+
+ /**
+ * Creates a ReplaceAccessLevelsResponse message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.identity.accesscontextmanager.v1.ReplaceAccessLevelsResponse
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.identity.accesscontextmanager.v1.ReplaceAccessLevelsResponse} ReplaceAccessLevelsResponse
+ */
+ ReplaceAccessLevelsResponse.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.identity.accesscontextmanager.v1.ReplaceAccessLevelsResponse)
+ return object;
+ var message = new $root.google.identity.accesscontextmanager.v1.ReplaceAccessLevelsResponse();
+ if (object.accessLevels) {
+ if (!Array.isArray(object.accessLevels))
+ throw TypeError(".google.identity.accesscontextmanager.v1.ReplaceAccessLevelsResponse.accessLevels: array expected");
+ message.accessLevels = [];
+ for (var i = 0; i < object.accessLevels.length; ++i) {
+ if (typeof object.accessLevels[i] !== "object")
+ throw TypeError(".google.identity.accesscontextmanager.v1.ReplaceAccessLevelsResponse.accessLevels: object expected");
+ message.accessLevels[i] = $root.google.identity.accesscontextmanager.v1.AccessLevel.fromObject(object.accessLevels[i]);
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a ReplaceAccessLevelsResponse message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.identity.accesscontextmanager.v1.ReplaceAccessLevelsResponse
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.ReplaceAccessLevelsResponse} message ReplaceAccessLevelsResponse
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ ReplaceAccessLevelsResponse.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.arrays || options.defaults)
+ object.accessLevels = [];
+ if (message.accessLevels && message.accessLevels.length) {
+ object.accessLevels = [];
+ for (var j = 0; j < message.accessLevels.length; ++j)
+ object.accessLevels[j] = $root.google.identity.accesscontextmanager.v1.AccessLevel.toObject(message.accessLevels[j], options);
+ }
+ return object;
+ };
+
+ /**
+ * Converts this ReplaceAccessLevelsResponse to JSON.
+ * @function toJSON
+ * @memberof google.identity.accesscontextmanager.v1.ReplaceAccessLevelsResponse
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ ReplaceAccessLevelsResponse.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for ReplaceAccessLevelsResponse
+ * @function getTypeUrl
+ * @memberof google.identity.accesscontextmanager.v1.ReplaceAccessLevelsResponse
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ ReplaceAccessLevelsResponse.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.identity.accesscontextmanager.v1.ReplaceAccessLevelsResponse";
+ };
+
+ return ReplaceAccessLevelsResponse;
+ })();
+
+ v1.ListServicePerimetersRequest = (function() {
+
+ /**
+ * Properties of a ListServicePerimetersRequest.
+ * @memberof google.identity.accesscontextmanager.v1
+ * @interface IListServicePerimetersRequest
+ * @property {string|null} [parent] ListServicePerimetersRequest parent
+ * @property {number|null} [pageSize] ListServicePerimetersRequest pageSize
+ * @property {string|null} [pageToken] ListServicePerimetersRequest pageToken
+ */
+
+ /**
+ * Constructs a new ListServicePerimetersRequest.
+ * @memberof google.identity.accesscontextmanager.v1
+ * @classdesc Represents a ListServicePerimetersRequest.
+ * @implements IListServicePerimetersRequest
+ * @constructor
+ * @param {google.identity.accesscontextmanager.v1.IListServicePerimetersRequest=} [properties] Properties to set
+ */
+ function ListServicePerimetersRequest(properties) {
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * ListServicePerimetersRequest parent.
+ * @member {string} parent
+ * @memberof google.identity.accesscontextmanager.v1.ListServicePerimetersRequest
+ * @instance
+ */
+ ListServicePerimetersRequest.prototype.parent = "";
+
+ /**
+ * ListServicePerimetersRequest pageSize.
+ * @member {number} pageSize
+ * @memberof google.identity.accesscontextmanager.v1.ListServicePerimetersRequest
+ * @instance
+ */
+ ListServicePerimetersRequest.prototype.pageSize = 0;
+
+ /**
+ * ListServicePerimetersRequest pageToken.
+ * @member {string} pageToken
+ * @memberof google.identity.accesscontextmanager.v1.ListServicePerimetersRequest
+ * @instance
+ */
+ ListServicePerimetersRequest.prototype.pageToken = "";
+
+ /**
+ * Creates a new ListServicePerimetersRequest instance using the specified properties.
+ * @function create
+ * @memberof google.identity.accesscontextmanager.v1.ListServicePerimetersRequest
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.IListServicePerimetersRequest=} [properties] Properties to set
+ * @returns {google.identity.accesscontextmanager.v1.ListServicePerimetersRequest} ListServicePerimetersRequest instance
+ */
+ ListServicePerimetersRequest.create = function create(properties) {
+ return new ListServicePerimetersRequest(properties);
+ };
+
+ /**
+ * Encodes the specified ListServicePerimetersRequest message. Does not implicitly {@link google.identity.accesscontextmanager.v1.ListServicePerimetersRequest.verify|verify} messages.
+ * @function encode
+ * @memberof google.identity.accesscontextmanager.v1.ListServicePerimetersRequest
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.IListServicePerimetersRequest} message ListServicePerimetersRequest message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ ListServicePerimetersRequest.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.parent != null && Object.hasOwnProperty.call(message, "parent"))
+ writer.uint32(/* id 1, wireType 2 =*/10).string(message.parent);
+ if (message.pageSize != null && Object.hasOwnProperty.call(message, "pageSize"))
+ writer.uint32(/* id 2, wireType 0 =*/16).int32(message.pageSize);
+ if (message.pageToken != null && Object.hasOwnProperty.call(message, "pageToken"))
+ writer.uint32(/* id 3, wireType 2 =*/26).string(message.pageToken);
+ return writer;
+ };
+
+ /**
+ * Encodes the specified ListServicePerimetersRequest message, length delimited. Does not implicitly {@link google.identity.accesscontextmanager.v1.ListServicePerimetersRequest.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.identity.accesscontextmanager.v1.ListServicePerimetersRequest
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.IListServicePerimetersRequest} message ListServicePerimetersRequest message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ ListServicePerimetersRequest.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a ListServicePerimetersRequest message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.identity.accesscontextmanager.v1.ListServicePerimetersRequest
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.identity.accesscontextmanager.v1.ListServicePerimetersRequest} ListServicePerimetersRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ ListServicePerimetersRequest.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.identity.accesscontextmanager.v1.ListServicePerimetersRequest();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.parent = reader.string();
+ break;
+ }
+ case 2: {
+ message.pageSize = reader.int32();
+ break;
+ }
+ case 3: {
+ message.pageToken = reader.string();
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a ListServicePerimetersRequest message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.identity.accesscontextmanager.v1.ListServicePerimetersRequest
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.identity.accesscontextmanager.v1.ListServicePerimetersRequest} ListServicePerimetersRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ ListServicePerimetersRequest.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a ListServicePerimetersRequest message.
+ * @function verify
+ * @memberof google.identity.accesscontextmanager.v1.ListServicePerimetersRequest
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ ListServicePerimetersRequest.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.parent != null && message.hasOwnProperty("parent"))
+ if (!$util.isString(message.parent))
+ return "parent: string expected";
+ if (message.pageSize != null && message.hasOwnProperty("pageSize"))
+ if (!$util.isInteger(message.pageSize))
+ return "pageSize: integer expected";
+ if (message.pageToken != null && message.hasOwnProperty("pageToken"))
+ if (!$util.isString(message.pageToken))
+ return "pageToken: string expected";
+ return null;
+ };
+
+ /**
+ * Creates a ListServicePerimetersRequest message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.identity.accesscontextmanager.v1.ListServicePerimetersRequest
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.identity.accesscontextmanager.v1.ListServicePerimetersRequest} ListServicePerimetersRequest
+ */
+ ListServicePerimetersRequest.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.identity.accesscontextmanager.v1.ListServicePerimetersRequest)
+ return object;
+ var message = new $root.google.identity.accesscontextmanager.v1.ListServicePerimetersRequest();
+ if (object.parent != null)
+ message.parent = String(object.parent);
+ if (object.pageSize != null)
+ message.pageSize = object.pageSize | 0;
+ if (object.pageToken != null)
+ message.pageToken = String(object.pageToken);
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a ListServicePerimetersRequest message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.identity.accesscontextmanager.v1.ListServicePerimetersRequest
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.ListServicePerimetersRequest} message ListServicePerimetersRequest
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ ListServicePerimetersRequest.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.defaults) {
+ object.parent = "";
+ object.pageSize = 0;
+ object.pageToken = "";
+ }
+ if (message.parent != null && message.hasOwnProperty("parent"))
+ object.parent = message.parent;
+ if (message.pageSize != null && message.hasOwnProperty("pageSize"))
+ object.pageSize = message.pageSize;
+ if (message.pageToken != null && message.hasOwnProperty("pageToken"))
+ object.pageToken = message.pageToken;
+ return object;
+ };
+
+ /**
+ * Converts this ListServicePerimetersRequest to JSON.
+ * @function toJSON
+ * @memberof google.identity.accesscontextmanager.v1.ListServicePerimetersRequest
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ ListServicePerimetersRequest.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for ListServicePerimetersRequest
+ * @function getTypeUrl
+ * @memberof google.identity.accesscontextmanager.v1.ListServicePerimetersRequest
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ ListServicePerimetersRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.identity.accesscontextmanager.v1.ListServicePerimetersRequest";
+ };
+
+ return ListServicePerimetersRequest;
+ })();
+
+ v1.ListServicePerimetersResponse = (function() {
+
+ /**
+ * Properties of a ListServicePerimetersResponse.
+ * @memberof google.identity.accesscontextmanager.v1
+ * @interface IListServicePerimetersResponse
+ * @property {Array.|null} [servicePerimeters] ListServicePerimetersResponse servicePerimeters
+ * @property {string|null} [nextPageToken] ListServicePerimetersResponse nextPageToken
+ */
+
+ /**
+ * Constructs a new ListServicePerimetersResponse.
+ * @memberof google.identity.accesscontextmanager.v1
+ * @classdesc Represents a ListServicePerimetersResponse.
+ * @implements IListServicePerimetersResponse
+ * @constructor
+ * @param {google.identity.accesscontextmanager.v1.IListServicePerimetersResponse=} [properties] Properties to set
+ */
+ function ListServicePerimetersResponse(properties) {
+ this.servicePerimeters = [];
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * ListServicePerimetersResponse servicePerimeters.
+ * @member {Array.} servicePerimeters
+ * @memberof google.identity.accesscontextmanager.v1.ListServicePerimetersResponse
+ * @instance
+ */
+ ListServicePerimetersResponse.prototype.servicePerimeters = $util.emptyArray;
+
+ /**
+ * ListServicePerimetersResponse nextPageToken.
+ * @member {string} nextPageToken
+ * @memberof google.identity.accesscontextmanager.v1.ListServicePerimetersResponse
+ * @instance
+ */
+ ListServicePerimetersResponse.prototype.nextPageToken = "";
+
+ /**
+ * Creates a new ListServicePerimetersResponse instance using the specified properties.
+ * @function create
+ * @memberof google.identity.accesscontextmanager.v1.ListServicePerimetersResponse
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.IListServicePerimetersResponse=} [properties] Properties to set
+ * @returns {google.identity.accesscontextmanager.v1.ListServicePerimetersResponse} ListServicePerimetersResponse instance
+ */
+ ListServicePerimetersResponse.create = function create(properties) {
+ return new ListServicePerimetersResponse(properties);
+ };
+
+ /**
+ * Encodes the specified ListServicePerimetersResponse message. Does not implicitly {@link google.identity.accesscontextmanager.v1.ListServicePerimetersResponse.verify|verify} messages.
+ * @function encode
+ * @memberof google.identity.accesscontextmanager.v1.ListServicePerimetersResponse
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.IListServicePerimetersResponse} message ListServicePerimetersResponse message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ ListServicePerimetersResponse.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.servicePerimeters != null && message.servicePerimeters.length)
+ for (var i = 0; i < message.servicePerimeters.length; ++i)
+ $root.google.identity.accesscontextmanager.v1.ServicePerimeter.encode(message.servicePerimeters[i], writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim();
+ if (message.nextPageToken != null && Object.hasOwnProperty.call(message, "nextPageToken"))
+ writer.uint32(/* id 2, wireType 2 =*/18).string(message.nextPageToken);
+ return writer;
+ };
+
+ /**
+ * Encodes the specified ListServicePerimetersResponse message, length delimited. Does not implicitly {@link google.identity.accesscontextmanager.v1.ListServicePerimetersResponse.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.identity.accesscontextmanager.v1.ListServicePerimetersResponse
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.IListServicePerimetersResponse} message ListServicePerimetersResponse message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ ListServicePerimetersResponse.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a ListServicePerimetersResponse message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.identity.accesscontextmanager.v1.ListServicePerimetersResponse
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.identity.accesscontextmanager.v1.ListServicePerimetersResponse} ListServicePerimetersResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ ListServicePerimetersResponse.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.identity.accesscontextmanager.v1.ListServicePerimetersResponse();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ if (!(message.servicePerimeters && message.servicePerimeters.length))
+ message.servicePerimeters = [];
+ message.servicePerimeters.push($root.google.identity.accesscontextmanager.v1.ServicePerimeter.decode(reader, reader.uint32()));
+ break;
+ }
+ case 2: {
+ message.nextPageToken = reader.string();
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a ListServicePerimetersResponse message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.identity.accesscontextmanager.v1.ListServicePerimetersResponse
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.identity.accesscontextmanager.v1.ListServicePerimetersResponse} ListServicePerimetersResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ ListServicePerimetersResponse.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a ListServicePerimetersResponse message.
+ * @function verify
+ * @memberof google.identity.accesscontextmanager.v1.ListServicePerimetersResponse
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ ListServicePerimetersResponse.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.servicePerimeters != null && message.hasOwnProperty("servicePerimeters")) {
+ if (!Array.isArray(message.servicePerimeters))
+ return "servicePerimeters: array expected";
+ for (var i = 0; i < message.servicePerimeters.length; ++i) {
+ var error = $root.google.identity.accesscontextmanager.v1.ServicePerimeter.verify(message.servicePerimeters[i]);
+ if (error)
+ return "servicePerimeters." + error;
+ }
+ }
+ if (message.nextPageToken != null && message.hasOwnProperty("nextPageToken"))
+ if (!$util.isString(message.nextPageToken))
+ return "nextPageToken: string expected";
+ return null;
+ };
+
+ /**
+ * Creates a ListServicePerimetersResponse message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.identity.accesscontextmanager.v1.ListServicePerimetersResponse
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.identity.accesscontextmanager.v1.ListServicePerimetersResponse} ListServicePerimetersResponse
+ */
+ ListServicePerimetersResponse.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.identity.accesscontextmanager.v1.ListServicePerimetersResponse)
+ return object;
+ var message = new $root.google.identity.accesscontextmanager.v1.ListServicePerimetersResponse();
+ if (object.servicePerimeters) {
+ if (!Array.isArray(object.servicePerimeters))
+ throw TypeError(".google.identity.accesscontextmanager.v1.ListServicePerimetersResponse.servicePerimeters: array expected");
+ message.servicePerimeters = [];
+ for (var i = 0; i < object.servicePerimeters.length; ++i) {
+ if (typeof object.servicePerimeters[i] !== "object")
+ throw TypeError(".google.identity.accesscontextmanager.v1.ListServicePerimetersResponse.servicePerimeters: object expected");
+ message.servicePerimeters[i] = $root.google.identity.accesscontextmanager.v1.ServicePerimeter.fromObject(object.servicePerimeters[i]);
+ }
+ }
+ if (object.nextPageToken != null)
+ message.nextPageToken = String(object.nextPageToken);
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a ListServicePerimetersResponse message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.identity.accesscontextmanager.v1.ListServicePerimetersResponse
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.ListServicePerimetersResponse} message ListServicePerimetersResponse
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ ListServicePerimetersResponse.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.arrays || options.defaults)
+ object.servicePerimeters = [];
+ if (options.defaults)
+ object.nextPageToken = "";
+ if (message.servicePerimeters && message.servicePerimeters.length) {
+ object.servicePerimeters = [];
+ for (var j = 0; j < message.servicePerimeters.length; ++j)
+ object.servicePerimeters[j] = $root.google.identity.accesscontextmanager.v1.ServicePerimeter.toObject(message.servicePerimeters[j], options);
+ }
+ if (message.nextPageToken != null && message.hasOwnProperty("nextPageToken"))
+ object.nextPageToken = message.nextPageToken;
+ return object;
+ };
+
+ /**
+ * Converts this ListServicePerimetersResponse to JSON.
+ * @function toJSON
+ * @memberof google.identity.accesscontextmanager.v1.ListServicePerimetersResponse
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ ListServicePerimetersResponse.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for ListServicePerimetersResponse
+ * @function getTypeUrl
+ * @memberof google.identity.accesscontextmanager.v1.ListServicePerimetersResponse
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ ListServicePerimetersResponse.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.identity.accesscontextmanager.v1.ListServicePerimetersResponse";
+ };
+
+ return ListServicePerimetersResponse;
+ })();
+
+ v1.GetServicePerimeterRequest = (function() {
+
+ /**
+ * Properties of a GetServicePerimeterRequest.
+ * @memberof google.identity.accesscontextmanager.v1
+ * @interface IGetServicePerimeterRequest
+ * @property {string|null} [name] GetServicePerimeterRequest name
+ */
+
+ /**
+ * Constructs a new GetServicePerimeterRequest.
+ * @memberof google.identity.accesscontextmanager.v1
+ * @classdesc Represents a GetServicePerimeterRequest.
+ * @implements IGetServicePerimeterRequest
+ * @constructor
+ * @param {google.identity.accesscontextmanager.v1.IGetServicePerimeterRequest=} [properties] Properties to set
+ */
+ function GetServicePerimeterRequest(properties) {
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * GetServicePerimeterRequest name.
+ * @member {string} name
+ * @memberof google.identity.accesscontextmanager.v1.GetServicePerimeterRequest
+ * @instance
+ */
+ GetServicePerimeterRequest.prototype.name = "";
+
+ /**
+ * Creates a new GetServicePerimeterRequest instance using the specified properties.
+ * @function create
+ * @memberof google.identity.accesscontextmanager.v1.GetServicePerimeterRequest
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.IGetServicePerimeterRequest=} [properties] Properties to set
+ * @returns {google.identity.accesscontextmanager.v1.GetServicePerimeterRequest} GetServicePerimeterRequest instance
+ */
+ GetServicePerimeterRequest.create = function create(properties) {
+ return new GetServicePerimeterRequest(properties);
+ };
+
+ /**
+ * Encodes the specified GetServicePerimeterRequest message. Does not implicitly {@link google.identity.accesscontextmanager.v1.GetServicePerimeterRequest.verify|verify} messages.
+ * @function encode
+ * @memberof google.identity.accesscontextmanager.v1.GetServicePerimeterRequest
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.IGetServicePerimeterRequest} message GetServicePerimeterRequest message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ GetServicePerimeterRequest.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 GetServicePerimeterRequest message, length delimited. Does not implicitly {@link google.identity.accesscontextmanager.v1.GetServicePerimeterRequest.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.identity.accesscontextmanager.v1.GetServicePerimeterRequest
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.IGetServicePerimeterRequest} message GetServicePerimeterRequest message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ GetServicePerimeterRequest.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a GetServicePerimeterRequest message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.identity.accesscontextmanager.v1.GetServicePerimeterRequest
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.identity.accesscontextmanager.v1.GetServicePerimeterRequest} GetServicePerimeterRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ GetServicePerimeterRequest.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.identity.accesscontextmanager.v1.GetServicePerimeterRequest();
+ 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 GetServicePerimeterRequest message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.identity.accesscontextmanager.v1.GetServicePerimeterRequest
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.identity.accesscontextmanager.v1.GetServicePerimeterRequest} GetServicePerimeterRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ GetServicePerimeterRequest.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a GetServicePerimeterRequest message.
+ * @function verify
+ * @memberof google.identity.accesscontextmanager.v1.GetServicePerimeterRequest
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ GetServicePerimeterRequest.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 GetServicePerimeterRequest message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.identity.accesscontextmanager.v1.GetServicePerimeterRequest
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.identity.accesscontextmanager.v1.GetServicePerimeterRequest} GetServicePerimeterRequest
+ */
+ GetServicePerimeterRequest.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.identity.accesscontextmanager.v1.GetServicePerimeterRequest)
+ return object;
+ var message = new $root.google.identity.accesscontextmanager.v1.GetServicePerimeterRequest();
+ if (object.name != null)
+ message.name = String(object.name);
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a GetServicePerimeterRequest message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.identity.accesscontextmanager.v1.GetServicePerimeterRequest
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.GetServicePerimeterRequest} message GetServicePerimeterRequest
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ GetServicePerimeterRequest.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 GetServicePerimeterRequest to JSON.
+ * @function toJSON
+ * @memberof google.identity.accesscontextmanager.v1.GetServicePerimeterRequest
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ GetServicePerimeterRequest.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for GetServicePerimeterRequest
+ * @function getTypeUrl
+ * @memberof google.identity.accesscontextmanager.v1.GetServicePerimeterRequest
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ GetServicePerimeterRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.identity.accesscontextmanager.v1.GetServicePerimeterRequest";
+ };
+
+ return GetServicePerimeterRequest;
+ })();
+
+ v1.CreateServicePerimeterRequest = (function() {
+
+ /**
+ * Properties of a CreateServicePerimeterRequest.
+ * @memberof google.identity.accesscontextmanager.v1
+ * @interface ICreateServicePerimeterRequest
+ * @property {string|null} [parent] CreateServicePerimeterRequest parent
+ * @property {google.identity.accesscontextmanager.v1.IServicePerimeter|null} [servicePerimeter] CreateServicePerimeterRequest servicePerimeter
+ */
+
+ /**
+ * Constructs a new CreateServicePerimeterRequest.
+ * @memberof google.identity.accesscontextmanager.v1
+ * @classdesc Represents a CreateServicePerimeterRequest.
+ * @implements ICreateServicePerimeterRequest
+ * @constructor
+ * @param {google.identity.accesscontextmanager.v1.ICreateServicePerimeterRequest=} [properties] Properties to set
+ */
+ function CreateServicePerimeterRequest(properties) {
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * CreateServicePerimeterRequest parent.
+ * @member {string} parent
+ * @memberof google.identity.accesscontextmanager.v1.CreateServicePerimeterRequest
+ * @instance
+ */
+ CreateServicePerimeterRequest.prototype.parent = "";
+
+ /**
+ * CreateServicePerimeterRequest servicePerimeter.
+ * @member {google.identity.accesscontextmanager.v1.IServicePerimeter|null|undefined} servicePerimeter
+ * @memberof google.identity.accesscontextmanager.v1.CreateServicePerimeterRequest
+ * @instance
+ */
+ CreateServicePerimeterRequest.prototype.servicePerimeter = null;
+
+ /**
+ * Creates a new CreateServicePerimeterRequest instance using the specified properties.
+ * @function create
+ * @memberof google.identity.accesscontextmanager.v1.CreateServicePerimeterRequest
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.ICreateServicePerimeterRequest=} [properties] Properties to set
+ * @returns {google.identity.accesscontextmanager.v1.CreateServicePerimeterRequest} CreateServicePerimeterRequest instance
+ */
+ CreateServicePerimeterRequest.create = function create(properties) {
+ return new CreateServicePerimeterRequest(properties);
+ };
+
+ /**
+ * Encodes the specified CreateServicePerimeterRequest message. Does not implicitly {@link google.identity.accesscontextmanager.v1.CreateServicePerimeterRequest.verify|verify} messages.
+ * @function encode
+ * @memberof google.identity.accesscontextmanager.v1.CreateServicePerimeterRequest
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.ICreateServicePerimeterRequest} message CreateServicePerimeterRequest message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ CreateServicePerimeterRequest.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.servicePerimeter != null && Object.hasOwnProperty.call(message, "servicePerimeter"))
+ $root.google.identity.accesscontextmanager.v1.ServicePerimeter.encode(message.servicePerimeter, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim();
+ return writer;
+ };
+
+ /**
+ * Encodes the specified CreateServicePerimeterRequest message, length delimited. Does not implicitly {@link google.identity.accesscontextmanager.v1.CreateServicePerimeterRequest.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.identity.accesscontextmanager.v1.CreateServicePerimeterRequest
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.ICreateServicePerimeterRequest} message CreateServicePerimeterRequest message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ CreateServicePerimeterRequest.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a CreateServicePerimeterRequest message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.identity.accesscontextmanager.v1.CreateServicePerimeterRequest
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.identity.accesscontextmanager.v1.CreateServicePerimeterRequest} CreateServicePerimeterRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ CreateServicePerimeterRequest.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.identity.accesscontextmanager.v1.CreateServicePerimeterRequest();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.parent = reader.string();
+ break;
+ }
+ case 2: {
+ message.servicePerimeter = $root.google.identity.accesscontextmanager.v1.ServicePerimeter.decode(reader, reader.uint32());
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a CreateServicePerimeterRequest message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.identity.accesscontextmanager.v1.CreateServicePerimeterRequest
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.identity.accesscontextmanager.v1.CreateServicePerimeterRequest} CreateServicePerimeterRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ CreateServicePerimeterRequest.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a CreateServicePerimeterRequest message.
+ * @function verify
+ * @memberof google.identity.accesscontextmanager.v1.CreateServicePerimeterRequest
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ CreateServicePerimeterRequest.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.servicePerimeter != null && message.hasOwnProperty("servicePerimeter")) {
+ var error = $root.google.identity.accesscontextmanager.v1.ServicePerimeter.verify(message.servicePerimeter);
+ if (error)
+ return "servicePerimeter." + error;
+ }
+ return null;
+ };
+
+ /**
+ * Creates a CreateServicePerimeterRequest message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.identity.accesscontextmanager.v1.CreateServicePerimeterRequest
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.identity.accesscontextmanager.v1.CreateServicePerimeterRequest} CreateServicePerimeterRequest
+ */
+ CreateServicePerimeterRequest.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.identity.accesscontextmanager.v1.CreateServicePerimeterRequest)
+ return object;
+ var message = new $root.google.identity.accesscontextmanager.v1.CreateServicePerimeterRequest();
+ if (object.parent != null)
+ message.parent = String(object.parent);
+ if (object.servicePerimeter != null) {
+ if (typeof object.servicePerimeter !== "object")
+ throw TypeError(".google.identity.accesscontextmanager.v1.CreateServicePerimeterRequest.servicePerimeter: object expected");
+ message.servicePerimeter = $root.google.identity.accesscontextmanager.v1.ServicePerimeter.fromObject(object.servicePerimeter);
+ }
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a CreateServicePerimeterRequest message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.identity.accesscontextmanager.v1.CreateServicePerimeterRequest
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.CreateServicePerimeterRequest} message CreateServicePerimeterRequest
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ CreateServicePerimeterRequest.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.defaults) {
+ object.parent = "";
+ object.servicePerimeter = null;
+ }
+ if (message.parent != null && message.hasOwnProperty("parent"))
+ object.parent = message.parent;
+ if (message.servicePerimeter != null && message.hasOwnProperty("servicePerimeter"))
+ object.servicePerimeter = $root.google.identity.accesscontextmanager.v1.ServicePerimeter.toObject(message.servicePerimeter, options);
+ return object;
+ };
+
+ /**
+ * Converts this CreateServicePerimeterRequest to JSON.
+ * @function toJSON
+ * @memberof google.identity.accesscontextmanager.v1.CreateServicePerimeterRequest
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ CreateServicePerimeterRequest.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for CreateServicePerimeterRequest
+ * @function getTypeUrl
+ * @memberof google.identity.accesscontextmanager.v1.CreateServicePerimeterRequest
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ CreateServicePerimeterRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.identity.accesscontextmanager.v1.CreateServicePerimeterRequest";
+ };
+
+ return CreateServicePerimeterRequest;
+ })();
+
+ v1.UpdateServicePerimeterRequest = (function() {
+
+ /**
+ * Properties of an UpdateServicePerimeterRequest.
+ * @memberof google.identity.accesscontextmanager.v1
+ * @interface IUpdateServicePerimeterRequest
+ * @property {google.identity.accesscontextmanager.v1.IServicePerimeter|null} [servicePerimeter] UpdateServicePerimeterRequest servicePerimeter
+ * @property {google.protobuf.IFieldMask|null} [updateMask] UpdateServicePerimeterRequest updateMask
+ */
+
+ /**
+ * Constructs a new UpdateServicePerimeterRequest.
+ * @memberof google.identity.accesscontextmanager.v1
+ * @classdesc Represents an UpdateServicePerimeterRequest.
+ * @implements IUpdateServicePerimeterRequest
+ * @constructor
+ * @param {google.identity.accesscontextmanager.v1.IUpdateServicePerimeterRequest=} [properties] Properties to set
+ */
+ function UpdateServicePerimeterRequest(properties) {
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * UpdateServicePerimeterRequest servicePerimeter.
+ * @member {google.identity.accesscontextmanager.v1.IServicePerimeter|null|undefined} servicePerimeter
+ * @memberof google.identity.accesscontextmanager.v1.UpdateServicePerimeterRequest
+ * @instance
+ */
+ UpdateServicePerimeterRequest.prototype.servicePerimeter = null;
+
+ /**
+ * UpdateServicePerimeterRequest updateMask.
+ * @member {google.protobuf.IFieldMask|null|undefined} updateMask
+ * @memberof google.identity.accesscontextmanager.v1.UpdateServicePerimeterRequest
+ * @instance
+ */
+ UpdateServicePerimeterRequest.prototype.updateMask = null;
+
+ /**
+ * Creates a new UpdateServicePerimeterRequest instance using the specified properties.
+ * @function create
+ * @memberof google.identity.accesscontextmanager.v1.UpdateServicePerimeterRequest
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.IUpdateServicePerimeterRequest=} [properties] Properties to set
+ * @returns {google.identity.accesscontextmanager.v1.UpdateServicePerimeterRequest} UpdateServicePerimeterRequest instance
+ */
+ UpdateServicePerimeterRequest.create = function create(properties) {
+ return new UpdateServicePerimeterRequest(properties);
+ };
+
+ /**
+ * Encodes the specified UpdateServicePerimeterRequest message. Does not implicitly {@link google.identity.accesscontextmanager.v1.UpdateServicePerimeterRequest.verify|verify} messages.
+ * @function encode
+ * @memberof google.identity.accesscontextmanager.v1.UpdateServicePerimeterRequest
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.IUpdateServicePerimeterRequest} message UpdateServicePerimeterRequest message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ UpdateServicePerimeterRequest.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.servicePerimeter != null && Object.hasOwnProperty.call(message, "servicePerimeter"))
+ $root.google.identity.accesscontextmanager.v1.ServicePerimeter.encode(message.servicePerimeter, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim();
+ if (message.updateMask != null && Object.hasOwnProperty.call(message, "updateMask"))
+ $root.google.protobuf.FieldMask.encode(message.updateMask, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim();
+ return writer;
+ };
+
+ /**
+ * Encodes the specified UpdateServicePerimeterRequest message, length delimited. Does not implicitly {@link google.identity.accesscontextmanager.v1.UpdateServicePerimeterRequest.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.identity.accesscontextmanager.v1.UpdateServicePerimeterRequest
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.IUpdateServicePerimeterRequest} message UpdateServicePerimeterRequest message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ UpdateServicePerimeterRequest.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes an UpdateServicePerimeterRequest message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.identity.accesscontextmanager.v1.UpdateServicePerimeterRequest
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.identity.accesscontextmanager.v1.UpdateServicePerimeterRequest} UpdateServicePerimeterRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ UpdateServicePerimeterRequest.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.identity.accesscontextmanager.v1.UpdateServicePerimeterRequest();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.servicePerimeter = $root.google.identity.accesscontextmanager.v1.ServicePerimeter.decode(reader, reader.uint32());
+ break;
+ }
+ case 2: {
+ message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32());
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes an UpdateServicePerimeterRequest message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.identity.accesscontextmanager.v1.UpdateServicePerimeterRequest
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.identity.accesscontextmanager.v1.UpdateServicePerimeterRequest} UpdateServicePerimeterRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ UpdateServicePerimeterRequest.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies an UpdateServicePerimeterRequest message.
+ * @function verify
+ * @memberof google.identity.accesscontextmanager.v1.UpdateServicePerimeterRequest
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ UpdateServicePerimeterRequest.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.servicePerimeter != null && message.hasOwnProperty("servicePerimeter")) {
+ var error = $root.google.identity.accesscontextmanager.v1.ServicePerimeter.verify(message.servicePerimeter);
+ if (error)
+ return "servicePerimeter." + error;
+ }
+ if (message.updateMask != null && message.hasOwnProperty("updateMask")) {
+ var error = $root.google.protobuf.FieldMask.verify(message.updateMask);
+ if (error)
+ return "updateMask." + error;
+ }
+ return null;
+ };
+
+ /**
+ * Creates an UpdateServicePerimeterRequest message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.identity.accesscontextmanager.v1.UpdateServicePerimeterRequest
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.identity.accesscontextmanager.v1.UpdateServicePerimeterRequest} UpdateServicePerimeterRequest
+ */
+ UpdateServicePerimeterRequest.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.identity.accesscontextmanager.v1.UpdateServicePerimeterRequest)
+ return object;
+ var message = new $root.google.identity.accesscontextmanager.v1.UpdateServicePerimeterRequest();
+ if (object.servicePerimeter != null) {
+ if (typeof object.servicePerimeter !== "object")
+ throw TypeError(".google.identity.accesscontextmanager.v1.UpdateServicePerimeterRequest.servicePerimeter: object expected");
+ message.servicePerimeter = $root.google.identity.accesscontextmanager.v1.ServicePerimeter.fromObject(object.servicePerimeter);
+ }
+ if (object.updateMask != null) {
+ if (typeof object.updateMask !== "object")
+ throw TypeError(".google.identity.accesscontextmanager.v1.UpdateServicePerimeterRequest.updateMask: object expected");
+ message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask);
+ }
+ return message;
+ };
+
+ /**
+ * Creates a plain object from an UpdateServicePerimeterRequest message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.identity.accesscontextmanager.v1.UpdateServicePerimeterRequest
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.UpdateServicePerimeterRequest} message UpdateServicePerimeterRequest
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ UpdateServicePerimeterRequest.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.defaults) {
+ object.servicePerimeter = null;
+ object.updateMask = null;
+ }
+ if (message.servicePerimeter != null && message.hasOwnProperty("servicePerimeter"))
+ object.servicePerimeter = $root.google.identity.accesscontextmanager.v1.ServicePerimeter.toObject(message.servicePerimeter, options);
+ if (message.updateMask != null && message.hasOwnProperty("updateMask"))
+ object.updateMask = $root.google.protobuf.FieldMask.toObject(message.updateMask, options);
+ return object;
+ };
+
+ /**
+ * Converts this UpdateServicePerimeterRequest to JSON.
+ * @function toJSON
+ * @memberof google.identity.accesscontextmanager.v1.UpdateServicePerimeterRequest
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ UpdateServicePerimeterRequest.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for UpdateServicePerimeterRequest
+ * @function getTypeUrl
+ * @memberof google.identity.accesscontextmanager.v1.UpdateServicePerimeterRequest
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ UpdateServicePerimeterRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.identity.accesscontextmanager.v1.UpdateServicePerimeterRequest";
+ };
+
+ return UpdateServicePerimeterRequest;
+ })();
+
+ v1.DeleteServicePerimeterRequest = (function() {
+
+ /**
+ * Properties of a DeleteServicePerimeterRequest.
+ * @memberof google.identity.accesscontextmanager.v1
+ * @interface IDeleteServicePerimeterRequest
+ * @property {string|null} [name] DeleteServicePerimeterRequest name
+ */
+
+ /**
+ * Constructs a new DeleteServicePerimeterRequest.
+ * @memberof google.identity.accesscontextmanager.v1
+ * @classdesc Represents a DeleteServicePerimeterRequest.
+ * @implements IDeleteServicePerimeterRequest
+ * @constructor
+ * @param {google.identity.accesscontextmanager.v1.IDeleteServicePerimeterRequest=} [properties] Properties to set
+ */
+ function DeleteServicePerimeterRequest(properties) {
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * DeleteServicePerimeterRequest name.
+ * @member {string} name
+ * @memberof google.identity.accesscontextmanager.v1.DeleteServicePerimeterRequest
+ * @instance
+ */
+ DeleteServicePerimeterRequest.prototype.name = "";
+
+ /**
+ * Creates a new DeleteServicePerimeterRequest instance using the specified properties.
+ * @function create
+ * @memberof google.identity.accesscontextmanager.v1.DeleteServicePerimeterRequest
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.IDeleteServicePerimeterRequest=} [properties] Properties to set
+ * @returns {google.identity.accesscontextmanager.v1.DeleteServicePerimeterRequest} DeleteServicePerimeterRequest instance
+ */
+ DeleteServicePerimeterRequest.create = function create(properties) {
+ return new DeleteServicePerimeterRequest(properties);
+ };
+
+ /**
+ * Encodes the specified DeleteServicePerimeterRequest message. Does not implicitly {@link google.identity.accesscontextmanager.v1.DeleteServicePerimeterRequest.verify|verify} messages.
+ * @function encode
+ * @memberof google.identity.accesscontextmanager.v1.DeleteServicePerimeterRequest
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.IDeleteServicePerimeterRequest} message DeleteServicePerimeterRequest message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ DeleteServicePerimeterRequest.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 DeleteServicePerimeterRequest message, length delimited. Does not implicitly {@link google.identity.accesscontextmanager.v1.DeleteServicePerimeterRequest.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.identity.accesscontextmanager.v1.DeleteServicePerimeterRequest
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.IDeleteServicePerimeterRequest} message DeleteServicePerimeterRequest message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ DeleteServicePerimeterRequest.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a DeleteServicePerimeterRequest message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.identity.accesscontextmanager.v1.DeleteServicePerimeterRequest
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.identity.accesscontextmanager.v1.DeleteServicePerimeterRequest} DeleteServicePerimeterRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ DeleteServicePerimeterRequest.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.identity.accesscontextmanager.v1.DeleteServicePerimeterRequest();
+ 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 DeleteServicePerimeterRequest message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.identity.accesscontextmanager.v1.DeleteServicePerimeterRequest
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.identity.accesscontextmanager.v1.DeleteServicePerimeterRequest} DeleteServicePerimeterRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ DeleteServicePerimeterRequest.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a DeleteServicePerimeterRequest message.
+ * @function verify
+ * @memberof google.identity.accesscontextmanager.v1.DeleteServicePerimeterRequest
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ DeleteServicePerimeterRequest.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 DeleteServicePerimeterRequest message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.identity.accesscontextmanager.v1.DeleteServicePerimeterRequest
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.identity.accesscontextmanager.v1.DeleteServicePerimeterRequest} DeleteServicePerimeterRequest
+ */
+ DeleteServicePerimeterRequest.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.identity.accesscontextmanager.v1.DeleteServicePerimeterRequest)
+ return object;
+ var message = new $root.google.identity.accesscontextmanager.v1.DeleteServicePerimeterRequest();
+ if (object.name != null)
+ message.name = String(object.name);
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a DeleteServicePerimeterRequest message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.identity.accesscontextmanager.v1.DeleteServicePerimeterRequest
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.DeleteServicePerimeterRequest} message DeleteServicePerimeterRequest
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ DeleteServicePerimeterRequest.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 DeleteServicePerimeterRequest to JSON.
+ * @function toJSON
+ * @memberof google.identity.accesscontextmanager.v1.DeleteServicePerimeterRequest
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ DeleteServicePerimeterRequest.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for DeleteServicePerimeterRequest
+ * @function getTypeUrl
+ * @memberof google.identity.accesscontextmanager.v1.DeleteServicePerimeterRequest
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ DeleteServicePerimeterRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.identity.accesscontextmanager.v1.DeleteServicePerimeterRequest";
+ };
+
+ return DeleteServicePerimeterRequest;
+ })();
+
+ v1.ReplaceServicePerimetersRequest = (function() {
+
+ /**
+ * Properties of a ReplaceServicePerimetersRequest.
+ * @memberof google.identity.accesscontextmanager.v1
+ * @interface IReplaceServicePerimetersRequest
+ * @property {string|null} [parent] ReplaceServicePerimetersRequest parent
+ * @property {Array.|null} [servicePerimeters] ReplaceServicePerimetersRequest servicePerimeters
+ * @property {string|null} [etag] ReplaceServicePerimetersRequest etag
+ */
+
+ /**
+ * Constructs a new ReplaceServicePerimetersRequest.
+ * @memberof google.identity.accesscontextmanager.v1
+ * @classdesc Represents a ReplaceServicePerimetersRequest.
+ * @implements IReplaceServicePerimetersRequest
+ * @constructor
+ * @param {google.identity.accesscontextmanager.v1.IReplaceServicePerimetersRequest=} [properties] Properties to set
+ */
+ function ReplaceServicePerimetersRequest(properties) {
+ this.servicePerimeters = [];
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * ReplaceServicePerimetersRequest parent.
+ * @member {string} parent
+ * @memberof google.identity.accesscontextmanager.v1.ReplaceServicePerimetersRequest
+ * @instance
+ */
+ ReplaceServicePerimetersRequest.prototype.parent = "";
+
+ /**
+ * ReplaceServicePerimetersRequest servicePerimeters.
+ * @member {Array.} servicePerimeters
+ * @memberof google.identity.accesscontextmanager.v1.ReplaceServicePerimetersRequest
+ * @instance
+ */
+ ReplaceServicePerimetersRequest.prototype.servicePerimeters = $util.emptyArray;
+
+ /**
+ * ReplaceServicePerimetersRequest etag.
+ * @member {string} etag
+ * @memberof google.identity.accesscontextmanager.v1.ReplaceServicePerimetersRequest
+ * @instance
+ */
+ ReplaceServicePerimetersRequest.prototype.etag = "";
+
+ /**
+ * Creates a new ReplaceServicePerimetersRequest instance using the specified properties.
+ * @function create
+ * @memberof google.identity.accesscontextmanager.v1.ReplaceServicePerimetersRequest
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.IReplaceServicePerimetersRequest=} [properties] Properties to set
+ * @returns {google.identity.accesscontextmanager.v1.ReplaceServicePerimetersRequest} ReplaceServicePerimetersRequest instance
+ */
+ ReplaceServicePerimetersRequest.create = function create(properties) {
+ return new ReplaceServicePerimetersRequest(properties);
+ };
+
+ /**
+ * Encodes the specified ReplaceServicePerimetersRequest message. Does not implicitly {@link google.identity.accesscontextmanager.v1.ReplaceServicePerimetersRequest.verify|verify} messages.
+ * @function encode
+ * @memberof google.identity.accesscontextmanager.v1.ReplaceServicePerimetersRequest
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.IReplaceServicePerimetersRequest} message ReplaceServicePerimetersRequest message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ ReplaceServicePerimetersRequest.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.servicePerimeters != null && message.servicePerimeters.length)
+ for (var i = 0; i < message.servicePerimeters.length; ++i)
+ $root.google.identity.accesscontextmanager.v1.ServicePerimeter.encode(message.servicePerimeters[i], writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim();
+ if (message.etag != null && Object.hasOwnProperty.call(message, "etag"))
+ writer.uint32(/* id 3, wireType 2 =*/26).string(message.etag);
+ return writer;
+ };
+
+ /**
+ * Encodes the specified ReplaceServicePerimetersRequest message, length delimited. Does not implicitly {@link google.identity.accesscontextmanager.v1.ReplaceServicePerimetersRequest.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.identity.accesscontextmanager.v1.ReplaceServicePerimetersRequest
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.IReplaceServicePerimetersRequest} message ReplaceServicePerimetersRequest message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ ReplaceServicePerimetersRequest.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a ReplaceServicePerimetersRequest message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.identity.accesscontextmanager.v1.ReplaceServicePerimetersRequest
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.identity.accesscontextmanager.v1.ReplaceServicePerimetersRequest} ReplaceServicePerimetersRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ ReplaceServicePerimetersRequest.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.identity.accesscontextmanager.v1.ReplaceServicePerimetersRequest();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.parent = reader.string();
+ break;
+ }
+ case 2: {
+ if (!(message.servicePerimeters && message.servicePerimeters.length))
+ message.servicePerimeters = [];
+ message.servicePerimeters.push($root.google.identity.accesscontextmanager.v1.ServicePerimeter.decode(reader, reader.uint32()));
+ break;
+ }
+ case 3: {
+ message.etag = reader.string();
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a ReplaceServicePerimetersRequest message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.identity.accesscontextmanager.v1.ReplaceServicePerimetersRequest
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.identity.accesscontextmanager.v1.ReplaceServicePerimetersRequest} ReplaceServicePerimetersRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ ReplaceServicePerimetersRequest.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a ReplaceServicePerimetersRequest message.
+ * @function verify
+ * @memberof google.identity.accesscontextmanager.v1.ReplaceServicePerimetersRequest
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ ReplaceServicePerimetersRequest.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.servicePerimeters != null && message.hasOwnProperty("servicePerimeters")) {
+ if (!Array.isArray(message.servicePerimeters))
+ return "servicePerimeters: array expected";
+ for (var i = 0; i < message.servicePerimeters.length; ++i) {
+ var error = $root.google.identity.accesscontextmanager.v1.ServicePerimeter.verify(message.servicePerimeters[i]);
+ if (error)
+ return "servicePerimeters." + error;
+ }
+ }
+ if (message.etag != null && message.hasOwnProperty("etag"))
+ if (!$util.isString(message.etag))
+ return "etag: string expected";
+ return null;
+ };
+
+ /**
+ * Creates a ReplaceServicePerimetersRequest message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.identity.accesscontextmanager.v1.ReplaceServicePerimetersRequest
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.identity.accesscontextmanager.v1.ReplaceServicePerimetersRequest} ReplaceServicePerimetersRequest
+ */
+ ReplaceServicePerimetersRequest.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.identity.accesscontextmanager.v1.ReplaceServicePerimetersRequest)
+ return object;
+ var message = new $root.google.identity.accesscontextmanager.v1.ReplaceServicePerimetersRequest();
+ if (object.parent != null)
+ message.parent = String(object.parent);
+ if (object.servicePerimeters) {
+ if (!Array.isArray(object.servicePerimeters))
+ throw TypeError(".google.identity.accesscontextmanager.v1.ReplaceServicePerimetersRequest.servicePerimeters: array expected");
+ message.servicePerimeters = [];
+ for (var i = 0; i < object.servicePerimeters.length; ++i) {
+ if (typeof object.servicePerimeters[i] !== "object")
+ throw TypeError(".google.identity.accesscontextmanager.v1.ReplaceServicePerimetersRequest.servicePerimeters: object expected");
+ message.servicePerimeters[i] = $root.google.identity.accesscontextmanager.v1.ServicePerimeter.fromObject(object.servicePerimeters[i]);
+ }
+ }
+ if (object.etag != null)
+ message.etag = String(object.etag);
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a ReplaceServicePerimetersRequest message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.identity.accesscontextmanager.v1.ReplaceServicePerimetersRequest
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.ReplaceServicePerimetersRequest} message ReplaceServicePerimetersRequest
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ ReplaceServicePerimetersRequest.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.arrays || options.defaults)
+ object.servicePerimeters = [];
+ if (options.defaults) {
+ object.parent = "";
+ object.etag = "";
+ }
+ if (message.parent != null && message.hasOwnProperty("parent"))
+ object.parent = message.parent;
+ if (message.servicePerimeters && message.servicePerimeters.length) {
+ object.servicePerimeters = [];
+ for (var j = 0; j < message.servicePerimeters.length; ++j)
+ object.servicePerimeters[j] = $root.google.identity.accesscontextmanager.v1.ServicePerimeter.toObject(message.servicePerimeters[j], options);
+ }
+ if (message.etag != null && message.hasOwnProperty("etag"))
+ object.etag = message.etag;
+ return object;
+ };
+
+ /**
+ * Converts this ReplaceServicePerimetersRequest to JSON.
+ * @function toJSON
+ * @memberof google.identity.accesscontextmanager.v1.ReplaceServicePerimetersRequest
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ ReplaceServicePerimetersRequest.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for ReplaceServicePerimetersRequest
+ * @function getTypeUrl
+ * @memberof google.identity.accesscontextmanager.v1.ReplaceServicePerimetersRequest
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ ReplaceServicePerimetersRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.identity.accesscontextmanager.v1.ReplaceServicePerimetersRequest";
+ };
+
+ return ReplaceServicePerimetersRequest;
+ })();
+
+ v1.ReplaceServicePerimetersResponse = (function() {
+
+ /**
+ * Properties of a ReplaceServicePerimetersResponse.
+ * @memberof google.identity.accesscontextmanager.v1
+ * @interface IReplaceServicePerimetersResponse
+ * @property {Array.|null} [servicePerimeters] ReplaceServicePerimetersResponse servicePerimeters
+ */
+
+ /**
+ * Constructs a new ReplaceServicePerimetersResponse.
+ * @memberof google.identity.accesscontextmanager.v1
+ * @classdesc Represents a ReplaceServicePerimetersResponse.
+ * @implements IReplaceServicePerimetersResponse
+ * @constructor
+ * @param {google.identity.accesscontextmanager.v1.IReplaceServicePerimetersResponse=} [properties] Properties to set
+ */
+ function ReplaceServicePerimetersResponse(properties) {
+ this.servicePerimeters = [];
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * ReplaceServicePerimetersResponse servicePerimeters.
+ * @member {Array.} servicePerimeters
+ * @memberof google.identity.accesscontextmanager.v1.ReplaceServicePerimetersResponse
+ * @instance
+ */
+ ReplaceServicePerimetersResponse.prototype.servicePerimeters = $util.emptyArray;
+
+ /**
+ * Creates a new ReplaceServicePerimetersResponse instance using the specified properties.
+ * @function create
+ * @memberof google.identity.accesscontextmanager.v1.ReplaceServicePerimetersResponse
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.IReplaceServicePerimetersResponse=} [properties] Properties to set
+ * @returns {google.identity.accesscontextmanager.v1.ReplaceServicePerimetersResponse} ReplaceServicePerimetersResponse instance
+ */
+ ReplaceServicePerimetersResponse.create = function create(properties) {
+ return new ReplaceServicePerimetersResponse(properties);
+ };
+
+ /**
+ * Encodes the specified ReplaceServicePerimetersResponse message. Does not implicitly {@link google.identity.accesscontextmanager.v1.ReplaceServicePerimetersResponse.verify|verify} messages.
+ * @function encode
+ * @memberof google.identity.accesscontextmanager.v1.ReplaceServicePerimetersResponse
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.IReplaceServicePerimetersResponse} message ReplaceServicePerimetersResponse message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ ReplaceServicePerimetersResponse.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.servicePerimeters != null && message.servicePerimeters.length)
+ for (var i = 0; i < message.servicePerimeters.length; ++i)
+ $root.google.identity.accesscontextmanager.v1.ServicePerimeter.encode(message.servicePerimeters[i], writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim();
+ return writer;
+ };
+
+ /**
+ * Encodes the specified ReplaceServicePerimetersResponse message, length delimited. Does not implicitly {@link google.identity.accesscontextmanager.v1.ReplaceServicePerimetersResponse.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.identity.accesscontextmanager.v1.ReplaceServicePerimetersResponse
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.IReplaceServicePerimetersResponse} message ReplaceServicePerimetersResponse message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ ReplaceServicePerimetersResponse.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a ReplaceServicePerimetersResponse message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.identity.accesscontextmanager.v1.ReplaceServicePerimetersResponse
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.identity.accesscontextmanager.v1.ReplaceServicePerimetersResponse} ReplaceServicePerimetersResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ ReplaceServicePerimetersResponse.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.identity.accesscontextmanager.v1.ReplaceServicePerimetersResponse();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ if (!(message.servicePerimeters && message.servicePerimeters.length))
+ message.servicePerimeters = [];
+ message.servicePerimeters.push($root.google.identity.accesscontextmanager.v1.ServicePerimeter.decode(reader, reader.uint32()));
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a ReplaceServicePerimetersResponse message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.identity.accesscontextmanager.v1.ReplaceServicePerimetersResponse
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.identity.accesscontextmanager.v1.ReplaceServicePerimetersResponse} ReplaceServicePerimetersResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ ReplaceServicePerimetersResponse.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a ReplaceServicePerimetersResponse message.
+ * @function verify
+ * @memberof google.identity.accesscontextmanager.v1.ReplaceServicePerimetersResponse
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ ReplaceServicePerimetersResponse.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.servicePerimeters != null && message.hasOwnProperty("servicePerimeters")) {
+ if (!Array.isArray(message.servicePerimeters))
+ return "servicePerimeters: array expected";
+ for (var i = 0; i < message.servicePerimeters.length; ++i) {
+ var error = $root.google.identity.accesscontextmanager.v1.ServicePerimeter.verify(message.servicePerimeters[i]);
+ if (error)
+ return "servicePerimeters." + error;
+ }
+ }
+ return null;
+ };
+
+ /**
+ * Creates a ReplaceServicePerimetersResponse message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.identity.accesscontextmanager.v1.ReplaceServicePerimetersResponse
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.identity.accesscontextmanager.v1.ReplaceServicePerimetersResponse} ReplaceServicePerimetersResponse
+ */
+ ReplaceServicePerimetersResponse.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.identity.accesscontextmanager.v1.ReplaceServicePerimetersResponse)
+ return object;
+ var message = new $root.google.identity.accesscontextmanager.v1.ReplaceServicePerimetersResponse();
+ if (object.servicePerimeters) {
+ if (!Array.isArray(object.servicePerimeters))
+ throw TypeError(".google.identity.accesscontextmanager.v1.ReplaceServicePerimetersResponse.servicePerimeters: array expected");
+ message.servicePerimeters = [];
+ for (var i = 0; i < object.servicePerimeters.length; ++i) {
+ if (typeof object.servicePerimeters[i] !== "object")
+ throw TypeError(".google.identity.accesscontextmanager.v1.ReplaceServicePerimetersResponse.servicePerimeters: object expected");
+ message.servicePerimeters[i] = $root.google.identity.accesscontextmanager.v1.ServicePerimeter.fromObject(object.servicePerimeters[i]);
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a ReplaceServicePerimetersResponse message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.identity.accesscontextmanager.v1.ReplaceServicePerimetersResponse
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.ReplaceServicePerimetersResponse} message ReplaceServicePerimetersResponse
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ ReplaceServicePerimetersResponse.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.arrays || options.defaults)
+ object.servicePerimeters = [];
+ if (message.servicePerimeters && message.servicePerimeters.length) {
+ object.servicePerimeters = [];
+ for (var j = 0; j < message.servicePerimeters.length; ++j)
+ object.servicePerimeters[j] = $root.google.identity.accesscontextmanager.v1.ServicePerimeter.toObject(message.servicePerimeters[j], options);
+ }
+ return object;
+ };
+
+ /**
+ * Converts this ReplaceServicePerimetersResponse to JSON.
+ * @function toJSON
+ * @memberof google.identity.accesscontextmanager.v1.ReplaceServicePerimetersResponse
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ ReplaceServicePerimetersResponse.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for ReplaceServicePerimetersResponse
+ * @function getTypeUrl
+ * @memberof google.identity.accesscontextmanager.v1.ReplaceServicePerimetersResponse
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ ReplaceServicePerimetersResponse.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.identity.accesscontextmanager.v1.ReplaceServicePerimetersResponse";
+ };
+
+ return ReplaceServicePerimetersResponse;
+ })();
+
+ v1.CommitServicePerimetersRequest = (function() {
+
+ /**
+ * Properties of a CommitServicePerimetersRequest.
+ * @memberof google.identity.accesscontextmanager.v1
+ * @interface ICommitServicePerimetersRequest
+ * @property {string|null} [parent] CommitServicePerimetersRequest parent
+ * @property {string|null} [etag] CommitServicePerimetersRequest etag
+ */
+
+ /**
+ * Constructs a new CommitServicePerimetersRequest.
+ * @memberof google.identity.accesscontextmanager.v1
+ * @classdesc Represents a CommitServicePerimetersRequest.
+ * @implements ICommitServicePerimetersRequest
+ * @constructor
+ * @param {google.identity.accesscontextmanager.v1.ICommitServicePerimetersRequest=} [properties] Properties to set
+ */
+ function CommitServicePerimetersRequest(properties) {
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * CommitServicePerimetersRequest parent.
+ * @member {string} parent
+ * @memberof google.identity.accesscontextmanager.v1.CommitServicePerimetersRequest
+ * @instance
+ */
+ CommitServicePerimetersRequest.prototype.parent = "";
+
+ /**
+ * CommitServicePerimetersRequest etag.
+ * @member {string} etag
+ * @memberof google.identity.accesscontextmanager.v1.CommitServicePerimetersRequest
+ * @instance
+ */
+ CommitServicePerimetersRequest.prototype.etag = "";
+
+ /**
+ * Creates a new CommitServicePerimetersRequest instance using the specified properties.
+ * @function create
+ * @memberof google.identity.accesscontextmanager.v1.CommitServicePerimetersRequest
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.ICommitServicePerimetersRequest=} [properties] Properties to set
+ * @returns {google.identity.accesscontextmanager.v1.CommitServicePerimetersRequest} CommitServicePerimetersRequest instance
+ */
+ CommitServicePerimetersRequest.create = function create(properties) {
+ return new CommitServicePerimetersRequest(properties);
+ };
+
+ /**
+ * Encodes the specified CommitServicePerimetersRequest message. Does not implicitly {@link google.identity.accesscontextmanager.v1.CommitServicePerimetersRequest.verify|verify} messages.
+ * @function encode
+ * @memberof google.identity.accesscontextmanager.v1.CommitServicePerimetersRequest
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.ICommitServicePerimetersRequest} message CommitServicePerimetersRequest message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ CommitServicePerimetersRequest.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.etag != null && Object.hasOwnProperty.call(message, "etag"))
+ writer.uint32(/* id 2, wireType 2 =*/18).string(message.etag);
+ return writer;
+ };
+
+ /**
+ * Encodes the specified CommitServicePerimetersRequest message, length delimited. Does not implicitly {@link google.identity.accesscontextmanager.v1.CommitServicePerimetersRequest.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.identity.accesscontextmanager.v1.CommitServicePerimetersRequest
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.ICommitServicePerimetersRequest} message CommitServicePerimetersRequest message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ CommitServicePerimetersRequest.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a CommitServicePerimetersRequest message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.identity.accesscontextmanager.v1.CommitServicePerimetersRequest
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.identity.accesscontextmanager.v1.CommitServicePerimetersRequest} CommitServicePerimetersRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ CommitServicePerimetersRequest.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.identity.accesscontextmanager.v1.CommitServicePerimetersRequest();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.parent = reader.string();
+ break;
+ }
+ case 2: {
+ message.etag = reader.string();
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a CommitServicePerimetersRequest message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.identity.accesscontextmanager.v1.CommitServicePerimetersRequest
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.identity.accesscontextmanager.v1.CommitServicePerimetersRequest} CommitServicePerimetersRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ CommitServicePerimetersRequest.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a CommitServicePerimetersRequest message.
+ * @function verify
+ * @memberof google.identity.accesscontextmanager.v1.CommitServicePerimetersRequest
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ CommitServicePerimetersRequest.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.etag != null && message.hasOwnProperty("etag"))
+ if (!$util.isString(message.etag))
+ return "etag: string expected";
+ return null;
+ };
+
+ /**
+ * Creates a CommitServicePerimetersRequest message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.identity.accesscontextmanager.v1.CommitServicePerimetersRequest
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.identity.accesscontextmanager.v1.CommitServicePerimetersRequest} CommitServicePerimetersRequest
+ */
+ CommitServicePerimetersRequest.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.identity.accesscontextmanager.v1.CommitServicePerimetersRequest)
+ return object;
+ var message = new $root.google.identity.accesscontextmanager.v1.CommitServicePerimetersRequest();
+ if (object.parent != null)
+ message.parent = String(object.parent);
+ if (object.etag != null)
+ message.etag = String(object.etag);
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a CommitServicePerimetersRequest message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.identity.accesscontextmanager.v1.CommitServicePerimetersRequest
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.CommitServicePerimetersRequest} message CommitServicePerimetersRequest
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ CommitServicePerimetersRequest.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.defaults) {
+ object.parent = "";
+ object.etag = "";
+ }
+ if (message.parent != null && message.hasOwnProperty("parent"))
+ object.parent = message.parent;
+ if (message.etag != null && message.hasOwnProperty("etag"))
+ object.etag = message.etag;
+ return object;
+ };
+
+ /**
+ * Converts this CommitServicePerimetersRequest to JSON.
+ * @function toJSON
+ * @memberof google.identity.accesscontextmanager.v1.CommitServicePerimetersRequest
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ CommitServicePerimetersRequest.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for CommitServicePerimetersRequest
+ * @function getTypeUrl
+ * @memberof google.identity.accesscontextmanager.v1.CommitServicePerimetersRequest
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ CommitServicePerimetersRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.identity.accesscontextmanager.v1.CommitServicePerimetersRequest";
+ };
+
+ return CommitServicePerimetersRequest;
+ })();
+
+ v1.CommitServicePerimetersResponse = (function() {
+
+ /**
+ * Properties of a CommitServicePerimetersResponse.
+ * @memberof google.identity.accesscontextmanager.v1
+ * @interface ICommitServicePerimetersResponse
+ * @property {Array.|null} [servicePerimeters] CommitServicePerimetersResponse servicePerimeters
+ */
+
+ /**
+ * Constructs a new CommitServicePerimetersResponse.
+ * @memberof google.identity.accesscontextmanager.v1
+ * @classdesc Represents a CommitServicePerimetersResponse.
+ * @implements ICommitServicePerimetersResponse
+ * @constructor
+ * @param {google.identity.accesscontextmanager.v1.ICommitServicePerimetersResponse=} [properties] Properties to set
+ */
+ function CommitServicePerimetersResponse(properties) {
+ this.servicePerimeters = [];
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * CommitServicePerimetersResponse servicePerimeters.
+ * @member {Array.} servicePerimeters
+ * @memberof google.identity.accesscontextmanager.v1.CommitServicePerimetersResponse
+ * @instance
+ */
+ CommitServicePerimetersResponse.prototype.servicePerimeters = $util.emptyArray;
+
+ /**
+ * Creates a new CommitServicePerimetersResponse instance using the specified properties.
+ * @function create
+ * @memberof google.identity.accesscontextmanager.v1.CommitServicePerimetersResponse
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.ICommitServicePerimetersResponse=} [properties] Properties to set
+ * @returns {google.identity.accesscontextmanager.v1.CommitServicePerimetersResponse} CommitServicePerimetersResponse instance
+ */
+ CommitServicePerimetersResponse.create = function create(properties) {
+ return new CommitServicePerimetersResponse(properties);
+ };
+
+ /**
+ * Encodes the specified CommitServicePerimetersResponse message. Does not implicitly {@link google.identity.accesscontextmanager.v1.CommitServicePerimetersResponse.verify|verify} messages.
+ * @function encode
+ * @memberof google.identity.accesscontextmanager.v1.CommitServicePerimetersResponse
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.ICommitServicePerimetersResponse} message CommitServicePerimetersResponse message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ CommitServicePerimetersResponse.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.servicePerimeters != null && message.servicePerimeters.length)
+ for (var i = 0; i < message.servicePerimeters.length; ++i)
+ $root.google.identity.accesscontextmanager.v1.ServicePerimeter.encode(message.servicePerimeters[i], writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim();
+ return writer;
+ };
+
+ /**
+ * Encodes the specified CommitServicePerimetersResponse message, length delimited. Does not implicitly {@link google.identity.accesscontextmanager.v1.CommitServicePerimetersResponse.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.identity.accesscontextmanager.v1.CommitServicePerimetersResponse
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.ICommitServicePerimetersResponse} message CommitServicePerimetersResponse message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ CommitServicePerimetersResponse.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a CommitServicePerimetersResponse message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.identity.accesscontextmanager.v1.CommitServicePerimetersResponse
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.identity.accesscontextmanager.v1.CommitServicePerimetersResponse} CommitServicePerimetersResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ CommitServicePerimetersResponse.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.identity.accesscontextmanager.v1.CommitServicePerimetersResponse();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ if (!(message.servicePerimeters && message.servicePerimeters.length))
+ message.servicePerimeters = [];
+ message.servicePerimeters.push($root.google.identity.accesscontextmanager.v1.ServicePerimeter.decode(reader, reader.uint32()));
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a CommitServicePerimetersResponse message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.identity.accesscontextmanager.v1.CommitServicePerimetersResponse
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.identity.accesscontextmanager.v1.CommitServicePerimetersResponse} CommitServicePerimetersResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ CommitServicePerimetersResponse.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a CommitServicePerimetersResponse message.
+ * @function verify
+ * @memberof google.identity.accesscontextmanager.v1.CommitServicePerimetersResponse
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ CommitServicePerimetersResponse.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.servicePerimeters != null && message.hasOwnProperty("servicePerimeters")) {
+ if (!Array.isArray(message.servicePerimeters))
+ return "servicePerimeters: array expected";
+ for (var i = 0; i < message.servicePerimeters.length; ++i) {
+ var error = $root.google.identity.accesscontextmanager.v1.ServicePerimeter.verify(message.servicePerimeters[i]);
+ if (error)
+ return "servicePerimeters." + error;
+ }
+ }
+ return null;
+ };
+
+ /**
+ * Creates a CommitServicePerimetersResponse message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.identity.accesscontextmanager.v1.CommitServicePerimetersResponse
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.identity.accesscontextmanager.v1.CommitServicePerimetersResponse} CommitServicePerimetersResponse
+ */
+ CommitServicePerimetersResponse.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.identity.accesscontextmanager.v1.CommitServicePerimetersResponse)
+ return object;
+ var message = new $root.google.identity.accesscontextmanager.v1.CommitServicePerimetersResponse();
+ if (object.servicePerimeters) {
+ if (!Array.isArray(object.servicePerimeters))
+ throw TypeError(".google.identity.accesscontextmanager.v1.CommitServicePerimetersResponse.servicePerimeters: array expected");
+ message.servicePerimeters = [];
+ for (var i = 0; i < object.servicePerimeters.length; ++i) {
+ if (typeof object.servicePerimeters[i] !== "object")
+ throw TypeError(".google.identity.accesscontextmanager.v1.CommitServicePerimetersResponse.servicePerimeters: object expected");
+ message.servicePerimeters[i] = $root.google.identity.accesscontextmanager.v1.ServicePerimeter.fromObject(object.servicePerimeters[i]);
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a CommitServicePerimetersResponse message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.identity.accesscontextmanager.v1.CommitServicePerimetersResponse
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.CommitServicePerimetersResponse} message CommitServicePerimetersResponse
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ CommitServicePerimetersResponse.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.arrays || options.defaults)
+ object.servicePerimeters = [];
+ if (message.servicePerimeters && message.servicePerimeters.length) {
+ object.servicePerimeters = [];
+ for (var j = 0; j < message.servicePerimeters.length; ++j)
+ object.servicePerimeters[j] = $root.google.identity.accesscontextmanager.v1.ServicePerimeter.toObject(message.servicePerimeters[j], options);
+ }
+ return object;
+ };
+
+ /**
+ * Converts this CommitServicePerimetersResponse to JSON.
+ * @function toJSON
+ * @memberof google.identity.accesscontextmanager.v1.CommitServicePerimetersResponse
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ CommitServicePerimetersResponse.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for CommitServicePerimetersResponse
+ * @function getTypeUrl
+ * @memberof google.identity.accesscontextmanager.v1.CommitServicePerimetersResponse
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ CommitServicePerimetersResponse.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.identity.accesscontextmanager.v1.CommitServicePerimetersResponse";
+ };
+
+ return CommitServicePerimetersResponse;
+ })();
+
+ /**
+ * LevelFormat enum.
+ * @name google.identity.accesscontextmanager.v1.LevelFormat
+ * @enum {number}
+ * @property {number} LEVEL_FORMAT_UNSPECIFIED=0 LEVEL_FORMAT_UNSPECIFIED value
+ * @property {number} AS_DEFINED=1 AS_DEFINED value
+ * @property {number} CEL=2 CEL value
+ */
+ v1.LevelFormat = (function() {
+ var valuesById = {}, values = Object.create(valuesById);
+ values[valuesById[0] = "LEVEL_FORMAT_UNSPECIFIED"] = 0;
+ values[valuesById[1] = "AS_DEFINED"] = 1;
+ values[valuesById[2] = "CEL"] = 2;
+ return values;
+ })();
+
+ v1.ListGcpUserAccessBindingsRequest = (function() {
+
+ /**
+ * Properties of a ListGcpUserAccessBindingsRequest.
+ * @memberof google.identity.accesscontextmanager.v1
+ * @interface IListGcpUserAccessBindingsRequest
+ * @property {string|null} [parent] ListGcpUserAccessBindingsRequest parent
+ * @property {number|null} [pageSize] ListGcpUserAccessBindingsRequest pageSize
+ * @property {string|null} [pageToken] ListGcpUserAccessBindingsRequest pageToken
+ */
+
+ /**
+ * Constructs a new ListGcpUserAccessBindingsRequest.
+ * @memberof google.identity.accesscontextmanager.v1
+ * @classdesc Represents a ListGcpUserAccessBindingsRequest.
+ * @implements IListGcpUserAccessBindingsRequest
+ * @constructor
+ * @param {google.identity.accesscontextmanager.v1.IListGcpUserAccessBindingsRequest=} [properties] Properties to set
+ */
+ function ListGcpUserAccessBindingsRequest(properties) {
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * ListGcpUserAccessBindingsRequest parent.
+ * @member {string} parent
+ * @memberof google.identity.accesscontextmanager.v1.ListGcpUserAccessBindingsRequest
+ * @instance
+ */
+ ListGcpUserAccessBindingsRequest.prototype.parent = "";
+
+ /**
+ * ListGcpUserAccessBindingsRequest pageSize.
+ * @member {number} pageSize
+ * @memberof google.identity.accesscontextmanager.v1.ListGcpUserAccessBindingsRequest
+ * @instance
+ */
+ ListGcpUserAccessBindingsRequest.prototype.pageSize = 0;
+
+ /**
+ * ListGcpUserAccessBindingsRequest pageToken.
+ * @member {string} pageToken
+ * @memberof google.identity.accesscontextmanager.v1.ListGcpUserAccessBindingsRequest
+ * @instance
+ */
+ ListGcpUserAccessBindingsRequest.prototype.pageToken = "";
+
+ /**
+ * Creates a new ListGcpUserAccessBindingsRequest instance using the specified properties.
+ * @function create
+ * @memberof google.identity.accesscontextmanager.v1.ListGcpUserAccessBindingsRequest
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.IListGcpUserAccessBindingsRequest=} [properties] Properties to set
+ * @returns {google.identity.accesscontextmanager.v1.ListGcpUserAccessBindingsRequest} ListGcpUserAccessBindingsRequest instance
+ */
+ ListGcpUserAccessBindingsRequest.create = function create(properties) {
+ return new ListGcpUserAccessBindingsRequest(properties);
+ };
+
+ /**
+ * Encodes the specified ListGcpUserAccessBindingsRequest message. Does not implicitly {@link google.identity.accesscontextmanager.v1.ListGcpUserAccessBindingsRequest.verify|verify} messages.
+ * @function encode
+ * @memberof google.identity.accesscontextmanager.v1.ListGcpUserAccessBindingsRequest
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.IListGcpUserAccessBindingsRequest} message ListGcpUserAccessBindingsRequest message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ ListGcpUserAccessBindingsRequest.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.parent != null && Object.hasOwnProperty.call(message, "parent"))
+ writer.uint32(/* id 1, wireType 2 =*/10).string(message.parent);
+ if (message.pageSize != null && Object.hasOwnProperty.call(message, "pageSize"))
+ writer.uint32(/* id 2, wireType 0 =*/16).int32(message.pageSize);
+ if (message.pageToken != null && Object.hasOwnProperty.call(message, "pageToken"))
+ writer.uint32(/* id 3, wireType 2 =*/26).string(message.pageToken);
+ return writer;
+ };
+
+ /**
+ * Encodes the specified ListGcpUserAccessBindingsRequest message, length delimited. Does not implicitly {@link google.identity.accesscontextmanager.v1.ListGcpUserAccessBindingsRequest.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.identity.accesscontextmanager.v1.ListGcpUserAccessBindingsRequest
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.IListGcpUserAccessBindingsRequest} message ListGcpUserAccessBindingsRequest message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ ListGcpUserAccessBindingsRequest.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a ListGcpUserAccessBindingsRequest message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.identity.accesscontextmanager.v1.ListGcpUserAccessBindingsRequest
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.identity.accesscontextmanager.v1.ListGcpUserAccessBindingsRequest} ListGcpUserAccessBindingsRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ ListGcpUserAccessBindingsRequest.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.identity.accesscontextmanager.v1.ListGcpUserAccessBindingsRequest();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.parent = reader.string();
+ break;
+ }
+ case 2: {
+ message.pageSize = reader.int32();
+ break;
+ }
+ case 3: {
+ message.pageToken = reader.string();
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a ListGcpUserAccessBindingsRequest message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.identity.accesscontextmanager.v1.ListGcpUserAccessBindingsRequest
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.identity.accesscontextmanager.v1.ListGcpUserAccessBindingsRequest} ListGcpUserAccessBindingsRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ ListGcpUserAccessBindingsRequest.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a ListGcpUserAccessBindingsRequest message.
+ * @function verify
+ * @memberof google.identity.accesscontextmanager.v1.ListGcpUserAccessBindingsRequest
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ ListGcpUserAccessBindingsRequest.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.parent != null && message.hasOwnProperty("parent"))
+ if (!$util.isString(message.parent))
+ return "parent: string expected";
+ if (message.pageSize != null && message.hasOwnProperty("pageSize"))
+ if (!$util.isInteger(message.pageSize))
+ return "pageSize: integer expected";
+ if (message.pageToken != null && message.hasOwnProperty("pageToken"))
+ if (!$util.isString(message.pageToken))
+ return "pageToken: string expected";
+ return null;
+ };
+
+ /**
+ * Creates a ListGcpUserAccessBindingsRequest message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.identity.accesscontextmanager.v1.ListGcpUserAccessBindingsRequest
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.identity.accesscontextmanager.v1.ListGcpUserAccessBindingsRequest} ListGcpUserAccessBindingsRequest
+ */
+ ListGcpUserAccessBindingsRequest.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.identity.accesscontextmanager.v1.ListGcpUserAccessBindingsRequest)
+ return object;
+ var message = new $root.google.identity.accesscontextmanager.v1.ListGcpUserAccessBindingsRequest();
+ if (object.parent != null)
+ message.parent = String(object.parent);
+ if (object.pageSize != null)
+ message.pageSize = object.pageSize | 0;
+ if (object.pageToken != null)
+ message.pageToken = String(object.pageToken);
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a ListGcpUserAccessBindingsRequest message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.identity.accesscontextmanager.v1.ListGcpUserAccessBindingsRequest
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.ListGcpUserAccessBindingsRequest} message ListGcpUserAccessBindingsRequest
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ ListGcpUserAccessBindingsRequest.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.defaults) {
+ object.parent = "";
+ object.pageSize = 0;
+ object.pageToken = "";
+ }
+ if (message.parent != null && message.hasOwnProperty("parent"))
+ object.parent = message.parent;
+ if (message.pageSize != null && message.hasOwnProperty("pageSize"))
+ object.pageSize = message.pageSize;
+ if (message.pageToken != null && message.hasOwnProperty("pageToken"))
+ object.pageToken = message.pageToken;
+ return object;
+ };
+
+ /**
+ * Converts this ListGcpUserAccessBindingsRequest to JSON.
+ * @function toJSON
+ * @memberof google.identity.accesscontextmanager.v1.ListGcpUserAccessBindingsRequest
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ ListGcpUserAccessBindingsRequest.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for ListGcpUserAccessBindingsRequest
+ * @function getTypeUrl
+ * @memberof google.identity.accesscontextmanager.v1.ListGcpUserAccessBindingsRequest
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ ListGcpUserAccessBindingsRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.identity.accesscontextmanager.v1.ListGcpUserAccessBindingsRequest";
+ };
+
+ return ListGcpUserAccessBindingsRequest;
+ })();
+
+ v1.ListGcpUserAccessBindingsResponse = (function() {
+
+ /**
+ * Properties of a ListGcpUserAccessBindingsResponse.
+ * @memberof google.identity.accesscontextmanager.v1
+ * @interface IListGcpUserAccessBindingsResponse
+ * @property {Array.|null} [gcpUserAccessBindings] ListGcpUserAccessBindingsResponse gcpUserAccessBindings
+ * @property {string|null} [nextPageToken] ListGcpUserAccessBindingsResponse nextPageToken
+ */
+
+ /**
+ * Constructs a new ListGcpUserAccessBindingsResponse.
+ * @memberof google.identity.accesscontextmanager.v1
+ * @classdesc Represents a ListGcpUserAccessBindingsResponse.
+ * @implements IListGcpUserAccessBindingsResponse
+ * @constructor
+ * @param {google.identity.accesscontextmanager.v1.IListGcpUserAccessBindingsResponse=} [properties] Properties to set
+ */
+ function ListGcpUserAccessBindingsResponse(properties) {
+ this.gcpUserAccessBindings = [];
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * ListGcpUserAccessBindingsResponse gcpUserAccessBindings.
+ * @member {Array.} gcpUserAccessBindings
+ * @memberof google.identity.accesscontextmanager.v1.ListGcpUserAccessBindingsResponse
+ * @instance
+ */
+ ListGcpUserAccessBindingsResponse.prototype.gcpUserAccessBindings = $util.emptyArray;
+
+ /**
+ * ListGcpUserAccessBindingsResponse nextPageToken.
+ * @member {string} nextPageToken
+ * @memberof google.identity.accesscontextmanager.v1.ListGcpUserAccessBindingsResponse
+ * @instance
+ */
+ ListGcpUserAccessBindingsResponse.prototype.nextPageToken = "";
+
+ /**
+ * Creates a new ListGcpUserAccessBindingsResponse instance using the specified properties.
+ * @function create
+ * @memberof google.identity.accesscontextmanager.v1.ListGcpUserAccessBindingsResponse
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.IListGcpUserAccessBindingsResponse=} [properties] Properties to set
+ * @returns {google.identity.accesscontextmanager.v1.ListGcpUserAccessBindingsResponse} ListGcpUserAccessBindingsResponse instance
+ */
+ ListGcpUserAccessBindingsResponse.create = function create(properties) {
+ return new ListGcpUserAccessBindingsResponse(properties);
+ };
+
+ /**
+ * Encodes the specified ListGcpUserAccessBindingsResponse message. Does not implicitly {@link google.identity.accesscontextmanager.v1.ListGcpUserAccessBindingsResponse.verify|verify} messages.
+ * @function encode
+ * @memberof google.identity.accesscontextmanager.v1.ListGcpUserAccessBindingsResponse
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.IListGcpUserAccessBindingsResponse} message ListGcpUserAccessBindingsResponse message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ ListGcpUserAccessBindingsResponse.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.gcpUserAccessBindings != null && message.gcpUserAccessBindings.length)
+ for (var i = 0; i < message.gcpUserAccessBindings.length; ++i)
+ $root.google.identity.accesscontextmanager.v1.GcpUserAccessBinding.encode(message.gcpUserAccessBindings[i], writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim();
+ if (message.nextPageToken != null && Object.hasOwnProperty.call(message, "nextPageToken"))
+ writer.uint32(/* id 2, wireType 2 =*/18).string(message.nextPageToken);
+ return writer;
+ };
+
+ /**
+ * Encodes the specified ListGcpUserAccessBindingsResponse message, length delimited. Does not implicitly {@link google.identity.accesscontextmanager.v1.ListGcpUserAccessBindingsResponse.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.identity.accesscontextmanager.v1.ListGcpUserAccessBindingsResponse
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.IListGcpUserAccessBindingsResponse} message ListGcpUserAccessBindingsResponse message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ ListGcpUserAccessBindingsResponse.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a ListGcpUserAccessBindingsResponse message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.identity.accesscontextmanager.v1.ListGcpUserAccessBindingsResponse
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.identity.accesscontextmanager.v1.ListGcpUserAccessBindingsResponse} ListGcpUserAccessBindingsResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ ListGcpUserAccessBindingsResponse.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.identity.accesscontextmanager.v1.ListGcpUserAccessBindingsResponse();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ if (!(message.gcpUserAccessBindings && message.gcpUserAccessBindings.length))
+ message.gcpUserAccessBindings = [];
+ message.gcpUserAccessBindings.push($root.google.identity.accesscontextmanager.v1.GcpUserAccessBinding.decode(reader, reader.uint32()));
+ break;
+ }
+ case 2: {
+ message.nextPageToken = reader.string();
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a ListGcpUserAccessBindingsResponse message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.identity.accesscontextmanager.v1.ListGcpUserAccessBindingsResponse
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.identity.accesscontextmanager.v1.ListGcpUserAccessBindingsResponse} ListGcpUserAccessBindingsResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ ListGcpUserAccessBindingsResponse.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a ListGcpUserAccessBindingsResponse message.
+ * @function verify
+ * @memberof google.identity.accesscontextmanager.v1.ListGcpUserAccessBindingsResponse
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ ListGcpUserAccessBindingsResponse.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.gcpUserAccessBindings != null && message.hasOwnProperty("gcpUserAccessBindings")) {
+ if (!Array.isArray(message.gcpUserAccessBindings))
+ return "gcpUserAccessBindings: array expected";
+ for (var i = 0; i < message.gcpUserAccessBindings.length; ++i) {
+ var error = $root.google.identity.accesscontextmanager.v1.GcpUserAccessBinding.verify(message.gcpUserAccessBindings[i]);
+ if (error)
+ return "gcpUserAccessBindings." + error;
+ }
+ }
+ if (message.nextPageToken != null && message.hasOwnProperty("nextPageToken"))
+ if (!$util.isString(message.nextPageToken))
+ return "nextPageToken: string expected";
+ return null;
+ };
+
+ /**
+ * Creates a ListGcpUserAccessBindingsResponse message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.identity.accesscontextmanager.v1.ListGcpUserAccessBindingsResponse
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.identity.accesscontextmanager.v1.ListGcpUserAccessBindingsResponse} ListGcpUserAccessBindingsResponse
+ */
+ ListGcpUserAccessBindingsResponse.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.identity.accesscontextmanager.v1.ListGcpUserAccessBindingsResponse)
+ return object;
+ var message = new $root.google.identity.accesscontextmanager.v1.ListGcpUserAccessBindingsResponse();
+ if (object.gcpUserAccessBindings) {
+ if (!Array.isArray(object.gcpUserAccessBindings))
+ throw TypeError(".google.identity.accesscontextmanager.v1.ListGcpUserAccessBindingsResponse.gcpUserAccessBindings: array expected");
+ message.gcpUserAccessBindings = [];
+ for (var i = 0; i < object.gcpUserAccessBindings.length; ++i) {
+ if (typeof object.gcpUserAccessBindings[i] !== "object")
+ throw TypeError(".google.identity.accesscontextmanager.v1.ListGcpUserAccessBindingsResponse.gcpUserAccessBindings: object expected");
+ message.gcpUserAccessBindings[i] = $root.google.identity.accesscontextmanager.v1.GcpUserAccessBinding.fromObject(object.gcpUserAccessBindings[i]);
+ }
+ }
+ if (object.nextPageToken != null)
+ message.nextPageToken = String(object.nextPageToken);
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a ListGcpUserAccessBindingsResponse message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.identity.accesscontextmanager.v1.ListGcpUserAccessBindingsResponse
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.ListGcpUserAccessBindingsResponse} message ListGcpUserAccessBindingsResponse
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ ListGcpUserAccessBindingsResponse.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.arrays || options.defaults)
+ object.gcpUserAccessBindings = [];
+ if (options.defaults)
+ object.nextPageToken = "";
+ if (message.gcpUserAccessBindings && message.gcpUserAccessBindings.length) {
+ object.gcpUserAccessBindings = [];
+ for (var j = 0; j < message.gcpUserAccessBindings.length; ++j)
+ object.gcpUserAccessBindings[j] = $root.google.identity.accesscontextmanager.v1.GcpUserAccessBinding.toObject(message.gcpUserAccessBindings[j], options);
+ }
+ if (message.nextPageToken != null && message.hasOwnProperty("nextPageToken"))
+ object.nextPageToken = message.nextPageToken;
+ return object;
+ };
+
+ /**
+ * Converts this ListGcpUserAccessBindingsResponse to JSON.
+ * @function toJSON
+ * @memberof google.identity.accesscontextmanager.v1.ListGcpUserAccessBindingsResponse
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ ListGcpUserAccessBindingsResponse.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for ListGcpUserAccessBindingsResponse
+ * @function getTypeUrl
+ * @memberof google.identity.accesscontextmanager.v1.ListGcpUserAccessBindingsResponse
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ ListGcpUserAccessBindingsResponse.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.identity.accesscontextmanager.v1.ListGcpUserAccessBindingsResponse";
+ };
+
+ return ListGcpUserAccessBindingsResponse;
+ })();
+
+ v1.GetGcpUserAccessBindingRequest = (function() {
+
+ /**
+ * Properties of a GetGcpUserAccessBindingRequest.
+ * @memberof google.identity.accesscontextmanager.v1
+ * @interface IGetGcpUserAccessBindingRequest
+ * @property {string|null} [name] GetGcpUserAccessBindingRequest name
+ */
+
+ /**
+ * Constructs a new GetGcpUserAccessBindingRequest.
+ * @memberof google.identity.accesscontextmanager.v1
+ * @classdesc Represents a GetGcpUserAccessBindingRequest.
+ * @implements IGetGcpUserAccessBindingRequest
+ * @constructor
+ * @param {google.identity.accesscontextmanager.v1.IGetGcpUserAccessBindingRequest=} [properties] Properties to set
+ */
+ function GetGcpUserAccessBindingRequest(properties) {
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * GetGcpUserAccessBindingRequest name.
+ * @member {string} name
+ * @memberof google.identity.accesscontextmanager.v1.GetGcpUserAccessBindingRequest
+ * @instance
+ */
+ GetGcpUserAccessBindingRequest.prototype.name = "";
+
+ /**
+ * Creates a new GetGcpUserAccessBindingRequest instance using the specified properties.
+ * @function create
+ * @memberof google.identity.accesscontextmanager.v1.GetGcpUserAccessBindingRequest
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.IGetGcpUserAccessBindingRequest=} [properties] Properties to set
+ * @returns {google.identity.accesscontextmanager.v1.GetGcpUserAccessBindingRequest} GetGcpUserAccessBindingRequest instance
+ */
+ GetGcpUserAccessBindingRequest.create = function create(properties) {
+ return new GetGcpUserAccessBindingRequest(properties);
+ };
+
+ /**
+ * Encodes the specified GetGcpUserAccessBindingRequest message. Does not implicitly {@link google.identity.accesscontextmanager.v1.GetGcpUserAccessBindingRequest.verify|verify} messages.
+ * @function encode
+ * @memberof google.identity.accesscontextmanager.v1.GetGcpUserAccessBindingRequest
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.IGetGcpUserAccessBindingRequest} message GetGcpUserAccessBindingRequest message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ GetGcpUserAccessBindingRequest.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 GetGcpUserAccessBindingRequest message, length delimited. Does not implicitly {@link google.identity.accesscontextmanager.v1.GetGcpUserAccessBindingRequest.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.identity.accesscontextmanager.v1.GetGcpUserAccessBindingRequest
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.IGetGcpUserAccessBindingRequest} message GetGcpUserAccessBindingRequest message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ GetGcpUserAccessBindingRequest.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a GetGcpUserAccessBindingRequest message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.identity.accesscontextmanager.v1.GetGcpUserAccessBindingRequest
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.identity.accesscontextmanager.v1.GetGcpUserAccessBindingRequest} GetGcpUserAccessBindingRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ GetGcpUserAccessBindingRequest.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.identity.accesscontextmanager.v1.GetGcpUserAccessBindingRequest();
+ 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 GetGcpUserAccessBindingRequest message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.identity.accesscontextmanager.v1.GetGcpUserAccessBindingRequest
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.identity.accesscontextmanager.v1.GetGcpUserAccessBindingRequest} GetGcpUserAccessBindingRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ GetGcpUserAccessBindingRequest.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a GetGcpUserAccessBindingRequest message.
+ * @function verify
+ * @memberof google.identity.accesscontextmanager.v1.GetGcpUserAccessBindingRequest
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ GetGcpUserAccessBindingRequest.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 GetGcpUserAccessBindingRequest message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.identity.accesscontextmanager.v1.GetGcpUserAccessBindingRequest
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.identity.accesscontextmanager.v1.GetGcpUserAccessBindingRequest} GetGcpUserAccessBindingRequest
+ */
+ GetGcpUserAccessBindingRequest.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.identity.accesscontextmanager.v1.GetGcpUserAccessBindingRequest)
+ return object;
+ var message = new $root.google.identity.accesscontextmanager.v1.GetGcpUserAccessBindingRequest();
+ if (object.name != null)
+ message.name = String(object.name);
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a GetGcpUserAccessBindingRequest message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.identity.accesscontextmanager.v1.GetGcpUserAccessBindingRequest
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.GetGcpUserAccessBindingRequest} message GetGcpUserAccessBindingRequest
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ GetGcpUserAccessBindingRequest.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 GetGcpUserAccessBindingRequest to JSON.
+ * @function toJSON
+ * @memberof google.identity.accesscontextmanager.v1.GetGcpUserAccessBindingRequest
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ GetGcpUserAccessBindingRequest.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for GetGcpUserAccessBindingRequest
+ * @function getTypeUrl
+ * @memberof google.identity.accesscontextmanager.v1.GetGcpUserAccessBindingRequest
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ GetGcpUserAccessBindingRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.identity.accesscontextmanager.v1.GetGcpUserAccessBindingRequest";
+ };
+
+ return GetGcpUserAccessBindingRequest;
+ })();
+
+ v1.CreateGcpUserAccessBindingRequest = (function() {
+
+ /**
+ * Properties of a CreateGcpUserAccessBindingRequest.
+ * @memberof google.identity.accesscontextmanager.v1
+ * @interface ICreateGcpUserAccessBindingRequest
+ * @property {string|null} [parent] CreateGcpUserAccessBindingRequest parent
+ * @property {google.identity.accesscontextmanager.v1.IGcpUserAccessBinding|null} [gcpUserAccessBinding] CreateGcpUserAccessBindingRequest gcpUserAccessBinding
+ */
+
+ /**
+ * Constructs a new CreateGcpUserAccessBindingRequest.
+ * @memberof google.identity.accesscontextmanager.v1
+ * @classdesc Represents a CreateGcpUserAccessBindingRequest.
+ * @implements ICreateGcpUserAccessBindingRequest
+ * @constructor
+ * @param {google.identity.accesscontextmanager.v1.ICreateGcpUserAccessBindingRequest=} [properties] Properties to set
+ */
+ function CreateGcpUserAccessBindingRequest(properties) {
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * CreateGcpUserAccessBindingRequest parent.
+ * @member {string} parent
+ * @memberof google.identity.accesscontextmanager.v1.CreateGcpUserAccessBindingRequest
+ * @instance
+ */
+ CreateGcpUserAccessBindingRequest.prototype.parent = "";
+
+ /**
+ * CreateGcpUserAccessBindingRequest gcpUserAccessBinding.
+ * @member {google.identity.accesscontextmanager.v1.IGcpUserAccessBinding|null|undefined} gcpUserAccessBinding
+ * @memberof google.identity.accesscontextmanager.v1.CreateGcpUserAccessBindingRequest
+ * @instance
+ */
+ CreateGcpUserAccessBindingRequest.prototype.gcpUserAccessBinding = null;
+
+ /**
+ * Creates a new CreateGcpUserAccessBindingRequest instance using the specified properties.
+ * @function create
+ * @memberof google.identity.accesscontextmanager.v1.CreateGcpUserAccessBindingRequest
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.ICreateGcpUserAccessBindingRequest=} [properties] Properties to set
+ * @returns {google.identity.accesscontextmanager.v1.CreateGcpUserAccessBindingRequest} CreateGcpUserAccessBindingRequest instance
+ */
+ CreateGcpUserAccessBindingRequest.create = function create(properties) {
+ return new CreateGcpUserAccessBindingRequest(properties);
+ };
+
+ /**
+ * Encodes the specified CreateGcpUserAccessBindingRequest message. Does not implicitly {@link google.identity.accesscontextmanager.v1.CreateGcpUserAccessBindingRequest.verify|verify} messages.
+ * @function encode
+ * @memberof google.identity.accesscontextmanager.v1.CreateGcpUserAccessBindingRequest
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.ICreateGcpUserAccessBindingRequest} message CreateGcpUserAccessBindingRequest message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ CreateGcpUserAccessBindingRequest.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.gcpUserAccessBinding != null && Object.hasOwnProperty.call(message, "gcpUserAccessBinding"))
+ $root.google.identity.accesscontextmanager.v1.GcpUserAccessBinding.encode(message.gcpUserAccessBinding, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim();
+ return writer;
+ };
+
+ /**
+ * Encodes the specified CreateGcpUserAccessBindingRequest message, length delimited. Does not implicitly {@link google.identity.accesscontextmanager.v1.CreateGcpUserAccessBindingRequest.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.identity.accesscontextmanager.v1.CreateGcpUserAccessBindingRequest
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.ICreateGcpUserAccessBindingRequest} message CreateGcpUserAccessBindingRequest message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ CreateGcpUserAccessBindingRequest.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a CreateGcpUserAccessBindingRequest message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.identity.accesscontextmanager.v1.CreateGcpUserAccessBindingRequest
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.identity.accesscontextmanager.v1.CreateGcpUserAccessBindingRequest} CreateGcpUserAccessBindingRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ CreateGcpUserAccessBindingRequest.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.identity.accesscontextmanager.v1.CreateGcpUserAccessBindingRequest();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.parent = reader.string();
+ break;
+ }
+ case 2: {
+ message.gcpUserAccessBinding = $root.google.identity.accesscontextmanager.v1.GcpUserAccessBinding.decode(reader, reader.uint32());
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a CreateGcpUserAccessBindingRequest message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.identity.accesscontextmanager.v1.CreateGcpUserAccessBindingRequest
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.identity.accesscontextmanager.v1.CreateGcpUserAccessBindingRequest} CreateGcpUserAccessBindingRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ CreateGcpUserAccessBindingRequest.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a CreateGcpUserAccessBindingRequest message.
+ * @function verify
+ * @memberof google.identity.accesscontextmanager.v1.CreateGcpUserAccessBindingRequest
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ CreateGcpUserAccessBindingRequest.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.gcpUserAccessBinding != null && message.hasOwnProperty("gcpUserAccessBinding")) {
+ var error = $root.google.identity.accesscontextmanager.v1.GcpUserAccessBinding.verify(message.gcpUserAccessBinding);
+ if (error)
+ return "gcpUserAccessBinding." + error;
+ }
+ return null;
+ };
+
+ /**
+ * Creates a CreateGcpUserAccessBindingRequest message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.identity.accesscontextmanager.v1.CreateGcpUserAccessBindingRequest
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.identity.accesscontextmanager.v1.CreateGcpUserAccessBindingRequest} CreateGcpUserAccessBindingRequest
+ */
+ CreateGcpUserAccessBindingRequest.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.identity.accesscontextmanager.v1.CreateGcpUserAccessBindingRequest)
+ return object;
+ var message = new $root.google.identity.accesscontextmanager.v1.CreateGcpUserAccessBindingRequest();
+ if (object.parent != null)
+ message.parent = String(object.parent);
+ if (object.gcpUserAccessBinding != null) {
+ if (typeof object.gcpUserAccessBinding !== "object")
+ throw TypeError(".google.identity.accesscontextmanager.v1.CreateGcpUserAccessBindingRequest.gcpUserAccessBinding: object expected");
+ message.gcpUserAccessBinding = $root.google.identity.accesscontextmanager.v1.GcpUserAccessBinding.fromObject(object.gcpUserAccessBinding);
+ }
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a CreateGcpUserAccessBindingRequest message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.identity.accesscontextmanager.v1.CreateGcpUserAccessBindingRequest
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.CreateGcpUserAccessBindingRequest} message CreateGcpUserAccessBindingRequest
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ CreateGcpUserAccessBindingRequest.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.defaults) {
+ object.parent = "";
+ object.gcpUserAccessBinding = null;
+ }
+ if (message.parent != null && message.hasOwnProperty("parent"))
+ object.parent = message.parent;
+ if (message.gcpUserAccessBinding != null && message.hasOwnProperty("gcpUserAccessBinding"))
+ object.gcpUserAccessBinding = $root.google.identity.accesscontextmanager.v1.GcpUserAccessBinding.toObject(message.gcpUserAccessBinding, options);
+ return object;
+ };
+
+ /**
+ * Converts this CreateGcpUserAccessBindingRequest to JSON.
+ * @function toJSON
+ * @memberof google.identity.accesscontextmanager.v1.CreateGcpUserAccessBindingRequest
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ CreateGcpUserAccessBindingRequest.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for CreateGcpUserAccessBindingRequest
+ * @function getTypeUrl
+ * @memberof google.identity.accesscontextmanager.v1.CreateGcpUserAccessBindingRequest
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ CreateGcpUserAccessBindingRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.identity.accesscontextmanager.v1.CreateGcpUserAccessBindingRequest";
+ };
+
+ return CreateGcpUserAccessBindingRequest;
+ })();
+
+ v1.UpdateGcpUserAccessBindingRequest = (function() {
+
+ /**
+ * Properties of an UpdateGcpUserAccessBindingRequest.
+ * @memberof google.identity.accesscontextmanager.v1
+ * @interface IUpdateGcpUserAccessBindingRequest
+ * @property {google.identity.accesscontextmanager.v1.IGcpUserAccessBinding|null} [gcpUserAccessBinding] UpdateGcpUserAccessBindingRequest gcpUserAccessBinding
+ * @property {google.protobuf.IFieldMask|null} [updateMask] UpdateGcpUserAccessBindingRequest updateMask
+ */
+
+ /**
+ * Constructs a new UpdateGcpUserAccessBindingRequest.
+ * @memberof google.identity.accesscontextmanager.v1
+ * @classdesc Represents an UpdateGcpUserAccessBindingRequest.
+ * @implements IUpdateGcpUserAccessBindingRequest
+ * @constructor
+ * @param {google.identity.accesscontextmanager.v1.IUpdateGcpUserAccessBindingRequest=} [properties] Properties to set
+ */
+ function UpdateGcpUserAccessBindingRequest(properties) {
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * UpdateGcpUserAccessBindingRequest gcpUserAccessBinding.
+ * @member {google.identity.accesscontextmanager.v1.IGcpUserAccessBinding|null|undefined} gcpUserAccessBinding
+ * @memberof google.identity.accesscontextmanager.v1.UpdateGcpUserAccessBindingRequest
+ * @instance
+ */
+ UpdateGcpUserAccessBindingRequest.prototype.gcpUserAccessBinding = null;
+
+ /**
+ * UpdateGcpUserAccessBindingRequest updateMask.
+ * @member {google.protobuf.IFieldMask|null|undefined} updateMask
+ * @memberof google.identity.accesscontextmanager.v1.UpdateGcpUserAccessBindingRequest
+ * @instance
+ */
+ UpdateGcpUserAccessBindingRequest.prototype.updateMask = null;
+
+ /**
+ * Creates a new UpdateGcpUserAccessBindingRequest instance using the specified properties.
+ * @function create
+ * @memberof google.identity.accesscontextmanager.v1.UpdateGcpUserAccessBindingRequest
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.IUpdateGcpUserAccessBindingRequest=} [properties] Properties to set
+ * @returns {google.identity.accesscontextmanager.v1.UpdateGcpUserAccessBindingRequest} UpdateGcpUserAccessBindingRequest instance
+ */
+ UpdateGcpUserAccessBindingRequest.create = function create(properties) {
+ return new UpdateGcpUserAccessBindingRequest(properties);
+ };
+
+ /**
+ * Encodes the specified UpdateGcpUserAccessBindingRequest message. Does not implicitly {@link google.identity.accesscontextmanager.v1.UpdateGcpUserAccessBindingRequest.verify|verify} messages.
+ * @function encode
+ * @memberof google.identity.accesscontextmanager.v1.UpdateGcpUserAccessBindingRequest
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.IUpdateGcpUserAccessBindingRequest} message UpdateGcpUserAccessBindingRequest message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ UpdateGcpUserAccessBindingRequest.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.gcpUserAccessBinding != null && Object.hasOwnProperty.call(message, "gcpUserAccessBinding"))
+ $root.google.identity.accesscontextmanager.v1.GcpUserAccessBinding.encode(message.gcpUserAccessBinding, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim();
+ if (message.updateMask != null && Object.hasOwnProperty.call(message, "updateMask"))
+ $root.google.protobuf.FieldMask.encode(message.updateMask, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim();
+ return writer;
+ };
+
+ /**
+ * Encodes the specified UpdateGcpUserAccessBindingRequest message, length delimited. Does not implicitly {@link google.identity.accesscontextmanager.v1.UpdateGcpUserAccessBindingRequest.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.identity.accesscontextmanager.v1.UpdateGcpUserAccessBindingRequest
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.IUpdateGcpUserAccessBindingRequest} message UpdateGcpUserAccessBindingRequest message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ UpdateGcpUserAccessBindingRequest.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes an UpdateGcpUserAccessBindingRequest message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.identity.accesscontextmanager.v1.UpdateGcpUserAccessBindingRequest
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.identity.accesscontextmanager.v1.UpdateGcpUserAccessBindingRequest} UpdateGcpUserAccessBindingRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ UpdateGcpUserAccessBindingRequest.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.identity.accesscontextmanager.v1.UpdateGcpUserAccessBindingRequest();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.gcpUserAccessBinding = $root.google.identity.accesscontextmanager.v1.GcpUserAccessBinding.decode(reader, reader.uint32());
+ break;
+ }
+ case 2: {
+ message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32());
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes an UpdateGcpUserAccessBindingRequest message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.identity.accesscontextmanager.v1.UpdateGcpUserAccessBindingRequest
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.identity.accesscontextmanager.v1.UpdateGcpUserAccessBindingRequest} UpdateGcpUserAccessBindingRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ UpdateGcpUserAccessBindingRequest.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies an UpdateGcpUserAccessBindingRequest message.
+ * @function verify
+ * @memberof google.identity.accesscontextmanager.v1.UpdateGcpUserAccessBindingRequest
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ UpdateGcpUserAccessBindingRequest.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.gcpUserAccessBinding != null && message.hasOwnProperty("gcpUserAccessBinding")) {
+ var error = $root.google.identity.accesscontextmanager.v1.GcpUserAccessBinding.verify(message.gcpUserAccessBinding);
+ if (error)
+ return "gcpUserAccessBinding." + error;
+ }
+ if (message.updateMask != null && message.hasOwnProperty("updateMask")) {
+ var error = $root.google.protobuf.FieldMask.verify(message.updateMask);
+ if (error)
+ return "updateMask." + error;
+ }
+ return null;
+ };
+
+ /**
+ * Creates an UpdateGcpUserAccessBindingRequest message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.identity.accesscontextmanager.v1.UpdateGcpUserAccessBindingRequest
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.identity.accesscontextmanager.v1.UpdateGcpUserAccessBindingRequest} UpdateGcpUserAccessBindingRequest
+ */
+ UpdateGcpUserAccessBindingRequest.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.identity.accesscontextmanager.v1.UpdateGcpUserAccessBindingRequest)
+ return object;
+ var message = new $root.google.identity.accesscontextmanager.v1.UpdateGcpUserAccessBindingRequest();
+ if (object.gcpUserAccessBinding != null) {
+ if (typeof object.gcpUserAccessBinding !== "object")
+ throw TypeError(".google.identity.accesscontextmanager.v1.UpdateGcpUserAccessBindingRequest.gcpUserAccessBinding: object expected");
+ message.gcpUserAccessBinding = $root.google.identity.accesscontextmanager.v1.GcpUserAccessBinding.fromObject(object.gcpUserAccessBinding);
+ }
+ if (object.updateMask != null) {
+ if (typeof object.updateMask !== "object")
+ throw TypeError(".google.identity.accesscontextmanager.v1.UpdateGcpUserAccessBindingRequest.updateMask: object expected");
+ message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask);
+ }
+ return message;
+ };
+
+ /**
+ * Creates a plain object from an UpdateGcpUserAccessBindingRequest message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.identity.accesscontextmanager.v1.UpdateGcpUserAccessBindingRequest
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.UpdateGcpUserAccessBindingRequest} message UpdateGcpUserAccessBindingRequest
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ UpdateGcpUserAccessBindingRequest.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.defaults) {
+ object.gcpUserAccessBinding = null;
+ object.updateMask = null;
+ }
+ if (message.gcpUserAccessBinding != null && message.hasOwnProperty("gcpUserAccessBinding"))
+ object.gcpUserAccessBinding = $root.google.identity.accesscontextmanager.v1.GcpUserAccessBinding.toObject(message.gcpUserAccessBinding, options);
+ if (message.updateMask != null && message.hasOwnProperty("updateMask"))
+ object.updateMask = $root.google.protobuf.FieldMask.toObject(message.updateMask, options);
+ return object;
+ };
+
+ /**
+ * Converts this UpdateGcpUserAccessBindingRequest to JSON.
+ * @function toJSON
+ * @memberof google.identity.accesscontextmanager.v1.UpdateGcpUserAccessBindingRequest
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ UpdateGcpUserAccessBindingRequest.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for UpdateGcpUserAccessBindingRequest
+ * @function getTypeUrl
+ * @memberof google.identity.accesscontextmanager.v1.UpdateGcpUserAccessBindingRequest
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ UpdateGcpUserAccessBindingRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.identity.accesscontextmanager.v1.UpdateGcpUserAccessBindingRequest";
+ };
+
+ return UpdateGcpUserAccessBindingRequest;
+ })();
+
+ v1.DeleteGcpUserAccessBindingRequest = (function() {
+
+ /**
+ * Properties of a DeleteGcpUserAccessBindingRequest.
+ * @memberof google.identity.accesscontextmanager.v1
+ * @interface IDeleteGcpUserAccessBindingRequest
+ * @property {string|null} [name] DeleteGcpUserAccessBindingRequest name
+ */
+
+ /**
+ * Constructs a new DeleteGcpUserAccessBindingRequest.
+ * @memberof google.identity.accesscontextmanager.v1
+ * @classdesc Represents a DeleteGcpUserAccessBindingRequest.
+ * @implements IDeleteGcpUserAccessBindingRequest
+ * @constructor
+ * @param {google.identity.accesscontextmanager.v1.IDeleteGcpUserAccessBindingRequest=} [properties] Properties to set
+ */
+ function DeleteGcpUserAccessBindingRequest(properties) {
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * DeleteGcpUserAccessBindingRequest name.
+ * @member {string} name
+ * @memberof google.identity.accesscontextmanager.v1.DeleteGcpUserAccessBindingRequest
+ * @instance
+ */
+ DeleteGcpUserAccessBindingRequest.prototype.name = "";
+
+ /**
+ * Creates a new DeleteGcpUserAccessBindingRequest instance using the specified properties.
+ * @function create
+ * @memberof google.identity.accesscontextmanager.v1.DeleteGcpUserAccessBindingRequest
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.IDeleteGcpUserAccessBindingRequest=} [properties] Properties to set
+ * @returns {google.identity.accesscontextmanager.v1.DeleteGcpUserAccessBindingRequest} DeleteGcpUserAccessBindingRequest instance
+ */
+ DeleteGcpUserAccessBindingRequest.create = function create(properties) {
+ return new DeleteGcpUserAccessBindingRequest(properties);
+ };
+
+ /**
+ * Encodes the specified DeleteGcpUserAccessBindingRequest message. Does not implicitly {@link google.identity.accesscontextmanager.v1.DeleteGcpUserAccessBindingRequest.verify|verify} messages.
+ * @function encode
+ * @memberof google.identity.accesscontextmanager.v1.DeleteGcpUserAccessBindingRequest
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.IDeleteGcpUserAccessBindingRequest} message DeleteGcpUserAccessBindingRequest message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ DeleteGcpUserAccessBindingRequest.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 DeleteGcpUserAccessBindingRequest message, length delimited. Does not implicitly {@link google.identity.accesscontextmanager.v1.DeleteGcpUserAccessBindingRequest.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.identity.accesscontextmanager.v1.DeleteGcpUserAccessBindingRequest
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.IDeleteGcpUserAccessBindingRequest} message DeleteGcpUserAccessBindingRequest message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ DeleteGcpUserAccessBindingRequest.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a DeleteGcpUserAccessBindingRequest message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.identity.accesscontextmanager.v1.DeleteGcpUserAccessBindingRequest
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.identity.accesscontextmanager.v1.DeleteGcpUserAccessBindingRequest} DeleteGcpUserAccessBindingRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ DeleteGcpUserAccessBindingRequest.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.identity.accesscontextmanager.v1.DeleteGcpUserAccessBindingRequest();
+ 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 DeleteGcpUserAccessBindingRequest message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.identity.accesscontextmanager.v1.DeleteGcpUserAccessBindingRequest
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.identity.accesscontextmanager.v1.DeleteGcpUserAccessBindingRequest} DeleteGcpUserAccessBindingRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ DeleteGcpUserAccessBindingRequest.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a DeleteGcpUserAccessBindingRequest message.
+ * @function verify
+ * @memberof google.identity.accesscontextmanager.v1.DeleteGcpUserAccessBindingRequest
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ DeleteGcpUserAccessBindingRequest.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 DeleteGcpUserAccessBindingRequest message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.identity.accesscontextmanager.v1.DeleteGcpUserAccessBindingRequest
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.identity.accesscontextmanager.v1.DeleteGcpUserAccessBindingRequest} DeleteGcpUserAccessBindingRequest
+ */
+ DeleteGcpUserAccessBindingRequest.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.identity.accesscontextmanager.v1.DeleteGcpUserAccessBindingRequest)
+ return object;
+ var message = new $root.google.identity.accesscontextmanager.v1.DeleteGcpUserAccessBindingRequest();
+ if (object.name != null)
+ message.name = String(object.name);
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a DeleteGcpUserAccessBindingRequest message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.identity.accesscontextmanager.v1.DeleteGcpUserAccessBindingRequest
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.DeleteGcpUserAccessBindingRequest} message DeleteGcpUserAccessBindingRequest
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ DeleteGcpUserAccessBindingRequest.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 DeleteGcpUserAccessBindingRequest to JSON.
+ * @function toJSON
+ * @memberof google.identity.accesscontextmanager.v1.DeleteGcpUserAccessBindingRequest
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ DeleteGcpUserAccessBindingRequest.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for DeleteGcpUserAccessBindingRequest
+ * @function getTypeUrl
+ * @memberof google.identity.accesscontextmanager.v1.DeleteGcpUserAccessBindingRequest
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ DeleteGcpUserAccessBindingRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.identity.accesscontextmanager.v1.DeleteGcpUserAccessBindingRequest";
+ };
+
+ return DeleteGcpUserAccessBindingRequest;
+ })();
+
+ v1.GcpUserAccessBindingOperationMetadata = (function() {
+
+ /**
+ * Properties of a GcpUserAccessBindingOperationMetadata.
+ * @memberof google.identity.accesscontextmanager.v1
+ * @interface IGcpUserAccessBindingOperationMetadata
+ */
+
+ /**
+ * Constructs a new GcpUserAccessBindingOperationMetadata.
+ * @memberof google.identity.accesscontextmanager.v1
+ * @classdesc Represents a GcpUserAccessBindingOperationMetadata.
+ * @implements IGcpUserAccessBindingOperationMetadata
+ * @constructor
+ * @param {google.identity.accesscontextmanager.v1.IGcpUserAccessBindingOperationMetadata=} [properties] Properties to set
+ */
+ function GcpUserAccessBindingOperationMetadata(properties) {
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * Creates a new GcpUserAccessBindingOperationMetadata instance using the specified properties.
+ * @function create
+ * @memberof google.identity.accesscontextmanager.v1.GcpUserAccessBindingOperationMetadata
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.IGcpUserAccessBindingOperationMetadata=} [properties] Properties to set
+ * @returns {google.identity.accesscontextmanager.v1.GcpUserAccessBindingOperationMetadata} GcpUserAccessBindingOperationMetadata instance
+ */
+ GcpUserAccessBindingOperationMetadata.create = function create(properties) {
+ return new GcpUserAccessBindingOperationMetadata(properties);
+ };
+
+ /**
+ * Encodes the specified GcpUserAccessBindingOperationMetadata message. Does not implicitly {@link google.identity.accesscontextmanager.v1.GcpUserAccessBindingOperationMetadata.verify|verify} messages.
+ * @function encode
+ * @memberof google.identity.accesscontextmanager.v1.GcpUserAccessBindingOperationMetadata
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.IGcpUserAccessBindingOperationMetadata} message GcpUserAccessBindingOperationMetadata message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ GcpUserAccessBindingOperationMetadata.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ return writer;
+ };
+
+ /**
+ * Encodes the specified GcpUserAccessBindingOperationMetadata message, length delimited. Does not implicitly {@link google.identity.accesscontextmanager.v1.GcpUserAccessBindingOperationMetadata.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.identity.accesscontextmanager.v1.GcpUserAccessBindingOperationMetadata
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.IGcpUserAccessBindingOperationMetadata} message GcpUserAccessBindingOperationMetadata message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ GcpUserAccessBindingOperationMetadata.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a GcpUserAccessBindingOperationMetadata message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.identity.accesscontextmanager.v1.GcpUserAccessBindingOperationMetadata
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.identity.accesscontextmanager.v1.GcpUserAccessBindingOperationMetadata} GcpUserAccessBindingOperationMetadata
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ GcpUserAccessBindingOperationMetadata.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.identity.accesscontextmanager.v1.GcpUserAccessBindingOperationMetadata();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a GcpUserAccessBindingOperationMetadata message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.identity.accesscontextmanager.v1.GcpUserAccessBindingOperationMetadata
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.identity.accesscontextmanager.v1.GcpUserAccessBindingOperationMetadata} GcpUserAccessBindingOperationMetadata
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ GcpUserAccessBindingOperationMetadata.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a GcpUserAccessBindingOperationMetadata message.
+ * @function verify
+ * @memberof google.identity.accesscontextmanager.v1.GcpUserAccessBindingOperationMetadata
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ GcpUserAccessBindingOperationMetadata.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ return null;
+ };
+
+ /**
+ * Creates a GcpUserAccessBindingOperationMetadata message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.identity.accesscontextmanager.v1.GcpUserAccessBindingOperationMetadata
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.identity.accesscontextmanager.v1.GcpUserAccessBindingOperationMetadata} GcpUserAccessBindingOperationMetadata
+ */
+ GcpUserAccessBindingOperationMetadata.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.identity.accesscontextmanager.v1.GcpUserAccessBindingOperationMetadata)
+ return object;
+ return new $root.google.identity.accesscontextmanager.v1.GcpUserAccessBindingOperationMetadata();
+ };
+
+ /**
+ * Creates a plain object from a GcpUserAccessBindingOperationMetadata message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.identity.accesscontextmanager.v1.GcpUserAccessBindingOperationMetadata
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.GcpUserAccessBindingOperationMetadata} message GcpUserAccessBindingOperationMetadata
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ GcpUserAccessBindingOperationMetadata.toObject = function toObject() {
+ return {};
+ };
+
+ /**
+ * Converts this GcpUserAccessBindingOperationMetadata to JSON.
+ * @function toJSON
+ * @memberof google.identity.accesscontextmanager.v1.GcpUserAccessBindingOperationMetadata
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ GcpUserAccessBindingOperationMetadata.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for GcpUserAccessBindingOperationMetadata
+ * @function getTypeUrl
+ * @memberof google.identity.accesscontextmanager.v1.GcpUserAccessBindingOperationMetadata
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ GcpUserAccessBindingOperationMetadata.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.identity.accesscontextmanager.v1.GcpUserAccessBindingOperationMetadata";
+ };
+
+ return GcpUserAccessBindingOperationMetadata;
+ })();
+
+ v1.AccessContextManagerOperationMetadata = (function() {
+
+ /**
+ * Properties of an AccessContextManagerOperationMetadata.
+ * @memberof google.identity.accesscontextmanager.v1
+ * @interface IAccessContextManagerOperationMetadata
+ */
+
+ /**
+ * Constructs a new AccessContextManagerOperationMetadata.
+ * @memberof google.identity.accesscontextmanager.v1
+ * @classdesc Represents an AccessContextManagerOperationMetadata.
+ * @implements IAccessContextManagerOperationMetadata
+ * @constructor
+ * @param {google.identity.accesscontextmanager.v1.IAccessContextManagerOperationMetadata=} [properties] Properties to set
+ */
+ function AccessContextManagerOperationMetadata(properties) {
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * Creates a new AccessContextManagerOperationMetadata instance using the specified properties.
+ * @function create
+ * @memberof google.identity.accesscontextmanager.v1.AccessContextManagerOperationMetadata
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.IAccessContextManagerOperationMetadata=} [properties] Properties to set
+ * @returns {google.identity.accesscontextmanager.v1.AccessContextManagerOperationMetadata} AccessContextManagerOperationMetadata instance
+ */
+ AccessContextManagerOperationMetadata.create = function create(properties) {
+ return new AccessContextManagerOperationMetadata(properties);
+ };
+
+ /**
+ * Encodes the specified AccessContextManagerOperationMetadata message. Does not implicitly {@link google.identity.accesscontextmanager.v1.AccessContextManagerOperationMetadata.verify|verify} messages.
+ * @function encode
+ * @memberof google.identity.accesscontextmanager.v1.AccessContextManagerOperationMetadata
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.IAccessContextManagerOperationMetadata} message AccessContextManagerOperationMetadata message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ AccessContextManagerOperationMetadata.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ return writer;
+ };
+
+ /**
+ * Encodes the specified AccessContextManagerOperationMetadata message, length delimited. Does not implicitly {@link google.identity.accesscontextmanager.v1.AccessContextManagerOperationMetadata.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.identity.accesscontextmanager.v1.AccessContextManagerOperationMetadata
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.IAccessContextManagerOperationMetadata} message AccessContextManagerOperationMetadata message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ AccessContextManagerOperationMetadata.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes an AccessContextManagerOperationMetadata message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.identity.accesscontextmanager.v1.AccessContextManagerOperationMetadata
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.identity.accesscontextmanager.v1.AccessContextManagerOperationMetadata} AccessContextManagerOperationMetadata
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ AccessContextManagerOperationMetadata.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.identity.accesscontextmanager.v1.AccessContextManagerOperationMetadata();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes an AccessContextManagerOperationMetadata message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.identity.accesscontextmanager.v1.AccessContextManagerOperationMetadata
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.identity.accesscontextmanager.v1.AccessContextManagerOperationMetadata} AccessContextManagerOperationMetadata
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ AccessContextManagerOperationMetadata.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies an AccessContextManagerOperationMetadata message.
+ * @function verify
+ * @memberof google.identity.accesscontextmanager.v1.AccessContextManagerOperationMetadata
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ AccessContextManagerOperationMetadata.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ return null;
+ };
+
+ /**
+ * Creates an AccessContextManagerOperationMetadata message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.identity.accesscontextmanager.v1.AccessContextManagerOperationMetadata
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.identity.accesscontextmanager.v1.AccessContextManagerOperationMetadata} AccessContextManagerOperationMetadata
+ */
+ AccessContextManagerOperationMetadata.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.identity.accesscontextmanager.v1.AccessContextManagerOperationMetadata)
+ return object;
+ return new $root.google.identity.accesscontextmanager.v1.AccessContextManagerOperationMetadata();
+ };
+
+ /**
+ * Creates a plain object from an AccessContextManagerOperationMetadata message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.identity.accesscontextmanager.v1.AccessContextManagerOperationMetadata
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.AccessContextManagerOperationMetadata} message AccessContextManagerOperationMetadata
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ AccessContextManagerOperationMetadata.toObject = function toObject() {
+ return {};
+ };
+
+ /**
+ * Converts this AccessContextManagerOperationMetadata to JSON.
+ * @function toJSON
+ * @memberof google.identity.accesscontextmanager.v1.AccessContextManagerOperationMetadata
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ AccessContextManagerOperationMetadata.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for AccessContextManagerOperationMetadata
+ * @function getTypeUrl
+ * @memberof google.identity.accesscontextmanager.v1.AccessContextManagerOperationMetadata
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ AccessContextManagerOperationMetadata.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.identity.accesscontextmanager.v1.AccessContextManagerOperationMetadata";
+ };
+
+ return AccessContextManagerOperationMetadata;
+ })();
+
+ v1.AccessLevel = (function() {
+
+ /**
+ * Properties of an AccessLevel.
+ * @memberof google.identity.accesscontextmanager.v1
+ * @interface IAccessLevel
+ * @property {string|null} [name] AccessLevel name
+ * @property {string|null} [title] AccessLevel title
+ * @property {string|null} [description] AccessLevel description
+ * @property {google.identity.accesscontextmanager.v1.IBasicLevel|null} [basic] AccessLevel basic
+ * @property {google.identity.accesscontextmanager.v1.ICustomLevel|null} [custom] AccessLevel custom
+ * @property {google.protobuf.ITimestamp|null} [createTime] AccessLevel createTime
+ * @property {google.protobuf.ITimestamp|null} [updateTime] AccessLevel updateTime
+ */
+
+ /**
+ * Constructs a new AccessLevel.
+ * @memberof google.identity.accesscontextmanager.v1
+ * @classdesc Represents an AccessLevel.
+ * @implements IAccessLevel
+ * @constructor
+ * @param {google.identity.accesscontextmanager.v1.IAccessLevel=} [properties] Properties to set
+ */
+ function AccessLevel(properties) {
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * AccessLevel name.
+ * @member {string} name
+ * @memberof google.identity.accesscontextmanager.v1.AccessLevel
+ * @instance
+ */
+ AccessLevel.prototype.name = "";
+
+ /**
+ * AccessLevel title.
+ * @member {string} title
+ * @memberof google.identity.accesscontextmanager.v1.AccessLevel
+ * @instance
+ */
+ AccessLevel.prototype.title = "";
+
+ /**
+ * AccessLevel description.
+ * @member {string} description
+ * @memberof google.identity.accesscontextmanager.v1.AccessLevel
+ * @instance
+ */
+ AccessLevel.prototype.description = "";
+
+ /**
+ * AccessLevel basic.
+ * @member {google.identity.accesscontextmanager.v1.IBasicLevel|null|undefined} basic
+ * @memberof google.identity.accesscontextmanager.v1.AccessLevel
+ * @instance
+ */
+ AccessLevel.prototype.basic = null;
+
+ /**
+ * AccessLevel custom.
+ * @member {google.identity.accesscontextmanager.v1.ICustomLevel|null|undefined} custom
+ * @memberof google.identity.accesscontextmanager.v1.AccessLevel
+ * @instance
+ */
+ AccessLevel.prototype.custom = null;
+
+ /**
+ * AccessLevel createTime.
+ * @member {google.protobuf.ITimestamp|null|undefined} createTime
+ * @memberof google.identity.accesscontextmanager.v1.AccessLevel
+ * @instance
+ */
+ AccessLevel.prototype.createTime = null;
+
+ /**
+ * AccessLevel updateTime.
+ * @member {google.protobuf.ITimestamp|null|undefined} updateTime
+ * @memberof google.identity.accesscontextmanager.v1.AccessLevel
+ * @instance
+ */
+ AccessLevel.prototype.updateTime = null;
+
+ // OneOf field names bound to virtual getters and setters
+ var $oneOfFields;
+
+ /**
+ * AccessLevel level.
+ * @member {"basic"|"custom"|undefined} level
+ * @memberof google.identity.accesscontextmanager.v1.AccessLevel
+ * @instance
+ */
+ Object.defineProperty(AccessLevel.prototype, "level", {
+ get: $util.oneOfGetter($oneOfFields = ["basic", "custom"]),
+ set: $util.oneOfSetter($oneOfFields)
+ });
+
+ /**
+ * Creates a new AccessLevel instance using the specified properties.
+ * @function create
+ * @memberof google.identity.accesscontextmanager.v1.AccessLevel
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.IAccessLevel=} [properties] Properties to set
+ * @returns {google.identity.accesscontextmanager.v1.AccessLevel} AccessLevel instance
+ */
+ AccessLevel.create = function create(properties) {
+ return new AccessLevel(properties);
+ };
+
+ /**
+ * Encodes the specified AccessLevel message. Does not implicitly {@link google.identity.accesscontextmanager.v1.AccessLevel.verify|verify} messages.
+ * @function encode
+ * @memberof google.identity.accesscontextmanager.v1.AccessLevel
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.IAccessLevel} message AccessLevel message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ AccessLevel.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.title != null && Object.hasOwnProperty.call(message, "title"))
+ writer.uint32(/* id 2, wireType 2 =*/18).string(message.title);
+ if (message.description != null && Object.hasOwnProperty.call(message, "description"))
+ writer.uint32(/* id 3, wireType 2 =*/26).string(message.description);
+ if (message.basic != null && Object.hasOwnProperty.call(message, "basic"))
+ $root.google.identity.accesscontextmanager.v1.BasicLevel.encode(message.basic, writer.uint32(/* id 4, wireType 2 =*/34).fork()).ldelim();
+ if (message.custom != null && Object.hasOwnProperty.call(message, "custom"))
+ $root.google.identity.accesscontextmanager.v1.CustomLevel.encode(message.custom, writer.uint32(/* id 5, wireType 2 =*/42).fork()).ldelim();
+ if (message.createTime != null && Object.hasOwnProperty.call(message, "createTime"))
+ $root.google.protobuf.Timestamp.encode(message.createTime, writer.uint32(/* id 6, wireType 2 =*/50).fork()).ldelim();
+ if (message.updateTime != null && Object.hasOwnProperty.call(message, "updateTime"))
+ $root.google.protobuf.Timestamp.encode(message.updateTime, writer.uint32(/* id 7, wireType 2 =*/58).fork()).ldelim();
+ return writer;
+ };
+
+ /**
+ * Encodes the specified AccessLevel message, length delimited. Does not implicitly {@link google.identity.accesscontextmanager.v1.AccessLevel.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.identity.accesscontextmanager.v1.AccessLevel
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.IAccessLevel} message AccessLevel message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ AccessLevel.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes an AccessLevel message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.identity.accesscontextmanager.v1.AccessLevel
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.identity.accesscontextmanager.v1.AccessLevel} AccessLevel
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ AccessLevel.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.identity.accesscontextmanager.v1.AccessLevel();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.name = reader.string();
+ break;
+ }
+ case 2: {
+ message.title = reader.string();
+ break;
+ }
+ case 3: {
+ message.description = reader.string();
+ break;
+ }
+ case 4: {
+ message.basic = $root.google.identity.accesscontextmanager.v1.BasicLevel.decode(reader, reader.uint32());
+ break;
+ }
+ case 5: {
+ message.custom = $root.google.identity.accesscontextmanager.v1.CustomLevel.decode(reader, reader.uint32());
+ break;
+ }
+ case 6: {
+ message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32());
+ break;
+ }
+ case 7: {
+ message.updateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32());
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes an AccessLevel message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.identity.accesscontextmanager.v1.AccessLevel
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.identity.accesscontextmanager.v1.AccessLevel} AccessLevel
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ AccessLevel.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies an AccessLevel message.
+ * @function verify
+ * @memberof google.identity.accesscontextmanager.v1.AccessLevel
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ AccessLevel.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ var properties = {};
+ if (message.name != null && message.hasOwnProperty("name"))
+ if (!$util.isString(message.name))
+ return "name: string expected";
+ if (message.title != null && message.hasOwnProperty("title"))
+ if (!$util.isString(message.title))
+ return "title: string expected";
+ if (message.description != null && message.hasOwnProperty("description"))
+ if (!$util.isString(message.description))
+ return "description: string expected";
+ if (message.basic != null && message.hasOwnProperty("basic")) {
+ properties.level = 1;
+ {
+ var error = $root.google.identity.accesscontextmanager.v1.BasicLevel.verify(message.basic);
+ if (error)
+ return "basic." + error;
+ }
+ }
+ if (message.custom != null && message.hasOwnProperty("custom")) {
+ if (properties.level === 1)
+ return "level: multiple values";
+ properties.level = 1;
+ {
+ var error = $root.google.identity.accesscontextmanager.v1.CustomLevel.verify(message.custom);
+ if (error)
+ return "custom." + error;
+ }
+ }
+ if (message.createTime != null && message.hasOwnProperty("createTime")) {
+ var error = $root.google.protobuf.Timestamp.verify(message.createTime);
+ if (error)
+ return "createTime." + error;
+ }
+ if (message.updateTime != null && message.hasOwnProperty("updateTime")) {
+ var error = $root.google.protobuf.Timestamp.verify(message.updateTime);
+ if (error)
+ return "updateTime." + error;
+ }
+ return null;
+ };
+
+ /**
+ * Creates an AccessLevel message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.identity.accesscontextmanager.v1.AccessLevel
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.identity.accesscontextmanager.v1.AccessLevel} AccessLevel
+ */
+ AccessLevel.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.identity.accesscontextmanager.v1.AccessLevel)
+ return object;
+ var message = new $root.google.identity.accesscontextmanager.v1.AccessLevel();
+ if (object.name != null)
+ message.name = String(object.name);
+ if (object.title != null)
+ message.title = String(object.title);
+ if (object.description != null)
+ message.description = String(object.description);
+ if (object.basic != null) {
+ if (typeof object.basic !== "object")
+ throw TypeError(".google.identity.accesscontextmanager.v1.AccessLevel.basic: object expected");
+ message.basic = $root.google.identity.accesscontextmanager.v1.BasicLevel.fromObject(object.basic);
+ }
+ if (object.custom != null) {
+ if (typeof object.custom !== "object")
+ throw TypeError(".google.identity.accesscontextmanager.v1.AccessLevel.custom: object expected");
+ message.custom = $root.google.identity.accesscontextmanager.v1.CustomLevel.fromObject(object.custom);
+ }
+ if (object.createTime != null) {
+ if (typeof object.createTime !== "object")
+ throw TypeError(".google.identity.accesscontextmanager.v1.AccessLevel.createTime: object expected");
+ message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime);
+ }
+ if (object.updateTime != null) {
+ if (typeof object.updateTime !== "object")
+ throw TypeError(".google.identity.accesscontextmanager.v1.AccessLevel.updateTime: object expected");
+ message.updateTime = $root.google.protobuf.Timestamp.fromObject(object.updateTime);
+ }
+ return message;
+ };
+
+ /**
+ * Creates a plain object from an AccessLevel message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.identity.accesscontextmanager.v1.AccessLevel
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.AccessLevel} message AccessLevel
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ AccessLevel.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.defaults) {
+ object.name = "";
+ object.title = "";
+ object.description = "";
+ object.createTime = null;
+ object.updateTime = null;
+ }
+ if (message.name != null && message.hasOwnProperty("name"))
+ object.name = message.name;
+ if (message.title != null && message.hasOwnProperty("title"))
+ object.title = message.title;
+ if (message.description != null && message.hasOwnProperty("description"))
+ object.description = message.description;
+ if (message.basic != null && message.hasOwnProperty("basic")) {
+ object.basic = $root.google.identity.accesscontextmanager.v1.BasicLevel.toObject(message.basic, options);
+ if (options.oneofs)
+ object.level = "basic";
+ }
+ if (message.custom != null && message.hasOwnProperty("custom")) {
+ object.custom = $root.google.identity.accesscontextmanager.v1.CustomLevel.toObject(message.custom, options);
+ if (options.oneofs)
+ object.level = "custom";
+ }
+ 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);
+ return object;
+ };
+
+ /**
+ * Converts this AccessLevel to JSON.
+ * @function toJSON
+ * @memberof google.identity.accesscontextmanager.v1.AccessLevel
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ AccessLevel.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for AccessLevel
+ * @function getTypeUrl
+ * @memberof google.identity.accesscontextmanager.v1.AccessLevel
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ AccessLevel.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.identity.accesscontextmanager.v1.AccessLevel";
+ };
+
+ return AccessLevel;
+ })();
+
+ v1.BasicLevel = (function() {
+
+ /**
+ * Properties of a BasicLevel.
+ * @memberof google.identity.accesscontextmanager.v1
+ * @interface IBasicLevel
+ * @property {Array.|null} [conditions] BasicLevel conditions
+ * @property {google.identity.accesscontextmanager.v1.BasicLevel.ConditionCombiningFunction|null} [combiningFunction] BasicLevel combiningFunction
+ */
+
+ /**
+ * Constructs a new BasicLevel.
+ * @memberof google.identity.accesscontextmanager.v1
+ * @classdesc Represents a BasicLevel.
+ * @implements IBasicLevel
+ * @constructor
+ * @param {google.identity.accesscontextmanager.v1.IBasicLevel=} [properties] Properties to set
+ */
+ function BasicLevel(properties) {
+ this.conditions = [];
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * BasicLevel conditions.
+ * @member {Array.} conditions
+ * @memberof google.identity.accesscontextmanager.v1.BasicLevel
+ * @instance
+ */
+ BasicLevel.prototype.conditions = $util.emptyArray;
+
+ /**
+ * BasicLevel combiningFunction.
+ * @member {google.identity.accesscontextmanager.v1.BasicLevel.ConditionCombiningFunction} combiningFunction
+ * @memberof google.identity.accesscontextmanager.v1.BasicLevel
+ * @instance
+ */
+ BasicLevel.prototype.combiningFunction = 0;
+
+ /**
+ * Creates a new BasicLevel instance using the specified properties.
+ * @function create
+ * @memberof google.identity.accesscontextmanager.v1.BasicLevel
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.IBasicLevel=} [properties] Properties to set
+ * @returns {google.identity.accesscontextmanager.v1.BasicLevel} BasicLevel instance
+ */
+ BasicLevel.create = function create(properties) {
+ return new BasicLevel(properties);
+ };
+
+ /**
+ * Encodes the specified BasicLevel message. Does not implicitly {@link google.identity.accesscontextmanager.v1.BasicLevel.verify|verify} messages.
+ * @function encode
+ * @memberof google.identity.accesscontextmanager.v1.BasicLevel
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.IBasicLevel} message BasicLevel message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ BasicLevel.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.conditions != null && message.conditions.length)
+ for (var i = 0; i < message.conditions.length; ++i)
+ $root.google.identity.accesscontextmanager.v1.Condition.encode(message.conditions[i], writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim();
+ if (message.combiningFunction != null && Object.hasOwnProperty.call(message, "combiningFunction"))
+ writer.uint32(/* id 2, wireType 0 =*/16).int32(message.combiningFunction);
+ return writer;
+ };
+
+ /**
+ * Encodes the specified BasicLevel message, length delimited. Does not implicitly {@link google.identity.accesscontextmanager.v1.BasicLevel.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.identity.accesscontextmanager.v1.BasicLevel
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.IBasicLevel} message BasicLevel message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ BasicLevel.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a BasicLevel message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.identity.accesscontextmanager.v1.BasicLevel
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.identity.accesscontextmanager.v1.BasicLevel} BasicLevel
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ BasicLevel.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.identity.accesscontextmanager.v1.BasicLevel();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ if (!(message.conditions && message.conditions.length))
+ message.conditions = [];
+ message.conditions.push($root.google.identity.accesscontextmanager.v1.Condition.decode(reader, reader.uint32()));
+ break;
+ }
+ case 2: {
+ message.combiningFunction = reader.int32();
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a BasicLevel message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.identity.accesscontextmanager.v1.BasicLevel
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.identity.accesscontextmanager.v1.BasicLevel} BasicLevel
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ BasicLevel.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a BasicLevel message.
+ * @function verify
+ * @memberof google.identity.accesscontextmanager.v1.BasicLevel
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ BasicLevel.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.conditions != null && message.hasOwnProperty("conditions")) {
+ if (!Array.isArray(message.conditions))
+ return "conditions: array expected";
+ for (var i = 0; i < message.conditions.length; ++i) {
+ var error = $root.google.identity.accesscontextmanager.v1.Condition.verify(message.conditions[i]);
+ if (error)
+ return "conditions." + error;
+ }
+ }
+ if (message.combiningFunction != null && message.hasOwnProperty("combiningFunction"))
+ switch (message.combiningFunction) {
+ default:
+ return "combiningFunction: enum value expected";
+ case 0:
+ case 1:
+ break;
+ }
+ return null;
+ };
+
+ /**
+ * Creates a BasicLevel message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.identity.accesscontextmanager.v1.BasicLevel
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.identity.accesscontextmanager.v1.BasicLevel} BasicLevel
+ */
+ BasicLevel.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.identity.accesscontextmanager.v1.BasicLevel)
+ return object;
+ var message = new $root.google.identity.accesscontextmanager.v1.BasicLevel();
+ if (object.conditions) {
+ if (!Array.isArray(object.conditions))
+ throw TypeError(".google.identity.accesscontextmanager.v1.BasicLevel.conditions: array expected");
+ message.conditions = [];
+ for (var i = 0; i < object.conditions.length; ++i) {
+ if (typeof object.conditions[i] !== "object")
+ throw TypeError(".google.identity.accesscontextmanager.v1.BasicLevel.conditions: object expected");
+ message.conditions[i] = $root.google.identity.accesscontextmanager.v1.Condition.fromObject(object.conditions[i]);
+ }
+ }
+ switch (object.combiningFunction) {
+ default:
+ if (typeof object.combiningFunction === "number") {
+ message.combiningFunction = object.combiningFunction;
+ break;
+ }
+ break;
+ case "AND":
+ case 0:
+ message.combiningFunction = 0;
+ break;
+ case "OR":
+ case 1:
+ message.combiningFunction = 1;
+ break;
+ }
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a BasicLevel message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.identity.accesscontextmanager.v1.BasicLevel
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.BasicLevel} message BasicLevel
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ BasicLevel.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.arrays || options.defaults)
+ object.conditions = [];
+ if (options.defaults)
+ object.combiningFunction = options.enums === String ? "AND" : 0;
+ if (message.conditions && message.conditions.length) {
+ object.conditions = [];
+ for (var j = 0; j < message.conditions.length; ++j)
+ object.conditions[j] = $root.google.identity.accesscontextmanager.v1.Condition.toObject(message.conditions[j], options);
+ }
+ if (message.combiningFunction != null && message.hasOwnProperty("combiningFunction"))
+ object.combiningFunction = options.enums === String ? $root.google.identity.accesscontextmanager.v1.BasicLevel.ConditionCombiningFunction[message.combiningFunction] === undefined ? message.combiningFunction : $root.google.identity.accesscontextmanager.v1.BasicLevel.ConditionCombiningFunction[message.combiningFunction] : message.combiningFunction;
+ return object;
+ };
+
+ /**
+ * Converts this BasicLevel to JSON.
+ * @function toJSON
+ * @memberof google.identity.accesscontextmanager.v1.BasicLevel
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ BasicLevel.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for BasicLevel
+ * @function getTypeUrl
+ * @memberof google.identity.accesscontextmanager.v1.BasicLevel
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ BasicLevel.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.identity.accesscontextmanager.v1.BasicLevel";
+ };
+
+ /**
+ * ConditionCombiningFunction enum.
+ * @name google.identity.accesscontextmanager.v1.BasicLevel.ConditionCombiningFunction
+ * @enum {number}
+ * @property {number} AND=0 AND value
+ * @property {number} OR=1 OR value
+ */
+ BasicLevel.ConditionCombiningFunction = (function() {
+ var valuesById = {}, values = Object.create(valuesById);
+ values[valuesById[0] = "AND"] = 0;
+ values[valuesById[1] = "OR"] = 1;
+ return values;
+ })();
+
+ return BasicLevel;
+ })();
+
+ v1.Condition = (function() {
+
+ /**
+ * Properties of a Condition.
+ * @memberof google.identity.accesscontextmanager.v1
+ * @interface ICondition
+ * @property {Array.|null} [ipSubnetworks] Condition ipSubnetworks
+ * @property {google.identity.accesscontextmanager.v1.IDevicePolicy|null} [devicePolicy] Condition devicePolicy
+ * @property {Array.|null} [requiredAccessLevels] Condition requiredAccessLevels
+ * @property {boolean|null} [negate] Condition negate
+ * @property {Array.|null} [members] Condition members
+ * @property {Array.|null} [regions] Condition regions
+ */
+
+ /**
+ * Constructs a new Condition.
+ * @memberof google.identity.accesscontextmanager.v1
+ * @classdesc Represents a Condition.
+ * @implements ICondition
+ * @constructor
+ * @param {google.identity.accesscontextmanager.v1.ICondition=} [properties] Properties to set
+ */
+ function Condition(properties) {
+ this.ipSubnetworks = [];
+ this.requiredAccessLevels = [];
+ this.members = [];
+ this.regions = [];
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * Condition ipSubnetworks.
+ * @member {Array.} ipSubnetworks
+ * @memberof google.identity.accesscontextmanager.v1.Condition
+ * @instance
+ */
+ Condition.prototype.ipSubnetworks = $util.emptyArray;
+
+ /**
+ * Condition devicePolicy.
+ * @member {google.identity.accesscontextmanager.v1.IDevicePolicy|null|undefined} devicePolicy
+ * @memberof google.identity.accesscontextmanager.v1.Condition
+ * @instance
+ */
+ Condition.prototype.devicePolicy = null;
+
+ /**
+ * Condition requiredAccessLevels.
+ * @member {Array.} requiredAccessLevels
+ * @memberof google.identity.accesscontextmanager.v1.Condition
+ * @instance
+ */
+ Condition.prototype.requiredAccessLevels = $util.emptyArray;
+
+ /**
+ * Condition negate.
+ * @member {boolean} negate
+ * @memberof google.identity.accesscontextmanager.v1.Condition
+ * @instance
+ */
+ Condition.prototype.negate = false;
+
+ /**
+ * Condition members.
+ * @member {Array.} members
+ * @memberof google.identity.accesscontextmanager.v1.Condition
+ * @instance
+ */
+ Condition.prototype.members = $util.emptyArray;
+
+ /**
+ * Condition regions.
+ * @member {Array.} regions
+ * @memberof google.identity.accesscontextmanager.v1.Condition
+ * @instance
+ */
+ Condition.prototype.regions = $util.emptyArray;
+
+ /**
+ * Creates a new Condition instance using the specified properties.
+ * @function create
+ * @memberof google.identity.accesscontextmanager.v1.Condition
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.ICondition=} [properties] Properties to set
+ * @returns {google.identity.accesscontextmanager.v1.Condition} Condition instance
+ */
+ Condition.create = function create(properties) {
+ return new Condition(properties);
+ };
+
+ /**
+ * Encodes the specified Condition message. Does not implicitly {@link google.identity.accesscontextmanager.v1.Condition.verify|verify} messages.
+ * @function encode
+ * @memberof google.identity.accesscontextmanager.v1.Condition
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.ICondition} message Condition message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ Condition.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.ipSubnetworks != null && message.ipSubnetworks.length)
+ for (var i = 0; i < message.ipSubnetworks.length; ++i)
+ writer.uint32(/* id 1, wireType 2 =*/10).string(message.ipSubnetworks[i]);
+ if (message.devicePolicy != null && Object.hasOwnProperty.call(message, "devicePolicy"))
+ $root.google.identity.accesscontextmanager.v1.DevicePolicy.encode(message.devicePolicy, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim();
+ if (message.requiredAccessLevels != null && message.requiredAccessLevels.length)
+ for (var i = 0; i < message.requiredAccessLevels.length; ++i)
+ writer.uint32(/* id 3, wireType 2 =*/26).string(message.requiredAccessLevels[i]);
+ if (message.negate != null && Object.hasOwnProperty.call(message, "negate"))
+ writer.uint32(/* id 5, wireType 0 =*/40).bool(message.negate);
+ if (message.members != null && message.members.length)
+ for (var i = 0; i < message.members.length; ++i)
+ writer.uint32(/* id 6, wireType 2 =*/50).string(message.members[i]);
+ if (message.regions != null && message.regions.length)
+ for (var i = 0; i < message.regions.length; ++i)
+ writer.uint32(/* id 7, wireType 2 =*/58).string(message.regions[i]);
+ return writer;
+ };
+
+ /**
+ * Encodes the specified Condition message, length delimited. Does not implicitly {@link google.identity.accesscontextmanager.v1.Condition.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.identity.accesscontextmanager.v1.Condition
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.ICondition} message Condition message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ Condition.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a Condition message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.identity.accesscontextmanager.v1.Condition
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.identity.accesscontextmanager.v1.Condition} Condition
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ Condition.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.identity.accesscontextmanager.v1.Condition();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ if (!(message.ipSubnetworks && message.ipSubnetworks.length))
+ message.ipSubnetworks = [];
+ message.ipSubnetworks.push(reader.string());
+ break;
+ }
+ case 2: {
+ message.devicePolicy = $root.google.identity.accesscontextmanager.v1.DevicePolicy.decode(reader, reader.uint32());
+ break;
+ }
+ case 3: {
+ if (!(message.requiredAccessLevels && message.requiredAccessLevels.length))
+ message.requiredAccessLevels = [];
+ message.requiredAccessLevels.push(reader.string());
+ break;
+ }
+ case 5: {
+ message.negate = reader.bool();
+ break;
+ }
+ case 6: {
+ if (!(message.members && message.members.length))
+ message.members = [];
+ message.members.push(reader.string());
+ break;
+ }
+ case 7: {
+ if (!(message.regions && message.regions.length))
+ message.regions = [];
+ message.regions.push(reader.string());
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a Condition message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.identity.accesscontextmanager.v1.Condition
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.identity.accesscontextmanager.v1.Condition} Condition
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ Condition.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a Condition message.
+ * @function verify
+ * @memberof google.identity.accesscontextmanager.v1.Condition
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ Condition.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.ipSubnetworks != null && message.hasOwnProperty("ipSubnetworks")) {
+ if (!Array.isArray(message.ipSubnetworks))
+ return "ipSubnetworks: array expected";
+ for (var i = 0; i < message.ipSubnetworks.length; ++i)
+ if (!$util.isString(message.ipSubnetworks[i]))
+ return "ipSubnetworks: string[] expected";
+ }
+ if (message.devicePolicy != null && message.hasOwnProperty("devicePolicy")) {
+ var error = $root.google.identity.accesscontextmanager.v1.DevicePolicy.verify(message.devicePolicy);
+ if (error)
+ return "devicePolicy." + error;
+ }
+ if (message.requiredAccessLevels != null && message.hasOwnProperty("requiredAccessLevels")) {
+ if (!Array.isArray(message.requiredAccessLevels))
+ return "requiredAccessLevels: array expected";
+ for (var i = 0; i < message.requiredAccessLevels.length; ++i)
+ if (!$util.isString(message.requiredAccessLevels[i]))
+ return "requiredAccessLevels: string[] expected";
+ }
+ if (message.negate != null && message.hasOwnProperty("negate"))
+ if (typeof message.negate !== "boolean")
+ return "negate: boolean expected";
+ if (message.members != null && message.hasOwnProperty("members")) {
+ if (!Array.isArray(message.members))
+ return "members: array expected";
+ for (var i = 0; i < message.members.length; ++i)
+ if (!$util.isString(message.members[i]))
+ return "members: string[] expected";
+ }
+ if (message.regions != null && message.hasOwnProperty("regions")) {
+ if (!Array.isArray(message.regions))
+ return "regions: array expected";
+ for (var i = 0; i < message.regions.length; ++i)
+ if (!$util.isString(message.regions[i]))
+ return "regions: string[] expected";
+ }
+ return null;
+ };
+
+ /**
+ * Creates a Condition message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.identity.accesscontextmanager.v1.Condition
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.identity.accesscontextmanager.v1.Condition} Condition
+ */
+ Condition.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.identity.accesscontextmanager.v1.Condition)
+ return object;
+ var message = new $root.google.identity.accesscontextmanager.v1.Condition();
+ if (object.ipSubnetworks) {
+ if (!Array.isArray(object.ipSubnetworks))
+ throw TypeError(".google.identity.accesscontextmanager.v1.Condition.ipSubnetworks: array expected");
+ message.ipSubnetworks = [];
+ for (var i = 0; i < object.ipSubnetworks.length; ++i)
+ message.ipSubnetworks[i] = String(object.ipSubnetworks[i]);
+ }
+ if (object.devicePolicy != null) {
+ if (typeof object.devicePolicy !== "object")
+ throw TypeError(".google.identity.accesscontextmanager.v1.Condition.devicePolicy: object expected");
+ message.devicePolicy = $root.google.identity.accesscontextmanager.v1.DevicePolicy.fromObject(object.devicePolicy);
+ }
+ if (object.requiredAccessLevels) {
+ if (!Array.isArray(object.requiredAccessLevels))
+ throw TypeError(".google.identity.accesscontextmanager.v1.Condition.requiredAccessLevels: array expected");
+ message.requiredAccessLevels = [];
+ for (var i = 0; i < object.requiredAccessLevels.length; ++i)
+ message.requiredAccessLevels[i] = String(object.requiredAccessLevels[i]);
+ }
+ if (object.negate != null)
+ message.negate = Boolean(object.negate);
+ if (object.members) {
+ if (!Array.isArray(object.members))
+ throw TypeError(".google.identity.accesscontextmanager.v1.Condition.members: array expected");
+ message.members = [];
+ for (var i = 0; i < object.members.length; ++i)
+ message.members[i] = String(object.members[i]);
+ }
+ if (object.regions) {
+ if (!Array.isArray(object.regions))
+ throw TypeError(".google.identity.accesscontextmanager.v1.Condition.regions: array expected");
+ message.regions = [];
+ for (var i = 0; i < object.regions.length; ++i)
+ message.regions[i] = String(object.regions[i]);
+ }
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a Condition message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.identity.accesscontextmanager.v1.Condition
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.Condition} message Condition
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ Condition.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.arrays || options.defaults) {
+ object.ipSubnetworks = [];
+ object.requiredAccessLevels = [];
+ object.members = [];
+ object.regions = [];
+ }
+ if (options.defaults) {
+ object.devicePolicy = null;
+ object.negate = false;
+ }
+ if (message.ipSubnetworks && message.ipSubnetworks.length) {
+ object.ipSubnetworks = [];
+ for (var j = 0; j < message.ipSubnetworks.length; ++j)
+ object.ipSubnetworks[j] = message.ipSubnetworks[j];
+ }
+ if (message.devicePolicy != null && message.hasOwnProperty("devicePolicy"))
+ object.devicePolicy = $root.google.identity.accesscontextmanager.v1.DevicePolicy.toObject(message.devicePolicy, options);
+ if (message.requiredAccessLevels && message.requiredAccessLevels.length) {
+ object.requiredAccessLevels = [];
+ for (var j = 0; j < message.requiredAccessLevels.length; ++j)
+ object.requiredAccessLevels[j] = message.requiredAccessLevels[j];
+ }
+ if (message.negate != null && message.hasOwnProperty("negate"))
+ object.negate = message.negate;
+ if (message.members && message.members.length) {
+ object.members = [];
+ for (var j = 0; j < message.members.length; ++j)
+ object.members[j] = message.members[j];
+ }
+ if (message.regions && message.regions.length) {
+ object.regions = [];
+ for (var j = 0; j < message.regions.length; ++j)
+ object.regions[j] = message.regions[j];
+ }
+ return object;
+ };
+
+ /**
+ * Converts this Condition to JSON.
+ * @function toJSON
+ * @memberof google.identity.accesscontextmanager.v1.Condition
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ Condition.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for Condition
+ * @function getTypeUrl
+ * @memberof google.identity.accesscontextmanager.v1.Condition
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ Condition.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.identity.accesscontextmanager.v1.Condition";
+ };
+
+ return Condition;
+ })();
+
+ v1.CustomLevel = (function() {
+
+ /**
+ * Properties of a CustomLevel.
+ * @memberof google.identity.accesscontextmanager.v1
+ * @interface ICustomLevel
+ * @property {google.type.IExpr|null} [expr] CustomLevel expr
+ */
+
+ /**
+ * Constructs a new CustomLevel.
+ * @memberof google.identity.accesscontextmanager.v1
+ * @classdesc Represents a CustomLevel.
+ * @implements ICustomLevel
+ * @constructor
+ * @param {google.identity.accesscontextmanager.v1.ICustomLevel=} [properties] Properties to set
+ */
+ function CustomLevel(properties) {
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * CustomLevel expr.
+ * @member {google.type.IExpr|null|undefined} expr
+ * @memberof google.identity.accesscontextmanager.v1.CustomLevel
+ * @instance
+ */
+ CustomLevel.prototype.expr = null;
+
+ /**
+ * Creates a new CustomLevel instance using the specified properties.
+ * @function create
+ * @memberof google.identity.accesscontextmanager.v1.CustomLevel
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.ICustomLevel=} [properties] Properties to set
+ * @returns {google.identity.accesscontextmanager.v1.CustomLevel} CustomLevel instance
+ */
+ CustomLevel.create = function create(properties) {
+ return new CustomLevel(properties);
+ };
+
+ /**
+ * Encodes the specified CustomLevel message. Does not implicitly {@link google.identity.accesscontextmanager.v1.CustomLevel.verify|verify} messages.
+ * @function encode
+ * @memberof google.identity.accesscontextmanager.v1.CustomLevel
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.ICustomLevel} message CustomLevel message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ CustomLevel.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.expr != null && Object.hasOwnProperty.call(message, "expr"))
+ $root.google.type.Expr.encode(message.expr, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim();
+ return writer;
+ };
+
+ /**
+ * Encodes the specified CustomLevel message, length delimited. Does not implicitly {@link google.identity.accesscontextmanager.v1.CustomLevel.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.identity.accesscontextmanager.v1.CustomLevel
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.ICustomLevel} message CustomLevel message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ CustomLevel.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a CustomLevel message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.identity.accesscontextmanager.v1.CustomLevel
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.identity.accesscontextmanager.v1.CustomLevel} CustomLevel
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ CustomLevel.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.identity.accesscontextmanager.v1.CustomLevel();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.expr = $root.google.type.Expr.decode(reader, reader.uint32());
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a CustomLevel message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.identity.accesscontextmanager.v1.CustomLevel
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.identity.accesscontextmanager.v1.CustomLevel} CustomLevel
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ CustomLevel.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a CustomLevel message.
+ * @function verify
+ * @memberof google.identity.accesscontextmanager.v1.CustomLevel
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ CustomLevel.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.expr != null && message.hasOwnProperty("expr")) {
+ var error = $root.google.type.Expr.verify(message.expr);
+ if (error)
+ return "expr." + error;
+ }
+ return null;
+ };
+
+ /**
+ * Creates a CustomLevel message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.identity.accesscontextmanager.v1.CustomLevel
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.identity.accesscontextmanager.v1.CustomLevel} CustomLevel
+ */
+ CustomLevel.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.identity.accesscontextmanager.v1.CustomLevel)
+ return object;
+ var message = new $root.google.identity.accesscontextmanager.v1.CustomLevel();
+ if (object.expr != null) {
+ if (typeof object.expr !== "object")
+ throw TypeError(".google.identity.accesscontextmanager.v1.CustomLevel.expr: object expected");
+ message.expr = $root.google.type.Expr.fromObject(object.expr);
+ }
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a CustomLevel message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.identity.accesscontextmanager.v1.CustomLevel
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.CustomLevel} message CustomLevel
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ CustomLevel.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.defaults)
+ object.expr = null;
+ if (message.expr != null && message.hasOwnProperty("expr"))
+ object.expr = $root.google.type.Expr.toObject(message.expr, options);
+ return object;
+ };
+
+ /**
+ * Converts this CustomLevel to JSON.
+ * @function toJSON
+ * @memberof google.identity.accesscontextmanager.v1.CustomLevel
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ CustomLevel.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for CustomLevel
+ * @function getTypeUrl
+ * @memberof google.identity.accesscontextmanager.v1.CustomLevel
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ CustomLevel.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.identity.accesscontextmanager.v1.CustomLevel";
+ };
+
+ return CustomLevel;
+ })();
+
+ v1.DevicePolicy = (function() {
+
+ /**
+ * Properties of a DevicePolicy.
+ * @memberof google.identity.accesscontextmanager.v1
+ * @interface IDevicePolicy
+ * @property {boolean|null} [requireScreenlock] DevicePolicy requireScreenlock
+ * @property {Array.|null} [allowedEncryptionStatuses] DevicePolicy allowedEncryptionStatuses
+ * @property {Array.|null} [osConstraints] DevicePolicy osConstraints
+ * @property {Array.|null} [allowedDeviceManagementLevels] DevicePolicy allowedDeviceManagementLevels
+ * @property {boolean|null} [requireAdminApproval] DevicePolicy requireAdminApproval
+ * @property {boolean|null} [requireCorpOwned] DevicePolicy requireCorpOwned
+ */
+
+ /**
+ * Constructs a new DevicePolicy.
+ * @memberof google.identity.accesscontextmanager.v1
+ * @classdesc Represents a DevicePolicy.
+ * @implements IDevicePolicy
+ * @constructor
+ * @param {google.identity.accesscontextmanager.v1.IDevicePolicy=} [properties] Properties to set
+ */
+ function DevicePolicy(properties) {
+ this.allowedEncryptionStatuses = [];
+ this.osConstraints = [];
+ this.allowedDeviceManagementLevels = [];
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * DevicePolicy requireScreenlock.
+ * @member {boolean} requireScreenlock
+ * @memberof google.identity.accesscontextmanager.v1.DevicePolicy
+ * @instance
+ */
+ DevicePolicy.prototype.requireScreenlock = false;
+
+ /**
+ * DevicePolicy allowedEncryptionStatuses.
+ * @member {Array.} allowedEncryptionStatuses
+ * @memberof google.identity.accesscontextmanager.v1.DevicePolicy
+ * @instance
+ */
+ DevicePolicy.prototype.allowedEncryptionStatuses = $util.emptyArray;
+
+ /**
+ * DevicePolicy osConstraints.
+ * @member {Array.} osConstraints
+ * @memberof google.identity.accesscontextmanager.v1.DevicePolicy
+ * @instance
+ */
+ DevicePolicy.prototype.osConstraints = $util.emptyArray;
+
+ /**
+ * DevicePolicy allowedDeviceManagementLevels.
+ * @member {Array.} allowedDeviceManagementLevels
+ * @memberof google.identity.accesscontextmanager.v1.DevicePolicy
+ * @instance
+ */
+ DevicePolicy.prototype.allowedDeviceManagementLevels = $util.emptyArray;
+
+ /**
+ * DevicePolicy requireAdminApproval.
+ * @member {boolean} requireAdminApproval
+ * @memberof google.identity.accesscontextmanager.v1.DevicePolicy
+ * @instance
+ */
+ DevicePolicy.prototype.requireAdminApproval = false;
+
+ /**
+ * DevicePolicy requireCorpOwned.
+ * @member {boolean} requireCorpOwned
+ * @memberof google.identity.accesscontextmanager.v1.DevicePolicy
+ * @instance
+ */
+ DevicePolicy.prototype.requireCorpOwned = false;
+
+ /**
+ * Creates a new DevicePolicy instance using the specified properties.
+ * @function create
+ * @memberof google.identity.accesscontextmanager.v1.DevicePolicy
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.IDevicePolicy=} [properties] Properties to set
+ * @returns {google.identity.accesscontextmanager.v1.DevicePolicy} DevicePolicy instance
+ */
+ DevicePolicy.create = function create(properties) {
+ return new DevicePolicy(properties);
+ };
+
+ /**
+ * Encodes the specified DevicePolicy message. Does not implicitly {@link google.identity.accesscontextmanager.v1.DevicePolicy.verify|verify} messages.
+ * @function encode
+ * @memberof google.identity.accesscontextmanager.v1.DevicePolicy
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.IDevicePolicy} message DevicePolicy message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ DevicePolicy.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.requireScreenlock != null && Object.hasOwnProperty.call(message, "requireScreenlock"))
+ writer.uint32(/* id 1, wireType 0 =*/8).bool(message.requireScreenlock);
+ if (message.allowedEncryptionStatuses != null && message.allowedEncryptionStatuses.length) {
+ writer.uint32(/* id 2, wireType 2 =*/18).fork();
+ for (var i = 0; i < message.allowedEncryptionStatuses.length; ++i)
+ writer.int32(message.allowedEncryptionStatuses[i]);
+ writer.ldelim();
+ }
+ if (message.osConstraints != null && message.osConstraints.length)
+ for (var i = 0; i < message.osConstraints.length; ++i)
+ $root.google.identity.accesscontextmanager.v1.OsConstraint.encode(message.osConstraints[i], writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim();
+ if (message.allowedDeviceManagementLevels != null && message.allowedDeviceManagementLevels.length) {
+ writer.uint32(/* id 6, wireType 2 =*/50).fork();
+ for (var i = 0; i < message.allowedDeviceManagementLevels.length; ++i)
+ writer.int32(message.allowedDeviceManagementLevels[i]);
+ writer.ldelim();
+ }
+ if (message.requireAdminApproval != null && Object.hasOwnProperty.call(message, "requireAdminApproval"))
+ writer.uint32(/* id 7, wireType 0 =*/56).bool(message.requireAdminApproval);
+ if (message.requireCorpOwned != null && Object.hasOwnProperty.call(message, "requireCorpOwned"))
+ writer.uint32(/* id 8, wireType 0 =*/64).bool(message.requireCorpOwned);
+ return writer;
+ };
+
+ /**
+ * Encodes the specified DevicePolicy message, length delimited. Does not implicitly {@link google.identity.accesscontextmanager.v1.DevicePolicy.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.identity.accesscontextmanager.v1.DevicePolicy
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.IDevicePolicy} message DevicePolicy message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ DevicePolicy.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a DevicePolicy message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.identity.accesscontextmanager.v1.DevicePolicy
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.identity.accesscontextmanager.v1.DevicePolicy} DevicePolicy
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ DevicePolicy.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.identity.accesscontextmanager.v1.DevicePolicy();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.requireScreenlock = reader.bool();
+ break;
+ }
+ case 2: {
+ if (!(message.allowedEncryptionStatuses && message.allowedEncryptionStatuses.length))
+ message.allowedEncryptionStatuses = [];
+ if ((tag & 7) === 2) {
+ var end2 = reader.uint32() + reader.pos;
+ while (reader.pos < end2)
+ message.allowedEncryptionStatuses.push(reader.int32());
+ } else
+ message.allowedEncryptionStatuses.push(reader.int32());
+ break;
+ }
+ case 3: {
+ if (!(message.osConstraints && message.osConstraints.length))
+ message.osConstraints = [];
+ message.osConstraints.push($root.google.identity.accesscontextmanager.v1.OsConstraint.decode(reader, reader.uint32()));
+ break;
+ }
+ case 6: {
+ if (!(message.allowedDeviceManagementLevels && message.allowedDeviceManagementLevels.length))
+ message.allowedDeviceManagementLevels = [];
+ if ((tag & 7) === 2) {
+ var end2 = reader.uint32() + reader.pos;
+ while (reader.pos < end2)
+ message.allowedDeviceManagementLevels.push(reader.int32());
+ } else
+ message.allowedDeviceManagementLevels.push(reader.int32());
+ break;
+ }
+ case 7: {
+ message.requireAdminApproval = reader.bool();
+ break;
+ }
+ case 8: {
+ message.requireCorpOwned = reader.bool();
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a DevicePolicy message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.identity.accesscontextmanager.v1.DevicePolicy
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.identity.accesscontextmanager.v1.DevicePolicy} DevicePolicy
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ DevicePolicy.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a DevicePolicy message.
+ * @function verify
+ * @memberof google.identity.accesscontextmanager.v1.DevicePolicy
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ DevicePolicy.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.requireScreenlock != null && message.hasOwnProperty("requireScreenlock"))
+ if (typeof message.requireScreenlock !== "boolean")
+ return "requireScreenlock: boolean expected";
+ if (message.allowedEncryptionStatuses != null && message.hasOwnProperty("allowedEncryptionStatuses")) {
+ if (!Array.isArray(message.allowedEncryptionStatuses))
+ return "allowedEncryptionStatuses: array expected";
+ for (var i = 0; i < message.allowedEncryptionStatuses.length; ++i)
+ switch (message.allowedEncryptionStatuses[i]) {
+ default:
+ return "allowedEncryptionStatuses: enum value[] expected";
+ case 0:
+ case 1:
+ case 2:
+ case 3:
+ break;
+ }
+ }
+ if (message.osConstraints != null && message.hasOwnProperty("osConstraints")) {
+ if (!Array.isArray(message.osConstraints))
+ return "osConstraints: array expected";
+ for (var i = 0; i < message.osConstraints.length; ++i) {
+ var error = $root.google.identity.accesscontextmanager.v1.OsConstraint.verify(message.osConstraints[i]);
+ if (error)
+ return "osConstraints." + error;
+ }
+ }
+ if (message.allowedDeviceManagementLevels != null && message.hasOwnProperty("allowedDeviceManagementLevels")) {
+ if (!Array.isArray(message.allowedDeviceManagementLevels))
+ return "allowedDeviceManagementLevels: array expected";
+ for (var i = 0; i < message.allowedDeviceManagementLevels.length; ++i)
+ switch (message.allowedDeviceManagementLevels[i]) {
+ default:
+ return "allowedDeviceManagementLevels: enum value[] expected";
+ case 0:
+ case 1:
+ case 2:
+ case 3:
+ break;
+ }
+ }
+ if (message.requireAdminApproval != null && message.hasOwnProperty("requireAdminApproval"))
+ if (typeof message.requireAdminApproval !== "boolean")
+ return "requireAdminApproval: boolean expected";
+ if (message.requireCorpOwned != null && message.hasOwnProperty("requireCorpOwned"))
+ if (typeof message.requireCorpOwned !== "boolean")
+ return "requireCorpOwned: boolean expected";
+ return null;
+ };
+
+ /**
+ * Creates a DevicePolicy message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.identity.accesscontextmanager.v1.DevicePolicy
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.identity.accesscontextmanager.v1.DevicePolicy} DevicePolicy
+ */
+ DevicePolicy.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.identity.accesscontextmanager.v1.DevicePolicy)
+ return object;
+ var message = new $root.google.identity.accesscontextmanager.v1.DevicePolicy();
+ if (object.requireScreenlock != null)
+ message.requireScreenlock = Boolean(object.requireScreenlock);
+ if (object.allowedEncryptionStatuses) {
+ if (!Array.isArray(object.allowedEncryptionStatuses))
+ throw TypeError(".google.identity.accesscontextmanager.v1.DevicePolicy.allowedEncryptionStatuses: array expected");
+ message.allowedEncryptionStatuses = [];
+ for (var i = 0; i < object.allowedEncryptionStatuses.length; ++i)
+ switch (object.allowedEncryptionStatuses[i]) {
+ default:
+ if (typeof object.allowedEncryptionStatuses[i] === "number") {
+ message.allowedEncryptionStatuses[i] = object.allowedEncryptionStatuses[i];
+ break;
+ }
+ case "ENCRYPTION_UNSPECIFIED":
+ case 0:
+ message.allowedEncryptionStatuses[i] = 0;
+ break;
+ case "ENCRYPTION_UNSUPPORTED":
+ case 1:
+ message.allowedEncryptionStatuses[i] = 1;
+ break;
+ case "UNENCRYPTED":
+ case 2:
+ message.allowedEncryptionStatuses[i] = 2;
+ break;
+ case "ENCRYPTED":
+ case 3:
+ message.allowedEncryptionStatuses[i] = 3;
+ break;
+ }
+ }
+ if (object.osConstraints) {
+ if (!Array.isArray(object.osConstraints))
+ throw TypeError(".google.identity.accesscontextmanager.v1.DevicePolicy.osConstraints: array expected");
+ message.osConstraints = [];
+ for (var i = 0; i < object.osConstraints.length; ++i) {
+ if (typeof object.osConstraints[i] !== "object")
+ throw TypeError(".google.identity.accesscontextmanager.v1.DevicePolicy.osConstraints: object expected");
+ message.osConstraints[i] = $root.google.identity.accesscontextmanager.v1.OsConstraint.fromObject(object.osConstraints[i]);
+ }
+ }
+ if (object.allowedDeviceManagementLevels) {
+ if (!Array.isArray(object.allowedDeviceManagementLevels))
+ throw TypeError(".google.identity.accesscontextmanager.v1.DevicePolicy.allowedDeviceManagementLevels: array expected");
+ message.allowedDeviceManagementLevels = [];
+ for (var i = 0; i < object.allowedDeviceManagementLevels.length; ++i)
+ switch (object.allowedDeviceManagementLevels[i]) {
+ default:
+ if (typeof object.allowedDeviceManagementLevels[i] === "number") {
+ message.allowedDeviceManagementLevels[i] = object.allowedDeviceManagementLevels[i];
+ break;
+ }
+ case "MANAGEMENT_UNSPECIFIED":
+ case 0:
+ message.allowedDeviceManagementLevels[i] = 0;
+ break;
+ case "NONE":
+ case 1:
+ message.allowedDeviceManagementLevels[i] = 1;
+ break;
+ case "BASIC":
+ case 2:
+ message.allowedDeviceManagementLevels[i] = 2;
+ break;
+ case "COMPLETE":
+ case 3:
+ message.allowedDeviceManagementLevels[i] = 3;
+ break;
+ }
+ }
+ if (object.requireAdminApproval != null)
+ message.requireAdminApproval = Boolean(object.requireAdminApproval);
+ if (object.requireCorpOwned != null)
+ message.requireCorpOwned = Boolean(object.requireCorpOwned);
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a DevicePolicy message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.identity.accesscontextmanager.v1.DevicePolicy
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.DevicePolicy} message DevicePolicy
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ DevicePolicy.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.arrays || options.defaults) {
+ object.allowedEncryptionStatuses = [];
+ object.osConstraints = [];
+ object.allowedDeviceManagementLevels = [];
+ }
+ if (options.defaults) {
+ object.requireScreenlock = false;
+ object.requireAdminApproval = false;
+ object.requireCorpOwned = false;
+ }
+ if (message.requireScreenlock != null && message.hasOwnProperty("requireScreenlock"))
+ object.requireScreenlock = message.requireScreenlock;
+ if (message.allowedEncryptionStatuses && message.allowedEncryptionStatuses.length) {
+ object.allowedEncryptionStatuses = [];
+ for (var j = 0; j < message.allowedEncryptionStatuses.length; ++j)
+ object.allowedEncryptionStatuses[j] = options.enums === String ? $root.google.identity.accesscontextmanager.type.DeviceEncryptionStatus[message.allowedEncryptionStatuses[j]] === undefined ? message.allowedEncryptionStatuses[j] : $root.google.identity.accesscontextmanager.type.DeviceEncryptionStatus[message.allowedEncryptionStatuses[j]] : message.allowedEncryptionStatuses[j];
+ }
+ if (message.osConstraints && message.osConstraints.length) {
+ object.osConstraints = [];
+ for (var j = 0; j < message.osConstraints.length; ++j)
+ object.osConstraints[j] = $root.google.identity.accesscontextmanager.v1.OsConstraint.toObject(message.osConstraints[j], options);
+ }
+ if (message.allowedDeviceManagementLevels && message.allowedDeviceManagementLevels.length) {
+ object.allowedDeviceManagementLevels = [];
+ for (var j = 0; j < message.allowedDeviceManagementLevels.length; ++j)
+ object.allowedDeviceManagementLevels[j] = options.enums === String ? $root.google.identity.accesscontextmanager.type.DeviceManagementLevel[message.allowedDeviceManagementLevels[j]] === undefined ? message.allowedDeviceManagementLevels[j] : $root.google.identity.accesscontextmanager.type.DeviceManagementLevel[message.allowedDeviceManagementLevels[j]] : message.allowedDeviceManagementLevels[j];
+ }
+ if (message.requireAdminApproval != null && message.hasOwnProperty("requireAdminApproval"))
+ object.requireAdminApproval = message.requireAdminApproval;
+ if (message.requireCorpOwned != null && message.hasOwnProperty("requireCorpOwned"))
+ object.requireCorpOwned = message.requireCorpOwned;
+ return object;
+ };
+
+ /**
+ * Converts this DevicePolicy to JSON.
+ * @function toJSON
+ * @memberof google.identity.accesscontextmanager.v1.DevicePolicy
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ DevicePolicy.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for DevicePolicy
+ * @function getTypeUrl
+ * @memberof google.identity.accesscontextmanager.v1.DevicePolicy
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ DevicePolicy.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.identity.accesscontextmanager.v1.DevicePolicy";
+ };
+
+ return DevicePolicy;
+ })();
+
+ v1.OsConstraint = (function() {
+
+ /**
+ * Properties of an OsConstraint.
+ * @memberof google.identity.accesscontextmanager.v1
+ * @interface IOsConstraint
+ * @property {google.identity.accesscontextmanager.type.OsType|null} [osType] OsConstraint osType
+ * @property {string|null} [minimumVersion] OsConstraint minimumVersion
+ * @property {boolean|null} [requireVerifiedChromeOs] OsConstraint requireVerifiedChromeOs
+ */
+
+ /**
+ * Constructs a new OsConstraint.
+ * @memberof google.identity.accesscontextmanager.v1
+ * @classdesc Represents an OsConstraint.
+ * @implements IOsConstraint
+ * @constructor
+ * @param {google.identity.accesscontextmanager.v1.IOsConstraint=} [properties] Properties to set
+ */
+ function OsConstraint(properties) {
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * OsConstraint osType.
+ * @member {google.identity.accesscontextmanager.type.OsType} osType
+ * @memberof google.identity.accesscontextmanager.v1.OsConstraint
+ * @instance
+ */
+ OsConstraint.prototype.osType = 0;
+
+ /**
+ * OsConstraint minimumVersion.
+ * @member {string} minimumVersion
+ * @memberof google.identity.accesscontextmanager.v1.OsConstraint
+ * @instance
+ */
+ OsConstraint.prototype.minimumVersion = "";
+
+ /**
+ * OsConstraint requireVerifiedChromeOs.
+ * @member {boolean} requireVerifiedChromeOs
+ * @memberof google.identity.accesscontextmanager.v1.OsConstraint
+ * @instance
+ */
+ OsConstraint.prototype.requireVerifiedChromeOs = false;
+
+ /**
+ * Creates a new OsConstraint instance using the specified properties.
+ * @function create
+ * @memberof google.identity.accesscontextmanager.v1.OsConstraint
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.IOsConstraint=} [properties] Properties to set
+ * @returns {google.identity.accesscontextmanager.v1.OsConstraint} OsConstraint instance
+ */
+ OsConstraint.create = function create(properties) {
+ return new OsConstraint(properties);
+ };
+
+ /**
+ * Encodes the specified OsConstraint message. Does not implicitly {@link google.identity.accesscontextmanager.v1.OsConstraint.verify|verify} messages.
+ * @function encode
+ * @memberof google.identity.accesscontextmanager.v1.OsConstraint
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.IOsConstraint} message OsConstraint message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ OsConstraint.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.osType != null && Object.hasOwnProperty.call(message, "osType"))
+ writer.uint32(/* id 1, wireType 0 =*/8).int32(message.osType);
+ if (message.minimumVersion != null && Object.hasOwnProperty.call(message, "minimumVersion"))
+ writer.uint32(/* id 2, wireType 2 =*/18).string(message.minimumVersion);
+ if (message.requireVerifiedChromeOs != null && Object.hasOwnProperty.call(message, "requireVerifiedChromeOs"))
+ writer.uint32(/* id 3, wireType 0 =*/24).bool(message.requireVerifiedChromeOs);
+ return writer;
+ };
+
+ /**
+ * Encodes the specified OsConstraint message, length delimited. Does not implicitly {@link google.identity.accesscontextmanager.v1.OsConstraint.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.identity.accesscontextmanager.v1.OsConstraint
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.IOsConstraint} message OsConstraint message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ OsConstraint.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes an OsConstraint message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.identity.accesscontextmanager.v1.OsConstraint
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.identity.accesscontextmanager.v1.OsConstraint} OsConstraint
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ OsConstraint.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.identity.accesscontextmanager.v1.OsConstraint();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.osType = reader.int32();
+ break;
+ }
+ case 2: {
+ message.minimumVersion = reader.string();
+ break;
+ }
+ case 3: {
+ message.requireVerifiedChromeOs = reader.bool();
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes an OsConstraint message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.identity.accesscontextmanager.v1.OsConstraint
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.identity.accesscontextmanager.v1.OsConstraint} OsConstraint
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ OsConstraint.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies an OsConstraint message.
+ * @function verify
+ * @memberof google.identity.accesscontextmanager.v1.OsConstraint
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ OsConstraint.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.osType != null && message.hasOwnProperty("osType"))
+ switch (message.osType) {
+ default:
+ return "osType: enum value expected";
+ case 0:
+ case 1:
+ case 2:
+ case 3:
+ case 6:
+ case 4:
+ case 5:
+ break;
+ }
+ if (message.minimumVersion != null && message.hasOwnProperty("minimumVersion"))
+ if (!$util.isString(message.minimumVersion))
+ return "minimumVersion: string expected";
+ if (message.requireVerifiedChromeOs != null && message.hasOwnProperty("requireVerifiedChromeOs"))
+ if (typeof message.requireVerifiedChromeOs !== "boolean")
+ return "requireVerifiedChromeOs: boolean expected";
+ return null;
+ };
+
+ /**
+ * Creates an OsConstraint message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.identity.accesscontextmanager.v1.OsConstraint
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.identity.accesscontextmanager.v1.OsConstraint} OsConstraint
+ */
+ OsConstraint.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.identity.accesscontextmanager.v1.OsConstraint)
+ return object;
+ var message = new $root.google.identity.accesscontextmanager.v1.OsConstraint();
+ switch (object.osType) {
+ default:
+ if (typeof object.osType === "number") {
+ message.osType = object.osType;
+ break;
+ }
+ break;
+ case "OS_UNSPECIFIED":
+ case 0:
+ message.osType = 0;
+ break;
+ case "DESKTOP_MAC":
+ case 1:
+ message.osType = 1;
+ break;
+ case "DESKTOP_WINDOWS":
+ case 2:
+ message.osType = 2;
+ break;
+ case "DESKTOP_LINUX":
+ case 3:
+ message.osType = 3;
+ break;
+ case "DESKTOP_CHROME_OS":
+ case 6:
+ message.osType = 6;
+ break;
+ case "ANDROID":
+ case 4:
+ message.osType = 4;
+ break;
+ case "IOS":
+ case 5:
+ message.osType = 5;
+ break;
+ }
+ if (object.minimumVersion != null)
+ message.minimumVersion = String(object.minimumVersion);
+ if (object.requireVerifiedChromeOs != null)
+ message.requireVerifiedChromeOs = Boolean(object.requireVerifiedChromeOs);
+ return message;
+ };
+
+ /**
+ * Creates a plain object from an OsConstraint message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.identity.accesscontextmanager.v1.OsConstraint
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.OsConstraint} message OsConstraint
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ OsConstraint.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.defaults) {
+ object.osType = options.enums === String ? "OS_UNSPECIFIED" : 0;
+ object.minimumVersion = "";
+ object.requireVerifiedChromeOs = false;
+ }
+ if (message.osType != null && message.hasOwnProperty("osType"))
+ object.osType = options.enums === String ? $root.google.identity.accesscontextmanager.type.OsType[message.osType] === undefined ? message.osType : $root.google.identity.accesscontextmanager.type.OsType[message.osType] : message.osType;
+ if (message.minimumVersion != null && message.hasOwnProperty("minimumVersion"))
+ object.minimumVersion = message.minimumVersion;
+ if (message.requireVerifiedChromeOs != null && message.hasOwnProperty("requireVerifiedChromeOs"))
+ object.requireVerifiedChromeOs = message.requireVerifiedChromeOs;
+ return object;
+ };
+
+ /**
+ * Converts this OsConstraint to JSON.
+ * @function toJSON
+ * @memberof google.identity.accesscontextmanager.v1.OsConstraint
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ OsConstraint.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for OsConstraint
+ * @function getTypeUrl
+ * @memberof google.identity.accesscontextmanager.v1.OsConstraint
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ OsConstraint.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.identity.accesscontextmanager.v1.OsConstraint";
+ };
+
+ return OsConstraint;
+ })();
+
+ v1.AccessPolicy = (function() {
+
+ /**
+ * Properties of an AccessPolicy.
+ * @memberof google.identity.accesscontextmanager.v1
+ * @interface IAccessPolicy
+ * @property {string|null} [name] AccessPolicy name
+ * @property {string|null} [parent] AccessPolicy parent
+ * @property {string|null} [title] AccessPolicy title
+ * @property {Array.|null} [scopes] AccessPolicy scopes
+ * @property {google.protobuf.ITimestamp|null} [createTime] AccessPolicy createTime
+ * @property {google.protobuf.ITimestamp|null} [updateTime] AccessPolicy updateTime
+ * @property {string|null} [etag] AccessPolicy etag
+ */
+
+ /**
+ * Constructs a new AccessPolicy.
+ * @memberof google.identity.accesscontextmanager.v1
+ * @classdesc Represents an AccessPolicy.
+ * @implements IAccessPolicy
+ * @constructor
+ * @param {google.identity.accesscontextmanager.v1.IAccessPolicy=} [properties] Properties to set
+ */
+ function AccessPolicy(properties) {
+ this.scopes = [];
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * AccessPolicy name.
+ * @member {string} name
+ * @memberof google.identity.accesscontextmanager.v1.AccessPolicy
+ * @instance
+ */
+ AccessPolicy.prototype.name = "";
+
+ /**
+ * AccessPolicy parent.
+ * @member {string} parent
+ * @memberof google.identity.accesscontextmanager.v1.AccessPolicy
+ * @instance
+ */
+ AccessPolicy.prototype.parent = "";
+
+ /**
+ * AccessPolicy title.
+ * @member {string} title
+ * @memberof google.identity.accesscontextmanager.v1.AccessPolicy
+ * @instance
+ */
+ AccessPolicy.prototype.title = "";
+
+ /**
+ * AccessPolicy scopes.
+ * @member {Array.} scopes
+ * @memberof google.identity.accesscontextmanager.v1.AccessPolicy
+ * @instance
+ */
+ AccessPolicy.prototype.scopes = $util.emptyArray;
+
+ /**
+ * AccessPolicy createTime.
+ * @member {google.protobuf.ITimestamp|null|undefined} createTime
+ * @memberof google.identity.accesscontextmanager.v1.AccessPolicy
+ * @instance
+ */
+ AccessPolicy.prototype.createTime = null;
+
+ /**
+ * AccessPolicy updateTime.
+ * @member {google.protobuf.ITimestamp|null|undefined} updateTime
+ * @memberof google.identity.accesscontextmanager.v1.AccessPolicy
+ * @instance
+ */
+ AccessPolicy.prototype.updateTime = null;
+
+ /**
+ * AccessPolicy etag.
+ * @member {string} etag
+ * @memberof google.identity.accesscontextmanager.v1.AccessPolicy
+ * @instance
+ */
+ AccessPolicy.prototype.etag = "";
+
+ /**
+ * Creates a new AccessPolicy instance using the specified properties.
+ * @function create
+ * @memberof google.identity.accesscontextmanager.v1.AccessPolicy
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.IAccessPolicy=} [properties] Properties to set
+ * @returns {google.identity.accesscontextmanager.v1.AccessPolicy} AccessPolicy instance
+ */
+ AccessPolicy.create = function create(properties) {
+ return new AccessPolicy(properties);
+ };
+
+ /**
+ * Encodes the specified AccessPolicy message. Does not implicitly {@link google.identity.accesscontextmanager.v1.AccessPolicy.verify|verify} messages.
+ * @function encode
+ * @memberof google.identity.accesscontextmanager.v1.AccessPolicy
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.IAccessPolicy} message AccessPolicy message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ AccessPolicy.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.name != null && Object.hasOwnProperty.call(message, "name"))
+ writer.uint32(/* id 1, wireType 2 =*/10).string(message.name);
+ if (message.parent != null && Object.hasOwnProperty.call(message, "parent"))
+ writer.uint32(/* id 2, wireType 2 =*/18).string(message.parent);
+ if (message.title != null && Object.hasOwnProperty.call(message, "title"))
+ writer.uint32(/* id 3, wireType 2 =*/26).string(message.title);
+ if (message.createTime != null && Object.hasOwnProperty.call(message, "createTime"))
+ $root.google.protobuf.Timestamp.encode(message.createTime, writer.uint32(/* id 4, wireType 2 =*/34).fork()).ldelim();
+ if (message.updateTime != null && Object.hasOwnProperty.call(message, "updateTime"))
+ $root.google.protobuf.Timestamp.encode(message.updateTime, writer.uint32(/* id 5, wireType 2 =*/42).fork()).ldelim();
+ if (message.etag != null && Object.hasOwnProperty.call(message, "etag"))
+ writer.uint32(/* id 6, wireType 2 =*/50).string(message.etag);
+ if (message.scopes != null && message.scopes.length)
+ for (var i = 0; i < message.scopes.length; ++i)
+ writer.uint32(/* id 7, wireType 2 =*/58).string(message.scopes[i]);
+ return writer;
+ };
+
+ /**
+ * Encodes the specified AccessPolicy message, length delimited. Does not implicitly {@link google.identity.accesscontextmanager.v1.AccessPolicy.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.identity.accesscontextmanager.v1.AccessPolicy
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.IAccessPolicy} message AccessPolicy message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ AccessPolicy.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes an AccessPolicy message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.identity.accesscontextmanager.v1.AccessPolicy
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.identity.accesscontextmanager.v1.AccessPolicy} AccessPolicy
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ AccessPolicy.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.identity.accesscontextmanager.v1.AccessPolicy();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.name = reader.string();
+ break;
+ }
+ case 2: {
+ message.parent = reader.string();
+ break;
+ }
+ case 3: {
+ message.title = reader.string();
+ break;
+ }
+ case 7: {
+ if (!(message.scopes && message.scopes.length))
+ message.scopes = [];
+ message.scopes.push(reader.string());
+ break;
+ }
+ case 4: {
+ message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32());
+ break;
+ }
+ case 5: {
+ message.updateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32());
+ break;
+ }
+ case 6: {
+ message.etag = reader.string();
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes an AccessPolicy message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.identity.accesscontextmanager.v1.AccessPolicy
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.identity.accesscontextmanager.v1.AccessPolicy} AccessPolicy
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ AccessPolicy.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies an AccessPolicy message.
+ * @function verify
+ * @memberof google.identity.accesscontextmanager.v1.AccessPolicy
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ AccessPolicy.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.name != null && message.hasOwnProperty("name"))
+ if (!$util.isString(message.name))
+ return "name: string expected";
+ if (message.parent != null && message.hasOwnProperty("parent"))
+ if (!$util.isString(message.parent))
+ return "parent: string expected";
+ if (message.title != null && message.hasOwnProperty("title"))
+ if (!$util.isString(message.title))
+ return "title: string expected";
+ if (message.scopes != null && message.hasOwnProperty("scopes")) {
+ if (!Array.isArray(message.scopes))
+ return "scopes: array expected";
+ for (var i = 0; i < message.scopes.length; ++i)
+ if (!$util.isString(message.scopes[i]))
+ return "scopes: 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.etag != null && message.hasOwnProperty("etag"))
+ if (!$util.isString(message.etag))
+ return "etag: string expected";
+ return null;
+ };
+
+ /**
+ * Creates an AccessPolicy message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.identity.accesscontextmanager.v1.AccessPolicy
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.identity.accesscontextmanager.v1.AccessPolicy} AccessPolicy
+ */
+ AccessPolicy.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.identity.accesscontextmanager.v1.AccessPolicy)
+ return object;
+ var message = new $root.google.identity.accesscontextmanager.v1.AccessPolicy();
+ if (object.name != null)
+ message.name = String(object.name);
+ if (object.parent != null)
+ message.parent = String(object.parent);
+ if (object.title != null)
+ message.title = String(object.title);
+ if (object.scopes) {
+ if (!Array.isArray(object.scopes))
+ throw TypeError(".google.identity.accesscontextmanager.v1.AccessPolicy.scopes: array expected");
+ message.scopes = [];
+ for (var i = 0; i < object.scopes.length; ++i)
+ message.scopes[i] = String(object.scopes[i]);
+ }
+ if (object.createTime != null) {
+ if (typeof object.createTime !== "object")
+ throw TypeError(".google.identity.accesscontextmanager.v1.AccessPolicy.createTime: object expected");
+ message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime);
+ }
+ if (object.updateTime != null) {
+ if (typeof object.updateTime !== "object")
+ throw TypeError(".google.identity.accesscontextmanager.v1.AccessPolicy.updateTime: object expected");
+ message.updateTime = $root.google.protobuf.Timestamp.fromObject(object.updateTime);
+ }
+ if (object.etag != null)
+ message.etag = String(object.etag);
+ return message;
+ };
+
+ /**
+ * Creates a plain object from an AccessPolicy message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.identity.accesscontextmanager.v1.AccessPolicy
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.AccessPolicy} message AccessPolicy
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ AccessPolicy.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.arrays || options.defaults)
+ object.scopes = [];
+ if (options.defaults) {
+ object.name = "";
+ object.parent = "";
+ object.title = "";
+ object.createTime = null;
+ object.updateTime = null;
+ object.etag = "";
+ }
+ if (message.name != null && message.hasOwnProperty("name"))
+ object.name = message.name;
+ if (message.parent != null && message.hasOwnProperty("parent"))
+ object.parent = message.parent;
+ if (message.title != null && message.hasOwnProperty("title"))
+ object.title = message.title;
+ if (message.createTime != null && message.hasOwnProperty("createTime"))
+ object.createTime = $root.google.protobuf.Timestamp.toObject(message.createTime, options);
+ if (message.updateTime != null && message.hasOwnProperty("updateTime"))
+ object.updateTime = $root.google.protobuf.Timestamp.toObject(message.updateTime, options);
+ if (message.etag != null && message.hasOwnProperty("etag"))
+ object.etag = message.etag;
+ if (message.scopes && message.scopes.length) {
+ object.scopes = [];
+ for (var j = 0; j < message.scopes.length; ++j)
+ object.scopes[j] = message.scopes[j];
+ }
+ return object;
+ };
+
+ /**
+ * Converts this AccessPolicy to JSON.
+ * @function toJSON
+ * @memberof google.identity.accesscontextmanager.v1.AccessPolicy
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ AccessPolicy.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for AccessPolicy
+ * @function getTypeUrl
+ * @memberof google.identity.accesscontextmanager.v1.AccessPolicy
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ AccessPolicy.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.identity.accesscontextmanager.v1.AccessPolicy";
+ };
+
+ return AccessPolicy;
+ })();
+
+ v1.GcpUserAccessBinding = (function() {
+
+ /**
+ * Properties of a GcpUserAccessBinding.
+ * @memberof google.identity.accesscontextmanager.v1
+ * @interface IGcpUserAccessBinding
+ * @property {string|null} [name] GcpUserAccessBinding name
+ * @property {string|null} [groupKey] GcpUserAccessBinding groupKey
+ * @property {Array.|null} [accessLevels] GcpUserAccessBinding accessLevels
+ */
+
+ /**
+ * Constructs a new GcpUserAccessBinding.
+ * @memberof google.identity.accesscontextmanager.v1
+ * @classdesc Represents a GcpUserAccessBinding.
+ * @implements IGcpUserAccessBinding
+ * @constructor
+ * @param {google.identity.accesscontextmanager.v1.IGcpUserAccessBinding=} [properties] Properties to set
+ */
+ function GcpUserAccessBinding(properties) {
+ this.accessLevels = [];
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * GcpUserAccessBinding name.
+ * @member {string} name
+ * @memberof google.identity.accesscontextmanager.v1.GcpUserAccessBinding
+ * @instance
+ */
+ GcpUserAccessBinding.prototype.name = "";
+
+ /**
+ * GcpUserAccessBinding groupKey.
+ * @member {string} groupKey
+ * @memberof google.identity.accesscontextmanager.v1.GcpUserAccessBinding
+ * @instance
+ */
+ GcpUserAccessBinding.prototype.groupKey = "";
+
+ /**
+ * GcpUserAccessBinding accessLevels.
+ * @member {Array.} accessLevels
+ * @memberof google.identity.accesscontextmanager.v1.GcpUserAccessBinding
+ * @instance
+ */
+ GcpUserAccessBinding.prototype.accessLevels = $util.emptyArray;
+
+ /**
+ * Creates a new GcpUserAccessBinding instance using the specified properties.
+ * @function create
+ * @memberof google.identity.accesscontextmanager.v1.GcpUserAccessBinding
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.IGcpUserAccessBinding=} [properties] Properties to set
+ * @returns {google.identity.accesscontextmanager.v1.GcpUserAccessBinding} GcpUserAccessBinding instance
+ */
+ GcpUserAccessBinding.create = function create(properties) {
+ return new GcpUserAccessBinding(properties);
+ };
+
+ /**
+ * Encodes the specified GcpUserAccessBinding message. Does not implicitly {@link google.identity.accesscontextmanager.v1.GcpUserAccessBinding.verify|verify} messages.
+ * @function encode
+ * @memberof google.identity.accesscontextmanager.v1.GcpUserAccessBinding
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.IGcpUserAccessBinding} message GcpUserAccessBinding message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ GcpUserAccessBinding.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.groupKey != null && Object.hasOwnProperty.call(message, "groupKey"))
+ writer.uint32(/* id 2, wireType 2 =*/18).string(message.groupKey);
+ if (message.accessLevels != null && message.accessLevels.length)
+ for (var i = 0; i < message.accessLevels.length; ++i)
+ writer.uint32(/* id 3, wireType 2 =*/26).string(message.accessLevels[i]);
+ return writer;
+ };
+
+ /**
+ * Encodes the specified GcpUserAccessBinding message, length delimited. Does not implicitly {@link google.identity.accesscontextmanager.v1.GcpUserAccessBinding.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.identity.accesscontextmanager.v1.GcpUserAccessBinding
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.IGcpUserAccessBinding} message GcpUserAccessBinding message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ GcpUserAccessBinding.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a GcpUserAccessBinding message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.identity.accesscontextmanager.v1.GcpUserAccessBinding
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.identity.accesscontextmanager.v1.GcpUserAccessBinding} GcpUserAccessBinding
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ GcpUserAccessBinding.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.identity.accesscontextmanager.v1.GcpUserAccessBinding();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.name = reader.string();
+ break;
+ }
+ case 2: {
+ message.groupKey = reader.string();
+ break;
+ }
+ case 3: {
+ if (!(message.accessLevels && message.accessLevels.length))
+ message.accessLevels = [];
+ message.accessLevels.push(reader.string());
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a GcpUserAccessBinding message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.identity.accesscontextmanager.v1.GcpUserAccessBinding
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.identity.accesscontextmanager.v1.GcpUserAccessBinding} GcpUserAccessBinding
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ GcpUserAccessBinding.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a GcpUserAccessBinding message.
+ * @function verify
+ * @memberof google.identity.accesscontextmanager.v1.GcpUserAccessBinding
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ GcpUserAccessBinding.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.groupKey != null && message.hasOwnProperty("groupKey"))
+ if (!$util.isString(message.groupKey))
+ return "groupKey: string expected";
+ if (message.accessLevels != null && message.hasOwnProperty("accessLevels")) {
+ if (!Array.isArray(message.accessLevels))
+ return "accessLevels: array expected";
+ for (var i = 0; i < message.accessLevels.length; ++i)
+ if (!$util.isString(message.accessLevels[i]))
+ return "accessLevels: string[] expected";
+ }
+ return null;
+ };
+
+ /**
+ * Creates a GcpUserAccessBinding message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.identity.accesscontextmanager.v1.GcpUserAccessBinding
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.identity.accesscontextmanager.v1.GcpUserAccessBinding} GcpUserAccessBinding
+ */
+ GcpUserAccessBinding.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.identity.accesscontextmanager.v1.GcpUserAccessBinding)
+ return object;
+ var message = new $root.google.identity.accesscontextmanager.v1.GcpUserAccessBinding();
+ if (object.name != null)
+ message.name = String(object.name);
+ if (object.groupKey != null)
+ message.groupKey = String(object.groupKey);
+ if (object.accessLevels) {
+ if (!Array.isArray(object.accessLevels))
+ throw TypeError(".google.identity.accesscontextmanager.v1.GcpUserAccessBinding.accessLevels: array expected");
+ message.accessLevels = [];
+ for (var i = 0; i < object.accessLevels.length; ++i)
+ message.accessLevels[i] = String(object.accessLevels[i]);
+ }
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a GcpUserAccessBinding message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.identity.accesscontextmanager.v1.GcpUserAccessBinding
+ * @static
+ * @param {google.identity.accesscontextmanager.v1.GcpUserAccessBinding} message GcpUserAccessBinding
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.