diff --git a/.github/.OwlBot.lock.yaml b/.github/.OwlBot.lock.yaml
index a8bdae35da5..36097307d81 100644
--- a/.github/.OwlBot.lock.yaml
+++ b/.github/.OwlBot.lock.yaml
@@ -13,4 +13,4 @@
# limitations under the License.
docker:
image: gcr.io/cloud-devrel-public-resources/owlbot-nodejs-mono-repo:latest
- digest: sha256:2fe57986c24050a5a5a2f51a3c609b28eaa88eebe16d47c7ffcbfed7bbd38ac0
+ digest: sha256:85bf089b45ad70d1ec02d9d628a0051a06bb63fb79f6b740f787d1a34347f732
diff --git a/.release-please-manifest.json b/.release-please-manifest.json
index 8c3e55041b9..1c680eaa626 100644
--- a/.release-please-manifest.json
+++ b/.release-please-manifest.json
@@ -104,6 +104,7 @@
"packages/google-cloud-video-stitcher": "0.3.0",
"packages/google-cloud-video-transcoder": "2.3.0",
"packages/google-cloud-videointelligence": "4.1.1",
+ "packages/google-cloud-vision": "3.1.0",
"packages/google-cloud-vmmigration": "2.2.1",
"packages/google-cloud-vmwareengine": "0.1.0",
"packages/google-cloud-vpcaccess": "2.1.3",
diff --git a/packages/google-cloud-vision/.OwlBot.yaml b/packages/google-cloud-vision/.OwlBot.yaml
new file mode 100644
index 00000000000..119d438e12d
--- /dev/null
+++ b/packages/google-cloud-vision/.OwlBot.yaml
@@ -0,0 +1,24 @@
+# Copyright 2021 Google LLC
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+
+deep-remove-regex:
+ - /owl-bot-staging
+
+deep-copy-regex:
+ - source: /google/cloud/vision/(v.*)/.*-nodejs
+ dest: /owl-bot-staging/google-cloud-vision/$1
+
+begin-after-commit-hash: fb91803ccef5d7c695139b22788b309e2197856b
+
diff --git a/packages/google-cloud-vision/.eslintignore b/packages/google-cloud-vision/.eslintignore
new file mode 100644
index 00000000000..ea5b04aebe6
--- /dev/null
+++ b/packages/google-cloud-vision/.eslintignore
@@ -0,0 +1,7 @@
+**/node_modules
+**/coverage
+test/fixtures
+build/
+docs/
+protos/
+samples/generated/
diff --git a/packages/google-cloud-vision/.eslintrc.json b/packages/google-cloud-vision/.eslintrc.json
new file mode 100644
index 00000000000..78215349546
--- /dev/null
+++ b/packages/google-cloud-vision/.eslintrc.json
@@ -0,0 +1,3 @@
+{
+ "extends": "./node_modules/gts"
+}
diff --git a/packages/google-cloud-vision/.gitattributes b/packages/google-cloud-vision/.gitattributes
new file mode 100644
index 00000000000..33739cb74e4
--- /dev/null
+++ b/packages/google-cloud-vision/.gitattributes
@@ -0,0 +1,4 @@
+*.ts text eol=lf
+*.js text eol=lf
+protos/* linguist-generated
+**/api-extractor.json linguist-language=JSON-with-Comments
diff --git a/packages/google-cloud-vision/.gitignore b/packages/google-cloud-vision/.gitignore
new file mode 100644
index 00000000000..5d32b23782f
--- /dev/null
+++ b/packages/google-cloud-vision/.gitignore
@@ -0,0 +1,14 @@
+**/*.log
+**/node_modules
+.coverage
+coverage
+.nyc_output
+docs/
+out/
+build/
+system-test/secrets.js
+system-test/*key.json
+*.lock
+.DS_Store
+package-lock.json
+__pycache__
diff --git a/packages/google-cloud-vision/.jsdoc.js b/packages/google-cloud-vision/.jsdoc.js
new file mode 100644
index 00000000000..d0b1b99b69e
--- /dev/null
+++ b/packages/google-cloud-vision/.jsdoc.js
@@ -0,0 +1,55 @@
+// Copyright 2023 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 2023 Google LLC',
+ includeDate: false,
+ sourceFiles: false,
+ systemName: '@google-cloud/vision',
+ theme: 'lumen',
+ default: {
+ outputSourceFiles: false
+ }
+ },
+ markdown: {
+ idInHeadings: true
+ }
+};
diff --git a/packages/google-cloud-vision/.mocharc.js b/packages/google-cloud-vision/.mocharc.js
new file mode 100644
index 00000000000..49e7e228701
--- /dev/null
+++ b/packages/google-cloud-vision/.mocharc.js
@@ -0,0 +1,29 @@
+// Copyright 2023 Google LLC
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+const config = {
+ "enable-source-maps": true,
+ "throw-deprecation": true,
+ "timeout": 10000,
+ "recursive": true
+}
+if (process.env.MOCHA_THROW_DEPRECATION === 'false') {
+ delete config['throw-deprecation'];
+}
+if (process.env.MOCHA_REPORTER) {
+ config.reporter = process.env.MOCHA_REPORTER;
+}
+if (process.env.MOCHA_REPORTER_OUTPUT) {
+ config['reporter-option'] = `output=${process.env.MOCHA_REPORTER_OUTPUT}`;
+}
+module.exports = config
diff --git a/packages/google-cloud-vision/.nycrc b/packages/google-cloud-vision/.nycrc
new file mode 100644
index 00000000000..b18d5472b62
--- /dev/null
+++ b/packages/google-cloud-vision/.nycrc
@@ -0,0 +1,24 @@
+{
+ "report-dir": "./.coverage",
+ "reporter": ["text", "lcov"],
+ "exclude": [
+ "**/*-test",
+ "**/.coverage",
+ "**/apis",
+ "**/benchmark",
+ "**/conformance",
+ "**/docs",
+ "**/samples",
+ "**/scripts",
+ "**/protos",
+ "**/test",
+ "**/*.d.ts",
+ ".jsdoc.js",
+ "**/.jsdoc.js",
+ "karma.conf.js",
+ "webpack-tests.config.js",
+ "webpack.config.js"
+ ],
+ "exclude-after-remap": false,
+ "all": true
+}
diff --git a/packages/google-cloud-vision/.prettierignore b/packages/google-cloud-vision/.prettierignore
new file mode 100644
index 00000000000..9340ad9b86d
--- /dev/null
+++ b/packages/google-cloud-vision/.prettierignore
@@ -0,0 +1,6 @@
+**/node_modules
+**/coverage
+test/fixtures
+build/
+docs/
+protos/
diff --git a/packages/google-cloud-vision/.prettierrc.js b/packages/google-cloud-vision/.prettierrc.js
new file mode 100644
index 00000000000..1e6cec783e4
--- /dev/null
+++ b/packages/google-cloud-vision/.prettierrc.js
@@ -0,0 +1,17 @@
+// Copyright 2023 Google LLC
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// https://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+module.exports = {
+ ...require('gts/.prettierrc.json')
+}
diff --git a/packages/google-cloud-vision/.repo-metadata.json b/packages/google-cloud-vision/.repo-metadata.json
new file mode 100644
index 00000000000..3438e78d10c
--- /dev/null
+++ b/packages/google-cloud-vision/.repo-metadata.json
@@ -0,0 +1,17 @@
+{
+ "issue_tracker": "https://issuetracker.google.com/savedsearches/559765",
+ "distribution_name": "@google-cloud/vision",
+ "product_documentation": "https://cloud.google.com/vision",
+ "api_id": "vision.googleapis.com",
+ "client_documentation": "https://cloud.google.com/nodejs/docs/reference/vision/latest",
+ "repo": "googleapis/google-cloud-node",
+ "release_level": "stable",
+ "requires_billing": true,
+ "name_pretty": "Google Cloud Vision API",
+ "name": "vision",
+ "codeowner_team": "@googleapis/ml-apis",
+ "default_version": "v1",
+ "language": "nodejs",
+ "api_shortname": "vision",
+ "library_type": "GAPIC_COMBO"
+}
diff --git a/packages/google-cloud-vision/CHANGELOG.md b/packages/google-cloud-vision/CHANGELOG.md
new file mode 100644
index 00000000000..91063880bcf
--- /dev/null
+++ b/packages/google-cloud-vision/CHANGELOG.md
@@ -0,0 +1,627 @@
+# Changelog
+
+[npm history][1]
+
+[1]: https://www.npmjs.com/package/@google-cloud/nodejs-vision?activeTab=versions
+
+## [3.1.0](https://github.com/googleapis/nodejs-vision/compare/v3.0.1...v3.1.0) (2023-01-14)
+
+
+### Features
+
+* Added SuggestConversationSummary RPC ([#1081](https://github.com/googleapis/nodejs-vision/issues/1081)) ([e46aaec](https://github.com/googleapis/nodejs-vision/commit/e46aaec37c70c3fa05c7b390bb06fddde30fc4ee))
+
+
+### Bug Fixes
+
+* **deps:** Update dependency natural to v6 ([#1085](https://github.com/googleapis/nodejs-vision/issues/1085)) ([f9bdd84](https://github.com/googleapis/nodejs-vision/commit/f9bdd849ad0e9c0724deeb52eea8791a0186ed9d))
+* **deps:** Update dependency redis to ~4.5.0 ([#1072](https://github.com/googleapis/nodejs-vision/issues/1072)) ([109fed0](https://github.com/googleapis/nodejs-vision/commit/109fed01d6ddefe81e352861f482b207e79fd10b))
+* **deps:** Use google-gax v3.5.2 ([#1073](https://github.com/googleapis/nodejs-vision/issues/1073)) ([47281f6](https://github.com/googleapis/nodejs-vision/commit/47281f6bcf25d8223d065ec99b8db51624c34cbd))
+* Regenerated protos JS and TS definitions ([#1077](https://github.com/googleapis/nodejs-vision/issues/1077)) ([4f7610f](https://github.com/googleapis/nodejs-vision/commit/4f7610f253ceb694abfb41aa2a6a2e02493e1c52))
+
+## [3.0.1](https://github.com/googleapis/nodejs-vision/compare/v3.0.0...v3.0.1) (2022-09-21)
+
+
+### Bug Fixes
+
+* Preserve default values in x-goog-request-params header ([#1044](https://github.com/googleapis/nodejs-vision/issues/1044)) ([a5baeca](https://github.com/googleapis/nodejs-vision/commit/a5baeca8fc50b9d805b55515db493c86cff26299))
+
+## [3.0.0](https://github.com/googleapis/nodejs-vision/compare/v2.4.2...v3.0.0) (2022-09-01)
+
+
+### ⚠ BREAKING CHANGES
+
+* Update library to use Node 12 (#1016)
+* BatchAnnotateImagesRequest.requests is required (#1011)
+
+### Features
+
+* Add TextDetectionParams.advanced_ocr_options ([#1034](https://github.com/googleapis/nodejs-vision/issues/1034)) ([828f045](https://github.com/googleapis/nodejs-vision/commit/828f045563eff5668dc95f628745716978759788))
+* Support regapic LRO ([a5f8f72](https://github.com/googleapis/nodejs-vision/commit/a5f8f72328655c7959475d0258df164b576af570))
+
+
+### Bug Fixes
+
+* Allow passing gax instance to client constructor ([#1042](https://github.com/googleapis/nodejs-vision/issues/1042)) ([4cc32dc](https://github.com/googleapis/nodejs-vision/commit/4cc32dc2068cd9490b28a8869a1d6de6c7a7b0c3))
+* BatchAnnotateImagesRequest.requests is required ([#1011](https://github.com/googleapis/nodejs-vision/issues/1011)) ([574f43e](https://github.com/googleapis/nodejs-vision/commit/574f43ecfadab77aa992aae2a24e36a3bb9f7b22))
+* Better support for fallback mode ([#1037](https://github.com/googleapis/nodejs-vision/issues/1037)) ([ea578e7](https://github.com/googleapis/nodejs-vision/commit/ea578e784271fd2f68c330850f64d1d9e406625d))
+* Change import long to require ([#1038](https://github.com/googleapis/nodejs-vision/issues/1038)) ([b57b334](https://github.com/googleapis/nodejs-vision/commit/b57b334c35591e73f875ef61f375f452e78ce094))
+* **deps:** Update dependency redis to ~4.3.0 ([#1039](https://github.com/googleapis/nodejs-vision/issues/1039)) ([ea26d33](https://github.com/googleapis/nodejs-vision/commit/ea26d3349b1e2db8eb021924b1ee2406f135b712))
+* Do not import the whole google-gax from proto JS ([#1553](https://github.com/googleapis/nodejs-vision/issues/1553)) ([#1041](https://github.com/googleapis/nodejs-vision/issues/1041)) ([4de6e42](https://github.com/googleapis/nodejs-vision/commit/4de6e42aada9228574bc2f50d6b6e10f7f244b4d))
+* Remove pip install statements ([#1546](https://github.com/googleapis/nodejs-vision/issues/1546)) ([#1040](https://github.com/googleapis/nodejs-vision/issues/1040)) ([85f115f](https://github.com/googleapis/nodejs-vision/commit/85f115f31f9b26c64e7b2704e6f908b88673db86))
+
+
+### Build System
+
+* Update library to use Node 12 ([#1016](https://github.com/googleapis/nodejs-vision/issues/1016)) ([12bd0f6](https://github.com/googleapis/nodejs-vision/commit/12bd0f66db6c497eb8e2d8a8236dca95432043b8))
+
+### [2.4.2](https://www.github.com/googleapis/nodejs-vision/compare/v2.4.1...v2.4.2) (2022-01-06)
+
+
+### Bug Fixes
+
+* add types to package.json ([#977](https://www.github.com/googleapis/nodejs-vision/issues/977)) ([1cd056b](https://www.github.com/googleapis/nodejs-vision/commit/1cd056b97c851eac1726610c85193ddc85cbddb7))
+
+### [2.4.1](https://www.github.com/googleapis/nodejs-vision/compare/v2.4.0...v2.4.1) (2021-12-14)
+
+
+### Bug Fixes
+
+* comment about gcsUri ([#967](https://www.github.com/googleapis/nodejs-vision/issues/967)) ([abc4044](https://www.github.com/googleapis/nodejs-vision/commit/abc4044dc972746292dad107009bc67223b88f86))
+* **deps:** update dependency redis to v4 ([#966](https://www.github.com/googleapis/nodejs-vision/issues/966)) ([1584e4e](https://www.github.com/googleapis/nodejs-vision/commit/1584e4e65f56f66a968472f6b7dabf23393dc3f4))
+
+## [2.4.0](https://www.github.com/googleapis/nodejs-vision/compare/v2.3.8...v2.4.0) (2021-09-09)
+
+
+### Features
+
+* turns on self-signed JWT feature flag ([#942](https://www.github.com/googleapis/nodejs-vision/issues/942)) ([c0558c7](https://www.github.com/googleapis/nodejs-vision/commit/c0558c7ec2097c713cf591ae985eb5c8f7f7435a))
+
+
+### Bug Fixes
+
+* **build:** migrate to using main branch ([#947](https://www.github.com/googleapis/nodejs-vision/issues/947)) ([f1ce40f](https://www.github.com/googleapis/nodejs-vision/commit/f1ce40fcf255a052442d2fdd46516182a58b0aed))
+
+### [2.3.8](https://www.github.com/googleapis/nodejs-vision/compare/v2.3.7...v2.3.8) (2021-08-17)
+
+
+### Bug Fixes
+
+* **deps:** google-gax v2.24.1 ([#939](https://www.github.com/googleapis/nodejs-vision/issues/939)) ([21d59e3](https://www.github.com/googleapis/nodejs-vision/commit/21d59e39ba66eb14db467e101477cba692a67d44))
+
+### [2.3.7](https://www.github.com/googleapis/nodejs-vision/compare/v2.3.6...v2.3.7) (2021-07-21)
+
+
+### Bug Fixes
+
+* Updating WORKSPACE files to use the newest version of the Typescript generator. ([#928](https://www.github.com/googleapis/nodejs-vision/issues/928)) ([f5cddc5](https://www.github.com/googleapis/nodejs-vision/commit/f5cddc5086a96ddc4255017366422df40a6efaf5))
+
+### [2.3.6](https://www.github.com/googleapis/nodejs-vision/compare/v2.3.5...v2.3.6) (2021-07-12)
+
+
+### Bug Fixes
+
+* **deps:** google-gax v2.17.1 ([#926](https://www.github.com/googleapis/nodejs-vision/issues/926)) ([6853428](https://www.github.com/googleapis/nodejs-vision/commit/68534284ff975a3a1c950b6727358b77dac4fc83))
+
+### [2.3.5](https://www.github.com/googleapis/nodejs-vision/compare/v2.3.4...v2.3.5) (2021-06-29)
+
+
+### Bug Fixes
+
+* **deps:** google-gax v2.17.0 with mTLS ([#923](https://www.github.com/googleapis/nodejs-vision/issues/923)) ([0292824](https://www.github.com/googleapis/nodejs-vision/commit/02928247cae0d8db0f4ced155e8f60c8d664cd17))
+
+### [2.3.4](https://www.github.com/googleapis/nodejs-vision/compare/v2.3.3...v2.3.4) (2021-06-22)
+
+
+### Bug Fixes
+
+* make request optional in all cases ([#917](https://www.github.com/googleapis/nodejs-vision/issues/917)) ([d301b79](https://www.github.com/googleapis/nodejs-vision/commit/d301b79dee83948bada4b16e33048933d454c051))
+
+### [2.3.3](https://www.github.com/googleapis/nodejs-vision/compare/v2.3.2...v2.3.3) (2021-05-26)
+
+
+### Bug Fixes
+
+* GoogleAdsError missing using generator version after 1.3.0 ([#908](https://www.github.com/googleapis/nodejs-vision/issues/908)) ([3bd4071](https://www.github.com/googleapis/nodejs-vision/commit/3bd4071597067b7f31d61cbaeaef1fc531179fc4))
+
+### [2.3.2](https://www.github.com/googleapis/nodejs-vision/compare/v2.3.1...v2.3.2) (2021-05-12)
+
+
+### Bug Fixes
+
+* **deps:** require google-gax v2.12.0 ([#897](https://www.github.com/googleapis/nodejs-vision/issues/897)) ([bc987f4](https://www.github.com/googleapis/nodejs-vision/commit/bc987f4cc731de64792d5b56d4861038b310f211))
+* **deps:** update dependency natural to v5 ([#880](https://www.github.com/googleapis/nodejs-vision/issues/880)) ([6a82d95](https://www.github.com/googleapis/nodejs-vision/commit/6a82d95f532f054cd120920339c198d57ce2cf28))
+* use require() to load JSON protos ([#899](https://www.github.com/googleapis/nodejs-vision/issues/899)) ([01ff4e3](https://www.github.com/googleapis/nodejs-vision/commit/01ff4e3162541e4e255ca7b3e5478c2b754a78b9))
+
+### [2.3.1](https://www.github.com/googleapis/nodejs-vision/compare/v2.3.0...v2.3.1) (2021-02-18)
+
+
+### Bug Fixes
+
+* **deps:** update dependency natural to v3 ([#865](https://www.github.com/googleapis/nodejs-vision/issues/865)) ([38d9a1a](https://www.github.com/googleapis/nodejs-vision/commit/38d9a1a3ae9fe02b67135ecc3f56f6d3a53ac547))
+* **deps:** update dependency natural to v4 ([#870](https://www.github.com/googleapis/nodejs-vision/issues/870)) ([edfcb9e](https://www.github.com/googleapis/nodejs-vision/commit/edfcb9eed26145c1f72bfaaa3ee8e7a4d74630b3))
+* sync vision v1 protos to get extra FaceAnnotation Landmark Types ([#868](https://www.github.com/googleapis/nodejs-vision/issues/868)) ([4d45375](https://www.github.com/googleapis/nodejs-vision/commit/4d45375016aa12d0e8ea24525168e23590af47b4))
+
+## [2.3.0](https://www.github.com/googleapis/nodejs-vision/compare/v2.2.0...v2.3.0) (2021-01-06)
+
+
+### Features
+
+* introduce style enumeration ([b5fe1ac](https://www.github.com/googleapis/nodejs-vision/commit/b5fe1aca1ee70176c5569d1ff9255958988a0077))
+
+## [2.2.0](https://www.github.com/googleapis/nodejs-vision/compare/v2.1.2...v2.2.0) (2021-01-06)
+
+
+### Features
+
+* Add TextDetectionParams.enable_text_detection_confidence_score ([#850](https://www.github.com/googleapis/nodejs-vision/issues/850)) ([c8f51a2](https://www.github.com/googleapis/nodejs-vision/commit/c8f51a2fd03e0dc80c7a36c9e7602f2c1a94a73d))
+
+
+### Bug Fixes
+
+* **browser:** check for fetch on window ([ef95fb1](https://www.github.com/googleapis/nodejs-vision/commit/ef95fb1ff7f2495b2929c18b4c814ad93c8b42cc))
+* do not modify options object, use defaultScopes ([#845](https://www.github.com/googleapis/nodejs-vision/issues/845)) ([8377b42](https://www.github.com/googleapis/nodejs-vision/commit/8377b4268a4ed4ef07869c75c1ae48f4ec3b01ce))
+
+### [2.1.2](https://www.github.com/googleapis/nodejs-vision/compare/v2.1.1...v2.1.2) (2020-09-12)
+
+
+### Bug Fixes
+
+* **deps:** update dependency yargs to v16 ([#824](https://www.github.com/googleapis/nodejs-vision/issues/824)) ([9ce5215](https://www.github.com/googleapis/nodejs-vision/commit/9ce5215448b026adb10fa9c10156d4e8d8c865e4))
+
+### [2.1.1](https://www.github.com/googleapis/nodejs-vision/compare/v2.1.0...v2.1.1) (2020-07-10)
+
+
+### Bug Fixes
+
+* update node issue template ([#795](https://www.github.com/googleapis/nodejs-vision/issues/795)) ([e975833](https://www.github.com/googleapis/nodejs-vision/commit/e975833eb5b11d3c3834bfea9697a9611cae6a8f))
+
+## [2.1.0](https://www.github.com/googleapis/nodejs-vision/compare/v2.0.0...v2.1.0) (2020-06-12)
+
+
+### Features
+
+* **secrets:** begin migration to secret manager from keystore ([#790](https://www.github.com/googleapis/nodejs-vision/issues/790)) ([4d9e334](https://www.github.com/googleapis/nodejs-vision/commit/4d9e334bdf6bc479779541b31d26055199dcdbff))
+* switch to es2018 target for TypeScript ([#788](https://www.github.com/googleapis/nodejs-vision/issues/788)) ([7df91d4](https://www.github.com/googleapis/nodejs-vision/commit/7df91d4fc15f64aa9e462af45136ae5a361cc162))
+
+
+### Bug Fixes
+
+* handle fallback option properly ([#793](https://www.github.com/googleapis/nodejs-vision/issues/793)) ([43b45bf](https://www.github.com/googleapis/nodejs-vision/commit/43b45bf1b41976f0628cae227d7f7fab29359632))
+
+## [2.0.0](https://www.github.com/googleapis/nodejs-vision/compare/v1.11.0...v2.0.0) (2020-06-04)
+
+
+### ⚠ BREAKING CHANGES
+
+* The library now supports Node.js v10+. The last version to support Node.js v8 is tagged legacy-8 on NPM.
+
+### Features
+
+* check status of long running operation by its name ([#773](https://www.github.com/googleapis/nodejs-vision/issues/773)) ([2b3becf](https://www.github.com/googleapis/nodejs-vision/commit/2b3becf530294202d361d7a8f35601973332eafe))
+* drop node8 support, support for async iterators ([#568](https://www.github.com/googleapis/nodejs-vision/issues/568)) ([e2dccd0](https://www.github.com/googleapis/nodejs-vision/commit/e2dccd02d20ed82ed679fff629b5a4aab47b39b6))
+
+
+### Bug Fixes
+
+* **deps:** update dependency @google-cloud/promisify to v2 ([#565](https://www.github.com/googleapis/nodejs-vision/issues/565)) ([c71a709](https://www.github.com/googleapis/nodejs-vision/commit/c71a70926568367fa89fbbf4226e40fcb44f679e))
+* **deps:** update dependency mathjs to v7 ([#775](https://www.github.com/googleapis/nodejs-vision/issues/775)) ([d64d99f](https://www.github.com/googleapis/nodejs-vision/commit/d64d99fe615a7048a5537fbcb8fbf3364e1c53c0))
+* **deps:** update dependency natural to v1 ([#768](https://www.github.com/googleapis/nodejs-vision/issues/768)) ([44a8dcc](https://www.github.com/googleapis/nodejs-vision/commit/44a8dcc389489829f927015a1070e516f2e786b0))
+* **deps:** update dependency natural to v2 ([#772](https://www.github.com/googleapis/nodejs-vision/issues/772)) ([afdc8da](https://www.github.com/googleapis/nodejs-vision/commit/afdc8da5f4181b5d43c3dc0155294495d647645a))
+* **samples:** use pureimage instead of canvas ([#774](https://www.github.com/googleapis/nodejs-vision/issues/774)) ([a352338](https://www.github.com/googleapis/nodejs-vision/commit/a3523388bace85f19041202c74be4beb705d620d))
+* mocha tests ([#784](https://www.github.com/googleapis/nodejs-vision/issues/784)) ([319c98e](https://www.github.com/googleapis/nodejs-vision/commit/319c98e284a622876e055cfd7a249750d600ce76))
+* remove eslint, update gax, fix generated protos, run the generator ([#756](https://www.github.com/googleapis/nodejs-vision/issues/756)) ([72f22b6](https://www.github.com/googleapis/nodejs-vision/commit/72f22b60e1491963ea1d22a4f96feabe07be0376))
+
+## [1.11.0](https://www.github.com/googleapis/nodejs-vision/compare/v1.10.0...v1.11.0) (2020-03-11)
+
+
+### Features
+
+* deferred client initialization ([#551](https://www.github.com/googleapis/nodejs-vision/issues/551)) ([8866d89](https://www.github.com/googleapis/nodejs-vision/commit/8866d8905750dfc0627f585c30c0b19bb205172d))
+* export protos from src/index.ts ([#547](https://www.github.com/googleapis/nodejs-vision/issues/547)) ([41c736c](https://www.github.com/googleapis/nodejs-vision/commit/41c736c8f234f6fba20120fa5c17353519f2d45d))
+
+## [1.10.0](https://www.github.com/googleapis/nodejs-vision/compare/v1.9.0...v1.10.0) (2020-03-03)
+
+
+### Features
+
+* move API to typescript code generation ([#532](https://www.github.com/googleapis/nodejs-vision/issues/532)) ([401e694](https://www.github.com/googleapis/nodejs-vision/commit/401e6944796fd1249639da6b767e842576345c3e))
+
+## [1.9.0](https://www.github.com/googleapis/nodejs-vision/compare/v1.8.0...v1.9.0) (2020-02-10)
+
+
+### Features
+
+* bump release level to GA ([#530](https://www.github.com/googleapis/nodejs-vision/issues/530)) ([3b091ba](https://www.github.com/googleapis/nodejs-vision/commit/3b091ba7c67864e845d1f399b8052684a2d6030e))
+
+
+### Bug Fixes
+
+* **deps:** update dependency redis to v3 ([#533](https://www.github.com/googleapis/nodejs-vision/issues/533)) ([d9b50cb](https://www.github.com/googleapis/nodejs-vision/commit/d9b50cb2ac56a5eadab72efed59f12189418993c))
+
+## [1.8.0](https://www.github.com/googleapis/nodejs-vision/compare/v1.7.2...v1.8.0) (2020-01-02)
+
+
+### Features
+
+* add new resource descriptors ([#491](https://www.github.com/googleapis/nodejs-vision/issues/491)) ([95037bf](https://www.github.com/googleapis/nodejs-vision/commit/95037bf3c9236902ab31c23fd51a236e23100e91))
+* **samples:** add sample of configuring alternate apiEndpoint ([#473](https://www.github.com/googleapis/nodejs-vision/issues/473)) ([fa01482](https://www.github.com/googleapis/nodejs-vision/commit/fa01482648c93d7a57b5f7159a995a6b13e4f941))
+
+
+### Bug Fixes
+
+* **deps:** TypeScript 3.7.0 causes breaking change in typings ([#497](https://www.github.com/googleapis/nodejs-vision/issues/497)) ([30aa9ff](https://www.github.com/googleapis/nodejs-vision/commit/30aa9ffbdd3cdb8e28c300f7b9223f60fdb61d7e))
+
+### [1.7.2](https://www.github.com/googleapis/nodejs-vision/compare/v1.7.1...v1.7.2) (2019-11-18)
+
+
+### Bug Fixes
+
+* **deps:** update dependency yargs to v15 ([#488](https://www.github.com/googleapis/nodejs-vision/issues/488)) ([21c889e](https://www.github.com/googleapis/nodejs-vision/commit/21c889ee3157e38cc8eefec5da8f1d103fd41f17))
+
+### [1.7.1](https://www.github.com/googleapis/nodejs-vision/compare/v1.7.0...v1.7.1) (2019-11-13)
+
+
+### Bug Fixes
+
+* import long in proto ts declaration file ([#482](https://www.github.com/googleapis/nodejs-vision/issues/482)) ([1f5258b](https://www.github.com/googleapis/nodejs-vision/commit/1f5258b65665c4813463592af32720d07e5c8de4))
+* **docs:** snippets are now replaced in jsdoc comments ([#481](https://www.github.com/googleapis/nodejs-vision/issues/481)) ([07281d6](https://www.github.com/googleapis/nodejs-vision/commit/07281d6d0acbd59a9c308308cb090b598cda53a2))
+
+## [1.7.0](https://www.github.com/googleapis/nodejs-vision/compare/v1.6.0...v1.7.0) (2019-11-08)
+
+
+### Features
+
+* add celebrity face detection ([#477](https://www.github.com/googleapis/nodejs-vision/issues/477)) ([cdfa59e](https://www.github.com/googleapis/nodejs-vision/commit/cdfa59e4156c5b557651c3bf50cfc46487149a7d))
+
+## [1.6.0](https://www.github.com/googleapis/nodejs-vision/compare/v1.5.0...v1.6.0) (2019-11-05)
+
+
+### Features
+
+* added endpoint samples for vision api ([#467](https://www.github.com/googleapis/nodejs-vision/issues/467)) ([4c569b4](https://www.github.com/googleapis/nodejs-vision/commit/4c569b4ace83be63a12f85676c174a663796fa47))
+
+
+### Bug Fixes
+
+* **deps:** bump google-gax to 1.7.5 ([#464](https://www.github.com/googleapis/nodejs-vision/issues/464)) ([dcc4d62](https://www.github.com/googleapis/nodejs-vision/commit/dcc4d622f46922975d028af20aefc27446fdcad5))
+
+
+### Reverts
+
+* added endpoint samples for vision api ([ea5d421](https://www.github.com/googleapis/nodejs-vision/commit/ea5d4218816571556a2059fc977e2223678c979e))
+
+## [1.5.0](https://www.github.com/googleapis/nodejs-vision/compare/v1.4.0...v1.5.0) (2019-10-10)
+
+
+### Bug Fixes
+
+* update protobuf options for product sets ([#462](https://www.github.com/googleapis/nodejs-vision/issues/462)) ([32b3fa9](https://www.github.com/googleapis/nodejs-vision/commit/32b3fa9))
+* use compatible version of google-gax ([a4f2863](https://www.github.com/googleapis/nodejs-vision/commit/a4f2863))
+
+
+### Features
+
+* .d.ts for protos ([#451](https://www.github.com/googleapis/nodejs-vision/issues/451)) ([15f4329](https://www.github.com/googleapis/nodejs-vision/commit/15f4329))
+* additional safe search confidence fields ([#444](https://www.github.com/googleapis/nodejs-vision/issues/444)) ([31735a7](https://www.github.com/googleapis/nodejs-vision/commit/31735a7))
+
+## [1.4.0](https://www.github.com/googleapis/nodejs-vision/compare/v1.3.0...v1.4.0) (2019-09-14)
+
+
+### Features
+
+* make vision helpers work with JSON proto ([#441](https://www.github.com/googleapis/nodejs-vision/issues/441)) ([5b7a249](https://www.github.com/googleapis/nodejs-vision/commit/5b7a249))
+
+## [1.3.0](https://www.github.com/googleapis/nodejs-vision/compare/v1.2.0...v1.3.0) (2019-09-09)
+
+
+### Bug Fixes
+
+* use process versions object for client header ([#428](https://www.github.com/googleapis/nodejs-vision/issues/428)) ([c1dde85](https://www.github.com/googleapis/nodejs-vision/commit/c1dde85))
+* **samples:** upgrade yargs and fix broken CLI config ([#436](https://www.github.com/googleapis/nodejs-vision/issues/436)) ([1a9c374](https://www.github.com/googleapis/nodejs-vision/commit/1a9c374))
+
+
+### Features
+
+* load protos from JSON, grpc-fallback support ([9914445](https://www.github.com/googleapis/nodejs-vision/commit/9914445))
+
+## [1.2.0](https://www.github.com/googleapis/nodejs-vision/compare/v1.1.4...v1.2.0) (2019-08-19)
+
+
+### Features
+
+* adds support for multiple regions ([244e21e](https://www.github.com/googleapis/nodejs-vision/commit/244e21e))
+
+### [1.1.4](https://www.github.com/googleapis/nodejs-vision/compare/v1.1.3...v1.1.4) (2019-08-05)
+
+
+### Bug Fixes
+
+* allow calls with no request, add JSON proto ([55c0380](https://www.github.com/googleapis/nodejs-vision/commit/55c0380))
+
+### [1.1.3](https://www.github.com/googleapis/nodejs-vision/compare/v1.1.2...v1.1.3) (2019-06-26)
+
+
+### Bug Fixes
+
+* **docs:** link to reference docs section on googleapis.dev ([#406](https://www.github.com/googleapis/nodejs-vision/issues/406)) ([fa2fb3f](https://www.github.com/googleapis/nodejs-vision/commit/fa2fb3f))
+
+### [1.1.2](https://www.github.com/googleapis/nodejs-vision/compare/v1.1.1...v1.1.2) (2019-06-15)
+
+
+### Bug Fixes
+
+* **docs:** move to new client docs URL ([#401](https://www.github.com/googleapis/nodejs-vision/issues/401)) ([9b40044](https://www.github.com/googleapis/nodejs-vision/commit/9b40044))
+
+### [1.1.1](https://www.github.com/googleapis/nodejs-vision/compare/v1.1.0...v1.1.1) (2019-06-11)
+
+
+### Bug Fixes
+
+* **deps:** update dependency mathjs to v6 ([#399](https://www.github.com/googleapis/nodejs-vision/issues/399)) ([6c37196](https://www.github.com/googleapis/nodejs-vision/commit/6c37196))
+
+## [1.1.0](https://www.github.com/googleapis/nodejs-vision/compare/v1.0.0...v1.1.0) (2019-06-05)
+
+
+### Features
+
+* support apiEndpoint override in client constructor ([#393](https://www.github.com/googleapis/nodejs-vision/issues/393)) ([7777275](https://www.github.com/googleapis/nodejs-vision/commit/7777275))
+
+## [1.0.0](https://www.github.com/googleapis/nodejs-vision/compare/v0.25.0...v1.0.0) (2019-05-13)
+
+
+### Bug Fixes
+
+* **deps:** update dependency google-gax to v1 ([#376](https://www.github.com/googleapis/nodejs-vision/issues/376)) ([14a5ca9](https://www.github.com/googleapis/nodejs-vision/commit/14a5ca9))
+* DEADLINE_EXCEEDED is idempotent ([#377](https://www.github.com/googleapis/nodejs-vision/issues/377)) ([d7ed2d3](https://www.github.com/googleapis/nodejs-vision/commit/d7ed2d3))
+* **deps:** update dependency @google-cloud/promisify to v1 ([#367](https://www.github.com/googleapis/nodejs-vision/issues/367)) ([f1a5bcc](https://www.github.com/googleapis/nodejs-vision/commit/f1a5bcc))
+* **deps:** update dependency google-gax to ^0.26.0 ([#362](https://www.github.com/googleapis/nodejs-vision/issues/362)) ([81a3379](https://www.github.com/googleapis/nodejs-vision/commit/81a3379))
+* include 'x-goog-request-params' header in requests ([4e7a1c6](https://www.github.com/googleapis/nodejs-vision/commit/4e7a1c6)), closes [#353](https://www.github.com/googleapis/nodejs-vision/issues/353)
+* **samples:** make test assertion less specific ([#354](https://www.github.com/googleapis/nodejs-vision/issues/354)) ([435ddf0](https://www.github.com/googleapis/nodejs-vision/commit/435ddf0))
+
+
+### Build System
+
+* upgrade engines field to >=8.10.0 ([#363](https://www.github.com/googleapis/nodejs-vision/issues/363)) ([e8a7141](https://www.github.com/googleapis/nodejs-vision/commit/e8a7141))
+
+
+### Features
+
+* image annotation batching ([#375](https://www.github.com/googleapis/nodejs-vision/issues/375)) ([bed2515](https://www.github.com/googleapis/nodejs-vision/commit/bed2515))
+
+
+### BREAKING CHANGES
+
+* upgrade engines field to >=8.10.0 (#363)
+
+## v0.25.0
+
+02-22-2019 17:39 PST
+
+### New Features
+This release contains a new version (v1p4beta1) of the Vision API. To use this version, construct the client liks this:
+
+```javascript
+const vision = require('@google-cloud/vision');
+const client = new vision.v1p4beta1.ImageAnnotatorClient();
+```
+
+- feat: gen v1p4beta1: online PDF, async batch image annotate ([#331](https://github.com/googleapis/nodejs-vision/pull/331))
+
+### Implementation Changes
+- fix: throw on invalid credentials in v1p4beta1 ([#334](https://github.com/googleapis/nodejs-vision/pull/334))
+- fix: throw on invalid credentials ([#326](https://github.com/googleapis/nodejs-vision/pull/326))
+
+### Dependencies
+- chore(deps): update dependency mocha to v6 ([#330](https://github.com/googleapis/nodejs-vision/pull/330))
+- fix(deps): update dependency @google-cloud/promisify to ^0.4.0 ([#328](https://github.com/googleapis/nodejs-vision/pull/328))
+- fix(deps): update dependency yargs to v13 ([#325](https://github.com/googleapis/nodejs-vision/pull/325))
+- fix(deps): update dependency google-gax to ^0.25.0 ([#315](https://github.com/googleapis/nodejs-vision/pull/315))
+- fix(deps): update dependency google-gax to ^0.24.0 ([#312](https://github.com/googleapis/nodejs-vision/pull/312))
+- chore(deps): update dependency eslint-config-prettier to v4 ([#313](https://github.com/googleapis/nodejs-vision/pull/313))
+- fix(deps): update dependency google-gax to ^0.23.0 ([#307](https://github.com/googleapis/nodejs-vision/pull/307))
+
+### Documentation / Samples
+- docs: update contributing path in README ([#321](https://github.com/googleapis/nodejs-vision/pull/321))
+- docs: update links in contrib guide ([#329](https://github.com/googleapis/nodejs-vision/pull/329))
+- docs: add lint/fix example to contributing guide ([#318](https://github.com/googleapis/nodejs-vision/pull/318))
+- docs: fix example comments ([#317](https://github.com/googleapis/nodejs-vision/pull/317))
+- fix(docs): remove unused long running operations types
+- docs: improve detect.js samples ([#300](https://github.com/googleapis/nodejs-vision/pull/300))
+
+### Internal / Testing Changes
+- build: use linkinator for docs test ([#327](https://github.com/googleapis/nodejs-vision/pull/327))
+- build: create docs test npm scripts ([#324](https://github.com/googleapis/nodejs-vision/pull/324))
+- build: test using @grpc/grpc-js in CI ([#322](https://github.com/googleapis/nodejs-vision/pull/322))
+- chore: move CONTRIBUTING.md to root ([#320](https://github.com/googleapis/nodejs-vision/pull/320))
+- refactor: improve generated code style. ([#316](https://github.com/googleapis/nodejs-vision/pull/316))
+- fix: ignore case in system test assertions ([#314](https://github.com/googleapis/nodejs-vision/pull/314))
+- build: ignore googleapis.com in doc link check ([#310](https://github.com/googleapis/nodejs-vision/pull/310))
+- chore: update year in the license headers. ([#309](https://github.com/googleapis/nodejs-vision/pull/309))
+- build: check broken links in generated docs ([#301](https://github.com/googleapis/nodejs-vision/pull/301))
+
+## v0.24.0
+
+12-19-2018 13:36 PST
+
+### Implementation Changes
+**This release contains breaking change**
+- BREAKING: rename method imagePath => referenceImagePath ([#296](https://github.com/googleapis/nodejs-vision/pull/296))
+The method `ProductSearchClient.imagePath` was renamed `referenceImagePath`:
+```
+// old code
+const formattedName = client.imagePath(...);
+
+// new code
+const formattedName = client.referenceImagePath(...);
+```
+- fix: Param "scoreThreshold" should be "score_threshold" ([#234](https://github.com/googleapis/nodejs-vision/pull/234))
+
+### New Features
+- ProductSearch GA ([#280](https://github.com/googleapis/nodejs-vision/pull/280))
+
+### Dependencies
+- refactor: remove unused deps ([#261](https://github.com/googleapis/nodejs-vision/pull/261))
+- fix(deps): update dependency google-gax to ^0.22.0 ([#265](https://github.com/googleapis/nodejs-vision/pull/265))
+- chore(deps): update dependency @google-cloud/nodejs-repo-tools to v3 ([#263](https://github.com/googleapis/nodejs-vision/pull/263))
+- fix(deps): update dependency @google-cloud/vision to ^0.23.0 ([#260](https://github.com/googleapis/nodejs-vision/pull/260))
+
+### Documentation
+- docs: fix productSearch example ([#285](https://github.com/googleapis/nodejs-vision/pull/285))
+- docs: update readme badges ([#283](https://github.com/googleapis/nodejs-vision/pull/283))
+- docs(samples): updated samples code to use async/await and tests to use mocha ([#241](https://github.com/googleapis/nodejs-vision/pull/241))
+
+### Internal / Testing Changes
+- chore: modernize the samples and sample tests ([#297](https://github.com/googleapis/nodejs-vision/pull/297))
+- chore(build): inject yoshi automation key ([#294](https://github.com/googleapis/nodejs-vision/pull/294))
+- chore: update nyc and eslint configs ([#293](https://github.com/googleapis/nodejs-vision/pull/293))
+- chore: fix publish.sh permission +x ([#292](https://github.com/googleapis/nodejs-vision/pull/292))
+- fix(build): fix Kokoro release script ([#291](https://github.com/googleapis/nodejs-vision/pull/291))
+- build: add Kokoro configs for autorelease ([#290](https://github.com/googleapis/nodejs-vision/pull/290))
+- chore: always nyc report before calling codecov ([#288](https://github.com/googleapis/nodejs-vision/pull/288))
+- chore: nyc ignore build/test by default ([#287](https://github.com/googleapis/nodejs-vision/pull/287))
+- chore: update license file ([#284](https://github.com/googleapis/nodejs-vision/pull/284))
+- fix(build): fix system key decryption ([#282](https://github.com/googleapis/nodejs-vision/pull/282))
+- test: make product search tests run ([#269](https://github.com/googleapis/nodejs-vision/pull/269))
+- chore: update eslintignore config ([#264](https://github.com/googleapis/nodejs-vision/pull/264))
+- chore: drop contributors from multiple places ([#262](https://github.com/googleapis/nodejs-vision/pull/262))
+
+## v0.23.0
+
+### New Features
+- feat: add support for product search
+
+### Dependencies
+- chore(deps): update dependency eslint-plugin-node to v8 ([#245](https://github.com/googleapis/nodejs-vision/pull/245))
+- chore(deps): update dependency canvas to v2 ([#224](https://github.com/googleapis/nodejs-vision/pull/224))
+- chore(deps): update dependency sinon to v7 ([#219](https://github.com/googleapis/nodejs-vision/pull/219))
+- chore(deps): update dependency eslint-plugin-prettier to v3 ([#213](https://github.com/googleapis/nodejs-vision/pull/213))
+
+### Documentation
+- fix(samples): Adding vision_product_search_tutorial_import tags ([#221](https://github.com/googleapis/nodejs-vision/pull/221))
+- fix(samples): Change the Project ID from number to string ([#220](https://github.com/googleapis/nodejs-vision/pull/220))
+- docs: Vision AutoML samples ([#197](https://github.com/googleapis/nodejs-vision/pull/197))
+
+### Internal / Testing Changes
+- chore: use latest npm on Windows ([#258](https://github.com/googleapis/nodejs-vision/pull/258))
+- chore: update lint configs ([#257](https://github.com/googleapis/nodejs-vision/pull/257))
+- chore: update CircleCI config ([#253](https://github.com/googleapis/nodejs-vision/pull/253))
+- chore: update issue templates ([#244](https://github.com/googleapis/nodejs-vision/pull/244))
+- chore: remove old issue template ([#242](https://github.com/googleapis/nodejs-vision/pull/242))
+- build: run tests on node11 ([#239](https://github.com/googleapis/nodejs-vision/pull/239))
+- chores(build): do not collect sponge.xml from windows builds ([#238](https://github.com/googleapis/nodejs-vision/pull/238))
+- chores(build): run codecov on continuous builds ([#237](https://github.com/googleapis/nodejs-vision/pull/237))
+- chore: update new issue template ([#235](https://github.com/googleapis/nodejs-vision/pull/235))
+- build: fix codecov uploading on Kokoro ([#222](https://github.com/googleapis/nodejs-vision/pull/222))
+- chore: enable --throw-deprecation on mocha config ([#147](https://github.com/googleapis/nodejs-vision/pull/147))
+- Update kokoro config ([#214](https://github.com/googleapis/nodejs-vision/pull/214))
+- Update kokoro config ([#208](https://github.com/googleapis/nodejs-vision/pull/208))
+- test: remove appveyor config ([#207](https://github.com/googleapis/nodejs-vision/pull/207))
+- Update the CI config ([#206](https://github.com/googleapis/nodejs-vision/pull/206))
+
+## v0.22.1
+
+### Bug fixes
+- Fix response output for Detect Labels ([#199](https://github.com/googleapis/nodejs-vision/pull/199))
+
+### Documentation
+- Vision GA – vision_localize_objects & vision_localize_object_gcs ([#200](https://github.com/googleapis/nodejs-vision/pull/200))
+- Product search rebased ([#196](https://github.com/googleapis/nodejs-vision/pull/196))
+
+### Internal / Testing Changes
+- Enable prefer-const in the eslint config ([#201](https://github.com/googleapis/nodejs-vision/pull/201))
+- Enable no-var in eslint ([#198](https://github.com/googleapis/nodejs-vision/pull/198))
+- Switch to let/const ([#194](https://github.com/googleapis/nodejs-vision/pull/194))
+- fix(deps): update dependency google-gax to ^0.20.0 ([#193](https://github.com/googleapis/nodejs-vision/pull/193))
+
+## v0.22.0
+
+### New Features
+Object Localization is available on v1 of this library:
+- Updated CI config and run synth ([#181](https://github.com/googleapis/nodejs-vision/pull/181))
+
+### Dependencies
+- chore(deps): update dependency @google-cloud/storage to v2 ([#183](https://github.com/googleapis/nodejs-vision/pull/183))
+- chore(deps): update dependency nyc to v13 ([#177](https://github.com/googleapis/nodejs-vision/pull/177))
+- fix(deps): update dependency google-gax to ^0.19.0 ([#173](https://github.com/googleapis/nodejs-vision/pull/173))
+- chore(deps): update dependency eslint-config-prettier to v3 ([#170](https://github.com/googleapis/nodejs-vision/pull/170))
+
+### Internal / Testing Changes
+- Update CI config ([#188](https://github.com/googleapis/nodejs-vision/pull/188))
+- Fix the sample tests ([#187](https://github.com/googleapis/nodejs-vision/pull/187))
+- Retry npm install in CI ([#185](https://github.com/googleapis/nodejs-vision/pull/185))
+- Update CI config ([#184](https://github.com/googleapis/nodejs-vision/pull/184))
+- fix: (tests): Use real service to validate expectations. ([#182](https://github.com/googleapis/nodejs-vision/pull/182))
+- chore: make the CircleCI config consistent
+- Udpate Beta Vision samples to use beta tags ([#172](https://github.com/googleapis/nodejs-vision/pull/172))
+- Vision region tag update ([#171](https://github.com/googleapis/nodejs-vision/pull/171))
+- build: configure Windows build on Kokoro ([#165](https://github.com/googleapis/nodejs-vision/pull/165))
+- chore: do not use npm ci ([#167](https://github.com/googleapis/nodejs-vision/pull/167))
+- build(kokoro): samples-test.sh need GCLOUD_PROJECT env; node6 and node8 is using wrong .sh ([#162](https://github.com/googleapis/nodejs-vision/pull/162))
+- build(kokoro): setup samples and system test ([#161](https://github.com/googleapis/nodejs-vision/pull/161))
+- chore: ignore package-lock.json ([#160](https://github.com/googleapis/nodejs-vision/pull/160))
+- build: rename build.sh => test.sh; presubmit jobs runs lint and docs properly ([#158](https://github.com/googleapis/nodejs-vision/pull/158))
+- fix(samples): missing fs requires causing sample-test to fail ([#157](https://github.com/googleapis/nodejs-vision/pull/157))
+- build: add set -x to .sh to show the command being executed ([#156](https://github.com/googleapis/nodejs-vision/pull/156))
+- add samples linking to kokoro jobs ([#155](https://github.com/googleapis/nodejs-vision/pull/155))
+- Kokoro multi ver ([#153](https://github.com/googleapis/nodejs-vision/pull/153))
+- chore: update renovate config ([#152](https://github.com/googleapis/nodejs-vision/pull/152))
+- have presubmit.cfg in separate node* folders ([#151](https://github.com/googleapis/nodejs-vision/pull/151))
+- split presubmit to multiple node versions ([#149](https://github.com/googleapis/nodejs-vision/pull/149))
+
+## v0.21.1
+
+Patch release to bring in updates to google-gax@0.18.0 so it no longer emits deprecation warnings with grpc (#120), along with other dependency updates and documentation changes.
+
+### Dependencies
+- fix(deps): update dependency google-gax to ^0.18.0 (#146)
+- chore: drop dependency on common (#134)
+- chore(deps): update dependency eslint-plugin-node to v7 (#127)
+
+### Documentation
+- Code Samples demonstrating Object Localization & Handwriting OCR (#133)
+
+### Internal / Testing Changes
+- build: initial kokoro setup (#145)
+- chore: assert.deelEqual => assert.deepStrictEqual (#143)
+- chore: move mocha options to mocha.opts (#141)
+- chore: require node 8 for samples (#142)
+- chore: add node templates to synth.py (#139)
+- fix(deps): update dependency @google-cloud/vision to ^0.21.0 (#131)
+
+## v0.21.0
+
+### Implementation Changes
+#### 🚨 BREAKING CHANGE
+In this version we dropped support for NodeJS 4.x and 9.x. Your code might break if you're using this library on non LTS versions.
+- fix: drop support for node.js 4.x and 9.x (#117)
+
+### New Features
+This release brings in v1p3beta1 of the Cloud Vision API, which includes the following new features:
+- Object localization
+- Product search
+
+- gen: v1p3beta1 of Cloud Vision API NodeJS Client Library (#124)
+- feat: implement manual methods for objectLocalization and productSearch on v1p3beta1 (#128)
+
+### Dependencies
+- fix: update and cleanup dependencies (#102)
+- fix(deps): update dependency yargs to v12 (#103)
+- repo: setup greenkeeper.json to update dependencies in samples/package.json (#94)
+- refactor: drop dependency on extend (#85)
+- fix: move async to dev dependencies (#83)
+- chore: update many dependencies (#81)
+- fix: switch from node-uuid to uuid (#84)
+- chore(package): update eslint to version 5.0.1 (#98)
+- chore(package): update eslint to version 5.0.0 (#90)
+
+### Documentation
+
+### Internal / Testing Changes
+- Add smoke tests via regeneration (#122)
+- Re-generate library using /synth.py (#111)
+- synth.py: follow synth scripts from other repos (#113)
+- Beta2ga pdf ocr (#104)
+- Configure Renovate (#87)
+- refactor: drop repo-tool as an exec wrapper (#97)
+- fix: update linking for samples (#92)
diff --git a/packages/google-cloud-vision/CODE_OF_CONDUCT.md b/packages/google-cloud-vision/CODE_OF_CONDUCT.md
new file mode 100644
index 00000000000..2add2547a81
--- /dev/null
+++ b/packages/google-cloud-vision/CODE_OF_CONDUCT.md
@@ -0,0 +1,94 @@
+
+# Code of Conduct
+
+## Our Pledge
+
+In the interest of fostering an open and welcoming environment, we as
+contributors and maintainers pledge to making participation in our project and
+our community a harassment-free experience for everyone, regardless of age, body
+size, disability, ethnicity, gender identity and expression, level of
+experience, education, socio-economic status, nationality, personal appearance,
+race, religion, or sexual identity and orientation.
+
+## Our Standards
+
+Examples of behavior that contributes to creating a positive environment
+include:
+
+* Using welcoming and inclusive language
+* Being respectful of differing viewpoints and experiences
+* Gracefully accepting constructive criticism
+* Focusing on what is best for the community
+* Showing empathy towards other community members
+
+Examples of unacceptable behavior by participants include:
+
+* The use of sexualized language or imagery and unwelcome sexual attention or
+ advances
+* Trolling, insulting/derogatory comments, and personal or political attacks
+* Public or private harassment
+* Publishing others' private information, such as a physical or electronic
+ address, without explicit permission
+* Other conduct which could reasonably be considered inappropriate in a
+ professional setting
+
+## Our Responsibilities
+
+Project maintainers are responsible for clarifying the standards of acceptable
+behavior and are expected to take appropriate and fair corrective action in
+response to any instances of unacceptable behavior.
+
+Project maintainers have the right and responsibility to remove, edit, or reject
+comments, commits, code, wiki edits, issues, and other contributions that are
+not aligned to this Code of Conduct, or to ban temporarily or permanently any
+contributor for other behaviors that they deem inappropriate, threatening,
+offensive, or harmful.
+
+## Scope
+
+This Code of Conduct applies both within project spaces and in public spaces
+when an individual is representing the project or its community. Examples of
+representing a project or community include using an official project e-mail
+address, posting via an official social media account, or acting as an appointed
+representative at an online or offline event. Representation of a project may be
+further defined and clarified by project maintainers.
+
+This Code of Conduct also applies outside the project spaces when the Project
+Steward has a reasonable belief that an individual's behavior may have a
+negative impact on the project or its community.
+
+## Conflict Resolution
+
+We do not believe that all conflict is bad; healthy debate and disagreement
+often yield positive results. However, it is never okay to be disrespectful or
+to engage in behavior that violates the project’s code of conduct.
+
+If you see someone violating the code of conduct, you are encouraged to address
+the behavior directly with those involved. Many issues can be resolved quickly
+and easily, and this gives people more control over the outcome of their
+dispute. If you are unable to resolve the matter for any reason, or if the
+behavior is threatening or harassing, report it. We are dedicated to providing
+an environment where participants feel welcome and safe.
+
+Reports should be directed to *googleapis-stewards@google.com*, the
+Project Steward(s) for *Google Cloud Client Libraries*. It is the Project Steward’s duty to
+receive and address reported violations of the code of conduct. They will then
+work with a committee consisting of representatives from the Open Source
+Programs Office and the Google Open Source Strategy team. If for any reason you
+are uncomfortable reaching out to the Project Steward, please email
+opensource@google.com.
+
+We will investigate every complaint, but you may not receive a direct response.
+We will use our discretion in determining when and how to follow up on reported
+incidents, which may range from not taking action to permanent expulsion from
+the project and project-sponsored spaces. We will notify the accused of the
+report and provide them an opportunity to discuss it before any action is taken.
+The identity of the reporter will be omitted from the details of the report
+supplied to the accused. In potentially harmful situations, such as ongoing
+harassment or threats to anyone's safety, we may take action without notice.
+
+## Attribution
+
+This Code of Conduct is adapted from the Contributor Covenant, version 1.4,
+available at
+https://www.contributor-covenant.org/version/1/4/code-of-conduct.html
\ No newline at end of file
diff --git a/packages/google-cloud-vision/CONTRIBUTING.md b/packages/google-cloud-vision/CONTRIBUTING.md
new file mode 100644
index 00000000000..006b5bab547
--- /dev/null
+++ b/packages/google-cloud-vision/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 Google Cloud Vision API API][enable_api].
+1. [Set up authentication with a service account][auth] so you can access the
+ API from your local workstation.
+
+
+## Running the tests
+
+1. [Prepare your environment for Node.js setup][setup].
+
+1. Install dependencies:
+
+ npm install
+
+1. Run the tests:
+
+ # Run unit tests.
+ npm test
+
+ # Run sample integration tests.
+ npm run samples-test
+
+ # Run all system tests.
+ npm run system-test
+
+1. Lint (and maybe fix) any changes:
+
+ npm run fix
+
+[setup]: https://cloud.google.com/nodejs/docs/setup
+[projects]: https://console.cloud.google.com/project
+[billing]: https://support.google.com/cloud/answer/6293499#enable-billing
+[enable_api]: https://console.cloud.google.com/flows/enableapi?apiid=vision.googleapis.com
+[auth]: https://cloud.google.com/docs/authentication/getting-started
\ No newline at end of file
diff --git a/packages/google-cloud-vision/LICENSE b/packages/google-cloud-vision/LICENSE
new file mode 100644
index 00000000000..d6456956733
--- /dev/null
+++ b/packages/google-cloud-vision/LICENSE
@@ -0,0 +1,202 @@
+
+ Apache License
+ Version 2.0, January 2004
+ http://www.apache.org/licenses/
+
+ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
+
+ 1. Definitions.
+
+ "License" shall mean the terms and conditions for use, reproduction,
+ and distribution as defined by Sections 1 through 9 of this document.
+
+ "Licensor" shall mean the copyright owner or entity authorized by
+ the copyright owner that is granting the License.
+
+ "Legal Entity" shall mean the union of the acting entity and all
+ other entities that control, are controlled by, or are under common
+ control with that entity. For the purposes of this definition,
+ "control" means (i) the power, direct or indirect, to cause the
+ direction or management of such entity, whether by contract or
+ otherwise, or (ii) ownership of fifty percent (50%) or more of the
+ outstanding shares, or (iii) beneficial ownership of such entity.
+
+ "You" (or "Your") shall mean an individual or Legal Entity
+ exercising permissions granted by this License.
+
+ "Source" form shall mean the preferred form for making modifications,
+ including but not limited to software source code, documentation
+ source, and configuration files.
+
+ "Object" form shall mean any form resulting from mechanical
+ transformation or translation of a Source form, including but
+ not limited to compiled object code, generated documentation,
+ and conversions to other media types.
+
+ "Work" shall mean the work of authorship, whether in Source or
+ Object form, made available under the License, as indicated by a
+ copyright notice that is included in or attached to the work
+ (an example is provided in the Appendix below).
+
+ "Derivative Works" shall mean any work, whether in Source or Object
+ form, that is based on (or derived from) the Work and for which the
+ editorial revisions, annotations, elaborations, or other modifications
+ represent, as a whole, an original work of authorship. For the purposes
+ of this License, Derivative Works shall not include works that remain
+ separable from, or merely link (or bind by name) to the interfaces of,
+ the Work and Derivative Works thereof.
+
+ "Contribution" shall mean any work of authorship, including
+ the original version of the Work and any modifications or additions
+ to that Work or Derivative Works thereof, that is intentionally
+ submitted to Licensor for inclusion in the Work by the copyright owner
+ or by an individual or Legal Entity authorized to submit on behalf of
+ the copyright owner. For the purposes of this definition, "submitted"
+ means any form of electronic, verbal, or written communication sent
+ to the Licensor or its representatives, including but not limited to
+ communication on electronic mailing lists, source code control systems,
+ and issue tracking systems that are managed by, or on behalf of, the
+ Licensor for the purpose of discussing and improving the Work, but
+ excluding communication that is conspicuously marked or otherwise
+ designated in writing by the copyright owner as "Not a Contribution."
+
+ "Contributor" shall mean Licensor and any individual or Legal Entity
+ on behalf of whom a Contribution has been received by Licensor and
+ subsequently incorporated within the Work.
+
+ 2. Grant of Copyright License. Subject to the terms and conditions of
+ this License, each Contributor hereby grants to You a perpetual,
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+ copyright license to reproduce, prepare Derivative Works of,
+ publicly display, publicly perform, sublicense, and distribute the
+ Work and such Derivative Works in Source or Object form.
+
+ 3. Grant of Patent License. Subject to the terms and conditions of
+ this License, each Contributor hereby grants to You a perpetual,
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+ (except as stated in this section) patent license to make, have made,
+ use, offer to sell, sell, import, and otherwise transfer the Work,
+ where such license applies only to those patent claims licensable
+ by such Contributor that are necessarily infringed by their
+ Contribution(s) alone or by combination of their Contribution(s)
+ with the Work to which such Contribution(s) was submitted. If You
+ institute patent litigation against any entity (including a
+ cross-claim or counterclaim in a lawsuit) alleging that the Work
+ or a Contribution incorporated within the Work constitutes direct
+ or contributory patent infringement, then any patent licenses
+ granted to You under this License for that Work shall terminate
+ as of the date such litigation is filed.
+
+ 4. Redistribution. You may reproduce and distribute copies of the
+ Work or Derivative Works thereof in any medium, with or without
+ modifications, and in Source or Object form, provided that You
+ meet the following conditions:
+
+ (a) You must give any other recipients of the Work or
+ Derivative Works a copy of this License; and
+
+ (b) You must cause any modified files to carry prominent notices
+ stating that You changed the files; and
+
+ (c) You must retain, in the Source form of any Derivative Works
+ that You distribute, all copyright, patent, trademark, and
+ attribution notices from the Source form of the Work,
+ excluding those notices that do not pertain to any part of
+ the Derivative Works; and
+
+ (d) If the Work includes a "NOTICE" text file as part of its
+ distribution, then any Derivative Works that You distribute must
+ include a readable copy of the attribution notices contained
+ within such NOTICE file, excluding those notices that do not
+ pertain to any part of the Derivative Works, in at least one
+ of the following places: within a NOTICE text file distributed
+ as part of the Derivative Works; within the Source form or
+ documentation, if provided along with the Derivative Works; or,
+ within a display generated by the Derivative Works, if and
+ wherever such third-party notices normally appear. The contents
+ of the NOTICE file are for informational purposes only and
+ do not modify the License. You may add Your own attribution
+ notices within Derivative Works that You distribute, alongside
+ or as an addendum to the NOTICE text from the Work, provided
+ that such additional attribution notices cannot be construed
+ as modifying the License.
+
+ You may add Your own copyright statement to Your modifications and
+ may provide additional or different license terms and conditions
+ for use, reproduction, or distribution of Your modifications, or
+ for any such Derivative Works as a whole, provided Your use,
+ reproduction, and distribution of the Work otherwise complies with
+ the conditions stated in this License.
+
+ 5. Submission of Contributions. Unless You explicitly state otherwise,
+ any Contribution intentionally submitted for inclusion in the Work
+ by You to the Licensor shall be under the terms and conditions of
+ this License, without any additional terms or conditions.
+ Notwithstanding the above, nothing herein shall supersede or modify
+ the terms of any separate license agreement you may have executed
+ with Licensor regarding such Contributions.
+
+ 6. Trademarks. This License does not grant permission to use the trade
+ names, trademarks, service marks, or product names of the Licensor,
+ except as required for reasonable and customary use in describing the
+ origin of the Work and reproducing the content of the NOTICE file.
+
+ 7. Disclaimer of Warranty. Unless required by applicable law or
+ agreed to in writing, Licensor provides the Work (and each
+ Contributor provides its Contributions) on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied, including, without limitation, any warranties or conditions
+ of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
+ PARTICULAR PURPOSE. You are solely responsible for determining the
+ appropriateness of using or redistributing the Work and assume any
+ risks associated with Your exercise of permissions under this License.
+
+ 8. Limitation of Liability. In no event and under no legal theory,
+ whether in tort (including negligence), contract, or otherwise,
+ unless required by applicable law (such as deliberate and grossly
+ negligent acts) or agreed to in writing, shall any Contributor be
+ liable to You for damages, including any direct, indirect, special,
+ incidental, or consequential damages of any character arising as a
+ result of this License or out of the use or inability to use the
+ Work (including but not limited to damages for loss of goodwill,
+ work stoppage, computer failure or malfunction, or any and all
+ other commercial damages or losses), even if such Contributor
+ has been advised of the possibility of such damages.
+
+ 9. Accepting Warranty or Additional Liability. While redistributing
+ the Work or Derivative Works thereof, You may choose to offer,
+ and charge a fee for, acceptance of support, warranty, indemnity,
+ or other liability obligations and/or rights consistent with this
+ License. However, in accepting such obligations, You may act only
+ on Your own behalf and on Your sole responsibility, not on behalf
+ of any other Contributor, and only if You agree to indemnify,
+ defend, and hold each Contributor harmless for any liability
+ incurred by, or claims asserted against, such Contributor by reason
+ of your accepting any such warranty or additional liability.
+
+ END OF TERMS AND CONDITIONS
+
+ APPENDIX: How to apply the Apache License to your work.
+
+ To apply the Apache License to your work, attach the following
+ boilerplate notice, with the fields enclosed by brackets "[]"
+ replaced with your own identifying information. (Don't include
+ the brackets!) The text should be enclosed in the appropriate
+ comment syntax for the file format. We also recommend that a
+ file or class name and description of purpose be included on the
+ same "printed page" as the copyright notice for easier
+ identification within third-party archives.
+
+ Copyright [yyyy] [name of copyright owner]
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
diff --git a/packages/google-cloud-vision/README.md b/packages/google-cloud-vision/README.md
new file mode 100644
index 00000000000..353c5608b5e
--- /dev/null
+++ b/packages/google-cloud-vision/README.md
@@ -0,0 +1,205 @@
+[//]: # "This README.md file is auto-generated, all changes to this file will be lost."
+[//]: # "To regenerate it, use `python -m synthtool`."
+
+
+# [Google Cloud Vision API: Node.js Client](https://github.com/googleapis/google-cloud-node)
+
+[](https://cloud.google.com/terms/launch-stages)
+[](https://www.npmjs.org/package/@google-cloud/vision)
+
+
+
+
+Google Cloud Vision API client for Node.js
+
+
+A comprehensive list of changes in each version may be found in
+[the CHANGELOG](https://github.com/googleapis/google-cloud-node/tree/main/packages/google-cloud-vision/CHANGELOG.md).
+
+* [Google Cloud Vision API Node.js Client API Reference][client-docs]
+* [Google Cloud Vision API Documentation][product-docs]
+* [github.com/googleapis/google-cloud-node/packages/google-cloud-vision](https://github.com/googleapis/google-cloud-node/tree/main/packages/google-cloud-vision)
+
+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)
+
+* [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 Google Cloud Vision API API][enable_api].
+1. [Set up authentication with a service account][auth] so you can access the
+ API from your local workstation.
+
+### Installing the client library
+
+```bash
+npm install @google-cloud/vision
+```
+
+
+
+
+## Samples
+
+Samples are in the [`samples/`](https://github.com/googleapis/google-cloud-node/tree/main/samples) directory. Each sample's `README.md` has instructions for running its sample.
+
+| Sample | Source Code | Try it |
+| --------------------------- | --------------------------------- | ------ |
+| Image_annotator.async_batch_annotate_files | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-vision/samples/generated/v1/image_annotator.async_batch_annotate_files.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-vision/samples/generated/v1/image_annotator.async_batch_annotate_files.js,samples/README.md) |
+| Image_annotator.async_batch_annotate_images | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-vision/samples/generated/v1/image_annotator.async_batch_annotate_images.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-vision/samples/generated/v1/image_annotator.async_batch_annotate_images.js,samples/README.md) |
+| Image_annotator.batch_annotate_files | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-vision/samples/generated/v1/image_annotator.batch_annotate_files.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-vision/samples/generated/v1/image_annotator.batch_annotate_files.js,samples/README.md) |
+| Image_annotator.batch_annotate_images | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-vision/samples/generated/v1/image_annotator.batch_annotate_images.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-vision/samples/generated/v1/image_annotator.batch_annotate_images.js,samples/README.md) |
+| Product_search.add_product_to_product_set | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-vision/samples/generated/v1/product_search.add_product_to_product_set.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-vision/samples/generated/v1/product_search.add_product_to_product_set.js,samples/README.md) |
+| Product_search.create_product | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-vision/samples/generated/v1/product_search.create_product.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-vision/samples/generated/v1/product_search.create_product.js,samples/README.md) |
+| Product_search.create_product_set | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-vision/samples/generated/v1/product_search.create_product_set.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-vision/samples/generated/v1/product_search.create_product_set.js,samples/README.md) |
+| Product_search.create_reference_image | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-vision/samples/generated/v1/product_search.create_reference_image.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-vision/samples/generated/v1/product_search.create_reference_image.js,samples/README.md) |
+| Product_search.delete_product | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-vision/samples/generated/v1/product_search.delete_product.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-vision/samples/generated/v1/product_search.delete_product.js,samples/README.md) |
+| Product_search.delete_product_set | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-vision/samples/generated/v1/product_search.delete_product_set.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-vision/samples/generated/v1/product_search.delete_product_set.js,samples/README.md) |
+| Product_search.delete_reference_image | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-vision/samples/generated/v1/product_search.delete_reference_image.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-vision/samples/generated/v1/product_search.delete_reference_image.js,samples/README.md) |
+| Product_search.get_product | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-vision/samples/generated/v1/product_search.get_product.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-vision/samples/generated/v1/product_search.get_product.js,samples/README.md) |
+| Product_search.get_product_set | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-vision/samples/generated/v1/product_search.get_product_set.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-vision/samples/generated/v1/product_search.get_product_set.js,samples/README.md) |
+| Product_search.get_reference_image | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-vision/samples/generated/v1/product_search.get_reference_image.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-vision/samples/generated/v1/product_search.get_reference_image.js,samples/README.md) |
+| Product_search.import_product_sets | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-vision/samples/generated/v1/product_search.import_product_sets.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-vision/samples/generated/v1/product_search.import_product_sets.js,samples/README.md) |
+| Product_search.list_product_sets | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-vision/samples/generated/v1/product_search.list_product_sets.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-vision/samples/generated/v1/product_search.list_product_sets.js,samples/README.md) |
+| Product_search.list_products | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-vision/samples/generated/v1/product_search.list_products.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-vision/samples/generated/v1/product_search.list_products.js,samples/README.md) |
+| Product_search.list_products_in_product_set | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-vision/samples/generated/v1/product_search.list_products_in_product_set.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-vision/samples/generated/v1/product_search.list_products_in_product_set.js,samples/README.md) |
+| Product_search.list_reference_images | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-vision/samples/generated/v1/product_search.list_reference_images.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-vision/samples/generated/v1/product_search.list_reference_images.js,samples/README.md) |
+| Product_search.purge_products | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-vision/samples/generated/v1/product_search.purge_products.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-vision/samples/generated/v1/product_search.purge_products.js,samples/README.md) |
+| Product_search.remove_product_from_product_set | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-vision/samples/generated/v1/product_search.remove_product_from_product_set.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-vision/samples/generated/v1/product_search.remove_product_from_product_set.js,samples/README.md) |
+| Product_search.update_product | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-vision/samples/generated/v1/product_search.update_product.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-vision/samples/generated/v1/product_search.update_product.js,samples/README.md) |
+| Product_search.update_product_set | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-vision/samples/generated/v1/product_search.update_product_set.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-vision/samples/generated/v1/product_search.update_product_set.js,samples/README.md) |
+| Image_annotator.batch_annotate_images | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-vision/samples/generated/v1p1beta1/image_annotator.batch_annotate_images.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-vision/samples/generated/v1p1beta1/image_annotator.batch_annotate_images.js,samples/README.md) |
+| Image_annotator.async_batch_annotate_files | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-vision/samples/generated/v1p2beta1/image_annotator.async_batch_annotate_files.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-vision/samples/generated/v1p2beta1/image_annotator.async_batch_annotate_files.js,samples/README.md) |
+| Image_annotator.batch_annotate_images | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-vision/samples/generated/v1p2beta1/image_annotator.batch_annotate_images.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-vision/samples/generated/v1p2beta1/image_annotator.batch_annotate_images.js,samples/README.md) |
+| Image_annotator.async_batch_annotate_files | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-vision/samples/generated/v1p3beta1/image_annotator.async_batch_annotate_files.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-vision/samples/generated/v1p3beta1/image_annotator.async_batch_annotate_files.js,samples/README.md) |
+| Image_annotator.batch_annotate_images | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-vision/samples/generated/v1p3beta1/image_annotator.batch_annotate_images.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-vision/samples/generated/v1p3beta1/image_annotator.batch_annotate_images.js,samples/README.md) |
+| Product_search.add_product_to_product_set | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-vision/samples/generated/v1p3beta1/product_search.add_product_to_product_set.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-vision/samples/generated/v1p3beta1/product_search.add_product_to_product_set.js,samples/README.md) |
+| Product_search.create_product | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-vision/samples/generated/v1p3beta1/product_search.create_product.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-vision/samples/generated/v1p3beta1/product_search.create_product.js,samples/README.md) |
+| Product_search.create_product_set | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-vision/samples/generated/v1p3beta1/product_search.create_product_set.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-vision/samples/generated/v1p3beta1/product_search.create_product_set.js,samples/README.md) |
+| Product_search.create_reference_image | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-vision/samples/generated/v1p3beta1/product_search.create_reference_image.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-vision/samples/generated/v1p3beta1/product_search.create_reference_image.js,samples/README.md) |
+| Product_search.delete_product | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-vision/samples/generated/v1p3beta1/product_search.delete_product.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-vision/samples/generated/v1p3beta1/product_search.delete_product.js,samples/README.md) |
+| Product_search.delete_product_set | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-vision/samples/generated/v1p3beta1/product_search.delete_product_set.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-vision/samples/generated/v1p3beta1/product_search.delete_product_set.js,samples/README.md) |
+| Product_search.delete_reference_image | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-vision/samples/generated/v1p3beta1/product_search.delete_reference_image.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-vision/samples/generated/v1p3beta1/product_search.delete_reference_image.js,samples/README.md) |
+| Product_search.get_product | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-vision/samples/generated/v1p3beta1/product_search.get_product.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-vision/samples/generated/v1p3beta1/product_search.get_product.js,samples/README.md) |
+| Product_search.get_product_set | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-vision/samples/generated/v1p3beta1/product_search.get_product_set.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-vision/samples/generated/v1p3beta1/product_search.get_product_set.js,samples/README.md) |
+| Product_search.get_reference_image | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-vision/samples/generated/v1p3beta1/product_search.get_reference_image.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-vision/samples/generated/v1p3beta1/product_search.get_reference_image.js,samples/README.md) |
+| Product_search.import_product_sets | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-vision/samples/generated/v1p3beta1/product_search.import_product_sets.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-vision/samples/generated/v1p3beta1/product_search.import_product_sets.js,samples/README.md) |
+| Product_search.list_product_sets | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-vision/samples/generated/v1p3beta1/product_search.list_product_sets.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-vision/samples/generated/v1p3beta1/product_search.list_product_sets.js,samples/README.md) |
+| Product_search.list_products | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-vision/samples/generated/v1p3beta1/product_search.list_products.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-vision/samples/generated/v1p3beta1/product_search.list_products.js,samples/README.md) |
+| Product_search.list_products_in_product_set | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-vision/samples/generated/v1p3beta1/product_search.list_products_in_product_set.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-vision/samples/generated/v1p3beta1/product_search.list_products_in_product_set.js,samples/README.md) |
+| Product_search.list_reference_images | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-vision/samples/generated/v1p3beta1/product_search.list_reference_images.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-vision/samples/generated/v1p3beta1/product_search.list_reference_images.js,samples/README.md) |
+| Product_search.remove_product_from_product_set | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-vision/samples/generated/v1p3beta1/product_search.remove_product_from_product_set.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-vision/samples/generated/v1p3beta1/product_search.remove_product_from_product_set.js,samples/README.md) |
+| Product_search.update_product | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-vision/samples/generated/v1p3beta1/product_search.update_product.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-vision/samples/generated/v1p3beta1/product_search.update_product.js,samples/README.md) |
+| Product_search.update_product_set | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-vision/samples/generated/v1p3beta1/product_search.update_product_set.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-vision/samples/generated/v1p3beta1/product_search.update_product_set.js,samples/README.md) |
+| Image_annotator.async_batch_annotate_files | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-vision/samples/generated/v1p4beta1/image_annotator.async_batch_annotate_files.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-vision/samples/generated/v1p4beta1/image_annotator.async_batch_annotate_files.js,samples/README.md) |
+| Image_annotator.async_batch_annotate_images | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-vision/samples/generated/v1p4beta1/image_annotator.async_batch_annotate_images.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-vision/samples/generated/v1p4beta1/image_annotator.async_batch_annotate_images.js,samples/README.md) |
+| Image_annotator.batch_annotate_files | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-vision/samples/generated/v1p4beta1/image_annotator.batch_annotate_files.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-vision/samples/generated/v1p4beta1/image_annotator.batch_annotate_files.js,samples/README.md) |
+| Image_annotator.batch_annotate_images | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-vision/samples/generated/v1p4beta1/image_annotator.batch_annotate_images.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-vision/samples/generated/v1p4beta1/image_annotator.batch_annotate_images.js,samples/README.md) |
+| Product_search.add_product_to_product_set | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-vision/samples/generated/v1p4beta1/product_search.add_product_to_product_set.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-vision/samples/generated/v1p4beta1/product_search.add_product_to_product_set.js,samples/README.md) |
+| Product_search.create_product | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-vision/samples/generated/v1p4beta1/product_search.create_product.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-vision/samples/generated/v1p4beta1/product_search.create_product.js,samples/README.md) |
+| Product_search.create_product_set | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-vision/samples/generated/v1p4beta1/product_search.create_product_set.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-vision/samples/generated/v1p4beta1/product_search.create_product_set.js,samples/README.md) |
+| Product_search.create_reference_image | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-vision/samples/generated/v1p4beta1/product_search.create_reference_image.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-vision/samples/generated/v1p4beta1/product_search.create_reference_image.js,samples/README.md) |
+| Product_search.delete_product | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-vision/samples/generated/v1p4beta1/product_search.delete_product.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-vision/samples/generated/v1p4beta1/product_search.delete_product.js,samples/README.md) |
+| Product_search.delete_product_set | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-vision/samples/generated/v1p4beta1/product_search.delete_product_set.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-vision/samples/generated/v1p4beta1/product_search.delete_product_set.js,samples/README.md) |
+| Product_search.delete_reference_image | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-vision/samples/generated/v1p4beta1/product_search.delete_reference_image.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-vision/samples/generated/v1p4beta1/product_search.delete_reference_image.js,samples/README.md) |
+| Product_search.get_product | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-vision/samples/generated/v1p4beta1/product_search.get_product.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-vision/samples/generated/v1p4beta1/product_search.get_product.js,samples/README.md) |
+| Product_search.get_product_set | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-vision/samples/generated/v1p4beta1/product_search.get_product_set.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-vision/samples/generated/v1p4beta1/product_search.get_product_set.js,samples/README.md) |
+| Product_search.get_reference_image | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-vision/samples/generated/v1p4beta1/product_search.get_reference_image.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-vision/samples/generated/v1p4beta1/product_search.get_reference_image.js,samples/README.md) |
+| Product_search.import_product_sets | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-vision/samples/generated/v1p4beta1/product_search.import_product_sets.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-vision/samples/generated/v1p4beta1/product_search.import_product_sets.js,samples/README.md) |
+| Product_search.list_product_sets | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-vision/samples/generated/v1p4beta1/product_search.list_product_sets.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-vision/samples/generated/v1p4beta1/product_search.list_product_sets.js,samples/README.md) |
+| Product_search.list_products | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-vision/samples/generated/v1p4beta1/product_search.list_products.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-vision/samples/generated/v1p4beta1/product_search.list_products.js,samples/README.md) |
+| Product_search.list_products_in_product_set | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-vision/samples/generated/v1p4beta1/product_search.list_products_in_product_set.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-vision/samples/generated/v1p4beta1/product_search.list_products_in_product_set.js,samples/README.md) |
+| Product_search.list_reference_images | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-vision/samples/generated/v1p4beta1/product_search.list_reference_images.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-vision/samples/generated/v1p4beta1/product_search.list_reference_images.js,samples/README.md) |
+| Product_search.purge_products | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-vision/samples/generated/v1p4beta1/product_search.purge_products.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-vision/samples/generated/v1p4beta1/product_search.purge_products.js,samples/README.md) |
+| Product_search.remove_product_from_product_set | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-vision/samples/generated/v1p4beta1/product_search.remove_product_from_product_set.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-vision/samples/generated/v1p4beta1/product_search.remove_product_from_product_set.js,samples/README.md) |
+| Product_search.update_product | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-vision/samples/generated/v1p4beta1/product_search.update_product.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-vision/samples/generated/v1p4beta1/product_search.update_product.js,samples/README.md) |
+| Product_search.update_product_set | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-vision/samples/generated/v1p4beta1/product_search.update_product_set.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-vision/samples/generated/v1p4beta1/product_search.update_product_set.js,samples/README.md) |
+| Quickstart | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-vision/samples/quickstart.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-vision/samples/quickstart.js,samples/README.md) |
+| Quickstart.test | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-vision/samples/test/quickstart.test.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-vision/samples/test/quickstart.test.js,samples/README.md) |
+
+
+
+The [Google Cloud Vision API Node.js Client API Reference][client-docs] documentation
+also contains samples.
+
+## Supported Node.js Versions
+
+Our client libraries follow the [Node.js release schedule](https://nodejs.org/en/about/releases/).
+Libraries are compatible with all current _active_ and _maintenance_ versions of
+Node.js.
+If you are using an end-of-life version of Node.js, we recommend that you update
+as soon as possible to an actively supported LTS version.
+
+Google's client libraries support legacy versions of Node.js runtimes on a
+best-efforts basis with the following warnings:
+
+* Legacy versions are not tested in continuous integration.
+* Some security patches and features cannot be backported.
+* Dependencies cannot be kept up-to-date.
+
+Client libraries targeting some end-of-life versions of Node.js are available, and
+can be installed through npm [dist-tags](https://docs.npmjs.com/cli/dist-tag).
+The dist-tags follow the naming convention `legacy-(version)`.
+For example, `npm install @google-cloud/vision@legacy-8` installs client libraries
+for versions compatible with Node.js 8.
+
+## Versioning
+
+This library follows [Semantic Versioning](http://semver.org/).
+
+
+
+This library is considered to be **stable**. The code surface will not change in backwards-incompatible ways
+unless absolutely necessary (e.g. because of critical security issues) or with
+an extensive deprecation period. Issues and requests against **stable** libraries
+are addressed with the highest priority.
+
+
+
+
+
+
+More Information: [Google Cloud Platform Launch Stages][launch_stages]
+
+[launch_stages]: https://cloud.google.com/terms/launch-stages
+
+## Contributing
+
+Contributions welcome! See the [Contributing Guide](https://github.com/googleapis/google-cloud-node/blob/main/CONTRIBUTING.md).
+
+Please note that this `README.md`, the `samples/README.md`,
+and a variety of configuration files in this repository (including `.nycrc` and `tsconfig.json`)
+are generated from a central template. To edit one of these files, make an edit
+to its templates in
+[directory](https://github.com/googleapis/synthtool).
+
+## License
+
+Apache Version 2.0
+
+See [LICENSE](https://github.com/googleapis/google-cloud-node/blob/main/LICENSE)
+
+[client-docs]: https://cloud.google.com/nodejs/docs/reference/vision/latest
+[product-docs]: https://cloud.google.com/vision
+[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=vision.googleapis.com
+[auth]: https://cloud.google.com/docs/authentication/getting-started
diff --git a/packages/google-cloud-vision/linkinator.config.json b/packages/google-cloud-vision/linkinator.config.json
new file mode 100644
index 00000000000..befd23c8633
--- /dev/null
+++ b/packages/google-cloud-vision/linkinator.config.json
@@ -0,0 +1,16 @@
+{
+ "recurse": true,
+ "skip": [
+ "https://codecov.io/gh/googleapis/",
+ "www.googleapis.com",
+ "img.shields.io",
+ "https://console.cloud.google.com/cloudshell",
+ "https://support.google.com"
+ ],
+ "silent": true,
+ "concurrency": 5,
+ "retry": true,
+ "retryErrors": true,
+ "retryErrorsCount": 5,
+ "retryErrorsJitter": 3000
+}
diff --git a/packages/google-cloud-vision/owlbot.py b/packages/google-cloud-vision/owlbot.py
new file mode 100644
index 00000000000..18f49684c7e
--- /dev/null
+++ b/packages/google-cloud-vision/owlbot.py
@@ -0,0 +1,33 @@
+# Copyright 2018 Google LLC
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+"""This script is used to synthesize generated parts of this library."""
+
+import synthtool as s
+import synthtool.languages.node_mono_repo as node
+from pathlib import Path
+
+def patch(library: Path):
+ client_file = library / "src/*/image_annotator_client.ts"
+ s.replace(client_file, '\Z',
+ 'import {FeaturesMethod} from \'../helpers\';\n' +
+ '// eslint-disable-next-line @typescript-eslint/no-empty-interface\n' +
+ 'export interface ImageAnnotatorClient extends FeaturesMethod {}\n'
+ )
+
+node.owlbot_main(relative_dir="packages/google-cloud-vision",
+ staging_excludes=['src/index.ts', 'package.json'],
+ templates_excludes=['src/index.ts'],
+ patch_staging=patch
+)
diff --git a/packages/google-cloud-vision/package.json b/packages/google-cloud-vision/package.json
new file mode 100644
index 00000000000..4712184a05d
--- /dev/null
+++ b/packages/google-cloud-vision/package.json
@@ -0,0 +1,81 @@
+{
+ "name": "@google-cloud/vision",
+ "description": "Google Cloud Vision API client for Node.js",
+ "version": "3.1.0",
+ "license": "Apache-2.0",
+ "author": "Google Inc",
+ "engines": {
+ "node": ">=12.0.0"
+ },
+ "repository": {
+ "type": "git",
+ "directory": "packages/google-cloud-vision",
+ "url": "https://github.com/googleapis/google-cloud-node.git"
+ },
+ "main": "build/src/index.js",
+ "types": "build/src/index.d.ts",
+ "files": [
+ "build/protos",
+ "build/src"
+ ],
+ "keywords": [
+ "google apis client",
+ "google api client",
+ "google apis",
+ "google api",
+ "google",
+ "google cloud platform",
+ "google cloud",
+ "cloud",
+ "google vision",
+ "vision",
+ "Google Cloud Vision API"
+ ],
+ "scripts": {
+ "test": "c8 mocha build/test",
+ "samples-test": "npm run compile && cd samples/ && npm link ../ && npm i && npm test",
+ "lint": "gts check",
+ "docs": "jsdoc -c .jsdoc.js",
+ "system-test": "npm run compile && c8 mocha build/system-test",
+ "fix": "gts fix",
+ "test-no-cover": "mocha test/*.js",
+ "docs-test": "linkinator docs",
+ "predocs-test": "npm run docs",
+ "prelint": "cd samples; npm link ../; npm install",
+ "clean": "gts clean",
+ "compile": "tsc -p . && cp -r protos build/",
+ "compile-protos": "compileProtos src",
+ "prepare": "npm run compile",
+ "precompile": "gts clean"
+ },
+ "dependencies": {
+ "@google-cloud/promisify": "^3.0.0",
+ "google-gax": "^3.5.2",
+ "is": "^3.3.0"
+ },
+ "devDependencies": {
+ "@google-cloud/storage": "^6.0.0",
+ "@types/is": "0.0.21",
+ "@types/mocha": "^10.0.0",
+ "@types/node": "^18.0.0",
+ "@types/sinon": "^10.0.0",
+ "@types/uuid": "^9.0.0",
+ "c8": "^7.1.0",
+ "codecov": "^3.6.5",
+ "gts": "^4.0.0",
+ "jsdoc": "^4.0.0",
+ "jsdoc-fresh": "^2.0.0",
+ "jsdoc-region-tag": "^2.0.0",
+ "linkinator": "^4.0.0",
+ "mocha": "^10.0.0",
+ "null-loader": "^4.0.0",
+ "pack-n-play": "^1.0.0-2",
+ "sinon": "^15.0.0",
+ "ts-loader": "^9.0.0",
+ "typescript": "^4.6.4",
+ "uuid": "^9.0.0",
+ "webpack": "^5.0.0",
+ "webpack-cli": "^5.0.0"
+ },
+ "homepage": "https://github.com/googleapis/google-cloud-node/tree/main/packages/google-cloud-vision"
+}
diff --git a/packages/google-cloud-vision/protos/google/cloud/common_resources.proto b/packages/google-cloud-vision/protos/google/cloud/common_resources.proto
new file mode 100644
index 00000000000..56c9f800d5e
--- /dev/null
+++ b/packages/google-cloud-vision/protos/google/cloud/common_resources.proto
@@ -0,0 +1,52 @@
+// Copyright 2019 Google LLC.
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+// This file contains stub messages for common resources in GCP.
+// It is not intended to be directly generated, and is instead used by
+// other tooling to be able to match common resource patterns.
+syntax = "proto3";
+
+package google.cloud;
+
+import "google/api/resource.proto";
+
+
+option (google.api.resource_definition) = {
+ type: "cloudresourcemanager.googleapis.com/Project"
+ pattern: "projects/{project}"
+};
+
+
+option (google.api.resource_definition) = {
+ type: "cloudresourcemanager.googleapis.com/Organization"
+ pattern: "organizations/{organization}"
+};
+
+
+option (google.api.resource_definition) = {
+ type: "cloudresourcemanager.googleapis.com/Folder"
+ pattern: "folders/{folder}"
+};
+
+
+option (google.api.resource_definition) = {
+ type: "cloudbilling.googleapis.com/BillingAccount"
+ pattern: "billingAccounts/{billing_account}"
+};
+
+option (google.api.resource_definition) = {
+ type: "locations.googleapis.com/Location"
+ pattern: "projects/{project}/locations/{location}"
+};
+
diff --git a/packages/google-cloud-vision/protos/google/cloud/vision/v1/geometry.proto b/packages/google-cloud-vision/protos/google/cloud/vision/v1/geometry.proto
new file mode 100644
index 00000000000..7e0d24c2f06
--- /dev/null
+++ b/packages/google-cloud-vision/protos/google/cloud/vision/v1/geometry.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.cloud.vision.v1;
+
+option cc_enable_arenas = true;
+option go_package = "google.golang.org/genproto/googleapis/cloud/vision/v1;vision";
+option java_multiple_files = true;
+option java_outer_classname = "GeometryProto";
+option java_package = "com.google.cloud.vision.v1";
+option objc_class_prefix = "GCVN";
+
+// A vertex represents a 2D point in the image.
+// NOTE: the vertex coordinates are in the same scale as the original image.
+message Vertex {
+ // X coordinate.
+ int32 x = 1;
+
+ // Y coordinate.
+ int32 y = 2;
+}
+
+// A vertex represents a 2D point in the image.
+// NOTE: the normalized vertex coordinates are relative to the original image
+// and range from 0 to 1.
+message NormalizedVertex {
+ // X coordinate.
+ float x = 1;
+
+ // Y coordinate.
+ float y = 2;
+}
+
+// A bounding polygon for the detected image annotation.
+message BoundingPoly {
+ // The bounding polygon vertices.
+ repeated Vertex vertices = 1;
+
+ // The bounding polygon normalized vertices.
+ repeated NormalizedVertex normalized_vertices = 2;
+}
+
+// A 3D position in the image, used primarily for Face detection landmarks.
+// A valid Position must have both x and y coordinates.
+// The position coordinates are in the same scale as the original image.
+message Position {
+ // X coordinate.
+ float x = 1;
+
+ // Y coordinate.
+ float y = 2;
+
+ // Z coordinate (or depth).
+ float z = 3;
+}
diff --git a/packages/google-cloud-vision/protos/google/cloud/vision/v1/image_annotator.proto b/packages/google-cloud-vision/protos/google/cloud/vision/v1/image_annotator.proto
new file mode 100644
index 00000000000..6fed6112bec
--- /dev/null
+++ b/packages/google-cloud-vision/protos/google/cloud/vision/v1/image_annotator.proto
@@ -0,0 +1,1044 @@
+// Copyright 2022 Google LLC
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+syntax = "proto3";
+
+package google.cloud.vision.v1;
+
+import "google/api/annotations.proto";
+import "google/api/client.proto";
+import "google/api/field_behavior.proto";
+import "google/cloud/vision/v1/geometry.proto";
+import "google/cloud/vision/v1/product_search.proto";
+import "google/cloud/vision/v1/text_annotation.proto";
+import "google/cloud/vision/v1/web_detection.proto";
+import "google/longrunning/operations.proto";
+import "google/protobuf/timestamp.proto";
+import "google/rpc/status.proto";
+import "google/type/color.proto";
+import "google/type/latlng.proto";
+
+option cc_enable_arenas = true;
+option go_package = "google.golang.org/genproto/googleapis/cloud/vision/v1;vision";
+option java_multiple_files = true;
+option java_outer_classname = "ImageAnnotatorProto";
+option java_package = "com.google.cloud.vision.v1";
+option objc_class_prefix = "GCVN";
+
+// Service that performs Google Cloud Vision API detection tasks over client
+// images, such as face, landmark, logo, label, and text detection. The
+// ImageAnnotator service returns detected entities from the images.
+service ImageAnnotator {
+ option (google.api.default_host) = "vision.googleapis.com";
+ option (google.api.oauth_scopes) =
+ "https://www.googleapis.com/auth/cloud-platform,"
+ "https://www.googleapis.com/auth/cloud-vision";
+
+ // Run image detection and annotation for a batch of images.
+ rpc BatchAnnotateImages(BatchAnnotateImagesRequest) returns (BatchAnnotateImagesResponse) {
+ option (google.api.http) = {
+ post: "/v1/images:annotate"
+ body: "*"
+ additional_bindings {
+ post: "/v1/{parent=projects/*/locations/*}/images:annotate"
+ body: "*"
+ }
+ additional_bindings {
+ post: "/v1/{parent=projects/*}/images:annotate"
+ body: "*"
+ }
+ };
+ option (google.api.method_signature) = "requests";
+ }
+
+ // Service that performs image detection and annotation for a batch of files.
+ // Now only "application/pdf", "image/tiff" and "image/gif" are supported.
+ //
+ // This service will extract at most 5 (customers can specify which 5 in
+ // AnnotateFileRequest.pages) frames (gif) or pages (pdf or tiff) from each
+ // file provided and perform detection and annotation for each image
+ // extracted.
+ rpc BatchAnnotateFiles(BatchAnnotateFilesRequest) returns (BatchAnnotateFilesResponse) {
+ option (google.api.http) = {
+ post: "/v1/files:annotate"
+ body: "*"
+ additional_bindings {
+ post: "/v1/{parent=projects/*/locations/*}/files:annotate"
+ body: "*"
+ }
+ additional_bindings {
+ post: "/v1/{parent=projects/*}/files:annotate"
+ body: "*"
+ }
+ };
+ option (google.api.method_signature) = "requests";
+ }
+
+ // Run asynchronous image detection and annotation for a list of images.
+ //
+ // Progress and results can be retrieved through the
+ // `google.longrunning.Operations` interface.
+ // `Operation.metadata` contains `OperationMetadata` (metadata).
+ // `Operation.response` contains `AsyncBatchAnnotateImagesResponse` (results).
+ //
+ // This service will write image annotation outputs to json files in customer
+ // GCS bucket, each json file containing BatchAnnotateImagesResponse proto.
+ rpc AsyncBatchAnnotateImages(AsyncBatchAnnotateImagesRequest) returns (google.longrunning.Operation) {
+ option (google.api.http) = {
+ post: "/v1/images:asyncBatchAnnotate"
+ body: "*"
+ additional_bindings {
+ post: "/v1/{parent=projects/*/locations/*}/images:asyncBatchAnnotate"
+ body: "*"
+ }
+ additional_bindings {
+ post: "/v1/{parent=projects/*}/images:asyncBatchAnnotate"
+ body: "*"
+ }
+ };
+ option (google.api.method_signature) = "requests,output_config";
+ option (google.longrunning.operation_info) = {
+ response_type: "AsyncBatchAnnotateImagesResponse"
+ metadata_type: "OperationMetadata"
+ };
+ }
+
+ // Run asynchronous image detection and annotation for a list of generic
+ // files, such as PDF files, which may contain multiple pages and multiple
+ // images per page. Progress and results can be retrieved through the
+ // `google.longrunning.Operations` interface.
+ // `Operation.metadata` contains `OperationMetadata` (metadata).
+ // `Operation.response` contains `AsyncBatchAnnotateFilesResponse` (results).
+ rpc AsyncBatchAnnotateFiles(AsyncBatchAnnotateFilesRequest) returns (google.longrunning.Operation) {
+ option (google.api.http) = {
+ post: "/v1/files:asyncBatchAnnotate"
+ body: "*"
+ additional_bindings {
+ post: "/v1/{parent=projects/*/locations/*}/files:asyncBatchAnnotate"
+ body: "*"
+ }
+ additional_bindings {
+ post: "/v1/{parent=projects/*}/files:asyncBatchAnnotate"
+ body: "*"
+ }
+ };
+ option (google.api.method_signature) = "requests";
+ option (google.longrunning.operation_info) = {
+ response_type: "AsyncBatchAnnotateFilesResponse"
+ metadata_type: "OperationMetadata"
+ };
+ }
+}
+
+// A bucketized representation of likelihood, which is intended to give clients
+// highly stable results across model upgrades.
+enum Likelihood {
+ // Unknown likelihood.
+ UNKNOWN = 0;
+
+ // It is very unlikely.
+ VERY_UNLIKELY = 1;
+
+ // It is unlikely.
+ UNLIKELY = 2;
+
+ // It is possible.
+ POSSIBLE = 3;
+
+ // It is likely.
+ LIKELY = 4;
+
+ // It is very likely.
+ VERY_LIKELY = 5;
+}
+
+// The type of Google Cloud Vision API detection to perform, and the maximum
+// number of results to return for that type. Multiple `Feature` objects can
+// be specified in the `features` list.
+message Feature {
+ // Type of Google Cloud Vision API feature to be extracted.
+ enum Type {
+ // Unspecified feature type.
+ TYPE_UNSPECIFIED = 0;
+
+ // Run face detection.
+ FACE_DETECTION = 1;
+
+ // Run landmark detection.
+ LANDMARK_DETECTION = 2;
+
+ // Run logo detection.
+ LOGO_DETECTION = 3;
+
+ // Run label detection.
+ LABEL_DETECTION = 4;
+
+ // Run text detection / optical character recognition (OCR). Text detection
+ // is optimized for areas of text within a larger image; if the image is
+ // a document, use `DOCUMENT_TEXT_DETECTION` instead.
+ TEXT_DETECTION = 5;
+
+ // Run dense text document OCR. Takes precedence when both
+ // `DOCUMENT_TEXT_DETECTION` and `TEXT_DETECTION` are present.
+ DOCUMENT_TEXT_DETECTION = 11;
+
+ // Run Safe Search to detect potentially unsafe
+ // or undesirable content.
+ SAFE_SEARCH_DETECTION = 6;
+
+ // Compute a set of image properties, such as the
+ // image's dominant colors.
+ IMAGE_PROPERTIES = 7;
+
+ // Run crop hints.
+ CROP_HINTS = 9;
+
+ // Run web detection.
+ WEB_DETECTION = 10;
+
+ // Run Product Search.
+ PRODUCT_SEARCH = 12;
+
+ // Run localizer for object detection.
+ OBJECT_LOCALIZATION = 19;
+ }
+
+ // The feature type.
+ Type type = 1;
+
+ // Maximum number of results of this type. Does not apply to
+ // `TEXT_DETECTION`, `DOCUMENT_TEXT_DETECTION`, or `CROP_HINTS`.
+ int32 max_results = 2;
+
+ // Model to use for the feature.
+ // Supported values: "builtin/stable" (the default if unset) and
+ // "builtin/latest". `DOCUMENT_TEXT_DETECTION` and `TEXT_DETECTION` also
+ // support "builtin/weekly" for the bleeding edge release updated weekly.
+ string model = 3;
+}
+
+// External image source (Google Cloud Storage or web URL image location).
+message ImageSource {
+ // **Use `image_uri` instead.**
+ //
+ // The Google Cloud Storage URI of the form
+ // `gs://bucket_name/object_name`. Object versioning is not supported. See
+ // [Google Cloud Storage Request
+ // URIs](https://cloud.google.com/storage/docs/reference-uris) for more info.
+ string gcs_image_uri = 1;
+
+ // The URI of the source image. Can be either:
+ //
+ // 1. A Google Cloud Storage URI of the form
+ // `gs://bucket_name/object_name`. Object versioning is not supported. See
+ // [Google Cloud Storage Request
+ // URIs](https://cloud.google.com/storage/docs/reference-uris) for more
+ // info.
+ //
+ // 2. A publicly-accessible image HTTP/HTTPS URL. When fetching images from
+ // HTTP/HTTPS URLs, Google cannot guarantee that the request will be
+ // completed. Your request may fail if the specified host denies the
+ // request (e.g. due to request throttling or DOS prevention), or if Google
+ // throttles requests to the site for abuse prevention. You should not
+ // depend on externally-hosted images for production applications.
+ //
+ // When both `gcs_image_uri` and `image_uri` are specified, `image_uri` takes
+ // precedence.
+ string image_uri = 2;
+}
+
+// Client image to perform Google Cloud Vision API tasks over.
+message Image {
+ // Image content, represented as a stream of bytes.
+ // Note: As with all `bytes` fields, protobuffers use a pure binary
+ // representation, whereas JSON representations use base64.
+ //
+ // Currently, this field only works for BatchAnnotateImages requests. It does
+ // not work for AsyncBatchAnnotateImages requests.
+ bytes content = 1;
+
+ // Google Cloud Storage image location, or publicly-accessible image
+ // URL. If both `content` and `source` are provided for an image, `content`
+ // takes precedence and is used to perform the image annotation request.
+ ImageSource source = 2;
+}
+
+// A face annotation object contains the results of face detection.
+message FaceAnnotation {
+ // A face-specific landmark (for example, a face feature).
+ message Landmark {
+ // Face landmark (feature) type.
+ // Left and right are defined from the vantage of the viewer of the image
+ // without considering mirror projections typical of photos. So, `LEFT_EYE`,
+ // typically, is the person's right eye.
+ enum Type {
+ // Unknown face landmark detected. Should not be filled.
+ UNKNOWN_LANDMARK = 0;
+
+ // Left eye.
+ LEFT_EYE = 1;
+
+ // Right eye.
+ RIGHT_EYE = 2;
+
+ // Left of left eyebrow.
+ LEFT_OF_LEFT_EYEBROW = 3;
+
+ // Right of left eyebrow.
+ RIGHT_OF_LEFT_EYEBROW = 4;
+
+ // Left of right eyebrow.
+ LEFT_OF_RIGHT_EYEBROW = 5;
+
+ // Right of right eyebrow.
+ RIGHT_OF_RIGHT_EYEBROW = 6;
+
+ // Midpoint between eyes.
+ MIDPOINT_BETWEEN_EYES = 7;
+
+ // Nose tip.
+ NOSE_TIP = 8;
+
+ // Upper lip.
+ UPPER_LIP = 9;
+
+ // Lower lip.
+ LOWER_LIP = 10;
+
+ // Mouth left.
+ MOUTH_LEFT = 11;
+
+ // Mouth right.
+ MOUTH_RIGHT = 12;
+
+ // Mouth center.
+ MOUTH_CENTER = 13;
+
+ // Nose, bottom right.
+ NOSE_BOTTOM_RIGHT = 14;
+
+ // Nose, bottom left.
+ NOSE_BOTTOM_LEFT = 15;
+
+ // Nose, bottom center.
+ NOSE_BOTTOM_CENTER = 16;
+
+ // Left eye, top boundary.
+ LEFT_EYE_TOP_BOUNDARY = 17;
+
+ // Left eye, right corner.
+ LEFT_EYE_RIGHT_CORNER = 18;
+
+ // Left eye, bottom boundary.
+ LEFT_EYE_BOTTOM_BOUNDARY = 19;
+
+ // Left eye, left corner.
+ LEFT_EYE_LEFT_CORNER = 20;
+
+ // Right eye, top boundary.
+ RIGHT_EYE_TOP_BOUNDARY = 21;
+
+ // Right eye, right corner.
+ RIGHT_EYE_RIGHT_CORNER = 22;
+
+ // Right eye, bottom boundary.
+ RIGHT_EYE_BOTTOM_BOUNDARY = 23;
+
+ // Right eye, left corner.
+ RIGHT_EYE_LEFT_CORNER = 24;
+
+ // Left eyebrow, upper midpoint.
+ LEFT_EYEBROW_UPPER_MIDPOINT = 25;
+
+ // Right eyebrow, upper midpoint.
+ RIGHT_EYEBROW_UPPER_MIDPOINT = 26;
+
+ // Left ear tragion.
+ LEFT_EAR_TRAGION = 27;
+
+ // Right ear tragion.
+ RIGHT_EAR_TRAGION = 28;
+
+ // Left eye pupil.
+ LEFT_EYE_PUPIL = 29;
+
+ // Right eye pupil.
+ RIGHT_EYE_PUPIL = 30;
+
+ // Forehead glabella.
+ FOREHEAD_GLABELLA = 31;
+
+ // Chin gnathion.
+ CHIN_GNATHION = 32;
+
+ // Chin left gonion.
+ CHIN_LEFT_GONION = 33;
+
+ // Chin right gonion.
+ CHIN_RIGHT_GONION = 34;
+
+ // Left cheek center.
+ LEFT_CHEEK_CENTER = 35;
+
+ // Right cheek center.
+ RIGHT_CHEEK_CENTER = 36;
+ }
+
+ // Face landmark type.
+ Type type = 3;
+
+ // Face landmark position.
+ Position position = 4;
+ }
+
+ // The bounding polygon around the face. The coordinates of the bounding box
+ // are in the original image's scale.
+ // The bounding box is computed to "frame" the face in accordance with human
+ // expectations. It is based on the landmarker results.
+ // Note that one or more x and/or y coordinates may not be generated in the
+ // `BoundingPoly` (the polygon will be unbounded) if only a partial face
+ // appears in the image to be annotated.
+ BoundingPoly bounding_poly = 1;
+
+ // The `fd_bounding_poly` bounding polygon is tighter than the
+ // `boundingPoly`, and encloses only the skin part of the face. Typically, it
+ // is used to eliminate the face from any image analysis that detects the
+ // "amount of skin" visible in an image. It is not based on the
+ // landmarker results, only on the initial face detection, hence
+ // the fd (face detection) prefix.
+ BoundingPoly fd_bounding_poly = 2;
+
+ // Detected face landmarks.
+ repeated Landmark landmarks = 3;
+
+ // Roll angle, which indicates the amount of clockwise/anti-clockwise rotation
+ // of the face relative to the image vertical about the axis perpendicular to
+ // the face. Range [-180,180].
+ float roll_angle = 4;
+
+ // Yaw angle, which indicates the leftward/rightward angle that the face is
+ // pointing relative to the vertical plane perpendicular to the image. Range
+ // [-180,180].
+ float pan_angle = 5;
+
+ // Pitch angle, which indicates the upwards/downwards angle that the face is
+ // pointing relative to the image's horizontal plane. Range [-180,180].
+ float tilt_angle = 6;
+
+ // Detection confidence. Range [0, 1].
+ float detection_confidence = 7;
+
+ // Face landmarking confidence. Range [0, 1].
+ float landmarking_confidence = 8;
+
+ // Joy likelihood.
+ Likelihood joy_likelihood = 9;
+
+ // Sorrow likelihood.
+ Likelihood sorrow_likelihood = 10;
+
+ // Anger likelihood.
+ Likelihood anger_likelihood = 11;
+
+ // Surprise likelihood.
+ Likelihood surprise_likelihood = 12;
+
+ // Under-exposed likelihood.
+ Likelihood under_exposed_likelihood = 13;
+
+ // Blurred likelihood.
+ Likelihood blurred_likelihood = 14;
+
+ // Headwear likelihood.
+ Likelihood headwear_likelihood = 15;
+}
+
+// Detected entity location information.
+message LocationInfo {
+ // lat/long location coordinates.
+ google.type.LatLng lat_lng = 1;
+}
+
+// A `Property` consists of a user-supplied name/value pair.
+message Property {
+ // Name of the property.
+ string name = 1;
+
+ // Value of the property.
+ string value = 2;
+
+ // Value of numeric properties.
+ uint64 uint64_value = 3;
+}
+
+// Set of detected entity features.
+message EntityAnnotation {
+ // Opaque entity ID. Some IDs may be available in
+ // [Google Knowledge Graph Search
+ // API](https://developers.google.com/knowledge-graph/).
+ string mid = 1;
+
+ // The language code for the locale in which the entity textual
+ // `description` is expressed.
+ string locale = 2;
+
+ // Entity textual description, expressed in its `locale` language.
+ string description = 3;
+
+ // Overall score of the result. Range [0, 1].
+ float score = 4;
+
+ // **Deprecated. Use `score` instead.**
+ // The accuracy of the entity detection in an image.
+ // For example, for an image in which the "Eiffel Tower" entity is detected,
+ // this field represents the confidence that there is a tower in the query
+ // image. Range [0, 1].
+ float confidence = 5 [deprecated = true];
+
+ // The relevancy of the ICA (Image Content Annotation) label to the
+ // image. For example, the relevancy of "tower" is likely higher to an image
+ // containing the detected "Eiffel Tower" than to an image containing a
+ // detected distant towering building, even though the confidence that
+ // there is a tower in each image may be the same. Range [0, 1].
+ float topicality = 6;
+
+ // Image region to which this entity belongs. Not produced
+ // for `LABEL_DETECTION` features.
+ BoundingPoly bounding_poly = 7;
+
+ // The location information for the detected entity. Multiple
+ // `LocationInfo` elements can be present because one location may
+ // indicate the location of the scene in the image, and another location
+ // may indicate the location of the place where the image was taken.
+ // Location information is usually present for landmarks.
+ repeated LocationInfo locations = 8;
+
+ // Some entities may have optional user-supplied `Property` (name/value)
+ // fields, such a score or string that qualifies the entity.
+ repeated Property properties = 9;
+}
+
+// Set of detected objects with bounding boxes.
+message LocalizedObjectAnnotation {
+ // Object ID that should align with EntityAnnotation mid.
+ string mid = 1;
+
+ // The BCP-47 language code, such as "en-US" or "sr-Latn". For more
+ // information, see
+ // http://www.unicode.org/reports/tr35/#Unicode_locale_identifier.
+ string language_code = 2;
+
+ // Object name, expressed in its `language_code` language.
+ string name = 3;
+
+ // Score of the result. Range [0, 1].
+ float score = 4;
+
+ // Image region to which this object belongs. This must be populated.
+ BoundingPoly bounding_poly = 5;
+}
+
+// Set of features pertaining to the image, computed by computer vision
+// methods over safe-search verticals (for example, adult, spoof, medical,
+// violence).
+message SafeSearchAnnotation {
+ // Represents the adult content likelihood for the image. Adult content may
+ // contain elements such as nudity, pornographic images or cartoons, or
+ // sexual activities.
+ Likelihood adult = 1;
+
+ // Spoof likelihood. The likelihood that an modification
+ // was made to the image's canonical version to make it appear
+ // funny or offensive.
+ Likelihood spoof = 2;
+
+ // Likelihood that this is a medical image.
+ Likelihood medical = 3;
+
+ // Likelihood that this image contains violent content.
+ Likelihood violence = 4;
+
+ // Likelihood that the request image contains racy content. Racy content may
+ // include (but is not limited to) skimpy or sheer clothing, strategically
+ // covered nudity, lewd or provocative poses, or close-ups of sensitive
+ // body areas.
+ Likelihood racy = 9;
+}
+
+// Rectangle determined by min and max `LatLng` pairs.
+message LatLongRect {
+ // Min lat/long pair.
+ google.type.LatLng min_lat_lng = 1;
+
+ // Max lat/long pair.
+ google.type.LatLng max_lat_lng = 2;
+}
+
+// Color information consists of RGB channels, score, and the fraction of
+// the image that the color occupies in the image.
+message ColorInfo {
+ // RGB components of the color.
+ google.type.Color color = 1;
+
+ // Image-specific score for this color. Value in range [0, 1].
+ float score = 2;
+
+ // The fraction of pixels the color occupies in the image.
+ // Value in range [0, 1].
+ float pixel_fraction = 3;
+}
+
+// Set of dominant colors and their corresponding scores.
+message DominantColorsAnnotation {
+ // RGB color values with their score and pixel fraction.
+ repeated ColorInfo colors = 1;
+}
+
+// Stores image properties, such as dominant colors.
+message ImageProperties {
+ // If present, dominant colors completed successfully.
+ DominantColorsAnnotation dominant_colors = 1;
+}
+
+// Single crop hint that is used to generate a new crop when serving an image.
+message CropHint {
+ // The bounding polygon for the crop region. The coordinates of the bounding
+ // box are in the original image's scale.
+ BoundingPoly bounding_poly = 1;
+
+ // Confidence of this being a salient region. Range [0, 1].
+ float confidence = 2;
+
+ // Fraction of importance of this salient region with respect to the original
+ // image.
+ float importance_fraction = 3;
+}
+
+// Set of crop hints that are used to generate new crops when serving images.
+message CropHintsAnnotation {
+ // Crop hint results.
+ repeated CropHint crop_hints = 1;
+}
+
+// Parameters for crop hints annotation request.
+message CropHintsParams {
+ // Aspect ratios in floats, representing the ratio of the width to the height
+ // of the image. For example, if the desired aspect ratio is 4/3, the
+ // corresponding float value should be 1.33333. If not specified, the
+ // best possible crop is returned. The number of provided aspect ratios is
+ // limited to a maximum of 16; any aspect ratios provided after the 16th are
+ // ignored.
+ repeated float aspect_ratios = 1;
+}
+
+// Parameters for web detection request.
+message WebDetectionParams {
+ // Whether to include results derived from the geo information in the image.
+ bool include_geo_results = 2;
+}
+
+// Parameters for text detections. This is used to control TEXT_DETECTION and
+// DOCUMENT_TEXT_DETECTION features.
+message TextDetectionParams {
+ // By default, Cloud Vision API only includes confidence score for
+ // DOCUMENT_TEXT_DETECTION result. Set the flag to true to include confidence
+ // score for TEXT_DETECTION as well.
+ bool enable_text_detection_confidence_score = 9;
+
+ // A list of advanced OCR options to fine-tune OCR behavior.
+ repeated string advanced_ocr_options = 11;
+}
+
+// Image context and/or feature-specific parameters.
+message ImageContext {
+ // Not used.
+ LatLongRect lat_long_rect = 1;
+
+ // List of languages to use for TEXT_DETECTION. In most cases, an empty value
+ // yields the best results since it enables automatic language detection. For
+ // languages based on the Latin alphabet, setting `language_hints` is not
+ // needed. In rare cases, when the language of the text in the image is known,
+ // setting a hint will help get better results (although it will be a
+ // significant hindrance if the hint is wrong). Text detection returns an
+ // error if one or more of the specified languages is not one of the
+ // [supported languages](https://cloud.google.com/vision/docs/languages).
+ repeated string language_hints = 2;
+
+ // Parameters for crop hints annotation request.
+ CropHintsParams crop_hints_params = 4;
+
+ // Parameters for product search.
+ ProductSearchParams product_search_params = 5;
+
+ // Parameters for web detection.
+ WebDetectionParams web_detection_params = 6;
+
+ // Parameters for text detection and document text detection.
+ TextDetectionParams text_detection_params = 12;
+}
+
+// Request for performing Google Cloud Vision API tasks over a user-provided
+// image, with user-requested features, and with context information.
+message AnnotateImageRequest {
+ // The image to be processed.
+ Image image = 1;
+
+ // Requested features.
+ repeated Feature features = 2;
+
+ // Additional context that may accompany the image.
+ ImageContext image_context = 3;
+}
+
+// If an image was produced from a file (e.g. a PDF), this message gives
+// information about the source of that image.
+message ImageAnnotationContext {
+ // The URI of the file used to produce the image.
+ string uri = 1;
+
+ // If the file was a PDF or TIFF, this field gives the page number within
+ // the file used to produce the image.
+ int32 page_number = 2;
+}
+
+// Response to an image annotation request.
+message AnnotateImageResponse {
+ // If present, face detection has completed successfully.
+ repeated FaceAnnotation face_annotations = 1;
+
+ // If present, landmark detection has completed successfully.
+ repeated EntityAnnotation landmark_annotations = 2;
+
+ // If present, logo detection has completed successfully.
+ repeated EntityAnnotation logo_annotations = 3;
+
+ // If present, label detection has completed successfully.
+ repeated EntityAnnotation label_annotations = 4;
+
+ // If present, localized object detection has completed successfully.
+ // This will be sorted descending by confidence score.
+ repeated LocalizedObjectAnnotation localized_object_annotations = 22;
+
+ // If present, text (OCR) detection has completed successfully.
+ repeated EntityAnnotation text_annotations = 5;
+
+ // If present, text (OCR) detection or document (OCR) text detection has
+ // completed successfully.
+ // This annotation provides the structural hierarchy for the OCR detected
+ // text.
+ TextAnnotation full_text_annotation = 12;
+
+ // If present, safe-search annotation has completed successfully.
+ SafeSearchAnnotation safe_search_annotation = 6;
+
+ // If present, image properties were extracted successfully.
+ ImageProperties image_properties_annotation = 8;
+
+ // If present, crop hints have completed successfully.
+ CropHintsAnnotation crop_hints_annotation = 11;
+
+ // If present, web detection has completed successfully.
+ WebDetection web_detection = 13;
+
+ // If present, product search has completed successfully.
+ ProductSearchResults product_search_results = 14;
+
+ // If set, represents the error message for the operation.
+ // Note that filled-in image annotations are guaranteed to be
+ // correct, even when `error` is set.
+ google.rpc.Status error = 9;
+
+ // If present, contextual information is needed to understand where this image
+ // comes from.
+ ImageAnnotationContext context = 21;
+}
+
+// Multiple image annotation requests are batched into a single service call.
+message BatchAnnotateImagesRequest {
+ // Required. Individual image annotation requests for this batch.
+ repeated AnnotateImageRequest requests = 1 [(google.api.field_behavior) = REQUIRED];
+
+ // Optional. Target project and location to make a call.
+ //
+ // Format: `projects/{project-id}/locations/{location-id}`.
+ //
+ // If no parent is specified, a region will be chosen automatically.
+ //
+ // Supported location-ids:
+ // `us`: USA country only,
+ // `asia`: East asia areas, like Japan, Taiwan,
+ // `eu`: The European Union.
+ //
+ // Example: `projects/project-A/locations/eu`.
+ string parent = 4;
+}
+
+// Response to a batch image annotation request.
+message BatchAnnotateImagesResponse {
+ // Individual responses to image annotation requests within the batch.
+ repeated AnnotateImageResponse responses = 1;
+}
+
+// A request to annotate one single file, e.g. a PDF, TIFF or GIF file.
+message AnnotateFileRequest {
+ // Required. Information about the input file.
+ InputConfig input_config = 1;
+
+ // Required. Requested features.
+ repeated Feature features = 2;
+
+ // Additional context that may accompany the image(s) in the file.
+ ImageContext image_context = 3;
+
+ // Pages of the file to perform image annotation.
+ //
+ // Pages starts from 1, we assume the first page of the file is page 1.
+ // At most 5 pages are supported per request. Pages can be negative.
+ //
+ // Page 1 means the first page.
+ // Page 2 means the second page.
+ // Page -1 means the last page.
+ // Page -2 means the second to the last page.
+ //
+ // If the file is GIF instead of PDF or TIFF, page refers to GIF frames.
+ //
+ // If this field is empty, by default the service performs image annotation
+ // for the first 5 pages of the file.
+ repeated int32 pages = 4;
+}
+
+// Response to a single file annotation request. A file may contain one or more
+// images, which individually have their own responses.
+message AnnotateFileResponse {
+ // Information about the file for which this response is generated.
+ InputConfig input_config = 1;
+
+ // Individual responses to images found within the file. This field will be
+ // empty if the `error` field is set.
+ repeated AnnotateImageResponse responses = 2;
+
+ // This field gives the total number of pages in the file.
+ int32 total_pages = 3;
+
+ // If set, represents the error message for the failed request. The
+ // `responses` field will not be set in this case.
+ google.rpc.Status error = 4;
+}
+
+// A list of requests to annotate files using the BatchAnnotateFiles API.
+message BatchAnnotateFilesRequest {
+ // Required. The list of file annotation requests. Right now we support only one
+ // AnnotateFileRequest in BatchAnnotateFilesRequest.
+ repeated AnnotateFileRequest requests = 1 [(google.api.field_behavior) = REQUIRED];
+
+ // Optional. Target project and location to make a call.
+ //
+ // Format: `projects/{project-id}/locations/{location-id}`.
+ //
+ // If no parent is specified, a region will be chosen automatically.
+ //
+ // Supported location-ids:
+ // `us`: USA country only,
+ // `asia`: East asia areas, like Japan, Taiwan,
+ // `eu`: The European Union.
+ //
+ // Example: `projects/project-A/locations/eu`.
+ string parent = 3;
+}
+
+// A list of file annotation responses.
+message BatchAnnotateFilesResponse {
+ // The list of file annotation responses, each response corresponding to each
+ // AnnotateFileRequest in BatchAnnotateFilesRequest.
+ repeated AnnotateFileResponse responses = 1;
+}
+
+// An offline file annotation request.
+message AsyncAnnotateFileRequest {
+ // Required. Information about the input file.
+ InputConfig input_config = 1;
+
+ // Required. Requested features.
+ repeated Feature features = 2;
+
+ // Additional context that may accompany the image(s) in the file.
+ ImageContext image_context = 3;
+
+ // Required. The desired output location and metadata (e.g. format).
+ OutputConfig output_config = 4;
+}
+
+// The response for a single offline file annotation request.
+message AsyncAnnotateFileResponse {
+ // The output location and metadata from AsyncAnnotateFileRequest.
+ OutputConfig output_config = 1;
+}
+
+// Request for async image annotation for a list of images.
+message AsyncBatchAnnotateImagesRequest {
+ // Required. Individual image annotation requests for this batch.
+ repeated AnnotateImageRequest requests = 1 [(google.api.field_behavior) = REQUIRED];
+
+ // Required. The desired output location and metadata (e.g. format).
+ OutputConfig output_config = 2 [(google.api.field_behavior) = REQUIRED];
+
+ // Optional. Target project and location to make a call.
+ //
+ // Format: `projects/{project-id}/locations/{location-id}`.
+ //
+ // If no parent is specified, a region will be chosen automatically.
+ //
+ // Supported location-ids:
+ // `us`: USA country only,
+ // `asia`: East asia areas, like Japan, Taiwan,
+ // `eu`: The European Union.
+ //
+ // Example: `projects/project-A/locations/eu`.
+ string parent = 4;
+}
+
+// Response to an async batch image annotation request.
+message AsyncBatchAnnotateImagesResponse {
+ // The output location and metadata from AsyncBatchAnnotateImagesRequest.
+ OutputConfig output_config = 1;
+}
+
+// Multiple async file annotation requests are batched into a single service
+// call.
+message AsyncBatchAnnotateFilesRequest {
+ // Required. Individual async file annotation requests for this batch.
+ repeated AsyncAnnotateFileRequest requests = 1 [(google.api.field_behavior) = REQUIRED];
+
+ // Optional. Target project and location to make a call.
+ //
+ // Format: `projects/{project-id}/locations/{location-id}`.
+ //
+ // If no parent is specified, a region will be chosen automatically.
+ //
+ // Supported location-ids:
+ // `us`: USA country only,
+ // `asia`: East asia areas, like Japan, Taiwan,
+ // `eu`: The European Union.
+ //
+ // Example: `projects/project-A/locations/eu`.
+ string parent = 4;
+}
+
+// Response to an async batch file annotation request.
+message AsyncBatchAnnotateFilesResponse {
+ // The list of file annotation responses, one for each request in
+ // AsyncBatchAnnotateFilesRequest.
+ repeated AsyncAnnotateFileResponse responses = 1;
+}
+
+// The desired input location and metadata.
+message InputConfig {
+ // The Google Cloud Storage location to read the input from.
+ GcsSource gcs_source = 1;
+
+ // File content, represented as a stream of bytes.
+ // Note: As with all `bytes` fields, protobuffers use a pure binary
+ // representation, whereas JSON representations use base64.
+ //
+ // Currently, this field only works for BatchAnnotateFiles requests. It does
+ // not work for AsyncBatchAnnotateFiles requests.
+ bytes content = 3;
+
+ // The type of the file. Currently only "application/pdf", "image/tiff" and
+ // "image/gif" are supported. Wildcards are not supported.
+ string mime_type = 2;
+}
+
+// The desired output location and metadata.
+message OutputConfig {
+ // The Google Cloud Storage location to write the output(s) to.
+ GcsDestination gcs_destination = 1;
+
+ // The max number of response protos to put into each output JSON file on
+ // Google Cloud Storage.
+ // The valid range is [1, 100]. If not specified, the default value is 20.
+ //
+ // For example, for one pdf file with 100 pages, 100 response protos will
+ // be generated. If `batch_size` = 20, then 5 json files each
+ // containing 20 response protos will be written under the prefix
+ // `gcs_destination`.`uri`.
+ //
+ // Currently, batch_size only applies to GcsDestination, with potential future
+ // support for other output configurations.
+ int32 batch_size = 2;
+}
+
+// The Google Cloud Storage location where the input will be read from.
+message GcsSource {
+ // Google Cloud Storage URI for the input file. This must only be a
+ // Google Cloud Storage object. Wildcards are not currently supported.
+ string uri = 1;
+}
+
+// The Google Cloud Storage location where the output will be written to.
+message GcsDestination {
+ // Google Cloud Storage URI prefix where the results will be stored. Results
+ // will be in JSON format and preceded by its corresponding input URI prefix.
+ // This field can either represent a gcs file prefix or gcs directory. In
+ // either case, the uri should be unique because in order to get all of the
+ // output files, you will need to do a wildcard gcs search on the uri prefix
+ // you provide.
+ //
+ // Examples:
+ //
+ // * File Prefix: gs://bucket-name/here/filenameprefix The output files
+ // will be created in gs://bucket-name/here/ and the names of the
+ // output files will begin with "filenameprefix".
+ //
+ // * Directory Prefix: gs://bucket-name/some/location/ The output files
+ // will be created in gs://bucket-name/some/location/ and the names of the
+ // output files could be anything because there was no filename prefix
+ // specified.
+ //
+ // If multiple outputs, each response is still AnnotateFileResponse, each of
+ // which contains some subset of the full list of AnnotateImageResponse.
+ // Multiple outputs can happen if, for example, the output JSON is too large
+ // and overflows into multiple sharded files.
+ string uri = 1;
+}
+
+// Contains metadata for the BatchAnnotateImages operation.
+message OperationMetadata {
+ // Batch operation states.
+ enum State {
+ // Invalid.
+ STATE_UNSPECIFIED = 0;
+
+ // Request is received.
+ CREATED = 1;
+
+ // Request is actively being processed.
+ RUNNING = 2;
+
+ // The batch processing is done.
+ DONE = 3;
+
+ // The batch processing was cancelled.
+ CANCELLED = 4;
+ }
+
+ // Current state of the batch operation.
+ State state = 1;
+
+ // The time when the batch request was received.
+ google.protobuf.Timestamp create_time = 5;
+
+ // The time when the operation result was last updated.
+ google.protobuf.Timestamp update_time = 6;
+}
diff --git a/packages/google-cloud-vision/protos/google/cloud/vision/v1/product_search.proto b/packages/google-cloud-vision/protos/google/cloud/vision/v1/product_search.proto
new file mode 100644
index 00000000000..a2a9850582b
--- /dev/null
+++ b/packages/google-cloud-vision/protos/google/cloud/vision/v1/product_search.proto
@@ -0,0 +1,124 @@
+// Copyright 2022 Google LLC
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+syntax = "proto3";
+
+package google.cloud.vision.v1;
+
+import "google/api/resource.proto";
+import "google/cloud/vision/v1/geometry.proto";
+import "google/cloud/vision/v1/product_search_service.proto";
+import "google/protobuf/timestamp.proto";
+
+option cc_enable_arenas = true;
+option go_package = "google.golang.org/genproto/googleapis/cloud/vision/v1;vision";
+option java_multiple_files = true;
+option java_outer_classname = "ProductSearchProto";
+option java_package = "com.google.cloud.vision.v1";
+option objc_class_prefix = "GCVN";
+
+// Parameters for a product search request.
+message ProductSearchParams {
+ // The bounding polygon around the area of interest in the image.
+ // If it is not specified, system discretion will be applied.
+ BoundingPoly bounding_poly = 9;
+
+ // The resource name of a [ProductSet][google.cloud.vision.v1.ProductSet] to be searched for similar images.
+ //
+ // Format is:
+ // `projects/PROJECT_ID/locations/LOC_ID/productSets/PRODUCT_SET_ID`.
+ string product_set = 6 [(google.api.resource_reference) = {
+ type: "vision.googleapis.com/ProductSet"
+ }];
+
+ // The list of product categories to search in. Currently, we only consider
+ // the first category, and either "homegoods-v2", "apparel-v2", "toys-v2",
+ // "packagedgoods-v1", or "general-v1" should be specified. The legacy
+ // categories "homegoods", "apparel", and "toys" are still supported but will
+ // be deprecated. For new products, please use "homegoods-v2", "apparel-v2",
+ // or "toys-v2" for better product search accuracy. It is recommended to
+ // migrate existing products to these categories as well.
+ repeated string product_categories = 7;
+
+ // The filtering expression. This can be used to restrict search results based
+ // on Product labels. We currently support an AND of OR of key-value
+ // expressions, where each expression within an OR must have the same key. An
+ // '=' should be used to connect the key and value.
+ //
+ // For example, "(color = red OR color = blue) AND brand = Google" is
+ // acceptable, but "(color = red OR brand = Google)" is not acceptable.
+ // "color: red" is not acceptable because it uses a ':' instead of an '='.
+ string filter = 8;
+}
+
+// Results for a product search request.
+message ProductSearchResults {
+ // Information about a product.
+ message Result {
+ // The Product.
+ Product product = 1;
+
+ // A confidence level on the match, ranging from 0 (no confidence) to
+ // 1 (full confidence).
+ float score = 2;
+
+ // The resource name of the image from the product that is the closest match
+ // to the query.
+ string image = 3;
+ }
+
+ // Prediction for what the object in the bounding box is.
+ message ObjectAnnotation {
+ // Object ID that should align with EntityAnnotation mid.
+ string mid = 1;
+
+ // The BCP-47 language code, such as "en-US" or "sr-Latn". For more
+ // information, see
+ // http://www.unicode.org/reports/tr35/#Unicode_locale_identifier.
+ string language_code = 2;
+
+ // Object name, expressed in its `language_code` language.
+ string name = 3;
+
+ // Score of the result. Range [0, 1].
+ float score = 4;
+ }
+
+ // Information about the products similar to a single product in a query
+ // image.
+ message GroupedResult {
+ // The bounding polygon around the product detected in the query image.
+ BoundingPoly bounding_poly = 1;
+
+ // List of results, one for each product match.
+ repeated Result results = 2;
+
+ // List of generic predictions for the object in the bounding box.
+ repeated ObjectAnnotation object_annotations = 3;
+ }
+
+ // Timestamp of the index which provided these results. Products added to the
+ // product set and products removed from the product set after this time are
+ // not reflected in the current results.
+ google.protobuf.Timestamp index_time = 2;
+
+ // List of results, one for each product match.
+ repeated Result results = 5;
+
+ // List of results grouped by products detected in the query image. Each entry
+ // corresponds to one bounding polygon in the query image, and contains the
+ // matching products specific to that region. There may be duplicate product
+ // matches in the union of all the per-product results.
+ repeated GroupedResult product_grouped_results = 6;
+}
diff --git a/packages/google-cloud-vision/protos/google/cloud/vision/v1/product_search_service.proto b/packages/google-cloud-vision/protos/google/cloud/vision/v1/product_search_service.proto
new file mode 100644
index 00000000000..65680d90968
--- /dev/null
+++ b/packages/google-cloud-vision/protos/google/cloud/vision/v1/product_search_service.proto
@@ -0,0 +1,1022 @@
+// Copyright 2022 Google LLC
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+syntax = "proto3";
+
+package google.cloud.vision.v1;
+
+import "google/api/annotations.proto";
+import "google/api/client.proto";
+import "google/api/field_behavior.proto";
+import "google/api/resource.proto";
+import "google/cloud/vision/v1/geometry.proto";
+import "google/longrunning/operations.proto";
+import "google/protobuf/empty.proto";
+import "google/protobuf/field_mask.proto";
+import "google/protobuf/timestamp.proto";
+import "google/rpc/status.proto";
+
+option cc_enable_arenas = true;
+option go_package = "google.golang.org/genproto/googleapis/cloud/vision/v1;vision";
+option java_multiple_files = true;
+option java_outer_classname = "ProductSearchServiceProto";
+option java_package = "com.google.cloud.vision.v1";
+option objc_class_prefix = "GCVN";
+
+// Manages Products and ProductSets of reference images for use in product
+// search. It uses the following resource model:
+//
+// - The API has a collection of [ProductSet][google.cloud.vision.v1.ProductSet] resources, named
+// `projects/*/locations/*/productSets/*`, which acts as a way to put different
+// products into groups to limit identification.
+//
+// In parallel,
+//
+// - The API has a collection of [Product][google.cloud.vision.v1.Product] resources, named
+// `projects/*/locations/*/products/*`
+//
+// - Each [Product][google.cloud.vision.v1.Product] has a collection of [ReferenceImage][google.cloud.vision.v1.ReferenceImage] resources, named
+// `projects/*/locations/*/products/*/referenceImages/*`
+service ProductSearch {
+ option (google.api.default_host) = "vision.googleapis.com";
+ option (google.api.oauth_scopes) =
+ "https://www.googleapis.com/auth/cloud-platform,"
+ "https://www.googleapis.com/auth/cloud-vision";
+
+ // Creates and returns a new ProductSet resource.
+ //
+ // Possible errors:
+ //
+ // * Returns INVALID_ARGUMENT if display_name is missing, or is longer than
+ // 4096 characters.
+ rpc CreateProductSet(CreateProductSetRequest) returns (ProductSet) {
+ option (google.api.http) = {
+ post: "/v1/{parent=projects/*/locations/*}/productSets"
+ body: "product_set"
+ };
+ option (google.api.method_signature) = "parent,product_set,product_set_id";
+ }
+
+ // Lists ProductSets in an unspecified order.
+ //
+ // Possible errors:
+ //
+ // * Returns INVALID_ARGUMENT if page_size is greater than 100, or less
+ // than 1.
+ rpc ListProductSets(ListProductSetsRequest) returns (ListProductSetsResponse) {
+ option (google.api.http) = {
+ get: "/v1/{parent=projects/*/locations/*}/productSets"
+ };
+ option (google.api.method_signature) = "parent";
+ }
+
+ // Gets information associated with a ProductSet.
+ //
+ // Possible errors:
+ //
+ // * Returns NOT_FOUND if the ProductSet does not exist.
+ rpc GetProductSet(GetProductSetRequest) returns (ProductSet) {
+ option (google.api.http) = {
+ get: "/v1/{name=projects/*/locations/*/productSets/*}"
+ };
+ option (google.api.method_signature) = "name";
+ }
+
+ // Makes changes to a ProductSet resource.
+ // Only display_name can be updated currently.
+ //
+ // Possible errors:
+ //
+ // * Returns NOT_FOUND if the ProductSet does not exist.
+ // * Returns INVALID_ARGUMENT if display_name is present in update_mask but
+ // missing from the request or longer than 4096 characters.
+ rpc UpdateProductSet(UpdateProductSetRequest) returns (ProductSet) {
+ option (google.api.http) = {
+ patch: "/v1/{product_set.name=projects/*/locations/*/productSets/*}"
+ body: "product_set"
+ };
+ option (google.api.method_signature) = "product_set,update_mask";
+ }
+
+ // Permanently deletes a ProductSet. Products and ReferenceImages in the
+ // ProductSet are not deleted.
+ //
+ // The actual image files are not deleted from Google Cloud Storage.
+ rpc DeleteProductSet(DeleteProductSetRequest) returns (google.protobuf.Empty) {
+ option (google.api.http) = {
+ delete: "/v1/{name=projects/*/locations/*/productSets/*}"
+ };
+ option (google.api.method_signature) = "name";
+ }
+
+ // Creates and returns a new product resource.
+ //
+ // Possible errors:
+ //
+ // * Returns INVALID_ARGUMENT if display_name is missing or longer than 4096
+ // characters.
+ // * Returns INVALID_ARGUMENT if description is longer than 4096 characters.
+ // * Returns INVALID_ARGUMENT if product_category is missing or invalid.
+ rpc CreateProduct(CreateProductRequest) returns (Product) {
+ option (google.api.http) = {
+ post: "/v1/{parent=projects/*/locations/*}/products"
+ body: "product"
+ };
+ option (google.api.method_signature) = "parent,product,product_id";
+ }
+
+ // Lists products in an unspecified order.
+ //
+ // Possible errors:
+ //
+ // * Returns INVALID_ARGUMENT if page_size is greater than 100 or less than 1.
+ rpc ListProducts(ListProductsRequest) returns (ListProductsResponse) {
+ option (google.api.http) = {
+ get: "/v1/{parent=projects/*/locations/*}/products"
+ };
+ option (google.api.method_signature) = "parent";
+ }
+
+ // Gets information associated with a Product.
+ //
+ // Possible errors:
+ //
+ // * Returns NOT_FOUND if the Product does not exist.
+ rpc GetProduct(GetProductRequest) returns (Product) {
+ option (google.api.http) = {
+ get: "/v1/{name=projects/*/locations/*/products/*}"
+ };
+ option (google.api.method_signature) = "name";
+ }
+
+ // Makes changes to a Product resource.
+ // Only the `display_name`, `description`, and `labels` fields can be updated
+ // right now.
+ //
+ // If labels are updated, the change will not be reflected in queries until
+ // the next index time.
+ //
+ // Possible errors:
+ //
+ // * Returns NOT_FOUND if the Product does not exist.
+ // * Returns INVALID_ARGUMENT if display_name is present in update_mask but is
+ // missing from the request or longer than 4096 characters.
+ // * Returns INVALID_ARGUMENT if description is present in update_mask but is
+ // longer than 4096 characters.
+ // * Returns INVALID_ARGUMENT if product_category is present in update_mask.
+ rpc UpdateProduct(UpdateProductRequest) returns (Product) {
+ option (google.api.http) = {
+ patch: "/v1/{product.name=projects/*/locations/*/products/*}"
+ body: "product"
+ };
+ option (google.api.method_signature) = "product,update_mask";
+ }
+
+ // Permanently deletes a product and its reference images.
+ //
+ // Metadata of the product and all its images will be deleted right away, but
+ // search queries against ProductSets containing the product may still work
+ // until all related caches are refreshed.
+ rpc DeleteProduct(DeleteProductRequest) returns (google.protobuf.Empty) {
+ option (google.api.http) = {
+ delete: "/v1/{name=projects/*/locations/*/products/*}"
+ };
+ option (google.api.method_signature) = "name";
+ }
+
+ // Creates and returns a new ReferenceImage resource.
+ //
+ // The `bounding_poly` field is optional. If `bounding_poly` is not specified,
+ // the system will try to detect regions of interest in the image that are
+ // compatible with the product_category on the parent product. If it is
+ // specified, detection is ALWAYS skipped. The system converts polygons into
+ // non-rotated rectangles.
+ //
+ // Note that the pipeline will resize the image if the image resolution is too
+ // large to process (above 50MP).
+ //
+ // Possible errors:
+ //
+ // * Returns INVALID_ARGUMENT if the image_uri is missing or longer than 4096
+ // characters.
+ // * Returns INVALID_ARGUMENT if the product does not exist.
+ // * Returns INVALID_ARGUMENT if bounding_poly is not provided, and nothing
+ // compatible with the parent product's product_category is detected.
+ // * Returns INVALID_ARGUMENT if bounding_poly contains more than 10 polygons.
+ rpc CreateReferenceImage(CreateReferenceImageRequest) returns (ReferenceImage) {
+ option (google.api.http) = {
+ post: "/v1/{parent=projects/*/locations/*/products/*}/referenceImages"
+ body: "reference_image"
+ };
+ option (google.api.method_signature) = "parent,reference_image,reference_image_id";
+ }
+
+ // Permanently deletes a reference image.
+ //
+ // The image metadata will be deleted right away, but search queries
+ // against ProductSets containing the image may still work until all related
+ // caches are refreshed.
+ //
+ // The actual image files are not deleted from Google Cloud Storage.
+ rpc DeleteReferenceImage(DeleteReferenceImageRequest) returns (google.protobuf.Empty) {
+ option (google.api.http) = {
+ delete: "/v1/{name=projects/*/locations/*/products/*/referenceImages/*}"
+ };
+ option (google.api.method_signature) = "name";
+ }
+
+ // Lists reference images.
+ //
+ // Possible errors:
+ //
+ // * Returns NOT_FOUND if the parent product does not exist.
+ // * Returns INVALID_ARGUMENT if the page_size is greater than 100, or less
+ // than 1.
+ rpc ListReferenceImages(ListReferenceImagesRequest) returns (ListReferenceImagesResponse) {
+ option (google.api.http) = {
+ get: "/v1/{parent=projects/*/locations/*/products/*}/referenceImages"
+ };
+ option (google.api.method_signature) = "parent";
+ }
+
+ // Gets information associated with a ReferenceImage.
+ //
+ // Possible errors:
+ //
+ // * Returns NOT_FOUND if the specified image does not exist.
+ rpc GetReferenceImage(GetReferenceImageRequest) returns (ReferenceImage) {
+ option (google.api.http) = {
+ get: "/v1/{name=projects/*/locations/*/products/*/referenceImages/*}"
+ };
+ option (google.api.method_signature) = "name";
+ }
+
+ // Adds a Product to the specified ProductSet. If the Product is already
+ // present, no change is made.
+ //
+ // One Product can be added to at most 100 ProductSets.
+ //
+ // Possible errors:
+ //
+ // * Returns NOT_FOUND if the Product or the ProductSet doesn't exist.
+ rpc AddProductToProductSet(AddProductToProductSetRequest) returns (google.protobuf.Empty) {
+ option (google.api.http) = {
+ post: "/v1/{name=projects/*/locations/*/productSets/*}:addProduct"
+ body: "*"
+ };
+ option (google.api.method_signature) = "name,product";
+ }
+
+ // Removes a Product from the specified ProductSet.
+ rpc RemoveProductFromProductSet(RemoveProductFromProductSetRequest) returns (google.protobuf.Empty) {
+ option (google.api.http) = {
+ post: "/v1/{name=projects/*/locations/*/productSets/*}:removeProduct"
+ body: "*"
+ };
+ option (google.api.method_signature) = "name,product";
+ }
+
+ // Lists the Products in a ProductSet, in an unspecified order. If the
+ // ProductSet does not exist, the products field of the response will be
+ // empty.
+ //
+ // Possible errors:
+ //
+ // * Returns INVALID_ARGUMENT if page_size is greater than 100 or less than 1.
+ rpc ListProductsInProductSet(ListProductsInProductSetRequest) returns (ListProductsInProductSetResponse) {
+ option (google.api.http) = {
+ get: "/v1/{name=projects/*/locations/*/productSets/*}/products"
+ };
+ option (google.api.method_signature) = "name";
+ }
+
+ // Asynchronous API that imports a list of reference images to specified
+ // product sets based on a list of image information.
+ //
+ // The [google.longrunning.Operation][google.longrunning.Operation] API can be used to keep track of the
+ // progress and results of the request.
+ // `Operation.metadata` contains `BatchOperationMetadata`. (progress)
+ // `Operation.response` contains `ImportProductSetsResponse`. (results)
+ //
+ // The input source of this method is a csv file on Google Cloud Storage.
+ // For the format of the csv file please see
+ // [ImportProductSetsGcsSource.csv_file_uri][google.cloud.vision.v1.ImportProductSetsGcsSource.csv_file_uri].
+ rpc ImportProductSets(ImportProductSetsRequest) returns (google.longrunning.Operation) {
+ option (google.api.http) = {
+ post: "/v1/{parent=projects/*/locations/*}/productSets:import"
+ body: "*"
+ };
+ option (google.api.method_signature) = "parent,input_config";
+ option (google.longrunning.operation_info) = {
+ response_type: "ImportProductSetsResponse"
+ metadata_type: "BatchOperationMetadata"
+ };
+ }
+
+ // Asynchronous API to delete all Products in a ProductSet or all Products
+ // that are in no ProductSet.
+ //
+ // If a Product is a member of the specified ProductSet in addition to other
+ // ProductSets, the Product will still be deleted.
+ //
+ // It is recommended to not delete the specified ProductSet until after this
+ // operation has completed. It is also recommended to not add any of the
+ // Products involved in the batch delete to a new ProductSet while this
+ // operation is running because those Products may still end up deleted.
+ //
+ // It's not possible to undo the PurgeProducts operation. Therefore, it is
+ // recommended to keep the csv files used in ImportProductSets (if that was
+ // how you originally built the Product Set) before starting PurgeProducts, in
+ // case you need to re-import the data after deletion.
+ //
+ // If the plan is to purge all of the Products from a ProductSet and then
+ // re-use the empty ProductSet to re-import new Products into the empty
+ // ProductSet, you must wait until the PurgeProducts operation has finished
+ // for that ProductSet.
+ //
+ // The [google.longrunning.Operation][google.longrunning.Operation] API can be used to keep track of the
+ // progress and results of the request.
+ // `Operation.metadata` contains `BatchOperationMetadata`. (progress)
+ rpc PurgeProducts(PurgeProductsRequest) returns (google.longrunning.Operation) {
+ option (google.api.http) = {
+ post: "/v1/{parent=projects/*/locations/*}/products:purge"
+ body: "*"
+ };
+ option (google.api.method_signature) = "parent";
+ option (google.longrunning.operation_info) = {
+ response_type: "google.protobuf.Empty"
+ metadata_type: "BatchOperationMetadata"
+ };
+ }
+}
+
+// A Product contains ReferenceImages.
+message Product {
+ option (google.api.resource) = {
+ type: "vision.googleapis.com/Product"
+ pattern: "projects/{project}/locations/{location}/products/{product}"
+ };
+
+ // A product label represented as a key-value pair.
+ message KeyValue {
+ // The key of the label attached to the product. Cannot be empty and cannot
+ // exceed 128 bytes.
+ string key = 1;
+
+ // The value of the label attached to the product. Cannot be empty and
+ // cannot exceed 128 bytes.
+ string value = 2;
+ }
+
+ // The resource name of the product.
+ //
+ // Format is:
+ // `projects/PROJECT_ID/locations/LOC_ID/products/PRODUCT_ID`.
+ //
+ // This field is ignored when creating a product.
+ string name = 1;
+
+ // The user-provided name for this Product. Must not be empty. Must be at most
+ // 4096 characters long.
+ string display_name = 2;
+
+ // User-provided metadata to be stored with this product. Must be at most 4096
+ // characters long.
+ string description = 3;
+
+ // Immutable. The category for the product identified by the reference image. This should
+ // be one of "homegoods-v2", "apparel-v2", "toys-v2", "packagedgoods-v1" or
+ // "general-v1". The legacy categories "homegoods", "apparel", and "toys" are
+ // still supported, but these should not be used for new products.
+ string product_category = 4 [(google.api.field_behavior) = IMMUTABLE];
+
+ // Key-value pairs that can be attached to a product. At query time,
+ // constraints can be specified based on the product_labels.
+ //
+ // Note that integer values can be provided as strings, e.g. "1199". Only
+ // strings with integer values can match a range-based restriction which is
+ // to be supported soon.
+ //
+ // Multiple values can be assigned to the same key. One product may have up to
+ // 500 product_labels.
+ //
+ // Notice that the total number of distinct product_labels over all products
+ // in one ProductSet cannot exceed 1M, otherwise the product search pipeline
+ // will refuse to work for that ProductSet.
+ repeated KeyValue product_labels = 5;
+}
+
+// A ProductSet contains Products. A ProductSet can contain a maximum of 1
+// million reference images. If the limit is exceeded, periodic indexing will
+// fail.
+message ProductSet {
+ option (google.api.resource) = {
+ type: "vision.googleapis.com/ProductSet"
+ pattern: "projects/{project}/locations/{location}/productSets/{product_set}"
+ };
+
+ // The resource name of the ProductSet.
+ //
+ // Format is:
+ // `projects/PROJECT_ID/locations/LOC_ID/productSets/PRODUCT_SET_ID`.
+ //
+ // This field is ignored when creating a ProductSet.
+ string name = 1;
+
+ // The user-provided name for this ProductSet. Must not be empty. Must be at
+ // most 4096 characters long.
+ string display_name = 2;
+
+ // Output only. The time at which this ProductSet was last indexed. Query
+ // results will reflect all updates before this time. If this ProductSet has
+ // never been indexed, this timestamp is the default value
+ // "1970-01-01T00:00:00Z".
+ //
+ // This field is ignored when creating a ProductSet.
+ google.protobuf.Timestamp index_time = 3 [(google.api.field_behavior) = OUTPUT_ONLY];
+
+ // Output only. If there was an error with indexing the product set, the field
+ // is populated.
+ //
+ // This field is ignored when creating a ProductSet.
+ google.rpc.Status index_error = 4 [(google.api.field_behavior) = OUTPUT_ONLY];
+}
+
+// A `ReferenceImage` represents a product image and its associated metadata,
+// such as bounding boxes.
+message ReferenceImage {
+ option (google.api.resource) = {
+ type: "vision.googleapis.com/ReferenceImage"
+ pattern: "projects/{project}/locations/{location}/products/{product}/referenceImages/{reference_image}"
+ };
+
+ // The resource name of the reference image.
+ //
+ // Format is:
+ // `projects/PROJECT_ID/locations/LOC_ID/products/PRODUCT_ID/referenceImages/IMAGE_ID`.
+ //
+ // This field is ignored when creating a reference image.
+ string name = 1;
+
+ // Required. The Google Cloud Storage URI of the reference image.
+ //
+ // The URI must start with `gs://`.
+ string uri = 2 [(google.api.field_behavior) = REQUIRED];
+
+ // Optional. Bounding polygons around the areas of interest in the reference image.
+ // If this field is empty, the system will try to detect regions of
+ // interest. At most 10 bounding polygons will be used.
+ //
+ // The provided shape is converted into a non-rotated rectangle. Once
+ // converted, the small edge of the rectangle must be greater than or equal
+ // to 300 pixels. The aspect ratio must be 1:4 or less (i.e. 1:3 is ok; 1:5
+ // is not).
+ repeated BoundingPoly bounding_polys = 3 [(google.api.field_behavior) = OPTIONAL];
+}
+
+// Request message for the `CreateProduct` method.
+message CreateProductRequest {
+ // Required. The project in which the Product should be created.
+ //
+ // Format is
+ // `projects/PROJECT_ID/locations/LOC_ID`.
+ string parent = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "locations.googleapis.com/Location"
+ }
+ ];
+
+ // Required. The product to create.
+ Product product = 2 [(google.api.field_behavior) = REQUIRED];
+
+ // A user-supplied resource id for this Product. If set, the server will
+ // attempt to use this value as the resource id. If it is already in use, an
+ // error is returned with code ALREADY_EXISTS. Must be at most 128 characters
+ // long. It cannot contain the character `/`.
+ string product_id = 3;
+}
+
+// Request message for the `ListProducts` method.
+message ListProductsRequest {
+ // Required. The project OR ProductSet from which Products should be listed.
+ //
+ // Format:
+ // `projects/PROJECT_ID/locations/LOC_ID`
+ string parent = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "locations.googleapis.com/Location"
+ }
+ ];
+
+ // The maximum number of items to return. Default 10, maximum 100.
+ int32 page_size = 2;
+
+ // The next_page_token returned from a previous List request, if any.
+ string page_token = 3;
+}
+
+// Response message for the `ListProducts` method.
+message ListProductsResponse {
+ // List of products.
+ repeated Product products = 1;
+
+ // Token to retrieve the next page of results, or empty if there are no more
+ // results in the list.
+ string next_page_token = 2;
+}
+
+// Request message for the `GetProduct` method.
+message GetProductRequest {
+ // Required. Resource name of the Product to get.
+ //
+ // Format is:
+ // `projects/PROJECT_ID/locations/LOC_ID/products/PRODUCT_ID`
+ string name = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "vision.googleapis.com/Product"
+ }
+ ];
+}
+
+// Request message for the `UpdateProduct` method.
+message UpdateProductRequest {
+ // Required. The Product resource which replaces the one on the server.
+ // product.name is immutable.
+ Product product = 1 [(google.api.field_behavior) = REQUIRED];
+
+ // The [FieldMask][google.protobuf.FieldMask] that specifies which fields
+ // to update.
+ // If update_mask isn't specified, all mutable fields are to be updated.
+ // Valid mask paths include `product_labels`, `display_name`, and
+ // `description`.
+ google.protobuf.FieldMask update_mask = 2;
+}
+
+// Request message for the `DeleteProduct` method.
+message DeleteProductRequest {
+ // Required. Resource name of product to delete.
+ //
+ // Format is:
+ // `projects/PROJECT_ID/locations/LOC_ID/products/PRODUCT_ID`
+ string name = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "vision.googleapis.com/Product"
+ }
+ ];
+}
+
+// Request message for the `CreateProductSet` method.
+message CreateProductSetRequest {
+ // Required. The project in which the ProductSet should be created.
+ //
+ // Format is `projects/PROJECT_ID/locations/LOC_ID`.
+ string parent = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "locations.googleapis.com/Location"
+ }
+ ];
+
+ // Required. The ProductSet to create.
+ ProductSet product_set = 2 [(google.api.field_behavior) = REQUIRED];
+
+ // A user-supplied resource id for this ProductSet. If set, the server will
+ // attempt to use this value as the resource id. If it is already in use, an
+ // error is returned with code ALREADY_EXISTS. Must be at most 128 characters
+ // long. It cannot contain the character `/`.
+ string product_set_id = 3;
+}
+
+// Request message for the `ListProductSets` method.
+message ListProductSetsRequest {
+ // Required. The project from which ProductSets should be listed.
+ //
+ // Format is `projects/PROJECT_ID/locations/LOC_ID`.
+ string parent = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "locations.googleapis.com/Location"
+ }
+ ];
+
+ // The maximum number of items to return. Default 10, maximum 100.
+ int32 page_size = 2;
+
+ // The next_page_token returned from a previous List request, if any.
+ string page_token = 3;
+}
+
+// Response message for the `ListProductSets` method.
+message ListProductSetsResponse {
+ // List of ProductSets.
+ repeated ProductSet product_sets = 1;
+
+ // Token to retrieve the next page of results, or empty if there are no more
+ // results in the list.
+ string next_page_token = 2;
+}
+
+// Request message for the `GetProductSet` method.
+message GetProductSetRequest {
+ // Required. Resource name of the ProductSet to get.
+ //
+ // Format is:
+ // `projects/PROJECT_ID/locations/LOC_ID/productSets/PRODUCT_SET_ID`
+ string name = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "vision.googleapis.com/ProductSet"
+ }
+ ];
+}
+
+// Request message for the `UpdateProductSet` method.
+message UpdateProductSetRequest {
+ // Required. The ProductSet resource which replaces the one on the server.
+ ProductSet product_set = 1 [(google.api.field_behavior) = REQUIRED];
+
+ // The [FieldMask][google.protobuf.FieldMask] that specifies which fields to
+ // update.
+ // If update_mask isn't specified, all mutable fields are to be updated.
+ // Valid mask path is `display_name`.
+ google.protobuf.FieldMask update_mask = 2;
+}
+
+// Request message for the `DeleteProductSet` method.
+message DeleteProductSetRequest {
+ // Required. Resource name of the ProductSet to delete.
+ //
+ // Format is:
+ // `projects/PROJECT_ID/locations/LOC_ID/productSets/PRODUCT_SET_ID`
+ string name = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "vision.googleapis.com/ProductSet"
+ }
+ ];
+}
+
+// Request message for the `CreateReferenceImage` method.
+message CreateReferenceImageRequest {
+ // Required. Resource name of the product in which to create the reference image.
+ //
+ // Format is
+ // `projects/PROJECT_ID/locations/LOC_ID/products/PRODUCT_ID`.
+ string parent = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "vision.googleapis.com/Product"
+ }
+ ];
+
+ // Required. The reference image to create.
+ // If an image ID is specified, it is ignored.
+ ReferenceImage reference_image = 2 [(google.api.field_behavior) = REQUIRED];
+
+ // A user-supplied resource id for the ReferenceImage to be added. If set,
+ // the server will attempt to use this value as the resource id. If it is
+ // already in use, an error is returned with code ALREADY_EXISTS. Must be at
+ // most 128 characters long. It cannot contain the character `/`.
+ string reference_image_id = 3;
+}
+
+// Request message for the `ListReferenceImages` method.
+message ListReferenceImagesRequest {
+ // Required. Resource name of the product containing the reference images.
+ //
+ // Format is
+ // `projects/PROJECT_ID/locations/LOC_ID/products/PRODUCT_ID`.
+ string parent = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "vision.googleapis.com/Product"
+ }
+ ];
+
+ // The maximum number of items to return. Default 10, maximum 100.
+ int32 page_size = 2;
+
+ // A token identifying a page of results to be returned. This is the value
+ // of `nextPageToken` returned in a previous reference image list request.
+ //
+ // Defaults to the first page if not specified.
+ string page_token = 3;
+}
+
+// Response message for the `ListReferenceImages` method.
+message ListReferenceImagesResponse {
+ // The list of reference images.
+ repeated ReferenceImage reference_images = 1;
+
+ // The maximum number of items to return. Default 10, maximum 100.
+ int32 page_size = 2;
+
+ // The next_page_token returned from a previous List request, if any.
+ string next_page_token = 3;
+}
+
+// Request message for the `GetReferenceImage` method.
+message GetReferenceImageRequest {
+ // Required. The resource name of the ReferenceImage to get.
+ //
+ // Format is:
+ // `projects/PROJECT_ID/locations/LOC_ID/products/PRODUCT_ID/referenceImages/IMAGE_ID`.
+ string name = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "vision.googleapis.com/ReferenceImage"
+ }
+ ];
+}
+
+// Request message for the `DeleteReferenceImage` method.
+message DeleteReferenceImageRequest {
+ // Required. The resource name of the reference image to delete.
+ //
+ // Format is:
+ // `projects/PROJECT_ID/locations/LOC_ID/products/PRODUCT_ID/referenceImages/IMAGE_ID`
+ string name = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "vision.googleapis.com/ReferenceImage"
+ }
+ ];
+}
+
+// Request message for the `AddProductToProductSet` method.
+message AddProductToProductSetRequest {
+ // Required. The resource name for the ProductSet to modify.
+ //
+ // Format is:
+ // `projects/PROJECT_ID/locations/LOC_ID/productSets/PRODUCT_SET_ID`
+ string name = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "vision.googleapis.com/ProductSet"
+ }
+ ];
+
+ // Required. The resource name for the Product to be added to this ProductSet.
+ //
+ // Format is:
+ // `projects/PROJECT_ID/locations/LOC_ID/products/PRODUCT_ID`
+ string product = 2 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "vision.googleapis.com/Product"
+ }
+ ];
+}
+
+// Request message for the `RemoveProductFromProductSet` method.
+message RemoveProductFromProductSetRequest {
+ // Required. The resource name for the ProductSet to modify.
+ //
+ // Format is:
+ // `projects/PROJECT_ID/locations/LOC_ID/productSets/PRODUCT_SET_ID`
+ string name = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "vision.googleapis.com/ProductSet"
+ }
+ ];
+
+ // Required. The resource name for the Product to be removed from this ProductSet.
+ //
+ // Format is:
+ // `projects/PROJECT_ID/locations/LOC_ID/products/PRODUCT_ID`
+ string product = 2 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "vision.googleapis.com/Product"
+ }
+ ];
+}
+
+// Request message for the `ListProductsInProductSet` method.
+message ListProductsInProductSetRequest {
+ // Required. The ProductSet resource for which to retrieve Products.
+ //
+ // Format is:
+ // `projects/PROJECT_ID/locations/LOC_ID/productSets/PRODUCT_SET_ID`
+ string name = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "vision.googleapis.com/ProductSet"
+ }
+ ];
+
+ // The maximum number of items to return. Default 10, maximum 100.
+ int32 page_size = 2;
+
+ // The next_page_token returned from a previous List request, if any.
+ string page_token = 3;
+}
+
+// Response message for the `ListProductsInProductSet` method.
+message ListProductsInProductSetResponse {
+ // The list of Products.
+ repeated Product products = 1;
+
+ // Token to retrieve the next page of results, or empty if there are no more
+ // results in the list.
+ string next_page_token = 2;
+}
+
+// The Google Cloud Storage location for a csv file which preserves a list of
+// ImportProductSetRequests in each line.
+message ImportProductSetsGcsSource {
+ // The Google Cloud Storage URI of the input csv file.
+ //
+ // The URI must start with `gs://`.
+ //
+ // The format of the input csv file should be one image per line.
+ // In each line, there are 8 columns.
+ //
+ // 1. image-uri
+ // 2. image-id
+ // 3. product-set-id
+ // 4. product-id
+ // 5. product-category
+ // 6. product-display-name
+ // 7. labels
+ // 8. bounding-poly
+ //
+ // The `image-uri`, `product-set-id`, `product-id`, and `product-category`
+ // columns are required. All other columns are optional.
+ //
+ // If the `ProductSet` or `Product` specified by the `product-set-id` and
+ // `product-id` values does not exist, then the system will create a new
+ // `ProductSet` or `Product` for the image. In this case, the
+ // `product-display-name` column refers to
+ // [display_name][google.cloud.vision.v1.Product.display_name], the
+ // `product-category` column refers to
+ // [product_category][google.cloud.vision.v1.Product.product_category], and the
+ // `labels` column refers to [product_labels][google.cloud.vision.v1.Product.product_labels].
+ //
+ // The `image-id` column is optional but must be unique if provided. If it is
+ // empty, the system will automatically assign a unique id to the image.
+ //
+ // The `product-display-name` column is optional. If it is empty, the system
+ // sets the [display_name][google.cloud.vision.v1.Product.display_name] field for the product to a
+ // space (" "). You can update the `display_name` later by using the API.
+ //
+ // If a `Product` with the specified `product-id` already exists, then the
+ // system ignores the `product-display-name`, `product-category`, and `labels`
+ // columns.
+ //
+ // The `labels` column (optional) is a line containing a list of
+ // comma-separated key-value pairs, in the following format:
+ //
+ // "key_1=value_1,key_2=value_2,...,key_n=value_n"
+ //
+ // The `bounding-poly` column (optional) identifies one region of
+ // interest from the image in the same manner as `CreateReferenceImage`. If
+ // you do not specify the `bounding-poly` column, then the system will try to
+ // detect regions of interest automatically.
+ //
+ // At most one `bounding-poly` column is allowed per line. If the image
+ // contains multiple regions of interest, add a line to the CSV file that
+ // includes the same product information, and the `bounding-poly` values for
+ // each region of interest.
+ //
+ // The `bounding-poly` column must contain an even number of comma-separated
+ // numbers, in the format "p1_x,p1_y,p2_x,p2_y,...,pn_x,pn_y". Use
+ // non-negative integers for absolute bounding polygons, and float values
+ // in [0, 1] for normalized bounding polygons.
+ //
+ // The system will resize the image if the image resolution is too
+ // large to process (larger than 20MP).
+ string csv_file_uri = 1;
+}
+
+// The input content for the `ImportProductSets` method.
+message ImportProductSetsInputConfig {
+ // The source of the input.
+ oneof source {
+ // The Google Cloud Storage location for a csv file which preserves a list
+ // of ImportProductSetRequests in each line.
+ ImportProductSetsGcsSource gcs_source = 1;
+ }
+}
+
+// Request message for the `ImportProductSets` method.
+message ImportProductSetsRequest {
+ // Required. The project in which the ProductSets should be imported.
+ //
+ // Format is `projects/PROJECT_ID/locations/LOC_ID`.
+ string parent = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "locations.googleapis.com/Location"
+ }
+ ];
+
+ // Required. The input content for the list of requests.
+ ImportProductSetsInputConfig input_config = 2 [(google.api.field_behavior) = REQUIRED];
+}
+
+// Response message for the `ImportProductSets` method.
+//
+// This message is returned by the
+// [google.longrunning.Operations.GetOperation][google.longrunning.Operations.GetOperation] method in the returned
+// [google.longrunning.Operation.response][google.longrunning.Operation.response] field.
+message ImportProductSetsResponse {
+ // The list of reference_images that are imported successfully.
+ repeated ReferenceImage reference_images = 1;
+
+ // The rpc status for each ImportProductSet request, including both successes
+ // and errors.
+ //
+ // The number of statuses here matches the number of lines in the csv file,
+ // and statuses[i] stores the success or failure status of processing the i-th
+ // line of the csv, starting from line 0.
+ repeated google.rpc.Status statuses = 2;
+}
+
+// Metadata for the batch operations such as the current state.
+//
+// This is included in the `metadata` field of the `Operation` returned by the
+// `GetOperation` call of the `google::longrunning::Operations` service.
+message BatchOperationMetadata {
+ // Enumerates the possible states that the batch request can be in.
+ enum State {
+ // Invalid.
+ STATE_UNSPECIFIED = 0;
+
+ // Request is actively being processed.
+ PROCESSING = 1;
+
+ // The request is done and at least one item has been successfully
+ // processed.
+ SUCCESSFUL = 2;
+
+ // The request is done and no item has been successfully processed.
+ FAILED = 3;
+
+ // The request is done after the longrunning.Operations.CancelOperation has
+ // been called by the user. Any records that were processed before the
+ // cancel command are output as specified in the request.
+ CANCELLED = 4;
+ }
+
+ // The current state of the batch operation.
+ State state = 1;
+
+ // The time when the batch request was submitted to the server.
+ google.protobuf.Timestamp submit_time = 2;
+
+ // The time when the batch request is finished and
+ // [google.longrunning.Operation.done][google.longrunning.Operation.done] is set to true.
+ google.protobuf.Timestamp end_time = 3;
+}
+
+// Config to control which ProductSet contains the Products to be deleted.
+message ProductSetPurgeConfig {
+ // The ProductSet that contains the Products to delete. If a Product is a
+ // member of product_set_id in addition to other ProductSets, the Product will
+ // still be deleted.
+ string product_set_id = 1;
+}
+
+// Request message for the `PurgeProducts` method.
+message PurgeProductsRequest {
+ // The Products to delete.
+ oneof target {
+ // Specify which ProductSet contains the Products to be deleted.
+ ProductSetPurgeConfig product_set_purge_config = 2;
+
+ // If delete_orphan_products is true, all Products that are not in any
+ // ProductSet will be deleted.
+ bool delete_orphan_products = 3;
+ }
+
+ // Required. The project and location in which the Products should be deleted.
+ //
+ // Format is `projects/PROJECT_ID/locations/LOC_ID`.
+ string parent = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "locations.googleapis.com/Location"
+ }
+ ];
+
+ // The default value is false. Override this value to true to actually perform
+ // the purge.
+ bool force = 4;
+}
diff --git a/packages/google-cloud-vision/protos/google/cloud/vision/v1/text_annotation.proto b/packages/google-cloud-vision/protos/google/cloud/vision/v1/text_annotation.proto
new file mode 100644
index 00000000000..9c07c322075
--- /dev/null
+++ b/packages/google-cloud-vision/protos/google/cloud/vision/v1/text_annotation.proto
@@ -0,0 +1,258 @@
+// Copyright 2022 Google LLC
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+syntax = "proto3";
+
+package google.cloud.vision.v1;
+
+import "google/cloud/vision/v1/geometry.proto";
+
+option cc_enable_arenas = true;
+option go_package = "google.golang.org/genproto/googleapis/cloud/vision/v1;vision";
+option java_multiple_files = true;
+option java_outer_classname = "TextAnnotationProto";
+option java_package = "com.google.cloud.vision.v1";
+option objc_class_prefix = "GCVN";
+
+// TextAnnotation contains a structured representation of OCR extracted text.
+// The hierarchy of an OCR extracted text structure is like this:
+// TextAnnotation -> Page -> Block -> Paragraph -> Word -> Symbol
+// Each structural component, starting from Page, may further have their own
+// properties. Properties describe detected languages, breaks etc.. Please refer
+// to the [TextAnnotation.TextProperty][google.cloud.vision.v1.TextAnnotation.TextProperty] message definition below for more
+// detail.
+message TextAnnotation {
+ // Detected language for a structural component.
+ message DetectedLanguage {
+ // The BCP-47 language code, such as "en-US" or "sr-Latn". For more
+ // information, see
+ // http://www.unicode.org/reports/tr35/#Unicode_locale_identifier.
+ string language_code = 1;
+
+ // Confidence of detected language. Range [0, 1].
+ float confidence = 2;
+ }
+
+ // Detected start or end of a structural component.
+ message DetectedBreak {
+ // Enum to denote the type of break found. New line, space etc.
+ enum BreakType {
+ // Unknown break label type.
+ UNKNOWN = 0;
+
+ // Regular space.
+ SPACE = 1;
+
+ // Sure space (very wide).
+ SURE_SPACE = 2;
+
+ // Line-wrapping break.
+ EOL_SURE_SPACE = 3;
+
+ // End-line hyphen that is not present in text; does not co-occur with
+ // `SPACE`, `LEADER_SPACE`, or `LINE_BREAK`.
+ HYPHEN = 4;
+
+ // Line break that ends a paragraph.
+ LINE_BREAK = 5;
+ }
+
+ // Detected break type.
+ BreakType type = 1;
+
+ // True if break prepends the element.
+ bool is_prefix = 2;
+ }
+
+ // Additional information detected on the structural component.
+ message TextProperty {
+ // A list of detected languages together with confidence.
+ repeated DetectedLanguage detected_languages = 1;
+
+ // Detected start or end of a text segment.
+ DetectedBreak detected_break = 2;
+ }
+
+ // List of pages detected by OCR.
+ repeated Page pages = 1;
+
+ // UTF-8 text detected on the pages.
+ string text = 2;
+}
+
+// Detected page from OCR.
+message Page {
+ // Additional information detected on the page.
+ TextAnnotation.TextProperty property = 1;
+
+ // Page width. For PDFs the unit is points. For images (including
+ // TIFFs) the unit is pixels.
+ int32 width = 2;
+
+ // Page height. For PDFs the unit is points. For images (including
+ // TIFFs) the unit is pixels.
+ int32 height = 3;
+
+ // List of blocks of text, images etc on this page.
+ repeated Block blocks = 4;
+
+ // Confidence of the OCR results on the page. Range [0, 1].
+ float confidence = 5;
+}
+
+// Logical element on the page.
+message Block {
+ // Type of a block (text, image etc) as identified by OCR.
+ enum BlockType {
+ // Unknown block type.
+ UNKNOWN = 0;
+
+ // Regular text block.
+ TEXT = 1;
+
+ // Table block.
+ TABLE = 2;
+
+ // Image block.
+ PICTURE = 3;
+
+ // Horizontal/vertical line box.
+ RULER = 4;
+
+ // Barcode block.
+ BARCODE = 5;
+ }
+
+ // Additional information detected for the block.
+ TextAnnotation.TextProperty property = 1;
+
+ // The bounding box for the block.
+ // The vertices are in the order of top-left, top-right, bottom-right,
+ // bottom-left. When a rotation of the bounding box is detected the rotation
+ // is represented as around the top-left corner as defined when the text is
+ // read in the 'natural' orientation.
+ // For example:
+ //
+ // * when the text is horizontal it might look like:
+ //
+ // 0----1
+ // | |
+ // 3----2
+ //
+ // * when it's rotated 180 degrees around the top-left corner it becomes:
+ //
+ // 2----3
+ // | |
+ // 1----0
+ //
+ // and the vertex order will still be (0, 1, 2, 3).
+ BoundingPoly bounding_box = 2;
+
+ // List of paragraphs in this block (if this blocks is of type text).
+ repeated Paragraph paragraphs = 3;
+
+ // Detected block type (text, image etc) for this block.
+ BlockType block_type = 4;
+
+ // Confidence of the OCR results on the block. Range [0, 1].
+ float confidence = 5;
+}
+
+// Structural unit of text representing a number of words in certain order.
+message Paragraph {
+ // Additional information detected for the paragraph.
+ TextAnnotation.TextProperty property = 1;
+
+ // The bounding box for the paragraph.
+ // The vertices are in the order of top-left, top-right, bottom-right,
+ // bottom-left. When a rotation of the bounding box is detected the rotation
+ // is represented as around the top-left corner as defined when the text is
+ // read in the 'natural' orientation.
+ // For example:
+ // * when the text is horizontal it might look like:
+ // 0----1
+ // | |
+ // 3----2
+ // * when it's rotated 180 degrees around the top-left corner it becomes:
+ // 2----3
+ // | |
+ // 1----0
+ // and the vertex order will still be (0, 1, 2, 3).
+ BoundingPoly bounding_box = 2;
+
+ // List of all words in this paragraph.
+ repeated Word words = 3;
+
+ // Confidence of the OCR results for the paragraph. Range [0, 1].
+ float confidence = 4;
+}
+
+// A word representation.
+message Word {
+ // Additional information detected for the word.
+ TextAnnotation.TextProperty property = 1;
+
+ // The bounding box for the word.
+ // The vertices are in the order of top-left, top-right, bottom-right,
+ // bottom-left. When a rotation of the bounding box is detected the rotation
+ // is represented as around the top-left corner as defined when the text is
+ // read in the 'natural' orientation.
+ // For example:
+ // * when the text is horizontal it might look like:
+ // 0----1
+ // | |
+ // 3----2
+ // * when it's rotated 180 degrees around the top-left corner it becomes:
+ // 2----3
+ // | |
+ // 1----0
+ // and the vertex order will still be (0, 1, 2, 3).
+ BoundingPoly bounding_box = 2;
+
+ // List of symbols in the word.
+ // The order of the symbols follows the natural reading order.
+ repeated Symbol symbols = 3;
+
+ // Confidence of the OCR results for the word. Range [0, 1].
+ float confidence = 4;
+}
+
+// A single symbol representation.
+message Symbol {
+ // Additional information detected for the symbol.
+ TextAnnotation.TextProperty property = 1;
+
+ // The bounding box for the symbol.
+ // The vertices are in the order of top-left, top-right, bottom-right,
+ // bottom-left. When a rotation of the bounding box is detected the rotation
+ // is represented as around the top-left corner as defined when the text is
+ // read in the 'natural' orientation.
+ // For example:
+ // * when the text is horizontal it might look like:
+ // 0----1
+ // | |
+ // 3----2
+ // * when it's rotated 180 degrees around the top-left corner it becomes:
+ // 2----3
+ // | |
+ // 1----0
+ // and the vertex order will still be (0, 1, 2, 3).
+ BoundingPoly bounding_box = 2;
+
+ // The actual UTF-8 representation of the symbol.
+ string text = 3;
+
+ // Confidence of the OCR results for the symbol. Range [0, 1].
+ float confidence = 4;
+}
diff --git a/packages/google-cloud-vision/protos/google/cloud/vision/v1/web_detection.proto b/packages/google-cloud-vision/protos/google/cloud/vision/v1/web_detection.proto
new file mode 100644
index 00000000000..369a1350d40
--- /dev/null
+++ b/packages/google-cloud-vision/protos/google/cloud/vision/v1/web_detection.proto
@@ -0,0 +1,104 @@
+// Copyright 2022 Google LLC
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+syntax = "proto3";
+
+package google.cloud.vision.v1;
+
+option cc_enable_arenas = true;
+option go_package = "google.golang.org/genproto/googleapis/cloud/vision/v1;vision";
+option java_multiple_files = true;
+option java_outer_classname = "WebDetectionProto";
+option java_package = "com.google.cloud.vision.v1";
+option objc_class_prefix = "GCVN";
+
+// Relevant information for the image from the Internet.
+message WebDetection {
+ // Entity deduced from similar images on the Internet.
+ message WebEntity {
+ // Opaque entity ID.
+ string entity_id = 1;
+
+ // Overall relevancy score for the entity.
+ // Not normalized and not comparable across different image queries.
+ float score = 2;
+
+ // Canonical description of the entity, in English.
+ string description = 3;
+ }
+
+ // Metadata for online images.
+ message WebImage {
+ // The result image URL.
+ string url = 1;
+
+ // (Deprecated) Overall relevancy score for the image.
+ float score = 2;
+ }
+
+ // Metadata for web pages.
+ message WebPage {
+ // The result web page URL.
+ string url = 1;
+
+ // (Deprecated) Overall relevancy score for the web page.
+ float score = 2;
+
+ // Title for the web page, may contain HTML markups.
+ string page_title = 3;
+
+ // Fully matching images on the page.
+ // Can include resized copies of the query image.
+ repeated WebImage full_matching_images = 4;
+
+ // Partial matching images on the page.
+ // Those images are similar enough to share some key-point features. For
+ // example an original image will likely have partial matching for its
+ // crops.
+ repeated WebImage partial_matching_images = 5;
+ }
+
+ // Label to provide extra metadata for the web detection.
+ message WebLabel {
+ // Label for extra metadata.
+ string label = 1;
+
+ // The BCP-47 language code for `label`, such as "en-US" or "sr-Latn".
+ // For more information, see
+ // http://www.unicode.org/reports/tr35/#Unicode_locale_identifier.
+ string language_code = 2;
+ }
+
+ // Deduced entities from similar images on the Internet.
+ repeated WebEntity web_entities = 1;
+
+ // Fully matching images from the Internet.
+ // Can include resized copies of the query image.
+ repeated WebImage full_matching_images = 2;
+
+ // Partial matching images from the Internet.
+ // Those images are similar enough to share some key-point features. For
+ // example an original image will likely have partial matching for its crops.
+ repeated WebImage partial_matching_images = 3;
+
+ // Web pages containing the matching images from the Internet.
+ repeated WebPage pages_with_matching_images = 4;
+
+ // The visually similar image results.
+ repeated WebImage visually_similar_images = 6;
+
+ // The service's best guess as to the topic of the request image.
+ // Inferred from similar images on the open web.
+ repeated WebLabel best_guess_labels = 8;
+}
diff --git a/packages/google-cloud-vision/protos/google/cloud/vision/v1p1beta1/geometry.proto b/packages/google-cloud-vision/protos/google/cloud/vision/v1p1beta1/geometry.proto
new file mode 100644
index 00000000000..6d46d9c342e
--- /dev/null
+++ b/packages/google-cloud-vision/protos/google/cloud/vision/v1p1beta1/geometry.proto
@@ -0,0 +1,53 @@
+// Copyright 2017 Google Inc.
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+syntax = "proto3";
+
+package google.cloud.vision.v1p1beta1;
+
+option cc_enable_arenas = true;
+option go_package = "google.golang.org/genproto/googleapis/cloud/vision/v1p1beta1;vision";
+option java_multiple_files = true;
+option java_outer_classname = "GeometryProto";
+option java_package = "com.google.cloud.vision.v1p1beta1";
+
+// A vertex represents a 2D point in the image.
+// NOTE: the vertex coordinates are in the same scale as the original image.
+message Vertex {
+ // X coordinate.
+ int32 x = 1;
+
+ // Y coordinate.
+ int32 y = 2;
+}
+
+// A bounding polygon for the detected image annotation.
+message BoundingPoly {
+ // The bounding polygon vertices.
+ repeated Vertex vertices = 1;
+}
+
+// A 3D position in the image, used primarily for Face detection landmarks.
+// A valid Position must have both x and y coordinates.
+// The position coordinates are in the same scale as the original image.
+message Position {
+ // X coordinate.
+ float x = 1;
+
+ // Y coordinate.
+ float y = 2;
+
+ // Z coordinate (or depth).
+ float z = 3;
+}
diff --git a/packages/google-cloud-vision/protos/google/cloud/vision/v1p1beta1/image_annotator.proto b/packages/google-cloud-vision/protos/google/cloud/vision/v1p1beta1/image_annotator.proto
new file mode 100644
index 00000000000..f66ad504fca
--- /dev/null
+++ b/packages/google-cloud-vision/protos/google/cloud/vision/v1p1beta1/image_annotator.proto
@@ -0,0 +1,618 @@
+// Copyright 2019 Google LLC.
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+//
+
+syntax = "proto3";
+
+package google.cloud.vision.v1p1beta1;
+
+import "google/api/annotations.proto";
+import "google/api/client.proto";
+import "google/api/field_behavior.proto";
+import "google/cloud/vision/v1p1beta1/geometry.proto";
+import "google/cloud/vision/v1p1beta1/text_annotation.proto";
+import "google/cloud/vision/v1p1beta1/web_detection.proto";
+import "google/rpc/status.proto";
+import "google/type/color.proto";
+import "google/type/latlng.proto";
+
+option cc_enable_arenas = true;
+option go_package = "google.golang.org/genproto/googleapis/cloud/vision/v1p1beta1;vision";
+option java_multiple_files = true;
+option java_outer_classname = "ImageAnnotatorProto";
+option java_package = "com.google.cloud.vision.v1p1beta1";
+
+// Service that performs Google Cloud Vision API detection tasks over client
+// images, such as face, landmark, logo, label, and text detection. The
+// ImageAnnotator service returns detected entities from the images.
+service ImageAnnotator {
+ option (google.api.default_host) = "vision.googleapis.com";
+ option (google.api.oauth_scopes) =
+ "https://www.googleapis.com/auth/cloud-platform,"
+ "https://www.googleapis.com/auth/cloud-vision";
+
+ // Run image detection and annotation for a batch of images.
+ rpc BatchAnnotateImages(BatchAnnotateImagesRequest)
+ returns (BatchAnnotateImagesResponse) {
+ option (google.api.http) = {
+ post: "/v1p1beta1/images:annotate"
+ body: "*"
+ };
+ option (google.api.method_signature) = "requests";
+ }
+}
+
+// Users describe the type of Google Cloud Vision API tasks to perform over
+// images by using *Feature*s. Each Feature indicates a type of image
+// detection task to perform. Features encode the Cloud Vision API
+// vertical to operate on and the number of top-scoring results to return.
+message Feature {
+ // Type of image feature.
+ enum Type {
+ // Unspecified feature type.
+ TYPE_UNSPECIFIED = 0;
+
+ // Run face detection.
+ FACE_DETECTION = 1;
+
+ // Run landmark detection.
+ LANDMARK_DETECTION = 2;
+
+ // Run logo detection.
+ LOGO_DETECTION = 3;
+
+ // Run label detection.
+ LABEL_DETECTION = 4;
+
+ // Run OCR.
+ TEXT_DETECTION = 5;
+
+ // Run dense text document OCR. Takes precedence when both
+ // DOCUMENT_TEXT_DETECTION and TEXT_DETECTION are present.
+ DOCUMENT_TEXT_DETECTION = 11;
+
+ // Run computer vision models to compute image safe-search properties.
+ SAFE_SEARCH_DETECTION = 6;
+
+ // Compute a set of image properties, such as the image's dominant colors.
+ IMAGE_PROPERTIES = 7;
+
+ // Run crop hints.
+ CROP_HINTS = 9;
+
+ // Run web detection.
+ WEB_DETECTION = 10;
+ }
+
+ // The feature type.
+ Type type = 1;
+
+ // Maximum number of results of this type.
+ int32 max_results = 2;
+
+ // Model to use for the feature.
+ // Supported values: "builtin/stable" (the default if unset) and
+ // "builtin/latest". `DOCUMENT_TEXT_DETECTION` and `TEXT_DETECTION` also
+ // support "builtin/weekly" for the bleeding edge release updated weekly.
+ string model = 3;
+}
+
+// External image source (Google Cloud Storage image location).
+message ImageSource {
+ // NOTE: For new code `image_uri` below is preferred.
+ // Google Cloud Storage image URI, which must be in the following form:
+ // `gs://bucket_name/object_name` (for details, see
+ // [Google Cloud Storage Request
+ // URIs](https://cloud.google.com/storage/docs/reference-uris)).
+ // NOTE: Cloud Storage object versioning is not supported.
+ string gcs_image_uri = 1;
+
+ // Image URI which supports:
+ // 1) Google Cloud Storage image URI, which must be in the following form:
+ // `gs://bucket_name/object_name` (for details, see
+ // [Google Cloud Storage Request
+ // URIs](https://cloud.google.com/storage/docs/reference-uris)).
+ // NOTE: Cloud Storage object versioning is not supported.
+ // 2) Publicly accessible image HTTP/HTTPS URL.
+ // This is preferred over the legacy `gcs_image_uri` above. When both
+ // `gcs_image_uri` and `image_uri` are specified, `image_uri` takes
+ // precedence.
+ string image_uri = 2;
+}
+
+// Client image to perform Google Cloud Vision API tasks over.
+message Image {
+ // Image content, represented as a stream of bytes.
+ // Note: as with all `bytes` fields, protobuffers use a pure binary
+ // representation, whereas JSON representations use base64.
+ bytes content = 1;
+
+ // Google Cloud Storage image location. If both `content` and `source`
+ // are provided for an image, `content` takes precedence and is
+ // used to perform the image annotation request.
+ ImageSource source = 2;
+}
+
+// A face annotation object contains the results of face detection.
+message FaceAnnotation {
+ // A face-specific landmark (for example, a face feature).
+ message Landmark {
+ // Face landmark (feature) type.
+ // Left and right are defined from the vantage of the viewer of the image
+ // without considering mirror projections typical of photos. So, `LEFT_EYE`,
+ // typically, is the person's right eye.
+ enum Type {
+ // Unknown face landmark detected. Should not be filled.
+ UNKNOWN_LANDMARK = 0;
+
+ // Left eye.
+ LEFT_EYE = 1;
+
+ // Right eye.
+ RIGHT_EYE = 2;
+
+ // Left of left eyebrow.
+ LEFT_OF_LEFT_EYEBROW = 3;
+
+ // Right of left eyebrow.
+ RIGHT_OF_LEFT_EYEBROW = 4;
+
+ // Left of right eyebrow.
+ LEFT_OF_RIGHT_EYEBROW = 5;
+
+ // Right of right eyebrow.
+ RIGHT_OF_RIGHT_EYEBROW = 6;
+
+ // Midpoint between eyes.
+ MIDPOINT_BETWEEN_EYES = 7;
+
+ // Nose tip.
+ NOSE_TIP = 8;
+
+ // Upper lip.
+ UPPER_LIP = 9;
+
+ // Lower lip.
+ LOWER_LIP = 10;
+
+ // Mouth left.
+ MOUTH_LEFT = 11;
+
+ // Mouth right.
+ MOUTH_RIGHT = 12;
+
+ // Mouth center.
+ MOUTH_CENTER = 13;
+
+ // Nose, bottom right.
+ NOSE_BOTTOM_RIGHT = 14;
+
+ // Nose, bottom left.
+ NOSE_BOTTOM_LEFT = 15;
+
+ // Nose, bottom center.
+ NOSE_BOTTOM_CENTER = 16;
+
+ // Left eye, top boundary.
+ LEFT_EYE_TOP_BOUNDARY = 17;
+
+ // Left eye, right corner.
+ LEFT_EYE_RIGHT_CORNER = 18;
+
+ // Left eye, bottom boundary.
+ LEFT_EYE_BOTTOM_BOUNDARY = 19;
+
+ // Left eye, left corner.
+ LEFT_EYE_LEFT_CORNER = 20;
+
+ // Right eye, top boundary.
+ RIGHT_EYE_TOP_BOUNDARY = 21;
+
+ // Right eye, right corner.
+ RIGHT_EYE_RIGHT_CORNER = 22;
+
+ // Right eye, bottom boundary.
+ RIGHT_EYE_BOTTOM_BOUNDARY = 23;
+
+ // Right eye, left corner.
+ RIGHT_EYE_LEFT_CORNER = 24;
+
+ // Left eyebrow, upper midpoint.
+ LEFT_EYEBROW_UPPER_MIDPOINT = 25;
+
+ // Right eyebrow, upper midpoint.
+ RIGHT_EYEBROW_UPPER_MIDPOINT = 26;
+
+ // Left ear tragion.
+ LEFT_EAR_TRAGION = 27;
+
+ // Right ear tragion.
+ RIGHT_EAR_TRAGION = 28;
+
+ // Left eye pupil.
+ LEFT_EYE_PUPIL = 29;
+
+ // Right eye pupil.
+ RIGHT_EYE_PUPIL = 30;
+
+ // Forehead glabella.
+ FOREHEAD_GLABELLA = 31;
+
+ // Chin gnathion.
+ CHIN_GNATHION = 32;
+
+ // Chin left gonion.
+ CHIN_LEFT_GONION = 33;
+
+ // Chin right gonion.
+ CHIN_RIGHT_GONION = 34;
+ }
+
+ // Face landmark type.
+ Type type = 3;
+
+ // Face landmark position.
+ Position position = 4;
+ }
+
+ // The bounding polygon around the face. The coordinates of the bounding box
+ // are in the original image's scale, as returned in `ImageParams`.
+ // The bounding box is computed to "frame" the face in accordance with human
+ // expectations. It is based on the landmarker results.
+ // Note that one or more x and/or y coordinates may not be generated in the
+ // `BoundingPoly` (the polygon will be unbounded) if only a partial face
+ // appears in the image to be annotated.
+ BoundingPoly bounding_poly = 1;
+
+ // The `fd_bounding_poly` bounding polygon is tighter than the
+ // `boundingPoly`, and encloses only the skin part of the face. Typically, it
+ // is used to eliminate the face from any image analysis that detects the
+ // "amount of skin" visible in an image. It is not based on the
+ // landmarker results, only on the initial face detection, hence
+ // the fd (face detection) prefix.
+ BoundingPoly fd_bounding_poly = 2;
+
+ // Detected face landmarks.
+ repeated Landmark landmarks = 3;
+
+ // Roll angle, which indicates the amount of clockwise/anti-clockwise rotation
+ // of the face relative to the image vertical about the axis perpendicular to
+ // the face. Range [-180,180].
+ float roll_angle = 4;
+
+ // Yaw angle, which indicates the leftward/rightward angle that the face is
+ // pointing relative to the vertical plane perpendicular to the image. Range
+ // [-180,180].
+ float pan_angle = 5;
+
+ // Pitch angle, which indicates the upwards/downwards angle that the face is
+ // pointing relative to the image's horizontal plane. Range [-180,180].
+ float tilt_angle = 6;
+
+ // Detection confidence. Range [0, 1].
+ float detection_confidence = 7;
+
+ // Face landmarking confidence. Range [0, 1].
+ float landmarking_confidence = 8;
+
+ // Joy likelihood.
+ Likelihood joy_likelihood = 9;
+
+ // Sorrow likelihood.
+ Likelihood sorrow_likelihood = 10;
+
+ // Anger likelihood.
+ Likelihood anger_likelihood = 11;
+
+ // Surprise likelihood.
+ Likelihood surprise_likelihood = 12;
+
+ // Under-exposed likelihood.
+ Likelihood under_exposed_likelihood = 13;
+
+ // Blurred likelihood.
+ Likelihood blurred_likelihood = 14;
+
+ // Headwear likelihood.
+ Likelihood headwear_likelihood = 15;
+}
+
+// Detected entity location information.
+message LocationInfo {
+ // lat/long location coordinates.
+ google.type.LatLng lat_lng = 1;
+}
+
+// A `Property` consists of a user-supplied name/value pair.
+message Property {
+ // Name of the property.
+ string name = 1;
+
+ // Value of the property.
+ string value = 2;
+
+ // Value of numeric properties.
+ uint64 uint64_value = 3;
+}
+
+// Set of detected entity features.
+message EntityAnnotation {
+ // Opaque entity ID. Some IDs may be available in
+ // [Google Knowledge Graph Search
+ // API](https://developers.google.com/knowledge-graph/).
+ string mid = 1;
+
+ // The language code for the locale in which the entity textual
+ // `description` is expressed.
+ string locale = 2;
+
+ // Entity textual description, expressed in its `locale` language.
+ string description = 3;
+
+ // Overall score of the result. Range [0, 1].
+ float score = 4;
+
+ // The accuracy of the entity detection in an image.
+ // For example, for an image in which the "Eiffel Tower" entity is detected,
+ // this field represents the confidence that there is a tower in the query
+ // image. Range [0, 1].
+ float confidence = 5;
+
+ // The relevancy of the ICA (Image Content Annotation) label to the
+ // image. For example, the relevancy of "tower" is likely higher to an image
+ // containing the detected "Eiffel Tower" than to an image containing a
+ // detected distant towering building, even though the confidence that
+ // there is a tower in each image may be the same. Range [0, 1].
+ float topicality = 6;
+
+ // Image region to which this entity belongs. Not produced
+ // for `LABEL_DETECTION` features.
+ BoundingPoly bounding_poly = 7;
+
+ // The location information for the detected entity. Multiple
+ // `LocationInfo` elements can be present because one location may
+ // indicate the location of the scene in the image, and another location
+ // may indicate the location of the place where the image was taken.
+ // Location information is usually present for landmarks.
+ repeated LocationInfo locations = 8;
+
+ // Some entities may have optional user-supplied `Property` (name/value)
+ // fields, such a score or string that qualifies the entity.
+ repeated Property properties = 9;
+}
+
+// Set of features pertaining to the image, computed by computer vision
+// methods over safe-search verticals (for example, adult, spoof, medical,
+// violence).
+message SafeSearchAnnotation {
+ // Represents the adult content likelihood for the image. Adult content may
+ // contain elements such as nudity, pornographic images or cartoons, or
+ // sexual activities.
+ Likelihood adult = 1;
+
+ // Spoof likelihood. The likelihood that an modification
+ // was made to the image's canonical version to make it appear
+ // funny or offensive.
+ Likelihood spoof = 2;
+
+ // Likelihood that this is a medical image.
+ Likelihood medical = 3;
+
+ // Likelihood that this image contains violent content.
+ Likelihood violence = 4;
+
+ // Likelihood that the request image contains racy content. Racy content may
+ // include (but is not limited to) skimpy or sheer clothing, strategically
+ // covered nudity, lewd or provocative poses, or close-ups of sensitive
+ // body areas.
+ Likelihood racy = 9;
+}
+
+// Rectangle determined by min and max `LatLng` pairs.
+message LatLongRect {
+ // Min lat/long pair.
+ google.type.LatLng min_lat_lng = 1;
+
+ // Max lat/long pair.
+ google.type.LatLng max_lat_lng = 2;
+}
+
+// Color information consists of RGB channels, score, and the fraction of
+// the image that the color occupies in the image.
+message ColorInfo {
+ // RGB components of the color.
+ google.type.Color color = 1;
+
+ // Image-specific score for this color. Value in range [0, 1].
+ float score = 2;
+
+ // The fraction of pixels the color occupies in the image.
+ // Value in range [0, 1].
+ float pixel_fraction = 3;
+}
+
+// Set of dominant colors and their corresponding scores.
+message DominantColorsAnnotation {
+ // RGB color values with their score and pixel fraction.
+ repeated ColorInfo colors = 1;
+}
+
+// Stores image properties, such as dominant colors.
+message ImageProperties {
+ // If present, dominant colors completed successfully.
+ DominantColorsAnnotation dominant_colors = 1;
+}
+
+// Single crop hint that is used to generate a new crop when serving an image.
+message CropHint {
+ // The bounding polygon for the crop region. The coordinates of the bounding
+ // box are in the original image's scale, as returned in `ImageParams`.
+ BoundingPoly bounding_poly = 1;
+
+ // Confidence of this being a salient region. Range [0, 1].
+ float confidence = 2;
+
+ // Fraction of importance of this salient region with respect to the original
+ // image.
+ float importance_fraction = 3;
+}
+
+// Set of crop hints that are used to generate new crops when serving images.
+message CropHintsAnnotation {
+ // Crop hint results.
+ repeated CropHint crop_hints = 1;
+}
+
+// Parameters for crop hints annotation request.
+message CropHintsParams {
+ // Aspect ratios in floats, representing the ratio of the width to the height
+ // of the image. For example, if the desired aspect ratio is 4/3, the
+ // corresponding float value should be 1.33333. If not specified, the
+ // best possible crop is returned. The number of provided aspect ratios is
+ // limited to a maximum of 16; any aspect ratios provided after the 16th are
+ // ignored.
+ repeated float aspect_ratios = 1;
+}
+
+// Parameters for web detection request.
+message WebDetectionParams {
+ // Whether to include results derived from the geo information in the image.
+ bool include_geo_results = 2;
+}
+
+// Parameters for text detections. This is used to control TEXT_DETECTION and
+// DOCUMENT_TEXT_DETECTION features.
+message TextDetectionParams {
+
+ // By default, Cloud Vision API only includes confidence score for
+ // DOCUMENT_TEXT_DETECTION result. Set the flag to true to include confidence
+ // score for TEXT_DETECTION as well.
+ bool enable_text_detection_confidence_score = 9;
+
+ // A list of advanced OCR options to fine-tune OCR behavior.
+ repeated string advanced_ocr_options = 11;
+}
+
+// Image context and/or feature-specific parameters.
+message ImageContext {
+ // lat/long rectangle that specifies the location of the image.
+ LatLongRect lat_long_rect = 1;
+
+ // List of languages to use for TEXT_DETECTION. In most cases, an empty value
+ // yields the best results since it enables automatic language detection. For
+ // languages based on the Latin alphabet, setting `language_hints` is not
+ // needed. In rare cases, when the language of the text in the image is known,
+ // setting a hint will help get better results (although it will be a
+ // significant hindrance if the hint is wrong). Text detection returns an
+ // error if one or more of the specified languages is not one of the
+ // [supported languages](https://cloud.google.com/vision/docs/languages).
+ repeated string language_hints = 2;
+
+ // Parameters for crop hints annotation request.
+ CropHintsParams crop_hints_params = 4;
+
+ // Parameters for web detection.
+ WebDetectionParams web_detection_params = 6;
+
+ // Parameters for text detection and document text detection.
+ TextDetectionParams text_detection_params = 12;
+}
+
+// Request for performing Google Cloud Vision API tasks over a user-provided
+// image, with user-requested features.
+message AnnotateImageRequest {
+ // The image to be processed.
+ Image image = 1;
+
+ // Requested features.
+ repeated Feature features = 2;
+
+ // Additional context that may accompany the image.
+ ImageContext image_context = 3;
+}
+
+// Response to an image annotation request.
+message AnnotateImageResponse {
+ // If present, face detection has completed successfully.
+ repeated FaceAnnotation face_annotations = 1;
+
+ // If present, landmark detection has completed successfully.
+ repeated EntityAnnotation landmark_annotations = 2;
+
+ // If present, logo detection has completed successfully.
+ repeated EntityAnnotation logo_annotations = 3;
+
+ // If present, label detection has completed successfully.
+ repeated EntityAnnotation label_annotations = 4;
+
+ // If present, text (OCR) detection has completed successfully.
+ repeated EntityAnnotation text_annotations = 5;
+
+ // If present, text (OCR) detection or document (OCR) text detection has
+ // completed successfully.
+ // This annotation provides the structural hierarchy for the OCR detected
+ // text.
+ TextAnnotation full_text_annotation = 12;
+
+ // If present, safe-search annotation has completed successfully.
+ SafeSearchAnnotation safe_search_annotation = 6;
+
+ // If present, image properties were extracted successfully.
+ ImageProperties image_properties_annotation = 8;
+
+ // If present, crop hints have completed successfully.
+ CropHintsAnnotation crop_hints_annotation = 11;
+
+ // If present, web detection has completed successfully.
+ WebDetection web_detection = 13;
+
+ // If set, represents the error message for the operation.
+ // Note that filled-in image annotations are guaranteed to be
+ // correct, even when `error` is set.
+ google.rpc.Status error = 9;
+}
+
+// Multiple image annotation requests are batched into a single service call.
+message BatchAnnotateImagesRequest {
+ // Required. Individual image annotation requests for this batch.
+ repeated AnnotateImageRequest requests = 1 [(google.api.field_behavior) = REQUIRED];
+}
+
+// Response to a batch image annotation request.
+message BatchAnnotateImagesResponse {
+ // Individual responses to image annotation requests within the batch.
+ repeated AnnotateImageResponse responses = 1;
+}
+
+// A bucketized representation of likelihood, which is intended to give clients
+// highly stable results across model upgrades.
+enum Likelihood {
+ // Unknown likelihood.
+ UNKNOWN = 0;
+
+ // It is very unlikely that the image belongs to the specified vertical.
+ VERY_UNLIKELY = 1;
+
+ // It is unlikely that the image belongs to the specified vertical.
+ UNLIKELY = 2;
+
+ // It is possible that the image belongs to the specified vertical.
+ POSSIBLE = 3;
+
+ // It is likely that the image belongs to the specified vertical.
+ LIKELY = 4;
+
+ // It is very likely that the image belongs to the specified vertical.
+ VERY_LIKELY = 5;
+}
diff --git a/packages/google-cloud-vision/protos/google/cloud/vision/v1p1beta1/text_annotation.proto b/packages/google-cloud-vision/protos/google/cloud/vision/v1p1beta1/text_annotation.proto
new file mode 100644
index 00000000000..f85cc44dfd5
--- /dev/null
+++ b/packages/google-cloud-vision/protos/google/cloud/vision/v1p1beta1/text_annotation.proto
@@ -0,0 +1,251 @@
+// Copyright 2017 Google Inc.
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+syntax = "proto3";
+
+package google.cloud.vision.v1p1beta1;
+
+import "google/cloud/vision/v1p1beta1/geometry.proto";
+
+option cc_enable_arenas = true;
+option go_package = "google.golang.org/genproto/googleapis/cloud/vision/v1p1beta1;vision";
+option java_multiple_files = true;
+option java_outer_classname = "TextAnnotationProto";
+option java_package = "com.google.cloud.vision.v1p1beta1";
+
+// TextAnnotation contains a structured representation of OCR extracted text.
+// The hierarchy of an OCR extracted text structure is like this:
+// TextAnnotation -> Page -> Block -> Paragraph -> Word -> Symbol
+// Each structural component, starting from Page, may further have their own
+// properties. Properties describe detected languages, breaks etc.. Please refer
+// to the
+// [TextAnnotation.TextProperty][google.cloud.vision.v1p1beta1.TextAnnotation.TextProperty]
+// message definition below for more detail.
+message TextAnnotation {
+ // Detected language for a structural component.
+ message DetectedLanguage {
+ // The BCP-47 language code, such as "en-US" or "sr-Latn". For more
+ // information, see
+ // http://www.unicode.org/reports/tr35/#Unicode_locale_identifier.
+ string language_code = 1;
+
+ // Confidence of detected language. Range [0, 1].
+ float confidence = 2;
+ }
+
+ // Detected start or end of a structural component.
+ message DetectedBreak {
+ // Enum to denote the type of break found. New line, space etc.
+ enum BreakType {
+ // Unknown break label type.
+ UNKNOWN = 0;
+
+ // Regular space.
+ SPACE = 1;
+
+ // Sure space (very wide).
+ SURE_SPACE = 2;
+
+ // Line-wrapping break.
+ EOL_SURE_SPACE = 3;
+
+ // End-line hyphen that is not present in text; does not co-occur with
+ // `SPACE`, `LEADER_SPACE`, or `LINE_BREAK`.
+ HYPHEN = 4;
+
+ // Line break that ends a paragraph.
+ LINE_BREAK = 5;
+ }
+
+ // Detected break type.
+ BreakType type = 1;
+
+ // True if break prepends the element.
+ bool is_prefix = 2;
+ }
+
+ // Additional information detected on the structural component.
+ message TextProperty {
+ // A list of detected languages together with confidence.
+ repeated DetectedLanguage detected_languages = 1;
+
+ // Detected start or end of a text segment.
+ DetectedBreak detected_break = 2;
+ }
+
+ // List of pages detected by OCR.
+ repeated Page pages = 1;
+
+ // UTF-8 text detected on the pages.
+ string text = 2;
+}
+
+// Detected page from OCR.
+message Page {
+ // Additional information detected on the page.
+ TextAnnotation.TextProperty property = 1;
+
+ // Page width in pixels.
+ int32 width = 2;
+
+ // Page height in pixels.
+ int32 height = 3;
+
+ // List of blocks of text, images etc on this page.
+ repeated Block blocks = 4;
+
+ // Confidence of the OCR results on the page. Range [0, 1].
+ float confidence = 5;
+}
+
+// Logical element on the page.
+message Block {
+ // Type of a block (text, image etc) as identified by OCR.
+ enum BlockType {
+ // Unknown block type.
+ UNKNOWN = 0;
+
+ // Regular text block.
+ TEXT = 1;
+
+ // Table block.
+ TABLE = 2;
+
+ // Image block.
+ PICTURE = 3;
+
+ // Horizontal/vertical line box.
+ RULER = 4;
+
+ // Barcode block.
+ BARCODE = 5;
+ }
+
+ // Additional information detected for the block.
+ TextAnnotation.TextProperty property = 1;
+
+ // The bounding box for the block.
+ // The vertices are in the order of top-left, top-right, bottom-right,
+ // bottom-left. When a rotation of the bounding box is detected the rotation
+ // is represented as around the top-left corner as defined when the text is
+ // read in the 'natural' orientation.
+ // For example:
+ // * when the text is horizontal it might look like:
+ // 0----1
+ // | |
+ // 3----2
+ // * when it's rotated 180 degrees around the top-left corner it becomes:
+ // 2----3
+ // | |
+ // 1----0
+ // and the vertice order will still be (0, 1, 2, 3).
+ BoundingPoly bounding_box = 2;
+
+ // List of paragraphs in this block (if this blocks is of type text).
+ repeated Paragraph paragraphs = 3;
+
+ // Detected block type (text, image etc) for this block.
+ BlockType block_type = 4;
+
+ // Confidence of the OCR results on the block. Range [0, 1].
+ float confidence = 5;
+}
+
+// Structural unit of text representing a number of words in certain order.
+message Paragraph {
+ // Additional information detected for the paragraph.
+ TextAnnotation.TextProperty property = 1;
+
+ // The bounding box for the paragraph.
+ // The vertices are in the order of top-left, top-right, bottom-right,
+ // bottom-left. When a rotation of the bounding box is detected the rotation
+ // is represented as around the top-left corner as defined when the text is
+ // read in the 'natural' orientation.
+ // For example:
+ // * when the text is horizontal it might look like:
+ // 0----1
+ // | |
+ // 3----2
+ // * when it's rotated 180 degrees around the top-left corner it becomes:
+ // 2----3
+ // | |
+ // 1----0
+ // and the vertice order will still be (0, 1, 2, 3).
+ BoundingPoly bounding_box = 2;
+
+ // List of words in this paragraph.
+ repeated Word words = 3;
+
+ // Confidence of the OCR results for the paragraph. Range [0, 1].
+ float confidence = 4;
+}
+
+// A word representation.
+message Word {
+ // Additional information detected for the word.
+ TextAnnotation.TextProperty property = 1;
+
+ // The bounding box for the word.
+ // The vertices are in the order of top-left, top-right, bottom-right,
+ // bottom-left. When a rotation of the bounding box is detected the rotation
+ // is represented as around the top-left corner as defined when the text is
+ // read in the 'natural' orientation.
+ // For example:
+ // * when the text is horizontal it might look like:
+ // 0----1
+ // | |
+ // 3----2
+ // * when it's rotated 180 degrees around the top-left corner it becomes:
+ // 2----3
+ // | |
+ // 1----0
+ // and the vertice order will still be (0, 1, 2, 3).
+ BoundingPoly bounding_box = 2;
+
+ // List of symbols in the word.
+ // The order of the symbols follows the natural reading order.
+ repeated Symbol symbols = 3;
+
+ // Confidence of the OCR results for the word. Range [0, 1].
+ float confidence = 4;
+}
+
+// A single symbol representation.
+message Symbol {
+ // Additional information detected for the symbol.
+ TextAnnotation.TextProperty property = 1;
+
+ // The bounding box for the symbol.
+ // The vertices are in the order of top-left, top-right, bottom-right,
+ // bottom-left. When a rotation of the bounding box is detected the rotation
+ // is represented as around the top-left corner as defined when the text is
+ // read in the 'natural' orientation.
+ // For example:
+ // * when the text is horizontal it might look like:
+ // 0----1
+ // | |
+ // 3----2
+ // * when it's rotated 180 degrees around the top-left corner it becomes:
+ // 2----3
+ // | |
+ // 1----0
+ // and the vertice order will still be (0, 1, 2, 3).
+ BoundingPoly bounding_box = 2;
+
+ // The actual UTF-8 representation of the symbol.
+ string text = 3;
+
+ // Confidence of the OCR results for the symbol. Range [0, 1].
+ float confidence = 4;
+}
diff --git a/packages/google-cloud-vision/protos/google/cloud/vision/v1p1beta1/web_detection.proto b/packages/google-cloud-vision/protos/google/cloud/vision/v1p1beta1/web_detection.proto
new file mode 100644
index 00000000000..c50e1ad62cc
--- /dev/null
+++ b/packages/google-cloud-vision/protos/google/cloud/vision/v1p1beta1/web_detection.proto
@@ -0,0 +1,103 @@
+// Copyright 2017 Google Inc.
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+syntax = "proto3";
+
+package google.cloud.vision.v1p1beta1;
+
+
+option cc_enable_arenas = true;
+option go_package = "google.golang.org/genproto/googleapis/cloud/vision/v1p1beta1;vision";
+option java_multiple_files = true;
+option java_outer_classname = "WebDetectionProto";
+option java_package = "com.google.cloud.vision.v1p1beta1";
+
+// Relevant information for the image from the Internet.
+message WebDetection {
+ // Entity deduced from similar images on the Internet.
+ message WebEntity {
+ // Opaque entity ID.
+ string entity_id = 1;
+
+ // Overall relevancy score for the entity.
+ // Not normalized and not comparable across different image queries.
+ float score = 2;
+
+ // Canonical description of the entity, in English.
+ string description = 3;
+ }
+
+ // Metadata for online images.
+ message WebImage {
+ // The result image URL.
+ string url = 1;
+
+ // (Deprecated) Overall relevancy score for the image.
+ float score = 2;
+ }
+
+ // Metadata for web pages.
+ message WebPage {
+ // The result web page URL.
+ string url = 1;
+
+ // (Deprecated) Overall relevancy score for the web page.
+ float score = 2;
+
+ // Title for the web page, may contain HTML markups.
+ string page_title = 3;
+
+ // Fully matching images on the page.
+ // Can include resized copies of the query image.
+ repeated WebImage full_matching_images = 4;
+
+ // Partial matching images on the page.
+ // Those images are similar enough to share some key-point features. For
+ // example an original image will likely have partial matching for its
+ // crops.
+ repeated WebImage partial_matching_images = 5;
+ }
+
+ // Label to provide extra metadata for the web detection.
+ message WebLabel {
+ // Label for extra metadata.
+ string label = 1;
+
+ // The BCP-47 language code for `label`, such as "en-US" or "sr-Latn".
+ // For more information, see
+ // http://www.unicode.org/reports/tr35/#Unicode_locale_identifier.
+ string language_code = 2;
+ }
+
+ // Deduced entities from similar images on the Internet.
+ repeated WebEntity web_entities = 1;
+
+ // Fully matching images from the Internet.
+ // Can include resized copies of the query image.
+ repeated WebImage full_matching_images = 2;
+
+ // Partial matching images from the Internet.
+ // Those images are similar enough to share some key-point features. For
+ // example an original image will likely have partial matching for its crops.
+ repeated WebImage partial_matching_images = 3;
+
+ // Web pages containing the matching images from the Internet.
+ repeated WebPage pages_with_matching_images = 4;
+
+ // The visually similar image results.
+ repeated WebImage visually_similar_images = 6;
+
+ // Best guess text labels for the request image.
+ repeated WebLabel best_guess_labels = 8;
+}
diff --git a/packages/google-cloud-vision/protos/google/cloud/vision/v1p2beta1/geometry.proto b/packages/google-cloud-vision/protos/google/cloud/vision/v1p2beta1/geometry.proto
new file mode 100644
index 00000000000..e9fec20bda7
--- /dev/null
+++ b/packages/google-cloud-vision/protos/google/cloud/vision/v1p2beta1/geometry.proto
@@ -0,0 +1,67 @@
+// Copyright 2018 Google Inc.
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+syntax = "proto3";
+
+package google.cloud.vision.v1p2beta1;
+
+option cc_enable_arenas = true;
+option go_package = "google.golang.org/genproto/googleapis/cloud/vision/v1p2beta1;vision";
+option java_multiple_files = true;
+option java_outer_classname = "GeometryProto";
+option java_package = "com.google.cloud.vision.v1p2beta1";
+
+// A vertex represents a 2D point in the image.
+// NOTE: the vertex coordinates are in the same scale as the original image.
+message Vertex {
+ // X coordinate.
+ int32 x = 1;
+
+ // Y coordinate.
+ int32 y = 2;
+}
+
+// A vertex represents a 2D point in the image.
+// NOTE: the normalized vertex coordinates are relative to the original image
+// and range from 0 to 1.
+message NormalizedVertex {
+ // X coordinate.
+ float x = 1;
+
+ // Y coordinate.
+ float y = 2;
+}
+
+// A bounding polygon for the detected image annotation.
+message BoundingPoly {
+ // The bounding polygon vertices.
+ repeated Vertex vertices = 1;
+
+ // The bounding polygon normalized vertices.
+ repeated NormalizedVertex normalized_vertices = 2;
+}
+
+// A 3D position in the image, used primarily for Face detection landmarks.
+// A valid Position must have both x and y coordinates.
+// The position coordinates are in the same scale as the original image.
+message Position {
+ // X coordinate.
+ float x = 1;
+
+ // Y coordinate.
+ float y = 2;
+
+ // Z coordinate (or depth).
+ float z = 3;
+}
diff --git a/packages/google-cloud-vision/protos/google/cloud/vision/v1p2beta1/image_annotator.proto b/packages/google-cloud-vision/protos/google/cloud/vision/v1p2beta1/image_annotator.proto
new file mode 100644
index 00000000000..264462d4843
--- /dev/null
+++ b/packages/google-cloud-vision/protos/google/cloud/vision/v1p2beta1/image_annotator.proto
@@ -0,0 +1,794 @@
+// Copyright 2019 Google LLC.
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+//
+
+syntax = "proto3";
+
+package google.cloud.vision.v1p2beta1;
+
+import "google/api/annotations.proto";
+import "google/api/client.proto";
+import "google/api/field_behavior.proto";
+import "google/cloud/vision/v1p2beta1/geometry.proto";
+import "google/cloud/vision/v1p2beta1/text_annotation.proto";
+import "google/cloud/vision/v1p2beta1/web_detection.proto";
+import "google/longrunning/operations.proto";
+import "google/protobuf/timestamp.proto";
+import "google/rpc/status.proto";
+import "google/type/color.proto";
+import "google/type/latlng.proto";
+
+option cc_enable_arenas = true;
+option go_package = "google.golang.org/genproto/googleapis/cloud/vision/v1p2beta1;vision";
+option java_multiple_files = true;
+option java_outer_classname = "ImageAnnotatorProto";
+option java_package = "com.google.cloud.vision.v1p2beta1";
+
+// Service that performs Google Cloud Vision API detection tasks over client
+// images, such as face, landmark, logo, label, and text detection. The
+// ImageAnnotator service returns detected entities from the images.
+service ImageAnnotator {
+ option (google.api.default_host) = "vision.googleapis.com";
+ option (google.api.oauth_scopes) =
+ "https://www.googleapis.com/auth/cloud-platform,"
+ "https://www.googleapis.com/auth/cloud-vision";
+
+ // Run image detection and annotation for a batch of images.
+ rpc BatchAnnotateImages(BatchAnnotateImagesRequest) returns (BatchAnnotateImagesResponse) {
+ option (google.api.http) = {
+ post: "/v1p2beta1/images:annotate"
+ body: "*"
+ };
+ option (google.api.method_signature) = "requests";
+ }
+
+ // Run async image detection and annotation for a list of generic files (e.g.
+ // PDF) which may contain multiple pages and multiple images per page.
+ // Progress and results can be retrieved through the
+ // `google.longrunning.Operations` interface.
+ // `Operation.metadata` contains `OperationMetadata` (metadata).
+ // `Operation.response` contains `AsyncBatchAnnotateFilesResponse` (results).
+ rpc AsyncBatchAnnotateFiles(AsyncBatchAnnotateFilesRequest) returns (google.longrunning.Operation) {
+ option (google.api.http) = {
+ post: "/v1p2beta1/files:asyncBatchAnnotate"
+ body: "*"
+ };
+ option (google.api.method_signature) = "requests";
+ option (google.longrunning.operation_info) = {
+ response_type: "AsyncBatchAnnotateFilesResponse"
+ metadata_type: "OperationMetadata"
+ };
+ }
+}
+
+// The type of Google Cloud Vision API detection to perform, and the maximum
+// number of results to return for that type. Multiple `Feature` objects can
+// be specified in the `features` list.
+message Feature {
+ // Type of Google Cloud Vision API feature to be extracted.
+ enum Type {
+ // Unspecified feature type.
+ TYPE_UNSPECIFIED = 0;
+
+ // Run face detection.
+ FACE_DETECTION = 1;
+
+ // Run landmark detection.
+ LANDMARK_DETECTION = 2;
+
+ // Run logo detection.
+ LOGO_DETECTION = 3;
+
+ // Run label detection.
+ LABEL_DETECTION = 4;
+
+ // Run text detection / optical character recognition (OCR). Text detection
+ // is optimized for areas of text within a larger image; if the image is
+ // a document, use `DOCUMENT_TEXT_DETECTION` instead.
+ TEXT_DETECTION = 5;
+
+ // Run dense text document OCR. Takes precedence when both
+ // `DOCUMENT_TEXT_DETECTION` and `TEXT_DETECTION` are present.
+ DOCUMENT_TEXT_DETECTION = 11;
+
+ // Run Safe Search to detect potentially unsafe
+ // or undesirable content.
+ SAFE_SEARCH_DETECTION = 6;
+
+ // Compute a set of image properties, such as the
+ // image's dominant colors.
+ IMAGE_PROPERTIES = 7;
+
+ // Run crop hints.
+ CROP_HINTS = 9;
+
+ // Run web detection.
+ WEB_DETECTION = 10;
+ }
+
+ // The feature type.
+ Type type = 1;
+
+ // Maximum number of results of this type. Does not apply to
+ // `TEXT_DETECTION`, `DOCUMENT_TEXT_DETECTION`, or `CROP_HINTS`.
+ int32 max_results = 2;
+
+ // Model to use for the feature.
+ // Supported values: "builtin/stable" (the default if unset) and
+ // "builtin/latest". `DOCUMENT_TEXT_DETECTION` and `TEXT_DETECTION` also
+ // support "builtin/weekly" for the bleeding edge release updated weekly.
+ string model = 3;
+}
+
+// External image source (Google Cloud Storage or web URL image location).
+message ImageSource {
+ // **Use `image_uri` instead.**
+ //
+ // The Google Cloud Storage URI of the form
+ // `gs://bucket_name/object_name`. Object versioning is not supported. See
+ // [Google Cloud Storage Request
+ // URIs](https://cloud.google.com/storage/docs/reference-uris) for more info.
+ string gcs_image_uri = 1;
+
+ // The URI of the source image. Can be either:
+ //
+ // 1. A Google Cloud Storage URI of the form
+ // `gs://bucket_name/object_name`. Object versioning is not supported. See
+ // [Google Cloud Storage Request
+ // URIs](https://cloud.google.com/storage/docs/reference-uris) for more
+ // info.
+ //
+ // 2. A publicly-accessible image HTTP/HTTPS URL. When fetching images from
+ // HTTP/HTTPS URLs, Google cannot guarantee that the request will be
+ // completed. Your request may fail if the specified host denies the
+ // request (e.g. due to request throttling or DOS prevention), or if Google
+ // throttles requests to the site for abuse prevention. You should not
+ // depend on externally-hosted images for production applications.
+ //
+ // When both `gcs_image_uri` and `image_uri` are specified, `image_uri` takes
+ // precedence.
+ string image_uri = 2;
+}
+
+// Client image to perform Google Cloud Vision API tasks over.
+message Image {
+ // Image content, represented as a stream of bytes.
+ // Note: As with all `bytes` fields, protobuffers use a pure binary
+ // representation, whereas JSON representations use base64.
+ bytes content = 1;
+
+ // Google Cloud Storage image location, or publicly-accessible image
+ // URL. If both `content` and `source` are provided for an image, `content`
+ // takes precedence and is used to perform the image annotation request.
+ ImageSource source = 2;
+}
+
+// A face annotation object contains the results of face detection.
+message FaceAnnotation {
+ // A face-specific landmark (for example, a face feature).
+ message Landmark {
+ // Face landmark (feature) type.
+ // Left and right are defined from the vantage of the viewer of the image
+ // without considering mirror projections typical of photos. So, `LEFT_EYE`,
+ // typically, is the person's right eye.
+ enum Type {
+ // Unknown face landmark detected. Should not be filled.
+ UNKNOWN_LANDMARK = 0;
+
+ // Left eye.
+ LEFT_EYE = 1;
+
+ // Right eye.
+ RIGHT_EYE = 2;
+
+ // Left of left eyebrow.
+ LEFT_OF_LEFT_EYEBROW = 3;
+
+ // Right of left eyebrow.
+ RIGHT_OF_LEFT_EYEBROW = 4;
+
+ // Left of right eyebrow.
+ LEFT_OF_RIGHT_EYEBROW = 5;
+
+ // Right of right eyebrow.
+ RIGHT_OF_RIGHT_EYEBROW = 6;
+
+ // Midpoint between eyes.
+ MIDPOINT_BETWEEN_EYES = 7;
+
+ // Nose tip.
+ NOSE_TIP = 8;
+
+ // Upper lip.
+ UPPER_LIP = 9;
+
+ // Lower lip.
+ LOWER_LIP = 10;
+
+ // Mouth left.
+ MOUTH_LEFT = 11;
+
+ // Mouth right.
+ MOUTH_RIGHT = 12;
+
+ // Mouth center.
+ MOUTH_CENTER = 13;
+
+ // Nose, bottom right.
+ NOSE_BOTTOM_RIGHT = 14;
+
+ // Nose, bottom left.
+ NOSE_BOTTOM_LEFT = 15;
+
+ // Nose, bottom center.
+ NOSE_BOTTOM_CENTER = 16;
+
+ // Left eye, top boundary.
+ LEFT_EYE_TOP_BOUNDARY = 17;
+
+ // Left eye, right corner.
+ LEFT_EYE_RIGHT_CORNER = 18;
+
+ // Left eye, bottom boundary.
+ LEFT_EYE_BOTTOM_BOUNDARY = 19;
+
+ // Left eye, left corner.
+ LEFT_EYE_LEFT_CORNER = 20;
+
+ // Right eye, top boundary.
+ RIGHT_EYE_TOP_BOUNDARY = 21;
+
+ // Right eye, right corner.
+ RIGHT_EYE_RIGHT_CORNER = 22;
+
+ // Right eye, bottom boundary.
+ RIGHT_EYE_BOTTOM_BOUNDARY = 23;
+
+ // Right eye, left corner.
+ RIGHT_EYE_LEFT_CORNER = 24;
+
+ // Left eyebrow, upper midpoint.
+ LEFT_EYEBROW_UPPER_MIDPOINT = 25;
+
+ // Right eyebrow, upper midpoint.
+ RIGHT_EYEBROW_UPPER_MIDPOINT = 26;
+
+ // Left ear tragion.
+ LEFT_EAR_TRAGION = 27;
+
+ // Right ear tragion.
+ RIGHT_EAR_TRAGION = 28;
+
+ // Left eye pupil.
+ LEFT_EYE_PUPIL = 29;
+
+ // Right eye pupil.
+ RIGHT_EYE_PUPIL = 30;
+
+ // Forehead glabella.
+ FOREHEAD_GLABELLA = 31;
+
+ // Chin gnathion.
+ CHIN_GNATHION = 32;
+
+ // Chin left gonion.
+ CHIN_LEFT_GONION = 33;
+
+ // Chin right gonion.
+ CHIN_RIGHT_GONION = 34;
+ }
+
+ // Face landmark type.
+ Type type = 3;
+
+ // Face landmark position.
+ Position position = 4;
+ }
+
+ // The bounding polygon around the face. The coordinates of the bounding box
+ // are in the original image's scale, as returned in `ImageParams`.
+ // The bounding box is computed to "frame" the face in accordance with human
+ // expectations. It is based on the landmarker results.
+ // Note that one or more x and/or y coordinates may not be generated in the
+ // `BoundingPoly` (the polygon will be unbounded) if only a partial face
+ // appears in the image to be annotated.
+ BoundingPoly bounding_poly = 1;
+
+ // The `fd_bounding_poly` bounding polygon is tighter than the
+ // `boundingPoly`, and encloses only the skin part of the face. Typically, it
+ // is used to eliminate the face from any image analysis that detects the
+ // "amount of skin" visible in an image. It is not based on the
+ // landmarker results, only on the initial face detection, hence
+ // the fd (face detection) prefix.
+ BoundingPoly fd_bounding_poly = 2;
+
+ // Detected face landmarks.
+ repeated Landmark landmarks = 3;
+
+ // Roll angle, which indicates the amount of clockwise/anti-clockwise rotation
+ // of the face relative to the image vertical about the axis perpendicular to
+ // the face. Range [-180,180].
+ float roll_angle = 4;
+
+ // Yaw angle, which indicates the leftward/rightward angle that the face is
+ // pointing relative to the vertical plane perpendicular to the image. Range
+ // [-180,180].
+ float pan_angle = 5;
+
+ // Pitch angle, which indicates the upwards/downwards angle that the face is
+ // pointing relative to the image's horizontal plane. Range [-180,180].
+ float tilt_angle = 6;
+
+ // Detection confidence. Range [0, 1].
+ float detection_confidence = 7;
+
+ // Face landmarking confidence. Range [0, 1].
+ float landmarking_confidence = 8;
+
+ // Joy likelihood.
+ Likelihood joy_likelihood = 9;
+
+ // Sorrow likelihood.
+ Likelihood sorrow_likelihood = 10;
+
+ // Anger likelihood.
+ Likelihood anger_likelihood = 11;
+
+ // Surprise likelihood.
+ Likelihood surprise_likelihood = 12;
+
+ // Under-exposed likelihood.
+ Likelihood under_exposed_likelihood = 13;
+
+ // Blurred likelihood.
+ Likelihood blurred_likelihood = 14;
+
+ // Headwear likelihood.
+ Likelihood headwear_likelihood = 15;
+}
+
+// Detected entity location information.
+message LocationInfo {
+ // lat/long location coordinates.
+ google.type.LatLng lat_lng = 1;
+}
+
+// A `Property` consists of a user-supplied name/value pair.
+message Property {
+ // Name of the property.
+ string name = 1;
+
+ // Value of the property.
+ string value = 2;
+
+ // Value of numeric properties.
+ uint64 uint64_value = 3;
+}
+
+// Set of detected entity features.
+message EntityAnnotation {
+ // Opaque entity ID. Some IDs may be available in
+ // [Google Knowledge Graph Search
+ // API](https://developers.google.com/knowledge-graph/).
+ string mid = 1;
+
+ // The language code for the locale in which the entity textual
+ // `description` is expressed.
+ string locale = 2;
+
+ // Entity textual description, expressed in its `locale` language.
+ string description = 3;
+
+ // Overall score of the result. Range [0, 1].
+ float score = 4;
+
+ // **Deprecated. Use `score` instead.**
+ // The accuracy of the entity detection in an image.
+ // For example, for an image in which the "Eiffel Tower" entity is detected,
+ // this field represents the confidence that there is a tower in the query
+ // image. Range [0, 1].
+ float confidence = 5;
+
+ // The relevancy of the ICA (Image Content Annotation) label to the
+ // image. For example, the relevancy of "tower" is likely higher to an image
+ // containing the detected "Eiffel Tower" than to an image containing a
+ // detected distant towering building, even though the confidence that
+ // there is a tower in each image may be the same. Range [0, 1].
+ float topicality = 6;
+
+ // Image region to which this entity belongs. Not produced
+ // for `LABEL_DETECTION` features.
+ BoundingPoly bounding_poly = 7;
+
+ // The location information for the detected entity. Multiple
+ // `LocationInfo` elements can be present because one location may
+ // indicate the location of the scene in the image, and another location
+ // may indicate the location of the place where the image was taken.
+ // Location information is usually present for landmarks.
+ repeated LocationInfo locations = 8;
+
+ // Some entities may have optional user-supplied `Property` (name/value)
+ // fields, such a score or string that qualifies the entity.
+ repeated Property properties = 9;
+}
+
+// Set of features pertaining to the image, computed by computer vision
+// methods over safe-search verticals (for example, adult, spoof, medical,
+// violence).
+message SafeSearchAnnotation {
+ // Represents the adult content likelihood for the image. Adult content may
+ // contain elements such as nudity, pornographic images or cartoons, or
+ // sexual activities.
+ Likelihood adult = 1;
+
+ // Spoof likelihood. The likelihood that an modification
+ // was made to the image's canonical version to make it appear
+ // funny or offensive.
+ Likelihood spoof = 2;
+
+ // Likelihood that this is a medical image.
+ Likelihood medical = 3;
+
+ // Likelihood that this image contains violent content.
+ Likelihood violence = 4;
+
+ // Likelihood that the request image contains racy content. Racy content may
+ // include (but is not limited to) skimpy or sheer clothing, strategically
+ // covered nudity, lewd or provocative poses, or close-ups of sensitive
+ // body areas.
+ Likelihood racy = 9;
+}
+
+// Rectangle determined by min and max `LatLng` pairs.
+message LatLongRect {
+ // Min lat/long pair.
+ google.type.LatLng min_lat_lng = 1;
+
+ // Max lat/long pair.
+ google.type.LatLng max_lat_lng = 2;
+}
+
+// Color information consists of RGB channels, score, and the fraction of
+// the image that the color occupies in the image.
+message ColorInfo {
+ // RGB components of the color.
+ google.type.Color color = 1;
+
+ // Image-specific score for this color. Value in range [0, 1].
+ float score = 2;
+
+ // The fraction of pixels the color occupies in the image.
+ // Value in range [0, 1].
+ float pixel_fraction = 3;
+}
+
+// Set of dominant colors and their corresponding scores.
+message DominantColorsAnnotation {
+ // RGB color values with their score and pixel fraction.
+ repeated ColorInfo colors = 1;
+}
+
+// Stores image properties, such as dominant colors.
+message ImageProperties {
+ // If present, dominant colors completed successfully.
+ DominantColorsAnnotation dominant_colors = 1;
+}
+
+// Single crop hint that is used to generate a new crop when serving an image.
+message CropHint {
+ // The bounding polygon for the crop region. The coordinates of the bounding
+ // box are in the original image's scale, as returned in `ImageParams`.
+ BoundingPoly bounding_poly = 1;
+
+ // Confidence of this being a salient region. Range [0, 1].
+ float confidence = 2;
+
+ // Fraction of importance of this salient region with respect to the original
+ // image.
+ float importance_fraction = 3;
+}
+
+// Set of crop hints that are used to generate new crops when serving images.
+message CropHintsAnnotation {
+ // Crop hint results.
+ repeated CropHint crop_hints = 1;
+}
+
+// Parameters for crop hints annotation request.
+message CropHintsParams {
+ // Aspect ratios in floats, representing the ratio of the width to the height
+ // of the image. For example, if the desired aspect ratio is 4/3, the
+ // corresponding float value should be 1.33333. If not specified, the
+ // best possible crop is returned. The number of provided aspect ratios is
+ // limited to a maximum of 16; any aspect ratios provided after the 16th are
+ // ignored.
+ repeated float aspect_ratios = 1;
+}
+
+// Parameters for web detection request.
+message WebDetectionParams {
+ // Whether to include results derived from the geo information in the image.
+ bool include_geo_results = 2;
+}
+
+// Parameters for text detections. This is used to control TEXT_DETECTION and
+// DOCUMENT_TEXT_DETECTION features.
+message TextDetectionParams {
+
+ // By default, Cloud Vision API only includes confidence score for
+ // DOCUMENT_TEXT_DETECTION result. Set the flag to true to include confidence
+ // score for TEXT_DETECTION as well.
+ bool enable_text_detection_confidence_score = 9;
+
+ // A list of advanced OCR options to fine-tune OCR behavior.
+ repeated string advanced_ocr_options = 11;
+}
+
+// Image context and/or feature-specific parameters.
+message ImageContext {
+ // Not used.
+ LatLongRect lat_long_rect = 1;
+
+ // List of languages to use for TEXT_DETECTION. In most cases, an empty value
+ // yields the best results since it enables automatic language detection. For
+ // languages based on the Latin alphabet, setting `language_hints` is not
+ // needed. In rare cases, when the language of the text in the image is known,
+ // setting a hint will help get better results (although it will be a
+ // significant hindrance if the hint is wrong). Text detection returns an
+ // error if one or more of the specified languages is not one of the
+ // [supported languages](https://cloud.google.com/vision/docs/languages).
+ repeated string language_hints = 2;
+
+ // Parameters for crop hints annotation request.
+ CropHintsParams crop_hints_params = 4;
+
+ // Parameters for web detection.
+ WebDetectionParams web_detection_params = 6;
+
+ // Parameters for text detection and document text detection.
+ TextDetectionParams text_detection_params = 12;
+}
+
+// Request for performing Google Cloud Vision API tasks over a user-provided
+// image, with user-requested features.
+message AnnotateImageRequest {
+ // The image to be processed.
+ Image image = 1;
+
+ // Requested features.
+ repeated Feature features = 2;
+
+ // Additional context that may accompany the image.
+ ImageContext image_context = 3;
+}
+
+// If an image was produced from a file (e.g. a PDF), this message gives
+// information about the source of that image.
+message ImageAnnotationContext {
+ // The URI of the file used to produce the image.
+ string uri = 1;
+
+ // If the file was a PDF or TIFF, this field gives the page number within
+ // the file used to produce the image.
+ int32 page_number = 2;
+}
+
+// Response to an image annotation request.
+message AnnotateImageResponse {
+ // If present, face detection has completed successfully.
+ repeated FaceAnnotation face_annotations = 1;
+
+ // If present, landmark detection has completed successfully.
+ repeated EntityAnnotation landmark_annotations = 2;
+
+ // If present, logo detection has completed successfully.
+ repeated EntityAnnotation logo_annotations = 3;
+
+ // If present, label detection has completed successfully.
+ repeated EntityAnnotation label_annotations = 4;
+
+ // If present, text (OCR) detection has completed successfully.
+ repeated EntityAnnotation text_annotations = 5;
+
+ // If present, text (OCR) detection or document (OCR) text detection has
+ // completed successfully.
+ // This annotation provides the structural hierarchy for the OCR detected
+ // text.
+ TextAnnotation full_text_annotation = 12;
+
+ // If present, safe-search annotation has completed successfully.
+ SafeSearchAnnotation safe_search_annotation = 6;
+
+ // If present, image properties were extracted successfully.
+ ImageProperties image_properties_annotation = 8;
+
+ // If present, crop hints have completed successfully.
+ CropHintsAnnotation crop_hints_annotation = 11;
+
+ // If present, web detection has completed successfully.
+ WebDetection web_detection = 13;
+
+ // If set, represents the error message for the operation.
+ // Note that filled-in image annotations are guaranteed to be
+ // correct, even when `error` is set.
+ google.rpc.Status error = 9;
+
+ // If present, contextual information is needed to understand where this image
+ // comes from.
+ ImageAnnotationContext context = 21;
+}
+
+// Response to a single file annotation request. A file may contain one or more
+// images, which individually have their own responses.
+message AnnotateFileResponse {
+ // Information about the file for which this response is generated.
+ InputConfig input_config = 1;
+
+ // Individual responses to images found within the file.
+ repeated AnnotateImageResponse responses = 2;
+}
+
+// Multiple image annotation requests are batched into a single service call.
+message BatchAnnotateImagesRequest {
+ // Required. Individual image annotation requests for this batch.
+ repeated AnnotateImageRequest requests = 1 [(google.api.field_behavior) = REQUIRED];
+}
+
+// Response to a batch image annotation request.
+message BatchAnnotateImagesResponse {
+ // Individual responses to image annotation requests within the batch.
+ repeated AnnotateImageResponse responses = 1;
+}
+
+// An offline file annotation request.
+message AsyncAnnotateFileRequest {
+ // Required. Information about the input file.
+ InputConfig input_config = 1;
+
+ // Required. Requested features.
+ repeated Feature features = 2;
+
+ // Additional context that may accompany the image(s) in the file.
+ ImageContext image_context = 3;
+
+ // Required. The desired output location and metadata (e.g. format).
+ OutputConfig output_config = 4;
+}
+
+// The response for a single offline file annotation request.
+message AsyncAnnotateFileResponse {
+ // The output location and metadata from AsyncAnnotateFileRequest.
+ OutputConfig output_config = 1;
+}
+
+// Multiple async file annotation requests are batched into a single service
+// call.
+message AsyncBatchAnnotateFilesRequest {
+ // Required. Individual async file annotation requests for this batch.
+ repeated AsyncAnnotateFileRequest requests = 1 [(google.api.field_behavior) = REQUIRED];
+}
+
+// Response to an async batch file annotation request.
+message AsyncBatchAnnotateFilesResponse {
+ // The list of file annotation responses, one for each request in
+ // AsyncBatchAnnotateFilesRequest.
+ repeated AsyncAnnotateFileResponse responses = 1;
+}
+
+// The desired input location and metadata.
+message InputConfig {
+ // The Google Cloud Storage location to read the input from.
+ GcsSource gcs_source = 1;
+
+ // The type of the file. Currently only "application/pdf" and "image/tiff"
+ // are supported. Wildcards are not supported.
+ string mime_type = 2;
+}
+
+// The desired output location and metadata.
+message OutputConfig {
+ // The Google Cloud Storage location to write the output(s) to.
+ GcsDestination gcs_destination = 1;
+
+ // The max number of response protos to put into each output JSON file on GCS.
+ // The valid range is [1, 100]. If not specified, the default value is 20.
+ //
+ // For example, for one pdf file with 100 pages, 100 response protos will
+ // be generated. If `batch_size` = 20, then 5 json files each
+ // containing 20 response protos will be written under the prefix
+ // `gcs_destination`.`uri`.
+ //
+ // Currently, batch_size only applies to GcsDestination, with potential future
+ // support for other output configurations.
+ int32 batch_size = 2;
+}
+
+// The Google Cloud Storage location where the input will be read from.
+message GcsSource {
+ // Google Cloud Storage URI for the input file. This must only be a GCS
+ // object. Wildcards are not currently supported.
+ string uri = 1;
+}
+
+// The Google Cloud Storage location where the output will be written to.
+message GcsDestination {
+ // Google Cloud Storage URI where the results will be stored. Results will
+ // be in JSON format and preceded by its corresponding input URI. This field
+ // can either represent a single file, or a prefix for multiple outputs.
+ // Prefixes must end in a `/`.
+ //
+ // Examples:
+ //
+ // * File: gs://bucket-name/filename.json
+ // * Prefix: gs://bucket-name/prefix/here/
+ // * File: gs://bucket-name/prefix/here
+ //
+ // If multiple outputs, each response is still AnnotateFileResponse, each of
+ // which contains some subset of the full list of AnnotateImageResponse.
+ // Multiple outputs can happen if, for example, the output JSON is too large
+ // and overflows into multiple sharded files.
+ string uri = 1;
+}
+
+// Contains metadata for the BatchAnnotateImages operation.
+message OperationMetadata {
+ // Batch operation states.
+ enum State {
+ // Invalid.
+ STATE_UNSPECIFIED = 0;
+
+ // Request is received.
+ CREATED = 1;
+
+ // Request is actively being processed.
+ RUNNING = 2;
+
+ // The batch processing is done.
+ DONE = 3;
+
+ // The batch processing was cancelled.
+ CANCELLED = 4;
+ }
+
+ // Current state of the batch operation.
+ State state = 1;
+
+ // The time when the batch request was received.
+ google.protobuf.Timestamp create_time = 5;
+
+ // The time when the operation result was last updated.
+ google.protobuf.Timestamp update_time = 6;
+}
+
+// A bucketized representation of likelihood, which is intended to give clients
+// highly stable results across model upgrades.
+enum Likelihood {
+ // Unknown likelihood.
+ UNKNOWN = 0;
+
+ // It is very unlikely that the image belongs to the specified vertical.
+ VERY_UNLIKELY = 1;
+
+ // It is unlikely that the image belongs to the specified vertical.
+ UNLIKELY = 2;
+
+ // It is possible that the image belongs to the specified vertical.
+ POSSIBLE = 3;
+
+ // It is likely that the image belongs to the specified vertical.
+ LIKELY = 4;
+
+ // It is very likely that the image belongs to the specified vertical.
+ VERY_LIKELY = 5;
+}
diff --git a/packages/google-cloud-vision/protos/google/cloud/vision/v1p2beta1/text_annotation.proto b/packages/google-cloud-vision/protos/google/cloud/vision/v1p2beta1/text_annotation.proto
new file mode 100644
index 00000000000..af568194aa8
--- /dev/null
+++ b/packages/google-cloud-vision/protos/google/cloud/vision/v1p2beta1/text_annotation.proto
@@ -0,0 +1,258 @@
+// Copyright 2018 Google Inc.
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+syntax = "proto3";
+
+package google.cloud.vision.v1p2beta1;
+
+import "google/cloud/vision/v1p2beta1/geometry.proto";
+
+option cc_enable_arenas = true;
+option go_package = "google.golang.org/genproto/googleapis/cloud/vision/v1p2beta1;vision";
+option java_multiple_files = true;
+option java_outer_classname = "TextAnnotationProto";
+option java_package = "com.google.cloud.vision.v1p2beta1";
+
+// TextAnnotation contains a structured representation of OCR extracted text.
+// The hierarchy of an OCR extracted text structure is like this:
+// TextAnnotation -> Page -> Block -> Paragraph -> Word -> Symbol
+// Each structural component, starting from Page, may further have their own
+// properties. Properties describe detected languages, breaks etc.. Please refer
+// to the
+// [TextAnnotation.TextProperty][google.cloud.vision.v1p2beta1.TextAnnotation.TextProperty]
+// message definition below for more detail.
+message TextAnnotation {
+ // Detected language for a structural component.
+ message DetectedLanguage {
+ // The BCP-47 language code, such as "en-US" or "sr-Latn". For more
+ // information, see
+ // http://www.unicode.org/reports/tr35/#Unicode_locale_identifier.
+ string language_code = 1;
+
+ // Confidence of detected language. Range [0, 1].
+ float confidence = 2;
+ }
+
+ // Detected start or end of a structural component.
+ message DetectedBreak {
+ // Enum to denote the type of break found. New line, space etc.
+ enum BreakType {
+ // Unknown break label type.
+ UNKNOWN = 0;
+
+ // Regular space.
+ SPACE = 1;
+
+ // Sure space (very wide).
+ SURE_SPACE = 2;
+
+ // Line-wrapping break.
+ EOL_SURE_SPACE = 3;
+
+ // End-line hyphen that is not present in text; does not co-occur with
+ // `SPACE`, `LEADER_SPACE`, or `LINE_BREAK`.
+ HYPHEN = 4;
+
+ // Line break that ends a paragraph.
+ LINE_BREAK = 5;
+ }
+
+ // Detected break type.
+ BreakType type = 1;
+
+ // True if break prepends the element.
+ bool is_prefix = 2;
+ }
+
+ // Additional information detected on the structural component.
+ message TextProperty {
+ // A list of detected languages together with confidence.
+ repeated DetectedLanguage detected_languages = 1;
+
+ // Detected start or end of a text segment.
+ DetectedBreak detected_break = 2;
+ }
+
+ // List of pages detected by OCR.
+ repeated Page pages = 1;
+
+ // UTF-8 text detected on the pages.
+ string text = 2;
+}
+
+// Detected page from OCR.
+message Page {
+ // Additional information detected on the page.
+ TextAnnotation.TextProperty property = 1;
+
+ // Page width. For PDFs the unit is points. For images (including
+ // TIFFs) the unit is pixels.
+ int32 width = 2;
+
+ // Page height. For PDFs the unit is points. For images (including
+ // TIFFs) the unit is pixels.
+ int32 height = 3;
+
+ // List of blocks of text, images etc on this page.
+ repeated Block blocks = 4;
+
+ // Confidence of the OCR results on the page. Range [0, 1].
+ float confidence = 5;
+}
+
+// Logical element on the page.
+message Block {
+ // Type of a block (text, image etc) as identified by OCR.
+ enum BlockType {
+ // Unknown block type.
+ UNKNOWN = 0;
+
+ // Regular text block.
+ TEXT = 1;
+
+ // Table block.
+ TABLE = 2;
+
+ // Image block.
+ PICTURE = 3;
+
+ // Horizontal/vertical line box.
+ RULER = 4;
+
+ // Barcode block.
+ BARCODE = 5;
+ }
+
+ // Additional information detected for the block.
+ TextAnnotation.TextProperty property = 1;
+
+ // The bounding box for the block.
+ // The vertices are in the order of top-left, top-right, bottom-right,
+ // bottom-left. When a rotation of the bounding box is detected the rotation
+ // is represented as around the top-left corner as defined when the text is
+ // read in the 'natural' orientation.
+ // For example:
+ //
+ // * when the text is horizontal it might look like:
+ //
+ // 0----1
+ // | |
+ // 3----2
+ //
+ // * when it's rotated 180 degrees around the top-left corner it becomes:
+ //
+ // 2----3
+ // | |
+ // 1----0
+ //
+ // and the vertice order will still be (0, 1, 2, 3).
+ BoundingPoly bounding_box = 2;
+
+ // List of paragraphs in this block (if this blocks is of type text).
+ repeated Paragraph paragraphs = 3;
+
+ // Detected block type (text, image etc) for this block.
+ BlockType block_type = 4;
+
+ // Confidence of the OCR results on the block. Range [0, 1].
+ float confidence = 5;
+}
+
+// Structural unit of text representing a number of words in certain order.
+message Paragraph {
+ // Additional information detected for the paragraph.
+ TextAnnotation.TextProperty property = 1;
+
+ // The bounding box for the paragraph.
+ // The vertices are in the order of top-left, top-right, bottom-right,
+ // bottom-left. When a rotation of the bounding box is detected the rotation
+ // is represented as around the top-left corner as defined when the text is
+ // read in the 'natural' orientation.
+ // For example:
+ // * when the text is horizontal it might look like:
+ // 0----1
+ // | |
+ // 3----2
+ // * when it's rotated 180 degrees around the top-left corner it becomes:
+ // 2----3
+ // | |
+ // 1----0
+ // and the vertice order will still be (0, 1, 2, 3).
+ BoundingPoly bounding_box = 2;
+
+ // List of words in this paragraph.
+ repeated Word words = 3;
+
+ // Confidence of the OCR results for the paragraph. Range [0, 1].
+ float confidence = 4;
+}
+
+// A word representation.
+message Word {
+ // Additional information detected for the word.
+ TextAnnotation.TextProperty property = 1;
+
+ // The bounding box for the word.
+ // The vertices are in the order of top-left, top-right, bottom-right,
+ // bottom-left. When a rotation of the bounding box is detected the rotation
+ // is represented as around the top-left corner as defined when the text is
+ // read in the 'natural' orientation.
+ // For example:
+ // * when the text is horizontal it might look like:
+ // 0----1
+ // | |
+ // 3----2
+ // * when it's rotated 180 degrees around the top-left corner it becomes:
+ // 2----3
+ // | |
+ // 1----0
+ // and the vertice order will still be (0, 1, 2, 3).
+ BoundingPoly bounding_box = 2;
+
+ // List of symbols in the word.
+ // The order of the symbols follows the natural reading order.
+ repeated Symbol symbols = 3;
+
+ // Confidence of the OCR results for the word. Range [0, 1].
+ float confidence = 4;
+}
+
+// A single symbol representation.
+message Symbol {
+ // Additional information detected for the symbol.
+ TextAnnotation.TextProperty property = 1;
+
+ // The bounding box for the symbol.
+ // The vertices are in the order of top-left, top-right, bottom-right,
+ // bottom-left. When a rotation of the bounding box is detected the rotation
+ // is represented as around the top-left corner as defined when the text is
+ // read in the 'natural' orientation.
+ // For example:
+ // * when the text is horizontal it might look like:
+ // 0----1
+ // | |
+ // 3----2
+ // * when it's rotated 180 degrees around the top-left corner it becomes:
+ // 2----3
+ // | |
+ // 1----0
+ // and the vertice order will still be (0, 1, 2, 3).
+ BoundingPoly bounding_box = 2;
+
+ // The actual UTF-8 representation of the symbol.
+ string text = 3;
+
+ // Confidence of the OCR results for the symbol. Range [0, 1].
+ float confidence = 4;
+}
diff --git a/packages/google-cloud-vision/protos/google/cloud/vision/v1p2beta1/web_detection.proto b/packages/google-cloud-vision/protos/google/cloud/vision/v1p2beta1/web_detection.proto
new file mode 100644
index 00000000000..2decb8596ef
--- /dev/null
+++ b/packages/google-cloud-vision/protos/google/cloud/vision/v1p2beta1/web_detection.proto
@@ -0,0 +1,103 @@
+// Copyright 2018 Google Inc.
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+syntax = "proto3";
+
+package google.cloud.vision.v1p2beta1;
+
+
+option cc_enable_arenas = true;
+option go_package = "google.golang.org/genproto/googleapis/cloud/vision/v1p2beta1;vision";
+option java_multiple_files = true;
+option java_outer_classname = "WebDetectionProto";
+option java_package = "com.google.cloud.vision.v1p2beta1";
+
+// Relevant information for the image from the Internet.
+message WebDetection {
+ // Entity deduced from similar images on the Internet.
+ message WebEntity {
+ // Opaque entity ID.
+ string entity_id = 1;
+
+ // Overall relevancy score for the entity.
+ // Not normalized and not comparable across different image queries.
+ float score = 2;
+
+ // Canonical description of the entity, in English.
+ string description = 3;
+ }
+
+ // Metadata for online images.
+ message WebImage {
+ // The result image URL.
+ string url = 1;
+
+ // (Deprecated) Overall relevancy score for the image.
+ float score = 2;
+ }
+
+ // Metadata for web pages.
+ message WebPage {
+ // The result web page URL.
+ string url = 1;
+
+ // (Deprecated) Overall relevancy score for the web page.
+ float score = 2;
+
+ // Title for the web page, may contain HTML markups.
+ string page_title = 3;
+
+ // Fully matching images on the page.
+ // Can include resized copies of the query image.
+ repeated WebImage full_matching_images = 4;
+
+ // Partial matching images on the page.
+ // Those images are similar enough to share some key-point features. For
+ // example an original image will likely have partial matching for its
+ // crops.
+ repeated WebImage partial_matching_images = 5;
+ }
+
+ // Label to provide extra metadata for the web detection.
+ message WebLabel {
+ // Label for extra metadata.
+ string label = 1;
+
+ // The BCP-47 language code for `label`, such as "en-US" or "sr-Latn".
+ // For more information, see
+ // http://www.unicode.org/reports/tr35/#Unicode_locale_identifier.
+ string language_code = 2;
+ }
+
+ // Deduced entities from similar images on the Internet.
+ repeated WebEntity web_entities = 1;
+
+ // Fully matching images from the Internet.
+ // Can include resized copies of the query image.
+ repeated WebImage full_matching_images = 2;
+
+ // Partial matching images from the Internet.
+ // Those images are similar enough to share some key-point features. For
+ // example an original image will likely have partial matching for its crops.
+ repeated WebImage partial_matching_images = 3;
+
+ // Web pages containing the matching images from the Internet.
+ repeated WebPage pages_with_matching_images = 4;
+
+ // The visually similar image results.
+ repeated WebImage visually_similar_images = 6;
+
+ // Best guess text labels for the request image.
+ repeated WebLabel best_guess_labels = 8;
+}
diff --git a/packages/google-cloud-vision/protos/google/cloud/vision/v1p3beta1/geometry.proto b/packages/google-cloud-vision/protos/google/cloud/vision/v1p3beta1/geometry.proto
new file mode 100644
index 00000000000..c2c524fb559
--- /dev/null
+++ b/packages/google-cloud-vision/protos/google/cloud/vision/v1p3beta1/geometry.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.cloud.vision.v1p3beta1;
+
+option cc_enable_arenas = true;
+option go_package = "google.golang.org/genproto/googleapis/cloud/vision/v1p3beta1;vision";
+option java_multiple_files = true;
+option java_outer_classname = "GeometryProto";
+option java_package = "com.google.cloud.vision.v1p3beta1";
+option objc_class_prefix = "GCVN";
+
+// A vertex represents a 2D point in the image.
+// NOTE: the vertex coordinates are in the same scale as the original image.
+message Vertex {
+ // X coordinate.
+ int32 x = 1;
+
+ // Y coordinate.
+ int32 y = 2;
+}
+
+// A vertex represents a 2D point in the image.
+// NOTE: the normalized vertex coordinates are relative to the original image
+// and range from 0 to 1.
+message NormalizedVertex {
+ // X coordinate.
+ float x = 1;
+
+ // Y coordinate.
+ float y = 2;
+}
+
+// A bounding polygon for the detected image annotation.
+message BoundingPoly {
+ // The bounding polygon vertices.
+ repeated Vertex vertices = 1;
+
+ // The bounding polygon normalized vertices.
+ repeated NormalizedVertex normalized_vertices = 2;
+}
+
+// A 3D position in the image, used primarily for Face detection landmarks.
+// A valid Position must have both x and y coordinates.
+// The position coordinates are in the same scale as the original image.
+message Position {
+ // X coordinate.
+ float x = 1;
+
+ // Y coordinate.
+ float y = 2;
+
+ // Z coordinate (or depth).
+ float z = 3;
+}
diff --git a/packages/google-cloud-vision/protos/google/cloud/vision/v1p3beta1/image_annotator.proto b/packages/google-cloud-vision/protos/google/cloud/vision/v1p3beta1/image_annotator.proto
new file mode 100644
index 00000000000..ebab14a6b11
--- /dev/null
+++ b/packages/google-cloud-vision/protos/google/cloud/vision/v1p3beta1/image_annotator.proto
@@ -0,0 +1,833 @@
+// Copyright 2019 Google LLC.
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+//
+
+syntax = "proto3";
+
+package google.cloud.vision.v1p3beta1;
+
+import "google/api/annotations.proto";
+import "google/api/client.proto";
+import "google/api/field_behavior.proto";
+import "google/cloud/vision/v1p3beta1/geometry.proto";
+import "google/cloud/vision/v1p3beta1/product_search.proto";
+import "google/cloud/vision/v1p3beta1/text_annotation.proto";
+import "google/cloud/vision/v1p3beta1/web_detection.proto";
+import "google/longrunning/operations.proto";
+import "google/protobuf/timestamp.proto";
+import "google/rpc/status.proto";
+import "google/type/color.proto";
+import "google/type/latlng.proto";
+
+option cc_enable_arenas = true;
+option go_package = "google.golang.org/genproto/googleapis/cloud/vision/v1p3beta1;vision";
+option java_multiple_files = true;
+option java_outer_classname = "ImageAnnotatorProto";
+option java_package = "com.google.cloud.vision.v1p3beta1";
+
+// Service that performs Google Cloud Vision API detection tasks over client
+// images, such as face, landmark, logo, label, and text detection. The
+// ImageAnnotator service returns detected entities from the images.
+service ImageAnnotator {
+ option (google.api.default_host) = "vision.googleapis.com";
+ option (google.api.oauth_scopes) =
+ "https://www.googleapis.com/auth/cloud-platform,"
+ "https://www.googleapis.com/auth/cloud-vision";
+
+ // Run image detection and annotation for a batch of images.
+ rpc BatchAnnotateImages(BatchAnnotateImagesRequest) returns (BatchAnnotateImagesResponse) {
+ option (google.api.http) = {
+ post: "/v1p3beta1/images:annotate"
+ body: "*"
+ };
+ option (google.api.method_signature) = "requests";
+ }
+
+ // Run asynchronous image detection and annotation for a list of generic
+ // files, such as PDF files, which may contain multiple pages and multiple
+ // images per page. Progress and results can be retrieved through the
+ // `google.longrunning.Operations` interface.
+ // `Operation.metadata` contains `OperationMetadata` (metadata).
+ // `Operation.response` contains `AsyncBatchAnnotateFilesResponse` (results).
+ rpc AsyncBatchAnnotateFiles(AsyncBatchAnnotateFilesRequest)
+ returns (google.longrunning.Operation) {
+ option (google.api.http) = {
+ post: "/v1p3beta1/files:asyncBatchAnnotate"
+ body: "*"
+ };
+ option (google.api.method_signature) = "requests";
+ option (google.longrunning.operation_info) = {
+ response_type: "AsyncBatchAnnotateFilesResponse"
+ metadata_type: "OperationMetadata"
+ };
+ }
+}
+
+// The type of Google Cloud Vision API detection to perform, and the maximum
+// number of results to return for that type. Multiple `Feature` objects can
+// be specified in the `features` list.
+message Feature {
+ // Type of Google Cloud Vision API feature to be extracted.
+ enum Type {
+ // Unspecified feature type.
+ TYPE_UNSPECIFIED = 0;
+
+ // Run face detection.
+ FACE_DETECTION = 1;
+
+ // Run landmark detection.
+ LANDMARK_DETECTION = 2;
+
+ // Run logo detection.
+ LOGO_DETECTION = 3;
+
+ // Run label detection.
+ LABEL_DETECTION = 4;
+
+ // Run text detection / optical character recognition (OCR). Text detection
+ // is optimized for areas of text within a larger image; if the image is
+ // a document, use `DOCUMENT_TEXT_DETECTION` instead.
+ TEXT_DETECTION = 5;
+
+ // Run dense text document OCR. Takes precedence when both
+ // `DOCUMENT_TEXT_DETECTION` and `TEXT_DETECTION` are present.
+ DOCUMENT_TEXT_DETECTION = 11;
+
+ // Run Safe Search to detect potentially unsafe
+ // or undesirable content.
+ SAFE_SEARCH_DETECTION = 6;
+
+ // Compute a set of image properties, such as the
+ // image's dominant colors.
+ IMAGE_PROPERTIES = 7;
+
+ // Run crop hints.
+ CROP_HINTS = 9;
+
+ // Run web detection.
+ WEB_DETECTION = 10;
+
+ // Run Product Search.
+ PRODUCT_SEARCH = 12;
+
+ // Run localizer for object detection.
+ OBJECT_LOCALIZATION = 19;
+ }
+
+ // The feature type.
+ Type type = 1;
+
+ // Maximum number of results of this type. Does not apply to
+ // `TEXT_DETECTION`, `DOCUMENT_TEXT_DETECTION`, or `CROP_HINTS`.
+ int32 max_results = 2;
+
+ // Model to use for the feature.
+ // Supported values: "builtin/stable" (the default if unset) and
+ // "builtin/latest". `DOCUMENT_TEXT_DETECTION` and `TEXT_DETECTION` also
+ // support "builtin/weekly" for the bleeding edge release updated weekly.
+ string model = 3;
+}
+
+// External image source (Google Cloud Storage or web URL image location).
+message ImageSource {
+ // **Use `image_uri` instead.**
+ //
+ // The Google Cloud Storage URI of the form
+ // `gs://bucket_name/object_name`. Object versioning is not supported. See
+ // [Google Cloud Storage Request
+ // URIs](https://cloud.google.com/storage/docs/reference-uris) for more info.
+ string gcs_image_uri = 1;
+
+ // The URI of the source image. Can be either:
+ //
+ // 1. A Google Cloud Storage URI of the form
+ // `gs://bucket_name/object_name`. Object versioning is not supported. See
+ // [Google Cloud Storage Request
+ // URIs](https://cloud.google.com/storage/docs/reference-uris) for more
+ // info.
+ //
+ // 2. A publicly-accessible image HTTP/HTTPS URL. When fetching images from
+ // HTTP/HTTPS URLs, Google cannot guarantee that the request will be
+ // completed. Your request may fail if the specified host denies the
+ // request (e.g. due to request throttling or DOS prevention), or if Google
+ // throttles requests to the site for abuse prevention. You should not
+ // depend on externally-hosted images for production applications.
+ //
+ // When both `gcs_image_uri` and `image_uri` are specified, `image_uri` takes
+ // precedence.
+ string image_uri = 2;
+}
+
+// Client image to perform Google Cloud Vision API tasks over.
+message Image {
+ // Image content, represented as a stream of bytes.
+ // Note: As with all `bytes` fields, protobuffers use a pure binary
+ // representation, whereas JSON representations use base64.
+ bytes content = 1;
+
+ // Google Cloud Storage image location, or publicly-accessible image
+ // URL. If both `content` and `source` are provided for an image, `content`
+ // takes precedence and is used to perform the image annotation request.
+ ImageSource source = 2;
+}
+
+// A face annotation object contains the results of face detection.
+message FaceAnnotation {
+ // A face-specific landmark (for example, a face feature).
+ message Landmark {
+ // Face landmark (feature) type.
+ // Left and right are defined from the vantage of the viewer of the image
+ // without considering mirror projections typical of photos. So, `LEFT_EYE`,
+ // typically, is the person's right eye.
+ enum Type {
+ // Unknown face landmark detected. Should not be filled.
+ UNKNOWN_LANDMARK = 0;
+
+ // Left eye.
+ LEFT_EYE = 1;
+
+ // Right eye.
+ RIGHT_EYE = 2;
+
+ // Left of left eyebrow.
+ LEFT_OF_LEFT_EYEBROW = 3;
+
+ // Right of left eyebrow.
+ RIGHT_OF_LEFT_EYEBROW = 4;
+
+ // Left of right eyebrow.
+ LEFT_OF_RIGHT_EYEBROW = 5;
+
+ // Right of right eyebrow.
+ RIGHT_OF_RIGHT_EYEBROW = 6;
+
+ // Midpoint between eyes.
+ MIDPOINT_BETWEEN_EYES = 7;
+
+ // Nose tip.
+ NOSE_TIP = 8;
+
+ // Upper lip.
+ UPPER_LIP = 9;
+
+ // Lower lip.
+ LOWER_LIP = 10;
+
+ // Mouth left.
+ MOUTH_LEFT = 11;
+
+ // Mouth right.
+ MOUTH_RIGHT = 12;
+
+ // Mouth center.
+ MOUTH_CENTER = 13;
+
+ // Nose, bottom right.
+ NOSE_BOTTOM_RIGHT = 14;
+
+ // Nose, bottom left.
+ NOSE_BOTTOM_LEFT = 15;
+
+ // Nose, bottom center.
+ NOSE_BOTTOM_CENTER = 16;
+
+ // Left eye, top boundary.
+ LEFT_EYE_TOP_BOUNDARY = 17;
+
+ // Left eye, right corner.
+ LEFT_EYE_RIGHT_CORNER = 18;
+
+ // Left eye, bottom boundary.
+ LEFT_EYE_BOTTOM_BOUNDARY = 19;
+
+ // Left eye, left corner.
+ LEFT_EYE_LEFT_CORNER = 20;
+
+ // Right eye, top boundary.
+ RIGHT_EYE_TOP_BOUNDARY = 21;
+
+ // Right eye, right corner.
+ RIGHT_EYE_RIGHT_CORNER = 22;
+
+ // Right eye, bottom boundary.
+ RIGHT_EYE_BOTTOM_BOUNDARY = 23;
+
+ // Right eye, left corner.
+ RIGHT_EYE_LEFT_CORNER = 24;
+
+ // Left eyebrow, upper midpoint.
+ LEFT_EYEBROW_UPPER_MIDPOINT = 25;
+
+ // Right eyebrow, upper midpoint.
+ RIGHT_EYEBROW_UPPER_MIDPOINT = 26;
+
+ // Left ear tragion.
+ LEFT_EAR_TRAGION = 27;
+
+ // Right ear tragion.
+ RIGHT_EAR_TRAGION = 28;
+
+ // Left eye pupil.
+ LEFT_EYE_PUPIL = 29;
+
+ // Right eye pupil.
+ RIGHT_EYE_PUPIL = 30;
+
+ // Forehead glabella.
+ FOREHEAD_GLABELLA = 31;
+
+ // Chin gnathion.
+ CHIN_GNATHION = 32;
+
+ // Chin left gonion.
+ CHIN_LEFT_GONION = 33;
+
+ // Chin right gonion.
+ CHIN_RIGHT_GONION = 34;
+ }
+
+ // Face landmark type.
+ Type type = 3;
+
+ // Face landmark position.
+ Position position = 4;
+ }
+
+ // The bounding polygon around the face. The coordinates of the bounding box
+ // are in the original image's scale, as returned in `ImageParams`.
+ // The bounding box is computed to "frame" the face in accordance with human
+ // expectations. It is based on the landmarker results.
+ // Note that one or more x and/or y coordinates may not be generated in the
+ // `BoundingPoly` (the polygon will be unbounded) if only a partial face
+ // appears in the image to be annotated.
+ BoundingPoly bounding_poly = 1;
+
+ // The `fd_bounding_poly` bounding polygon is tighter than the
+ // `boundingPoly`, and encloses only the skin part of the face. Typically, it
+ // is used to eliminate the face from any image analysis that detects the
+ // "amount of skin" visible in an image. It is not based on the
+ // landmarker results, only on the initial face detection, hence
+ // the fd (face detection) prefix.
+ BoundingPoly fd_bounding_poly = 2;
+
+ // Detected face landmarks.
+ repeated Landmark landmarks = 3;
+
+ // Roll angle, which indicates the amount of clockwise/anti-clockwise rotation
+ // of the face relative to the image vertical about the axis perpendicular to
+ // the face. Range [-180,180].
+ float roll_angle = 4;
+
+ // Yaw angle, which indicates the leftward/rightward angle that the face is
+ // pointing relative to the vertical plane perpendicular to the image. Range
+ // [-180,180].
+ float pan_angle = 5;
+
+ // Pitch angle, which indicates the upwards/downwards angle that the face is
+ // pointing relative to the image's horizontal plane. Range [-180,180].
+ float tilt_angle = 6;
+
+ // Detection confidence. Range [0, 1].
+ float detection_confidence = 7;
+
+ // Face landmarking confidence. Range [0, 1].
+ float landmarking_confidence = 8;
+
+ // Joy likelihood.
+ Likelihood joy_likelihood = 9;
+
+ // Sorrow likelihood.
+ Likelihood sorrow_likelihood = 10;
+
+ // Anger likelihood.
+ Likelihood anger_likelihood = 11;
+
+ // Surprise likelihood.
+ Likelihood surprise_likelihood = 12;
+
+ // Under-exposed likelihood.
+ Likelihood under_exposed_likelihood = 13;
+
+ // Blurred likelihood.
+ Likelihood blurred_likelihood = 14;
+
+ // Headwear likelihood.
+ Likelihood headwear_likelihood = 15;
+}
+
+// Detected entity location information.
+message LocationInfo {
+ // lat/long location coordinates.
+ google.type.LatLng lat_lng = 1;
+}
+
+// A `Property` consists of a user-supplied name/value pair.
+message Property {
+ // Name of the property.
+ string name = 1;
+
+ // Value of the property.
+ string value = 2;
+
+ // Value of numeric properties.
+ uint64 uint64_value = 3;
+}
+
+// Set of detected entity features.
+message EntityAnnotation {
+ // Opaque entity ID. Some IDs may be available in
+ // [Google Knowledge Graph Search
+ // API](https://developers.google.com/knowledge-graph/).
+ string mid = 1;
+
+ // The language code for the locale in which the entity textual
+ // `description` is expressed.
+ string locale = 2;
+
+ // Entity textual description, expressed in its `locale` language.
+ string description = 3;
+
+ // Overall score of the result. Range [0, 1].
+ float score = 4;
+
+ // **Deprecated. Use `score` instead.**
+ // The accuracy of the entity detection in an image.
+ // For example, for an image in which the "Eiffel Tower" entity is detected,
+ // this field represents the confidence that there is a tower in the query
+ // image. Range [0, 1].
+ float confidence = 5;
+
+ // The relevancy of the ICA (Image Content Annotation) label to the
+ // image. For example, the relevancy of "tower" is likely higher to an image
+ // containing the detected "Eiffel Tower" than to an image containing a
+ // detected distant towering building, even though the confidence that
+ // there is a tower in each image may be the same. Range [0, 1].
+ float topicality = 6;
+
+ // Image region to which this entity belongs. Not produced
+ // for `LABEL_DETECTION` features.
+ BoundingPoly bounding_poly = 7;
+
+ // The location information for the detected entity. Multiple
+ // `LocationInfo` elements can be present because one location may
+ // indicate the location of the scene in the image, and another location
+ // may indicate the location of the place where the image was taken.
+ // Location information is usually present for landmarks.
+ repeated LocationInfo locations = 8;
+
+ // Some entities may have optional user-supplied `Property` (name/value)
+ // fields, such a score or string that qualifies the entity.
+ repeated Property properties = 9;
+}
+
+// Set of detected objects with bounding boxes.
+message LocalizedObjectAnnotation {
+ // Object ID that should align with EntityAnnotation mid.
+ string mid = 1;
+
+ // The BCP-47 language code, such as "en-US" or "sr-Latn". For more
+ // information, see
+ // http://www.unicode.org/reports/tr35/#Unicode_locale_identifier.
+ string language_code = 2;
+
+ // Object name, expressed in its `language_code` language.
+ string name = 3;
+
+ // Score of the result. Range [0, 1].
+ float score = 4;
+
+ // Image region to which this object belongs. This must be populated.
+ BoundingPoly bounding_poly = 5;
+}
+
+// Set of features pertaining to the image, computed by computer vision
+// methods over safe-search verticals (for example, adult, spoof, medical,
+// violence).
+message SafeSearchAnnotation {
+ // Represents the adult content likelihood for the image. Adult content may
+ // contain elements such as nudity, pornographic images or cartoons, or
+ // sexual activities.
+ Likelihood adult = 1;
+
+ // Spoof likelihood. The likelihood that an modification
+ // was made to the image's canonical version to make it appear
+ // funny or offensive.
+ Likelihood spoof = 2;
+
+ // Likelihood that this is a medical image.
+ Likelihood medical = 3;
+
+ // Likelihood that this image contains violent content.
+ Likelihood violence = 4;
+
+ // Likelihood that the request image contains racy content. Racy content may
+ // include (but is not limited to) skimpy or sheer clothing, strategically
+ // covered nudity, lewd or provocative poses, or close-ups of sensitive
+ // body areas.
+ Likelihood racy = 9;
+}
+
+// Rectangle determined by min and max `LatLng` pairs.
+message LatLongRect {
+ // Min lat/long pair.
+ google.type.LatLng min_lat_lng = 1;
+
+ // Max lat/long pair.
+ google.type.LatLng max_lat_lng = 2;
+}
+
+// Color information consists of RGB channels, score, and the fraction of
+// the image that the color occupies in the image.
+message ColorInfo {
+ // RGB components of the color.
+ google.type.Color color = 1;
+
+ // Image-specific score for this color. Value in range [0, 1].
+ float score = 2;
+
+ // The fraction of pixels the color occupies in the image.
+ // Value in range [0, 1].
+ float pixel_fraction = 3;
+}
+
+// Set of dominant colors and their corresponding scores.
+message DominantColorsAnnotation {
+ // RGB color values with their score and pixel fraction.
+ repeated ColorInfo colors = 1;
+}
+
+// Stores image properties, such as dominant colors.
+message ImageProperties {
+ // If present, dominant colors completed successfully.
+ DominantColorsAnnotation dominant_colors = 1;
+}
+
+// Single crop hint that is used to generate a new crop when serving an image.
+message CropHint {
+ // The bounding polygon for the crop region. The coordinates of the bounding
+ // box are in the original image's scale, as returned in `ImageParams`.
+ BoundingPoly bounding_poly = 1;
+
+ // Confidence of this being a salient region. Range [0, 1].
+ float confidence = 2;
+
+ // Fraction of importance of this salient region with respect to the original
+ // image.
+ float importance_fraction = 3;
+}
+
+// Set of crop hints that are used to generate new crops when serving images.
+message CropHintsAnnotation {
+ // Crop hint results.
+ repeated CropHint crop_hints = 1;
+}
+
+// Parameters for crop hints annotation request.
+message CropHintsParams {
+ // Aspect ratios in floats, representing the ratio of the width to the height
+ // of the image. For example, if the desired aspect ratio is 4/3, the
+ // corresponding float value should be 1.33333. If not specified, the
+ // best possible crop is returned. The number of provided aspect ratios is
+ // limited to a maximum of 16; any aspect ratios provided after the 16th are
+ // ignored.
+ repeated float aspect_ratios = 1;
+}
+
+// Parameters for web detection request.
+message WebDetectionParams {
+ // Whether to include results derived from the geo information in the image.
+ bool include_geo_results = 2;
+}
+
+// Parameters for text detections. This is used to control TEXT_DETECTION and
+// DOCUMENT_TEXT_DETECTION features.
+message TextDetectionParams {
+
+ // By default, Cloud Vision API only includes confidence score for
+ // DOCUMENT_TEXT_DETECTION result. Set the flag to true to include confidence
+ // score for TEXT_DETECTION as well.
+ bool enable_text_detection_confidence_score = 9;
+
+ // A list of advanced OCR options to fine-tune OCR behavior.
+ repeated string advanced_ocr_options = 11;
+}
+
+// Image context and/or feature-specific parameters.
+message ImageContext {
+ // Not used.
+ LatLongRect lat_long_rect = 1;
+
+ // List of languages to use for TEXT_DETECTION. In most cases, an empty value
+ // yields the best results since it enables automatic language detection. For
+ // languages based on the Latin alphabet, setting `language_hints` is not
+ // needed. In rare cases, when the language of the text in the image is known,
+ // setting a hint will help get better results (although it will be a
+ // significant hindrance if the hint is wrong). Text detection returns an
+ // error if one or more of the specified languages is not one of the
+ // [supported languages](https://cloud.google.com/vision/docs/languages).
+ repeated string language_hints = 2;
+
+ // Parameters for crop hints annotation request.
+ CropHintsParams crop_hints_params = 4;
+
+ // Parameters for product search.
+ google.cloud.vision.v1p3beta1.ProductSearchParams product_search_params = 5;
+
+ // Parameters for web detection.
+ WebDetectionParams web_detection_params = 6;
+
+ // Parameters for text detection and document text detection.
+ TextDetectionParams text_detection_params = 12;
+}
+
+// Request for performing Google Cloud Vision API tasks over a user-provided
+// image, with user-requested features.
+message AnnotateImageRequest {
+ // The image to be processed.
+ Image image = 1;
+
+ // Requested features.
+ repeated Feature features = 2;
+
+ // Additional context that may accompany the image.
+ ImageContext image_context = 3;
+}
+
+// If an image was produced from a file (e.g. a PDF), this message gives
+// information about the source of that image.
+message ImageAnnotationContext {
+ // The URI of the file used to produce the image.
+ string uri = 1;
+
+ // If the file was a PDF or TIFF, this field gives the page number within
+ // the file used to produce the image.
+ int32 page_number = 2;
+}
+
+// Response to an image annotation request.
+message AnnotateImageResponse {
+ // If present, face detection has completed successfully.
+ repeated FaceAnnotation face_annotations = 1;
+
+ // If present, landmark detection has completed successfully.
+ repeated EntityAnnotation landmark_annotations = 2;
+
+ // If present, logo detection has completed successfully.
+ repeated EntityAnnotation logo_annotations = 3;
+
+ // If present, label detection has completed successfully.
+ repeated EntityAnnotation label_annotations = 4;
+
+ // If present, localized object detection has completed successfully.
+ // This will be sorted descending by confidence score.
+ repeated LocalizedObjectAnnotation localized_object_annotations = 22;
+
+ // If present, text (OCR) detection has completed successfully.
+ repeated EntityAnnotation text_annotations = 5;
+
+ // If present, text (OCR) detection or document (OCR) text detection has
+ // completed successfully.
+ // This annotation provides the structural hierarchy for the OCR detected
+ // text.
+ TextAnnotation full_text_annotation = 12;
+
+ // If present, safe-search annotation has completed successfully.
+ SafeSearchAnnotation safe_search_annotation = 6;
+
+ // If present, image properties were extracted successfully.
+ ImageProperties image_properties_annotation = 8;
+
+ // If present, crop hints have completed successfully.
+ CropHintsAnnotation crop_hints_annotation = 11;
+
+ // If present, web detection has completed successfully.
+ WebDetection web_detection = 13;
+
+ // If present, product search has completed successfully.
+ google.cloud.vision.v1p3beta1.ProductSearchResults product_search_results =
+ 14;
+
+ // If set, represents the error message for the operation.
+ // Note that filled-in image annotations are guaranteed to be
+ // correct, even when `error` is set.
+ google.rpc.Status error = 9;
+
+ // If present, contextual information is needed to understand where this image
+ // comes from.
+ ImageAnnotationContext context = 21;
+}
+
+// Response to a single file annotation request. A file may contain one or more
+// images, which individually have their own responses.
+message AnnotateFileResponse {
+ // Information about the file for which this response is generated.
+ InputConfig input_config = 1;
+
+ // Individual responses to images found within the file.
+ repeated AnnotateImageResponse responses = 2;
+}
+
+// Multiple image annotation requests are batched into a single service call.
+message BatchAnnotateImagesRequest {
+ // Individual image annotation requests for this batch.
+ repeated AnnotateImageRequest requests = 1 [(google.api.field_behavior) = REQUIRED];
+}
+
+// Response to a batch image annotation request.
+message BatchAnnotateImagesResponse {
+ // Individual responses to image annotation requests within the batch.
+ repeated AnnotateImageResponse responses = 1;
+}
+
+// An offline file annotation request.
+message AsyncAnnotateFileRequest {
+ // Required. Information about the input file.
+ InputConfig input_config = 1;
+
+ // Required. Requested features.
+ repeated Feature features = 2;
+
+ // Additional context that may accompany the image(s) in the file.
+ ImageContext image_context = 3;
+
+ // Required. The desired output location and metadata (e.g. format).
+ OutputConfig output_config = 4;
+}
+
+// The response for a single offline file annotation request.
+message AsyncAnnotateFileResponse {
+ // The output location and metadata from AsyncAnnotateFileRequest.
+ OutputConfig output_config = 1;
+}
+
+// Multiple async file annotation requests are batched into a single service
+// call.
+message AsyncBatchAnnotateFilesRequest {
+ // Required. Individual async file annotation requests for this batch.
+ repeated AsyncAnnotateFileRequest requests = 1 [(google.api.field_behavior) = REQUIRED];
+}
+
+// Response to an async batch file annotation request.
+message AsyncBatchAnnotateFilesResponse {
+ // The list of file annotation responses, one for each request in
+ // AsyncBatchAnnotateFilesRequest.
+ repeated AsyncAnnotateFileResponse responses = 1;
+}
+
+// The desired input location and metadata.
+message InputConfig {
+ // The Google Cloud Storage location to read the input from.
+ GcsSource gcs_source = 1;
+
+ // The type of the file. Currently only "application/pdf" and "image/tiff"
+ // are supported. Wildcards are not supported.
+ string mime_type = 2;
+}
+
+// The desired output location and metadata.
+message OutputConfig {
+ // The Google Cloud Storage location to write the output(s) to.
+ GcsDestination gcs_destination = 1;
+
+ // The max number of response protos to put into each output JSON file on
+ // Google Cloud Storage.
+ // The valid range is [1, 100]. If not specified, the default value is 20.
+ //
+ // For example, for one pdf file with 100 pages, 100 response protos will
+ // be generated. If `batch_size` = 20, then 5 json files each
+ // containing 20 response protos will be written under the prefix
+ // `gcs_destination`.`uri`.
+ //
+ // Currently, batch_size only applies to GcsDestination, with potential future
+ // support for other output configurations.
+ int32 batch_size = 2;
+}
+
+// The Google Cloud Storage location where the input will be read from.
+message GcsSource {
+ // Google Cloud Storage URI for the input file. This must only be a
+ // Google Cloud Storage object. Wildcards are not currently supported.
+ string uri = 1;
+}
+
+// The Google Cloud Storage location where the output will be written to.
+message GcsDestination {
+ // Google Cloud Storage URI where the results will be stored. Results will
+ // be in JSON format and preceded by its corresponding input URI. This field
+ // can either represent a single file, or a prefix for multiple outputs.
+ // Prefixes must end in a `/`.
+ //
+ // Examples:
+ //
+ // * File: gs://bucket-name/filename.json
+ // * Prefix: gs://bucket-name/prefix/here/
+ // * File: gs://bucket-name/prefix/here
+ //
+ // If multiple outputs, each response is still AnnotateFileResponse, each of
+ // which contains some subset of the full list of AnnotateImageResponse.
+ // Multiple outputs can happen if, for example, the output JSON is too large
+ // and overflows into multiple sharded files.
+ string uri = 1;
+}
+
+// A bucketized representation of likelihood, which is intended to give clients
+// highly stable results across model upgrades.
+enum Likelihood {
+ // Unknown likelihood.
+ UNKNOWN = 0;
+
+ // It is very unlikely that the image belongs to the specified vertical.
+ VERY_UNLIKELY = 1;
+
+ // It is unlikely that the image belongs to the specified vertical.
+ UNLIKELY = 2;
+
+ // It is possible that the image belongs to the specified vertical.
+ POSSIBLE = 3;
+
+ // It is likely that the image belongs to the specified vertical.
+ LIKELY = 4;
+
+ // It is very likely that the image belongs to the specified vertical.
+ VERY_LIKELY = 5;
+}
+
+// Contains metadata for the BatchAnnotateImages operation.
+message OperationMetadata {
+ // Batch operation states.
+ enum State {
+ // Invalid.
+ STATE_UNSPECIFIED = 0;
+
+ // Request is received.
+ CREATED = 1;
+
+ // Request is actively being processed.
+ RUNNING = 2;
+
+ // The batch processing is done.
+ DONE = 3;
+
+ // The batch processing was cancelled.
+ CANCELLED = 4;
+ }
+ // Current state of the batch operation.
+ State state = 1;
+
+ // The time when the batch request was received.
+ google.protobuf.Timestamp create_time = 5;
+
+ // The time when the operation result was last updated.
+ google.protobuf.Timestamp update_time = 6;
+}
diff --git a/packages/google-cloud-vision/protos/google/cloud/vision/v1p3beta1/product_search.proto b/packages/google-cloud-vision/protos/google/cloud/vision/v1p3beta1/product_search.proto
new file mode 100644
index 00000000000..86ea1a064f8
--- /dev/null
+++ b/packages/google-cloud-vision/protos/google/cloud/vision/v1p3beta1/product_search.proto
@@ -0,0 +1,124 @@
+// Copyright 2022 Google LLC
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+syntax = "proto3";
+
+package google.cloud.vision.v1p3beta1;
+
+import "google/api/resource.proto";
+import "google/cloud/vision/v1p3beta1/geometry.proto";
+import "google/cloud/vision/v1p3beta1/product_search_service.proto";
+import "google/protobuf/timestamp.proto";
+
+option cc_enable_arenas = true;
+option go_package = "google.golang.org/genproto/googleapis/cloud/vision/v1p3beta1;vision";
+option java_multiple_files = true;
+option java_outer_classname = "ProductSearchProto";
+option java_package = "com.google.cloud.vision.v1p3beta1";
+option objc_class_prefix = "GCVN";
+
+// Parameters for a product search request.
+message ProductSearchParams {
+ // The bounding polygon around the area of interest in the image.
+ // If it is not specified, system discretion will be applied.
+ BoundingPoly bounding_poly = 9;
+
+ // The resource name of a [ProductSet][google.cloud.vision.v1p3beta1.ProductSet] to be searched for similar images.
+ //
+ // Format is:
+ // `projects/PROJECT_ID/locations/LOC_ID/productSets/PRODUCT_SET_ID`.
+ string product_set = 6 [(google.api.resource_reference) = {
+ type: "vision.googleapis.com/ProductSet"
+ }];
+
+ // The list of product categories to search in. Currently, we only consider
+ // the first category, and either "homegoods-v2", "apparel-v2", "toys-v2",
+ // "packagedgoods-v1", or "general-v1" should be specified. The legacy
+ // categories "homegoods", "apparel", and "toys" are still supported but will
+ // be deprecated. For new products, please use "homegoods-v2", "apparel-v2",
+ // or "toys-v2" for better product search accuracy. It is recommended to
+ // migrate existing products to these categories as well.
+ repeated string product_categories = 7;
+
+ // The filtering expression. This can be used to restrict search results based
+ // on Product labels. We currently support an AND of OR of key-value
+ // expressions, where each expression within an OR must have the same key. An
+ // '=' should be used to connect the key and value.
+ //
+ // For example, "(color = red OR color = blue) AND brand = Google" is
+ // acceptable, but "(color = red OR brand = Google)" is not acceptable.
+ // "color: red" is not acceptable because it uses a ':' instead of an '='.
+ string filter = 8;
+}
+
+// Results for a product search request.
+message ProductSearchResults {
+ // Information about a product.
+ message Result {
+ // The Product.
+ Product product = 1;
+
+ // A confidence level on the match, ranging from 0 (no confidence) to
+ // 1 (full confidence).
+ float score = 2;
+
+ // The resource name of the image from the product that is the closest match
+ // to the query.
+ string image = 3;
+ }
+
+ // Prediction for what the object in the bounding box is.
+ message ObjectAnnotation {
+ // Object ID that should align with EntityAnnotation mid.
+ string mid = 1;
+
+ // The BCP-47 language code, such as "en-US" or "sr-Latn". For more
+ // information, see
+ // http://www.unicode.org/reports/tr35/#Unicode_locale_identifier.
+ string language_code = 2;
+
+ // Object name, expressed in its `language_code` language.
+ string name = 3;
+
+ // Score of the result. Range [0, 1].
+ float score = 4;
+ }
+
+ // Information about the products similar to a single product in a query
+ // image.
+ message GroupedResult {
+ // The bounding polygon around the product detected in the query image.
+ BoundingPoly bounding_poly = 1;
+
+ // List of results, one for each product match.
+ repeated Result results = 2;
+
+ // List of generic predictions for the object in the bounding box.
+ repeated ObjectAnnotation object_annotations = 3;
+ }
+
+ // Timestamp of the index which provided these results. Products added to the
+ // product set and products removed from the product set after this time are
+ // not reflected in the current results.
+ google.protobuf.Timestamp index_time = 2;
+
+ // List of results, one for each product match.
+ repeated Result results = 5;
+
+ // List of results grouped by products detected in the query image. Each entry
+ // corresponds to one bounding polygon in the query image, and contains the
+ // matching products specific to that region. There may be duplicate product
+ // matches in the union of all the per-product results.
+ repeated GroupedResult product_grouped_results = 6;
+}
diff --git a/packages/google-cloud-vision/protos/google/cloud/vision/v1p3beta1/product_search_service.proto b/packages/google-cloud-vision/protos/google/cloud/vision/v1p3beta1/product_search_service.proto
new file mode 100644
index 00000000000..daf1d0ddc5e
--- /dev/null
+++ b/packages/google-cloud-vision/protos/google/cloud/vision/v1p3beta1/product_search_service.proto
@@ -0,0 +1,971 @@
+// Copyright 2019 Google LLC.
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+//
+
+syntax = "proto3";
+
+package google.cloud.vision.v1p3beta1;
+
+import "google/api/annotations.proto";
+import "google/api/client.proto";
+import "google/api/field_behavior.proto";
+import "google/api/resource.proto";
+import "google/cloud/vision/v1p3beta1/geometry.proto";
+import "google/longrunning/operations.proto";
+import "google/protobuf/empty.proto";
+import "google/protobuf/field_mask.proto";
+import "google/protobuf/timestamp.proto";
+import "google/rpc/status.proto";
+
+option cc_enable_arenas = true;
+option go_package = "google.golang.org/genproto/googleapis/cloud/vision/v1p3beta1;vision";
+option java_multiple_files = true;
+option java_outer_classname = "ProductSearchServiceProto";
+option java_package = "com.google.cloud.vision.v1p3beta1";
+
+// Manages Products and ProductSets of reference images for use in product
+// search. It uses the following resource model:
+//
+// - The API has a collection of [ProductSet][google.cloud.vision.v1p3beta1.ProductSet] resources, named
+// `projects/*/locations/*/productSets/*`, which acts as a way to put different
+// products into groups to limit identification.
+//
+// In parallel,
+//
+// - The API has a collection of [Product][google.cloud.vision.v1p3beta1.Product] resources, named
+// `projects/*/locations/*/products/*`
+//
+// - Each [Product][google.cloud.vision.v1p3beta1.Product] has a collection of [ReferenceImage][google.cloud.vision.v1p3beta1.ReferenceImage] resources, named
+// `projects/*/locations/*/products/*/referenceImages/*`
+service ProductSearch {
+ option (google.api.default_host) = "vision.googleapis.com";
+ option (google.api.oauth_scopes) =
+ "https://www.googleapis.com/auth/cloud-platform,"
+ "https://www.googleapis.com/auth/cloud-vision";
+
+ // Creates and returns a new ProductSet resource.
+ //
+ // Possible errors:
+ //
+ // * Returns INVALID_ARGUMENT if display_name is missing, or is longer than
+ // 4096 characters.
+ rpc CreateProductSet(CreateProductSetRequest) returns (ProductSet) {
+ option (google.api.http) = {
+ post: "/v1p3beta1/{parent=projects/*/locations/*}/productSets"
+ body: "product_set"
+ };
+ option (google.api.method_signature) = "parent,product_set,product_set_id";
+ }
+
+ // Lists ProductSets in an unspecified order.
+ //
+ // Possible errors:
+ //
+ // * Returns INVALID_ARGUMENT if page_size is greater than 100, or less
+ // than 1.
+ rpc ListProductSets(ListProductSetsRequest) returns (ListProductSetsResponse) {
+ option (google.api.http) = {
+ get: "/v1p3beta1/{parent=projects/*/locations/*}/productSets"
+ };
+ option (google.api.method_signature) = "parent";
+ }
+
+ // Gets information associated with a ProductSet.
+ //
+ // Possible errors:
+ //
+ // * Returns NOT_FOUND if the ProductSet does not exist.
+ rpc GetProductSet(GetProductSetRequest) returns (ProductSet) {
+ option (google.api.http) = {
+ get: "/v1p3beta1/{name=projects/*/locations/*/productSets/*}"
+ };
+ option (google.api.method_signature) = "name";
+ }
+
+ // Makes changes to a ProductSet resource.
+ // Only display_name can be updated currently.
+ //
+ // Possible errors:
+ //
+ // * Returns NOT_FOUND if the ProductSet does not exist.
+ // * Returns INVALID_ARGUMENT if display_name is present in update_mask but
+ // missing from the request or longer than 4096 characters.
+ rpc UpdateProductSet(UpdateProductSetRequest) returns (ProductSet) {
+ option (google.api.http) = {
+ patch: "/v1p3beta1/{product_set.name=projects/*/locations/*/productSets/*}"
+ body: "product_set"
+ };
+ option (google.api.method_signature) = "product_set,update_mask";
+ }
+
+ // Permanently deletes a ProductSet. All Products and ReferenceImages in the
+ // ProductSet will be deleted.
+ //
+ // The actual image files are not deleted from Google Cloud Storage.
+ //
+ // Possible errors:
+ //
+ // * Returns NOT_FOUND if the ProductSet does not exist.
+ rpc DeleteProductSet(DeleteProductSetRequest)
+ returns (google.protobuf.Empty) {
+ option (google.api.http) = {
+ delete: "/v1p3beta1/{name=projects/*/locations/*/productSets/*}"
+ };
+ option (google.api.method_signature) = "name";
+ }
+
+ // Creates and returns a new product resource.
+ //
+ // Possible errors:
+ //
+ // * Returns INVALID_ARGUMENT if display_name is missing or longer than 4096
+ // characters.
+ // * Returns INVALID_ARGUMENT if description is longer than 4096 characters.
+ // * Returns INVALID_ARGUMENT if product_category is missing or invalid.
+ rpc CreateProduct(CreateProductRequest) returns (Product) {
+ option (google.api.http) = {
+ post: "/v1p3beta1/{parent=projects/*/locations/*}/products"
+ body: "product"
+ };
+ option (google.api.method_signature) = "parent,product,product_id";
+ }
+
+ // Lists products in an unspecified order.
+ //
+ // Possible errors:
+ //
+ // * Returns INVALID_ARGUMENT if page_size is greater than 100 or less than 1.
+ rpc ListProducts(ListProductsRequest) returns (ListProductsResponse) {
+ option (google.api.http) = {
+ get: "/v1p3beta1/{parent=projects/*/locations/*}/products"
+ };
+ option (google.api.method_signature) = "parent";
+ }
+
+ // Gets information associated with a Product.
+ //
+ // Possible errors:
+ //
+ // * Returns NOT_FOUND if the Product does not exist.
+ rpc GetProduct(GetProductRequest) returns (Product) {
+ option (google.api.http) = {
+ get: "/v1p3beta1/{name=projects/*/locations/*/products/*}"
+ };
+ option (google.api.method_signature) = "name";
+ }
+
+ // Makes changes to a Product resource.
+ // Only display_name, description and labels can be updated right now.
+ //
+ // If labels are updated, the change will not be reflected in queries until
+ // the next index time.
+ //
+ // Possible errors:
+ //
+ // * Returns NOT_FOUND if the Product does not exist.
+ // * Returns INVALID_ARGUMENT if display_name is present in update_mask but is
+ // missing from the request or longer than 4096 characters.
+ // * Returns INVALID_ARGUMENT if description is present in update_mask but is
+ // longer than 4096 characters.
+ // * Returns INVALID_ARGUMENT if product_category is present in update_mask.
+ rpc UpdateProduct(UpdateProductRequest) returns (Product) {
+ option (google.api.http) = {
+ patch: "/v1p3beta1/{product.name=projects/*/locations/*/products/*}"
+ body: "product"
+ };
+ option (google.api.method_signature) = "product,update_mask";
+ }
+
+ // Permanently deletes a product and its reference images.
+ //
+ // Metadata of the product and all its images will be deleted right away, but
+ // search queries against ProductSets containing the product may still work
+ // until all related caches are refreshed.
+ //
+ // Possible errors:
+ //
+ // * Returns NOT_FOUND if the product does not exist.
+ rpc DeleteProduct(DeleteProductRequest) returns (google.protobuf.Empty) {
+ option (google.api.http) = {
+ delete: "/v1p3beta1/{name=projects/*/locations/*/products/*}"
+ };
+ option (google.api.method_signature) = "name";
+ }
+
+ // Creates and returns a new ReferenceImage resource.
+ //
+ // The `bounding_poly` field is optional. If `bounding_poly` is not specified,
+ // the system will try to detect regions of interest in the image that are
+ // compatible with the product_category on the parent product. If it is
+ // specified, detection is ALWAYS skipped. The system converts polygons into
+ // non-rotated rectangles.
+ //
+ // Note that the pipeline will resize the image if the image resolution is too
+ // large to process (above 50MP).
+ //
+ // Possible errors:
+ //
+ // * Returns INVALID_ARGUMENT if the image_uri is missing or longer than 4096
+ // characters.
+ // * Returns INVALID_ARGUMENT if the product does not exist.
+ // * Returns INVALID_ARGUMENT if bounding_poly is not provided, and nothing
+ // compatible with the parent product's product_category is detected.
+ // * Returns INVALID_ARGUMENT if bounding_poly contains more than 10 polygons.
+ rpc CreateReferenceImage(CreateReferenceImageRequest)
+ returns (ReferenceImage) {
+ option (google.api.http) = {
+ post: "/v1p3beta1/{parent=projects/*/locations/*/products/*}/referenceImages"
+ body: "reference_image"
+ };
+ option (google.api.method_signature) = "parent,reference_image,reference_image_id";
+ }
+
+ // Permanently deletes a reference image.
+ //
+ // The image metadata will be deleted right away, but search queries
+ // against ProductSets containing the image may still work until all related
+ // caches are refreshed.
+ //
+ // The actual image files are not deleted from Google Cloud Storage.
+ //
+ // Possible errors:
+ //
+ // * Returns NOT_FOUND if the reference image does not exist.
+ rpc DeleteReferenceImage(DeleteReferenceImageRequest)
+ returns (google.protobuf.Empty) {
+ option (google.api.http) = {
+ delete: "/v1p3beta1/{name=projects/*/locations/*/products/*/referenceImages/*}"
+ };
+ option (google.api.method_signature) = "name";
+ }
+
+ // Lists reference images.
+ //
+ // Possible errors:
+ //
+ // * Returns NOT_FOUND if the parent product does not exist.
+ // * Returns INVALID_ARGUMENT if the page_size is greater than 100, or less
+ // than 1.
+ rpc ListReferenceImages(ListReferenceImagesRequest)
+ returns (ListReferenceImagesResponse) {
+ option (google.api.http) = {
+ get: "/v1p3beta1/{parent=projects/*/locations/*/products/*}/referenceImages"
+ };
+ option (google.api.method_signature) = "parent";
+ }
+
+ // Gets information associated with a ReferenceImage.
+ //
+ // Possible errors:
+ //
+ // * Returns NOT_FOUND if the specified image does not exist.
+ rpc GetReferenceImage(GetReferenceImageRequest) returns (ReferenceImage) {
+ option (google.api.http) = {
+ get: "/v1p3beta1/{name=projects/*/locations/*/products/*/referenceImages/*}"
+ };
+ option (google.api.method_signature) = "name";
+ }
+
+ // Adds a Product to the specified ProductSet. If the Product is already
+ // present, no change is made.
+ //
+ // One Product can be added to at most 100 ProductSets.
+ //
+ // Possible errors:
+ //
+ // * Returns NOT_FOUND if the Product or the ProductSet doesn't exist.
+ rpc AddProductToProductSet(AddProductToProductSetRequest)
+ returns (google.protobuf.Empty) {
+ option (google.api.http) = {
+ post: "/v1p3beta1/{name=projects/*/locations/*/productSets/*}:addProduct"
+ body: "*"
+ };
+ option (google.api.method_signature) = "name,product";
+ }
+
+ // Removes a Product from the specified ProductSet.
+ //
+ // Possible errors:
+ //
+ // * Returns NOT_FOUND If the Product is not found under the ProductSet.
+ rpc RemoveProductFromProductSet(RemoveProductFromProductSetRequest)
+ returns (google.protobuf.Empty) {
+ option (google.api.http) = {
+ post: "/v1p3beta1/{name=projects/*/locations/*/productSets/*}:removeProduct"
+ body: "*"
+ };
+ option (google.api.method_signature) = "name,product";
+ }
+
+ // Lists the Products in a ProductSet, in an unspecified order. If the
+ // ProductSet does not exist, the products field of the response will be
+ // empty.
+ //
+ // Possible errors:
+ //
+ // * Returns INVALID_ARGUMENT if page_size is greater than 100 or less than 1.
+ rpc ListProductsInProductSet(ListProductsInProductSetRequest)
+ returns (ListProductsInProductSetResponse) {
+ option (google.api.http) = {
+ get: "/v1p3beta1/{name=projects/*/locations/*/productSets/*}/products"
+ };
+ option (google.api.method_signature) = "name";
+ }
+
+ // Asynchronous API that imports a list of reference images to specified
+ // product sets based on a list of image information.
+ //
+ // The [google.longrunning.Operation][google.longrunning.Operation] API can be
+ // used to keep track of the progress and results of the request.
+ // `Operation.metadata` contains `BatchOperationMetadata`. (progress)
+ // `Operation.response` contains `ImportProductSetsResponse`. (results)
+ //
+ // The input source of this method is a csv file on Google Cloud Storage.
+ // For the format of the csv file please see
+ // [ImportProductSetsGcsSource.csv_file_uri][google.cloud.vision.v1p3beta1.ImportProductSetsGcsSource.csv_file_uri].
+ rpc ImportProductSets(ImportProductSetsRequest)
+ returns (google.longrunning.Operation) {
+ option (google.api.http) = {
+ post: "/v1p3beta1/{parent=projects/*/locations/*}/productSets:import"
+ body: "*"
+ };
+ option (google.api.method_signature) = "parent,input_config";
+ option (google.longrunning.operation_info) = {
+ response_type: "ImportProductSetsResponse"
+ metadata_type: "BatchOperationMetadata"
+ };
+ }
+}
+
+// A Product contains ReferenceImages.
+message Product {
+ option (google.api.resource) = {
+ type: "vision.googleapis.com/Product"
+ pattern: "projects/{project}/locations/{location}/products/{product}"
+ };
+
+ // A product label represented as a key-value pair.
+ message KeyValue {
+ // The key of the label attached to the product. Cannot be empty and cannot
+ // exceed 128 bytes.
+ string key = 1;
+
+ // The value of the label attached to the product. Cannot be empty and
+ // cannot exceed 128 bytes.
+ string value = 2;
+ }
+
+ // The resource name of the product.
+ //
+ // Format is:
+ // `projects/PROJECT_ID/locations/LOC_ID/products/PRODUCT_ID`.
+ //
+ // This field is ignored when creating a product.
+ string name = 1;
+
+ // The user-provided name for this Product. Must not be empty. Must be at most
+ // 4096 characters long.
+ string display_name = 2;
+
+ // User-provided metadata to be stored with this product. Must be at most 4096
+ // characters long.
+ string description = 3;
+
+ // Immutable. The category for the product identified by the reference image. This should
+ // be either "homegoods-v2", "apparel-v2", or "toys-v2". The legacy categories
+ // "homegoods", "apparel", and "toys" are still supported, but these should
+ // not be used for new products.
+ string product_category = 4 [(google.api.field_behavior) = IMMUTABLE];
+
+ // Key-value pairs that can be attached to a product. At query time,
+ // constraints can be specified based on the product_labels.
+ //
+ // Note that integer values can be provided as strings, e.g. "1199". Only
+ // strings with integer values can match a range-based restriction which is
+ // to be supported soon.
+ //
+ // Multiple values can be assigned to the same key. One product may have up to
+ // 100 product_labels.
+ repeated KeyValue product_labels = 5;
+}
+
+// A ProductSet contains Products. A ProductSet can contain a maximum of 1
+// million reference images. If the limit is exceeded, periodic indexing will
+// fail.
+message ProductSet {
+ option (google.api.resource) = {
+ type: "vision.googleapis.com/ProductSet"
+ pattern: "projects/{project}/locations/{location}/productSets/{product_set}"
+ };
+
+ // The resource name of the ProductSet.
+ //
+ // Format is:
+ // `projects/PROJECT_ID/locations/LOC_ID/productSets/PRODUCT_SET_ID`.
+ //
+ // This field is ignored when creating a ProductSet.
+ string name = 1;
+
+ // The user-provided name for this ProductSet. Must not be empty. Must be at
+ // most 4096 characters long.
+ string display_name = 2;
+
+ // Output only. The time at which this ProductSet was last indexed. Query
+ // results will reflect all updates before this time. If this ProductSet has
+ // never been indexed, this field is 0.
+ //
+ // This field is ignored when creating a ProductSet.
+ google.protobuf.Timestamp index_time = 3 [(google.api.field_behavior) = OUTPUT_ONLY];
+
+ // Output only. If there was an error with indexing the product set, the field
+ // is populated.
+ //
+ // This field is ignored when creating a ProductSet.
+ google.rpc.Status index_error = 4 [(google.api.field_behavior) = OUTPUT_ONLY];
+}
+
+// A `ReferenceImage` represents a product image and its associated metadata,
+// such as bounding boxes.
+message ReferenceImage {
+ option (google.api.resource) = {
+ type: "vision.googleapis.com/ReferenceImage"
+ pattern: "projects/{project}/locations/{location}/products/{product}/referenceImages/{reference_image}"
+ };
+
+ // The resource name of the reference image.
+ //
+ // Format is:
+ //
+ // `projects/PROJECT_ID/locations/LOC_ID/products/PRODUCT_ID/referenceImages/IMAGE_ID`.
+ //
+ // This field is ignored when creating a reference image.
+ string name = 1;
+
+ // Required. The Google Cloud Storage URI of the reference image.
+ //
+ // The URI must start with `gs://`.
+ string uri = 2 [(google.api.field_behavior) = REQUIRED];
+
+ // Optional. Bounding polygons around the areas of interest in the reference image.
+ // If this field is empty, the system will try to detect regions of
+ // interest. At most 10 bounding polygons will be used.
+ //
+ // The provided shape is converted into a non-rotated rectangle. Once
+ // converted, the small edge of the rectangle must be greater than or equal
+ // to 300 pixels. The aspect ratio must be 1:4 or less (i.e. 1:3 is ok; 1:5
+ // is not).
+ repeated BoundingPoly bounding_polys = 3 [(google.api.field_behavior) = OPTIONAL];
+}
+
+// Request message for the `CreateProduct` method.
+message CreateProductRequest {
+ // Required. The project in which the Product should be created.
+ //
+ // Format is
+ // `projects/PROJECT_ID/locations/LOC_ID`.
+ string parent = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "locations.googleapis.com/Location"
+ }
+ ];
+
+ // Required. The product to create.
+ Product product = 2 [(google.api.field_behavior) = REQUIRED];
+
+ // A user-supplied resource id for this Product. If set, the server will
+ // attempt to use this value as the resource id. If it is already in use, an
+ // error is returned with code ALREADY_EXISTS. Must be at most 128 characters
+ // long. It cannot contain the character `/`.
+ string product_id = 3;
+}
+
+// Request message for the `ListProducts` method.
+message ListProductsRequest {
+ // Required. The project OR ProductSet from which Products should be listed.
+ //
+ // Format:
+ // `projects/PROJECT_ID/locations/LOC_ID`
+ string parent = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "locations.googleapis.com/Location"
+ }
+ ];
+
+ // The maximum number of items to return. Default 10, maximum 100.
+ int32 page_size = 2;
+
+ // The next_page_token returned from a previous List request, if any.
+ string page_token = 3;
+}
+
+// Response message for the `ListProducts` method.
+message ListProductsResponse {
+ // List of products.
+ repeated Product products = 1;
+
+ // Token to retrieve the next page of results, or empty if there are no more
+ // results in the list.
+ string next_page_token = 2;
+}
+
+// Request message for the `GetProduct` method.
+message GetProductRequest {
+ // Required. Resource name of the Product to get.
+ //
+ // Format is:
+ // `projects/PROJECT_ID/locations/LOC_ID/products/PRODUCT_ID`
+ string name = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "vision.googleapis.com/Product"
+ }
+ ];
+}
+
+// Request message for the `UpdateProduct` method.
+message UpdateProductRequest {
+ // Required. The Product resource which replaces the one on the server.
+ // product.name is immutable.
+ Product product = 1 [(google.api.field_behavior) = REQUIRED];
+
+ // The [FieldMask][google.protobuf.FieldMask] that specifies which fields
+ // to update.
+ // If update_mask isn't specified, all mutable fields are to be updated.
+ // Valid mask paths include `product_labels`, `display_name`, and
+ // `description`.
+ google.protobuf.FieldMask update_mask = 2;
+}
+
+// Request message for the `DeleteProduct` method.
+message DeleteProductRequest {
+ // Required. Resource name of product to delete.
+ //
+ // Format is:
+ // `projects/PROJECT_ID/locations/LOC_ID/products/PRODUCT_ID`
+ string name = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "vision.googleapis.com/Product"
+ }
+ ];
+}
+
+// Request message for the `CreateProductSet` method.
+message CreateProductSetRequest {
+ // Required. The project in which the ProductSet should be created.
+ //
+ // Format is `projects/PROJECT_ID/locations/LOC_ID`.
+ string parent = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "locations.googleapis.com/Location"
+ }
+ ];
+
+ // Required. The ProductSet to create.
+ ProductSet product_set = 2 [(google.api.field_behavior) = REQUIRED];
+
+ // A user-supplied resource id for this ProductSet. If set, the server will
+ // attempt to use this value as the resource id. If it is already in use, an
+ // error is returned with code ALREADY_EXISTS. Must be at most 128 characters
+ // long. It cannot contain the character `/`.
+ string product_set_id = 3;
+}
+
+// Request message for the `ListProductSets` method.
+message ListProductSetsRequest {
+ // Required. The project from which ProductSets should be listed.
+ //
+ // Format is `projects/PROJECT_ID/locations/LOC_ID`.
+ string parent = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "locations.googleapis.com/Location"
+ }
+ ];
+
+ // The maximum number of items to return. Default 10, maximum 100.
+ int32 page_size = 2;
+
+ // The next_page_token returned from a previous List request, if any.
+ string page_token = 3;
+}
+
+// Response message for the `ListProductSets` method.
+message ListProductSetsResponse {
+ // List of ProductSets.
+ repeated ProductSet product_sets = 1;
+
+ // Token to retrieve the next page of results, or empty if there are no more
+ // results in the list.
+ string next_page_token = 2;
+}
+
+// Request message for the `GetProductSet` method.
+message GetProductSetRequest {
+ // Required. Resource name of the ProductSet to get.
+ //
+ // Format is:
+ // `projects/PROJECT_ID/locations/LOC_ID/productSets/PRODUCT_SET_ID`
+ string name = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "vision.googleapis.com/ProductSet"
+ }
+ ];
+}
+
+// Request message for the `UpdateProductSet` method.
+message UpdateProductSetRequest {
+ // Required. The ProductSet resource which replaces the one on the server.
+ ProductSet product_set = 1 [(google.api.field_behavior) = REQUIRED];
+
+ // The [FieldMask][google.protobuf.FieldMask] that specifies which fields to
+ // update.
+ // If update_mask isn't specified, all mutable fields are to be updated.
+ // Valid mask path is `display_name`.
+ google.protobuf.FieldMask update_mask = 2;
+}
+
+// Request message for the `DeleteProductSet` method.
+message DeleteProductSetRequest {
+ // Required. Resource name of the ProductSet to delete.
+ //
+ // Format is:
+ // `projects/PROJECT_ID/locations/LOC_ID/productSets/PRODUCT_SET_ID`
+ string name = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "vision.googleapis.com/ProductSet"
+ }
+ ];
+}
+
+// Request message for the `CreateReferenceImage` method.
+message CreateReferenceImageRequest {
+ // Required. Resource name of the product in which to create the reference image.
+ //
+ // Format is
+ // `projects/PROJECT_ID/locations/LOC_ID/products/PRODUCT_ID`.
+ string parent = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "vision.googleapis.com/Product"
+ }
+ ];
+
+ // Required. The reference image to create.
+ // If an image ID is specified, it is ignored.
+ ReferenceImage reference_image = 2 [(google.api.field_behavior) = REQUIRED];
+
+ // A user-supplied resource id for the ReferenceImage to be added. If set,
+ // the server will attempt to use this value as the resource id. If it is
+ // already in use, an error is returned with code ALREADY_EXISTS. Must be at
+ // most 128 characters long. It cannot contain the character `/`.
+ string reference_image_id = 3;
+}
+
+// Request message for the `ListReferenceImages` method.
+message ListReferenceImagesRequest {
+ // Required. Resource name of the product containing the reference images.
+ //
+ // Format is
+ // `projects/PROJECT_ID/locations/LOC_ID/products/PRODUCT_ID`.
+ string parent = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "vision.googleapis.com/Product"
+ }
+ ];
+
+ // The maximum number of items to return. Default 10, maximum 100.
+ int32 page_size = 2;
+
+ // A token identifying a page of results to be returned. This is the value
+ // of `nextPageToken` returned in a previous reference image list request.
+ //
+ // Defaults to the first page if not specified.
+ string page_token = 3;
+}
+
+// Response message for the `ListReferenceImages` method.
+message ListReferenceImagesResponse {
+ // The list of reference images.
+ repeated ReferenceImage reference_images = 1;
+
+ // The maximum number of items to return. Default 10, maximum 100.
+ int32 page_size = 2;
+
+ // The next_page_token returned from a previous List request, if any.
+ string next_page_token = 3;
+}
+
+// Request message for the `GetReferenceImage` method.
+message GetReferenceImageRequest {
+ // Required. The resource name of the ReferenceImage to get.
+ //
+ // Format is:
+ //
+ // `projects/PROJECT_ID/locations/LOC_ID/products/PRODUCT_ID/referenceImages/IMAGE_ID`.
+ string name = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "vision.googleapis.com/ReferenceImage"
+ }
+ ];
+}
+
+// Request message for the `DeleteReferenceImage` method.
+message DeleteReferenceImageRequest {
+ // Required. The resource name of the reference image to delete.
+ //
+ // Format is:
+ //
+ // `projects/PROJECT_ID/locations/LOC_ID/products/PRODUCT_ID/referenceImages/IMAGE_ID`
+ string name = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "vision.googleapis.com/ReferenceImage"
+ }
+ ];
+}
+
+// Request message for the `AddProductToProductSet` method.
+message AddProductToProductSetRequest {
+ // Required. The resource name for the ProductSet to modify.
+ //
+ // Format is:
+ // `projects/PROJECT_ID/locations/LOC_ID/productSets/PRODUCT_SET_ID`
+ string name = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "vision.googleapis.com/ProductSet"
+ }
+ ];
+
+ // Required. The resource name for the Product to be added to this ProductSet.
+ //
+ // Format is:
+ // `projects/PROJECT_ID/locations/LOC_ID/products/PRODUCT_ID`
+ string product = 2 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "vision.googleapis.com/Product"
+ }
+ ];
+}
+
+// Request message for the `RemoveProductFromProductSet` method.
+message RemoveProductFromProductSetRequest {
+ // Required. The resource name for the ProductSet to modify.
+ //
+ // Format is:
+ // `projects/PROJECT_ID/locations/LOC_ID/productSets/PRODUCT_SET_ID`
+ string name = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "vision.googleapis.com/ProductSet"
+ }
+ ];
+
+ // Required. The resource name for the Product to be removed from this ProductSet.
+ //
+ // Format is:
+ // `projects/PROJECT_ID/locations/LOC_ID/products/PRODUCT_ID`
+ string product = 2 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "vision.googleapis.com/Product"
+ }
+ ];
+}
+
+// Request message for the `ListProductsInProductSet` method.
+message ListProductsInProductSetRequest {
+ // Required. The ProductSet resource for which to retrieve Products.
+ //
+ // Format is:
+ // `projects/PROJECT_ID/locations/LOC_ID/productSets/PRODUCT_SET_ID`
+ string name = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "vision.googleapis.com/ProductSet"
+ }
+ ];
+
+ // The maximum number of items to return. Default 10, maximum 100.
+ int32 page_size = 2;
+
+ // The next_page_token returned from a previous List request, if any.
+ string page_token = 3;
+}
+
+// Response message for the `ListProductsInProductSet` method.
+message ListProductsInProductSetResponse {
+ // The list of Products.
+ repeated Product products = 1;
+
+ // Token to retrieve the next page of results, or empty if there are no more
+ // results in the list.
+ string next_page_token = 2;
+}
+
+// The Google Cloud Storage location for a csv file which preserves a list of
+// ImportProductSetRequests in each line.
+message ImportProductSetsGcsSource {
+ // The Google Cloud Storage URI of the input csv file.
+ //
+ // The URI must start with `gs://`.
+ //
+ // The format of the input csv file should be one image per line.
+ // In each line, there are 6 columns.
+ // 1. image_uri
+ // 2, image_id
+ // 3. product_set_id
+ // 4. product_id
+ // 5, product_category
+ // 6, product_display_name
+ // 7, labels
+ // 8. bounding_poly
+ //
+ // Columns 1, 3, 4, and 5 are required, other columns are optional. A new
+ // ProductSet/Product with the same id will be created on the fly
+ // if the ProductSet/Product specified by product_set_id/product_id does not
+ // exist.
+ //
+ // The image_id field is optional but has to be unique if provided. If it is
+ // empty, we will automatically assign an unique id to the image.
+ //
+ // The product_display_name field is optional. If it is empty, a space (" ")
+ // is used as the place holder for the product display_name, which can
+ // be updated later through the realtime API.
+ //
+ // If the Product with product_id already exists, the fields
+ // product_display_name, product_category and labels are ignored.
+ //
+ // If a Product doesn't exist and needs to be created on the fly, the
+ // product_display_name field refers to
+ // [Product.display_name][google.cloud.vision.v1p3beta1.Product.display_name],
+ // the product_category field refers to
+ // [Product.product_category][google.cloud.vision.v1p3beta1.Product.product_category],
+ // and the labels field refers to [Product.labels][].
+ //
+ // Labels (optional) should be a line containing a list of comma-separated
+ // key-value pairs, with the format
+ // "key_1=value_1,key_2=value_2,...,key_n=value_n".
+ //
+ // The bounding_poly (optional) field is used to identify one region of
+ // interest from the image in the same manner as CreateReferenceImage. If no
+ // bounding_poly is specified, the system will try to detect regions of
+ // interest automatically.
+ //
+ // Note that the pipeline will resize the image if the image resolution is too
+ // large to process (above 20MP).
+ //
+ // Also note that at most one bounding_poly is allowed per line. If the image
+ // contains multiple regions of interest, the csv should contain one line per
+ // region of interest.
+ //
+ // The bounding_poly column should contain an even number of comma-separated
+ // numbers, with the format "p1_x,p1_y,p2_x,p2_y,...,pn_x,pn_y". Nonnegative
+ // integers should be used for absolute bounding polygons, and float values
+ // in [0, 1] should be used for normalized bounding polygons.
+ string csv_file_uri = 1;
+}
+
+// The input content for the `ImportProductSets` method.
+message ImportProductSetsInputConfig {
+ // The source of the input.
+ oneof source {
+ // The Google Cloud Storage location for a csv file which preserves a list
+ // of ImportProductSetRequests in each line.
+ ImportProductSetsGcsSource gcs_source = 1;
+ }
+}
+
+// Request message for the `ImportProductSets` method.
+message ImportProductSetsRequest {
+ // Required. The project in which the ProductSets should be imported.
+ //
+ // Format is `projects/PROJECT_ID/locations/LOC_ID`.
+ string parent = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "locations.googleapis.com/Location"
+ }
+ ];
+
+ // Required. The input content for the list of requests.
+ ImportProductSetsInputConfig input_config = 2 [(google.api.field_behavior) = REQUIRED];
+}
+
+// Response message for the `ImportProductSets` method.
+//
+// This message is returned by the
+// [google.longrunning.Operations.GetOperation][google.longrunning.Operations.GetOperation]
+// method in the returned
+// [google.longrunning.Operation.response][google.longrunning.Operation.response]
+// field.
+message ImportProductSetsResponse {
+ // The list of reference_images that are imported successfully.
+ repeated ReferenceImage reference_images = 1;
+
+ // The rpc status for each ImportProductSet request, including both successes
+ // and errors.
+ //
+ // The number of statuses here matches the number of lines in the csv file,
+ // and statuses[i] stores the success or failure status of processing the i-th
+ // line of the csv, starting from line 0.
+ repeated google.rpc.Status statuses = 2;
+}
+
+// Metadata for the batch operations such as the current state.
+//
+// This is included in the `metadata` field of the `Operation` returned by the
+// `GetOperation` call of the `google::longrunning::Operations` service.
+message BatchOperationMetadata {
+ // Enumerates the possible states that the batch request can be in.
+ enum State {
+ // Invalid.
+ STATE_UNSPECIFIED = 0;
+
+ // Request is actively being processed.
+ PROCESSING = 1;
+
+ // The request is done and at least one item has been successfully
+ // processed.
+ SUCCESSFUL = 2;
+
+ // The request is done and no item has been successfully processed.
+ FAILED = 3;
+
+ // The request is done after the longrunning.Operations.CancelOperation has
+ // been called by the user. Any records that were processed before the
+ // cancel command are output as specified in the request.
+ CANCELLED = 4;
+ }
+
+ // The current state of the batch operation.
+ State state = 1;
+
+ // The time when the batch request was submitted to the server.
+ google.protobuf.Timestamp submit_time = 2;
+
+ // The time when the batch request is finished and
+ // [google.longrunning.Operation.done][google.longrunning.Operation.done] is
+ // set to true.
+ google.protobuf.Timestamp end_time = 3;
+}
diff --git a/packages/google-cloud-vision/protos/google/cloud/vision/v1p3beta1/text_annotation.proto b/packages/google-cloud-vision/protos/google/cloud/vision/v1p3beta1/text_annotation.proto
new file mode 100644
index 00000000000..633e404ed09
--- /dev/null
+++ b/packages/google-cloud-vision/protos/google/cloud/vision/v1p3beta1/text_annotation.proto
@@ -0,0 +1,258 @@
+// Copyright 2018 Google Inc.
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+syntax = "proto3";
+
+package google.cloud.vision.v1p3beta1;
+
+import "google/cloud/vision/v1p3beta1/geometry.proto";
+
+option cc_enable_arenas = true;
+option go_package = "google.golang.org/genproto/googleapis/cloud/vision/v1p3beta1;vision";
+option java_multiple_files = true;
+option java_outer_classname = "TextAnnotationProto";
+option java_package = "com.google.cloud.vision.v1p3beta1";
+
+// TextAnnotation contains a structured representation of OCR extracted text.
+// The hierarchy of an OCR extracted text structure is like this:
+// TextAnnotation -> Page -> Block -> Paragraph -> Word -> Symbol
+// Each structural component, starting from Page, may further have their own
+// properties. Properties describe detected languages, breaks etc.. Please refer
+// to the
+// [TextAnnotation.TextProperty][google.cloud.vision.v1p3beta1.TextAnnotation.TextProperty]
+// message definition below for more detail.
+message TextAnnotation {
+ // Detected language for a structural component.
+ message DetectedLanguage {
+ // The BCP-47 language code, such as "en-US" or "sr-Latn". For more
+ // information, see
+ // http://www.unicode.org/reports/tr35/#Unicode_locale_identifier.
+ string language_code = 1;
+
+ // Confidence of detected language. Range [0, 1].
+ float confidence = 2;
+ }
+
+ // Detected start or end of a structural component.
+ message DetectedBreak {
+ // Enum to denote the type of break found. New line, space etc.
+ enum BreakType {
+ // Unknown break label type.
+ UNKNOWN = 0;
+
+ // Regular space.
+ SPACE = 1;
+
+ // Sure space (very wide).
+ SURE_SPACE = 2;
+
+ // Line-wrapping break.
+ EOL_SURE_SPACE = 3;
+
+ // End-line hyphen that is not present in text; does not co-occur with
+ // `SPACE`, `LEADER_SPACE`, or `LINE_BREAK`.
+ HYPHEN = 4;
+
+ // Line break that ends a paragraph.
+ LINE_BREAK = 5;
+ }
+
+ // Detected break type.
+ BreakType type = 1;
+
+ // True if break prepends the element.
+ bool is_prefix = 2;
+ }
+
+ // Additional information detected on the structural component.
+ message TextProperty {
+ // A list of detected languages together with confidence.
+ repeated DetectedLanguage detected_languages = 1;
+
+ // Detected start or end of a text segment.
+ DetectedBreak detected_break = 2;
+ }
+
+ // List of pages detected by OCR.
+ repeated Page pages = 1;
+
+ // UTF-8 text detected on the pages.
+ string text = 2;
+}
+
+// Detected page from OCR.
+message Page {
+ // Additional information detected on the page.
+ TextAnnotation.TextProperty property = 1;
+
+ // Page width. For PDFs the unit is points. For images (including
+ // TIFFs) the unit is pixels.
+ int32 width = 2;
+
+ // Page height. For PDFs the unit is points. For images (including
+ // TIFFs) the unit is pixels.
+ int32 height = 3;
+
+ // List of blocks of text, images etc on this page.
+ repeated Block blocks = 4;
+
+ // Confidence of the OCR results on the page. Range [0, 1].
+ float confidence = 5;
+}
+
+// Logical element on the page.
+message Block {
+ // Type of a block (text, image etc) as identified by OCR.
+ enum BlockType {
+ // Unknown block type.
+ UNKNOWN = 0;
+
+ // Regular text block.
+ TEXT = 1;
+
+ // Table block.
+ TABLE = 2;
+
+ // Image block.
+ PICTURE = 3;
+
+ // Horizontal/vertical line box.
+ RULER = 4;
+
+ // Barcode block.
+ BARCODE = 5;
+ }
+
+ // Additional information detected for the block.
+ TextAnnotation.TextProperty property = 1;
+
+ // The bounding box for the block.
+ // The vertices are in the order of top-left, top-right, bottom-right,
+ // bottom-left. When a rotation of the bounding box is detected the rotation
+ // is represented as around the top-left corner as defined when the text is
+ // read in the 'natural' orientation.
+ // For example:
+ //
+ // * when the text is horizontal it might look like:
+ //
+ // 0----1
+ // | |
+ // 3----2
+ //
+ // * when it's rotated 180 degrees around the top-left corner it becomes:
+ //
+ // 2----3
+ // | |
+ // 1----0
+ //
+ // and the vertice order will still be (0, 1, 2, 3).
+ BoundingPoly bounding_box = 2;
+
+ // List of paragraphs in this block (if this blocks is of type text).
+ repeated Paragraph paragraphs = 3;
+
+ // Detected block type (text, image etc) for this block.
+ BlockType block_type = 4;
+
+ // Confidence of the OCR results on the block. Range [0, 1].
+ float confidence = 5;
+}
+
+// Structural unit of text representing a number of words in certain order.
+message Paragraph {
+ // Additional information detected for the paragraph.
+ TextAnnotation.TextProperty property = 1;
+
+ // The bounding box for the paragraph.
+ // The vertices are in the order of top-left, top-right, bottom-right,
+ // bottom-left. When a rotation of the bounding box is detected the rotation
+ // is represented as around the top-left corner as defined when the text is
+ // read in the 'natural' orientation.
+ // For example:
+ // * when the text is horizontal it might look like:
+ // 0----1
+ // | |
+ // 3----2
+ // * when it's rotated 180 degrees around the top-left corner it becomes:
+ // 2----3
+ // | |
+ // 1----0
+ // and the vertice order will still be (0, 1, 2, 3).
+ BoundingPoly bounding_box = 2;
+
+ // List of words in this paragraph.
+ repeated Word words = 3;
+
+ // Confidence of the OCR results for the paragraph. Range [0, 1].
+ float confidence = 4;
+}
+
+// A word representation.
+message Word {
+ // Additional information detected for the word.
+ TextAnnotation.TextProperty property = 1;
+
+ // The bounding box for the word.
+ // The vertices are in the order of top-left, top-right, bottom-right,
+ // bottom-left. When a rotation of the bounding box is detected the rotation
+ // is represented as around the top-left corner as defined when the text is
+ // read in the 'natural' orientation.
+ // For example:
+ // * when the text is horizontal it might look like:
+ // 0----1
+ // | |
+ // 3----2
+ // * when it's rotated 180 degrees around the top-left corner it becomes:
+ // 2----3
+ // | |
+ // 1----0
+ // and the vertice order will still be (0, 1, 2, 3).
+ BoundingPoly bounding_box = 2;
+
+ // List of symbols in the word.
+ // The order of the symbols follows the natural reading order.
+ repeated Symbol symbols = 3;
+
+ // Confidence of the OCR results for the word. Range [0, 1].
+ float confidence = 4;
+}
+
+// A single symbol representation.
+message Symbol {
+ // Additional information detected for the symbol.
+ TextAnnotation.TextProperty property = 1;
+
+ // The bounding box for the symbol.
+ // The vertices are in the order of top-left, top-right, bottom-right,
+ // bottom-left. When a rotation of the bounding box is detected the rotation
+ // is represented as around the top-left corner as defined when the text is
+ // read in the 'natural' orientation.
+ // For example:
+ // * when the text is horizontal it might look like:
+ // 0----1
+ // | |
+ // 3----2
+ // * when it's rotated 180 degrees around the top-left corner it becomes:
+ // 2----3
+ // | |
+ // 1----0
+ // and the vertice order will still be (0, 1, 2, 3).
+ BoundingPoly bounding_box = 2;
+
+ // The actual UTF-8 representation of the symbol.
+ string text = 3;
+
+ // Confidence of the OCR results for the symbol. Range [0, 1].
+ float confidence = 4;
+}
diff --git a/packages/google-cloud-vision/protos/google/cloud/vision/v1p3beta1/web_detection.proto b/packages/google-cloud-vision/protos/google/cloud/vision/v1p3beta1/web_detection.proto
new file mode 100644
index 00000000000..205dfe656d1
--- /dev/null
+++ b/packages/google-cloud-vision/protos/google/cloud/vision/v1p3beta1/web_detection.proto
@@ -0,0 +1,103 @@
+// Copyright 2018 Google Inc.
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+syntax = "proto3";
+
+package google.cloud.vision.v1p3beta1;
+
+
+option cc_enable_arenas = true;
+option go_package = "google.golang.org/genproto/googleapis/cloud/vision/v1p3beta1;vision";
+option java_multiple_files = true;
+option java_outer_classname = "WebDetectionProto";
+option java_package = "com.google.cloud.vision.v1p3beta1";
+
+// Relevant information for the image from the Internet.
+message WebDetection {
+ // Entity deduced from similar images on the Internet.
+ message WebEntity {
+ // Opaque entity ID.
+ string entity_id = 1;
+
+ // Overall relevancy score for the entity.
+ // Not normalized and not comparable across different image queries.
+ float score = 2;
+
+ // Canonical description of the entity, in English.
+ string description = 3;
+ }
+
+ // Metadata for online images.
+ message WebImage {
+ // The result image URL.
+ string url = 1;
+
+ // (Deprecated) Overall relevancy score for the image.
+ float score = 2;
+ }
+
+ // Metadata for web pages.
+ message WebPage {
+ // The result web page URL.
+ string url = 1;
+
+ // (Deprecated) Overall relevancy score for the web page.
+ float score = 2;
+
+ // Title for the web page, may contain HTML markups.
+ string page_title = 3;
+
+ // Fully matching images on the page.
+ // Can include resized copies of the query image.
+ repeated WebImage full_matching_images = 4;
+
+ // Partial matching images on the page.
+ // Those images are similar enough to share some key-point features. For
+ // example an original image will likely have partial matching for its
+ // crops.
+ repeated WebImage partial_matching_images = 5;
+ }
+
+ // Label to provide extra metadata for the web detection.
+ message WebLabel {
+ // Label for extra metadata.
+ string label = 1;
+
+ // The BCP-47 language code for `label`, such as "en-US" or "sr-Latn".
+ // For more information, see
+ // http://www.unicode.org/reports/tr35/#Unicode_locale_identifier.
+ string language_code = 2;
+ }
+
+ // Deduced entities from similar images on the Internet.
+ repeated WebEntity web_entities = 1;
+
+ // Fully matching images from the Internet.
+ // Can include resized copies of the query image.
+ repeated WebImage full_matching_images = 2;
+
+ // Partial matching images from the Internet.
+ // Those images are similar enough to share some key-point features. For
+ // example an original image will likely have partial matching for its crops.
+ repeated WebImage partial_matching_images = 3;
+
+ // Web pages containing the matching images from the Internet.
+ repeated WebPage pages_with_matching_images = 4;
+
+ // The visually similar image results.
+ repeated WebImage visually_similar_images = 6;
+
+ // Best guess text labels for the request image.
+ repeated WebLabel best_guess_labels = 8;
+}
diff --git a/packages/google-cloud-vision/protos/google/cloud/vision/v1p4beta1/face.proto b/packages/google-cloud-vision/protos/google/cloud/vision/v1p4beta1/face.proto
new file mode 100644
index 00000000000..d2ab72f0cde
--- /dev/null
+++ b/packages/google-cloud-vision/protos/google/cloud/vision/v1p4beta1/face.proto
@@ -0,0 +1,60 @@
+// Copyright 2019 Google LLC.
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+//
+
+syntax = "proto3";
+
+package google.cloud.vision.v1p4beta1;
+
+import "google/cloud/vision/v1p4beta1/geometry.proto";
+
+option cc_enable_arenas = true;
+option go_package = "google.golang.org/genproto/googleapis/cloud/vision/v1p4beta1;vision";
+option java_multiple_files = true;
+option java_outer_classname = "CelebrityProto";
+option java_package = "com.google.cloud.vision.v1p4beta1";
+option objc_class_prefix = "GCVN";
+
+// Parameters for a celebrity recognition request.
+message FaceRecognitionParams {
+ // The resource names for one or more
+ // [CelebritySet][google.cloud.vision.v1p4beta1.CelebritySet]s. A celebrity
+ // set is preloaded and can be specified as "builtin/default". If this is
+ // specified, the algorithm will try to match the faces detected in the input
+ // image to the Celebrities in the CelebritySets.
+ repeated string celebrity_set = 1;
+}
+
+// A Celebrity is a group of Faces with an identity.
+message Celebrity {
+ // The resource name of the preloaded Celebrity. Has the format
+ // `builtin/{mid}`.
+ string name = 1;
+
+ // The Celebrity's display name.
+ string display_name = 2;
+
+ // The Celebrity's description.
+ string description = 3;
+}
+
+// Information about a face's identity.
+message FaceRecognitionResult {
+ // The [Celebrity][google.cloud.vision.v1p4beta1.Celebrity] that this face was
+ // matched to.
+ Celebrity celebrity = 1;
+
+ // Recognition confidence. Range [0, 1].
+ float confidence = 2;
+}
diff --git a/packages/google-cloud-vision/protos/google/cloud/vision/v1p4beta1/geometry.proto b/packages/google-cloud-vision/protos/google/cloud/vision/v1p4beta1/geometry.proto
new file mode 100644
index 00000000000..877fd8972df
--- /dev/null
+++ b/packages/google-cloud-vision/protos/google/cloud/vision/v1p4beta1/geometry.proto
@@ -0,0 +1,70 @@
+// Copyright 2019 Google LLC.
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+//
+
+syntax = "proto3";
+
+package google.cloud.vision.v1p4beta1;
+
+
+option cc_enable_arenas = true;
+option go_package = "google.golang.org/genproto/googleapis/cloud/vision/v1p4beta1;vision";
+option java_multiple_files = true;
+option java_outer_classname = "GeometryProto";
+option java_package = "com.google.cloud.vision.v1p4beta1";
+option objc_class_prefix = "GCVN";
+
+// A vertex represents a 2D point in the image.
+// NOTE: the vertex coordinates are in the same scale as the original image.
+message Vertex {
+ // X coordinate.
+ int32 x = 1;
+
+ // Y coordinate.
+ int32 y = 2;
+}
+
+// A vertex represents a 2D point in the image.
+// NOTE: the normalized vertex coordinates are relative to the original image
+// and range from 0 to 1.
+message NormalizedVertex {
+ // X coordinate.
+ float x = 1;
+
+ // Y coordinate.
+ float y = 2;
+}
+
+// A bounding polygon for the detected image annotation.
+message BoundingPoly {
+ // The bounding polygon vertices.
+ repeated Vertex vertices = 1;
+
+ // The bounding polygon normalized vertices.
+ repeated NormalizedVertex normalized_vertices = 2;
+}
+
+// A 3D position in the image, used primarily for Face detection landmarks.
+// A valid Position must have both x and y coordinates.
+// The position coordinates are in the same scale as the original image.
+message Position {
+ // X coordinate.
+ float x = 1;
+
+ // Y coordinate.
+ float y = 2;
+
+ // Z coordinate (or depth).
+ float z = 3;
+}
diff --git a/packages/google-cloud-vision/protos/google/cloud/vision/v1p4beta1/image_annotator.proto b/packages/google-cloud-vision/protos/google/cloud/vision/v1p4beta1/image_annotator.proto
new file mode 100644
index 00000000000..cc783697458
--- /dev/null
+++ b/packages/google-cloud-vision/protos/google/cloud/vision/v1p4beta1/image_annotator.proto
@@ -0,0 +1,967 @@
+// Copyright 2019 Google LLC.
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+//
+
+syntax = "proto3";
+
+package google.cloud.vision.v1p4beta1;
+
+import "google/api/annotations.proto";
+import "google/api/client.proto";
+import "google/api/field_behavior.proto";
+import "google/cloud/vision/v1p4beta1/face.proto";
+import "google/cloud/vision/v1p4beta1/geometry.proto";
+import "google/cloud/vision/v1p4beta1/product_search.proto";
+import "google/cloud/vision/v1p4beta1/text_annotation.proto";
+import "google/cloud/vision/v1p4beta1/web_detection.proto";
+import "google/longrunning/operations.proto";
+import "google/protobuf/timestamp.proto";
+import "google/rpc/status.proto";
+import "google/type/color.proto";
+import "google/type/latlng.proto";
+
+option cc_enable_arenas = true;
+option go_package = "google.golang.org/genproto/googleapis/cloud/vision/v1p4beta1;vision";
+option java_multiple_files = true;
+option java_outer_classname = "ImageAnnotatorProto";
+option java_package = "com.google.cloud.vision.v1p4beta1";
+option objc_class_prefix = "GCVN";
+
+// Service that performs Google Cloud Vision API detection tasks over client
+// images, such as face, landmark, logo, label, and text detection. The
+// ImageAnnotator service returns detected entities from the images.
+service ImageAnnotator {
+ option (google.api.default_host) = "vision.googleapis.com";
+ option (google.api.oauth_scopes) =
+ "https://www.googleapis.com/auth/cloud-platform,"
+ "https://www.googleapis.com/auth/cloud-vision";
+
+ // Run image detection and annotation for a batch of images.
+ rpc BatchAnnotateImages(BatchAnnotateImagesRequest)
+ returns (BatchAnnotateImagesResponse) {
+ option (google.api.http) = {
+ post: "/v1p4beta1/images:annotate"
+ body: "*"
+ };
+ option (google.api.method_signature) = "requests";
+ }
+
+ // Service that performs image detection and annotation for a batch of files.
+ // Now only "application/pdf", "image/tiff" and "image/gif" are supported.
+ //
+ // This service will extract at most 5 (customers can specify which 5 in
+ // AnnotateFileRequest.pages) frames (gif) or pages (pdf or tiff) from each
+ // file provided and perform detection and annotation for each image
+ // extracted.
+ rpc BatchAnnotateFiles(BatchAnnotateFilesRequest)
+ returns (BatchAnnotateFilesResponse) {
+ option (google.api.http) = {
+ post: "/v1p4beta1/files:annotate"
+ body: "*"
+ };
+ option (google.api.method_signature) = "requests";
+ }
+
+ // Run asynchronous image detection and annotation for a list of images.
+ //
+ // Progress and results can be retrieved through the
+ // `google.longrunning.Operations` interface.
+ // `Operation.metadata` contains `OperationMetadata` (metadata).
+ // `Operation.response` contains `AsyncBatchAnnotateImagesResponse` (results).
+ //
+ // This service will write image annotation outputs to json files in customer
+ // GCS bucket, each json file containing BatchAnnotateImagesResponse proto.
+ rpc AsyncBatchAnnotateImages(AsyncBatchAnnotateImagesRequest)
+ returns (google.longrunning.Operation) {
+ option (google.api.http) = {
+ post: "/v1p4beta1/images:asyncBatchAnnotate"
+ body: "*"
+ };
+ option (google.api.method_signature) = "requests,output_config";
+ option (google.longrunning.operation_info) = {
+ response_type: "AsyncBatchAnnotateImagesResponse"
+ metadata_type: "OperationMetadata"
+ };
+ }
+
+ // Run asynchronous image detection and annotation for a list of generic
+ // files, such as PDF files, which may contain multiple pages and multiple
+ // images per page. Progress and results can be retrieved through the
+ // `google.longrunning.Operations` interface.
+ // `Operation.metadata` contains `OperationMetadata` (metadata).
+ // `Operation.response` contains `AsyncBatchAnnotateFilesResponse` (results).
+ rpc AsyncBatchAnnotateFiles(AsyncBatchAnnotateFilesRequest)
+ returns (google.longrunning.Operation) {
+ option (google.api.http) = {
+ post: "/v1p4beta1/files:asyncBatchAnnotate"
+ body: "*"
+ };
+ option (google.api.method_signature) = "requests";
+ option (google.longrunning.operation_info) = {
+ response_type: "AsyncBatchAnnotateFilesResponse"
+ metadata_type: "OperationMetadata"
+ };
+ }
+}
+
+// The type of Google Cloud Vision API detection to perform, and the maximum
+// number of results to return for that type. Multiple `Feature` objects can
+// be specified in the `features` list.
+message Feature {
+ // Type of Google Cloud Vision API feature to be extracted.
+ enum Type {
+ // Unspecified feature type.
+ TYPE_UNSPECIFIED = 0;
+
+ // Run face detection.
+ FACE_DETECTION = 1;
+
+ // Run landmark detection.
+ LANDMARK_DETECTION = 2;
+
+ // Run logo detection.
+ LOGO_DETECTION = 3;
+
+ // Run label detection.
+ LABEL_DETECTION = 4;
+
+ // Run text detection / optical character recognition (OCR). Text detection
+ // is optimized for areas of text within a larger image; if the image is
+ // a document, use `DOCUMENT_TEXT_DETECTION` instead.
+ TEXT_DETECTION = 5;
+
+ // Run dense text document OCR. Takes precedence when both
+ // `DOCUMENT_TEXT_DETECTION` and `TEXT_DETECTION` are present.
+ DOCUMENT_TEXT_DETECTION = 11;
+
+ // Run Safe Search to detect potentially unsafe
+ // or undesirable content.
+ SAFE_SEARCH_DETECTION = 6;
+
+ // Compute a set of image properties, such as the
+ // image's dominant colors.
+ IMAGE_PROPERTIES = 7;
+
+ // Run crop hints.
+ CROP_HINTS = 9;
+
+ // Run web detection.
+ WEB_DETECTION = 10;
+
+ // Run Product Search.
+ PRODUCT_SEARCH = 12;
+
+ // Run localizer for object detection.
+ OBJECT_LOCALIZATION = 19;
+ }
+
+ // The feature type.
+ Type type = 1;
+
+ // Maximum number of results of this type. Does not apply to
+ // `TEXT_DETECTION`, `DOCUMENT_TEXT_DETECTION`, or `CROP_HINTS`.
+ int32 max_results = 2;
+
+ // Model to use for the feature.
+ // Supported values: "builtin/stable" (the default if unset) and
+ // "builtin/latest". `DOCUMENT_TEXT_DETECTION` and `TEXT_DETECTION` also
+ // support "builtin/weekly" for the bleeding edge release updated weekly.
+ string model = 3;
+}
+
+// External image source (Google Cloud Storage or web URL image location).
+message ImageSource {
+ // **Use `image_uri` instead.**
+ //
+ // The Google Cloud Storage URI of the form
+ // `gs://bucket_name/object_name`. Object versioning is not supported. See
+ // [Google Cloud Storage Request
+ // URIs](https://cloud.google.com/storage/docs/reference-uris) for more info.
+ string gcs_image_uri = 1;
+
+ // The URI of the source image. Can be either:
+ //
+ // 1. A Google Cloud Storage URI of the form
+ // `gs://bucket_name/object_name`. Object versioning is not supported. See
+ // [Google Cloud Storage Request
+ // URIs](https://cloud.google.com/storage/docs/reference-uris) for more
+ // info.
+ //
+ // 2. A publicly-accessible image HTTP/HTTPS URL. When fetching images from
+ // HTTP/HTTPS URLs, Google cannot guarantee that the request will be
+ // completed. Your request may fail if the specified host denies the
+ // request (e.g. due to request throttling or DOS prevention), or if Google
+ // throttles requests to the site for abuse prevention. You should not
+ // depend on externally-hosted images for production applications.
+ //
+ // When both `gcs_image_uri` and `image_uri` are specified, `image_uri` takes
+ // precedence.
+ string image_uri = 2;
+}
+
+// Client image to perform Google Cloud Vision API tasks over.
+message Image {
+ // Image content, represented as a stream of bytes.
+ // Note: As with all `bytes` fields, protobuffers use a pure binary
+ // representation, whereas JSON representations use base64.
+ bytes content = 1;
+
+ // Google Cloud Storage image location, or publicly-accessible image
+ // URL. If both `content` and `source` are provided for an image, `content`
+ // takes precedence and is used to perform the image annotation request.
+ ImageSource source = 2;
+}
+
+// A bucketized representation of likelihood, which is intended to give clients
+// highly stable results across model upgrades.
+enum Likelihood {
+ // Unknown likelihood.
+ UNKNOWN = 0;
+
+ // It is very unlikely.
+ VERY_UNLIKELY = 1;
+
+ // It is unlikely.
+ UNLIKELY = 2;
+
+ // It is possible.
+ POSSIBLE = 3;
+
+ // It is likely.
+ LIKELY = 4;
+
+ // It is very likely.
+ VERY_LIKELY = 5;
+}
+
+// A face annotation object contains the results of face detection.
+message FaceAnnotation {
+ // A face-specific landmark (for example, a face feature).
+ message Landmark {
+ // Face landmark (feature) type.
+ // Left and right are defined from the vantage of the viewer of the image
+ // without considering mirror projections typical of photos. So, `LEFT_EYE`,
+ // typically, is the person's right eye.
+ enum Type {
+ // Unknown face landmark detected. Should not be filled.
+ UNKNOWN_LANDMARK = 0;
+
+ // Left eye.
+ LEFT_EYE = 1;
+
+ // Right eye.
+ RIGHT_EYE = 2;
+
+ // Left of left eyebrow.
+ LEFT_OF_LEFT_EYEBROW = 3;
+
+ // Right of left eyebrow.
+ RIGHT_OF_LEFT_EYEBROW = 4;
+
+ // Left of right eyebrow.
+ LEFT_OF_RIGHT_EYEBROW = 5;
+
+ // Right of right eyebrow.
+ RIGHT_OF_RIGHT_EYEBROW = 6;
+
+ // Midpoint between eyes.
+ MIDPOINT_BETWEEN_EYES = 7;
+
+ // Nose tip.
+ NOSE_TIP = 8;
+
+ // Upper lip.
+ UPPER_LIP = 9;
+
+ // Lower lip.
+ LOWER_LIP = 10;
+
+ // Mouth left.
+ MOUTH_LEFT = 11;
+
+ // Mouth right.
+ MOUTH_RIGHT = 12;
+
+ // Mouth center.
+ MOUTH_CENTER = 13;
+
+ // Nose, bottom right.
+ NOSE_BOTTOM_RIGHT = 14;
+
+ // Nose, bottom left.
+ NOSE_BOTTOM_LEFT = 15;
+
+ // Nose, bottom center.
+ NOSE_BOTTOM_CENTER = 16;
+
+ // Left eye, top boundary.
+ LEFT_EYE_TOP_BOUNDARY = 17;
+
+ // Left eye, right corner.
+ LEFT_EYE_RIGHT_CORNER = 18;
+
+ // Left eye, bottom boundary.
+ LEFT_EYE_BOTTOM_BOUNDARY = 19;
+
+ // Left eye, left corner.
+ LEFT_EYE_LEFT_CORNER = 20;
+
+ // Right eye, top boundary.
+ RIGHT_EYE_TOP_BOUNDARY = 21;
+
+ // Right eye, right corner.
+ RIGHT_EYE_RIGHT_CORNER = 22;
+
+ // Right eye, bottom boundary.
+ RIGHT_EYE_BOTTOM_BOUNDARY = 23;
+
+ // Right eye, left corner.
+ RIGHT_EYE_LEFT_CORNER = 24;
+
+ // Left eyebrow, upper midpoint.
+ LEFT_EYEBROW_UPPER_MIDPOINT = 25;
+
+ // Right eyebrow, upper midpoint.
+ RIGHT_EYEBROW_UPPER_MIDPOINT = 26;
+
+ // Left ear tragion.
+ LEFT_EAR_TRAGION = 27;
+
+ // Right ear tragion.
+ RIGHT_EAR_TRAGION = 28;
+
+ // Left eye pupil.
+ LEFT_EYE_PUPIL = 29;
+
+ // Right eye pupil.
+ RIGHT_EYE_PUPIL = 30;
+
+ // Forehead glabella.
+ FOREHEAD_GLABELLA = 31;
+
+ // Chin gnathion.
+ CHIN_GNATHION = 32;
+
+ // Chin left gonion.
+ CHIN_LEFT_GONION = 33;
+
+ // Chin right gonion.
+ CHIN_RIGHT_GONION = 34;
+ }
+
+ // Face landmark type.
+ Type type = 3;
+
+ // Face landmark position.
+ Position position = 4;
+ }
+
+ // The bounding polygon around the face. The coordinates of the bounding box
+ // are in the original image's scale.
+ // The bounding box is computed to "frame" the face in accordance with human
+ // expectations. It is based on the landmarker results.
+ // Note that one or more x and/or y coordinates may not be generated in the
+ // `BoundingPoly` (the polygon will be unbounded) if only a partial face
+ // appears in the image to be annotated.
+ BoundingPoly bounding_poly = 1;
+
+ // The `fd_bounding_poly` bounding polygon is tighter than the
+ // `boundingPoly`, and encloses only the skin part of the face. Typically, it
+ // is used to eliminate the face from any image analysis that detects the
+ // "amount of skin" visible in an image. It is not based on the
+ // landmarker results, only on the initial face detection, hence
+ // the fd (face detection) prefix.
+ BoundingPoly fd_bounding_poly = 2;
+
+ // Detected face landmarks.
+ repeated Landmark landmarks = 3;
+
+ // Roll angle, which indicates the amount of clockwise/anti-clockwise rotation
+ // of the face relative to the image vertical about the axis perpendicular to
+ // the face. Range [-180,180].
+ float roll_angle = 4;
+
+ // Yaw angle, which indicates the leftward/rightward angle that the face is
+ // pointing relative to the vertical plane perpendicular to the image. Range
+ // [-180,180].
+ float pan_angle = 5;
+
+ // Pitch angle, which indicates the upwards/downwards angle that the face is
+ // pointing relative to the image's horizontal plane. Range [-180,180].
+ float tilt_angle = 6;
+
+ // Detection confidence. Range [0, 1].
+ float detection_confidence = 7;
+
+ // Face landmarking confidence. Range [0, 1].
+ float landmarking_confidence = 8;
+
+ // Joy likelihood.
+ Likelihood joy_likelihood = 9;
+
+ // Sorrow likelihood.
+ Likelihood sorrow_likelihood = 10;
+
+ // Anger likelihood.
+ Likelihood anger_likelihood = 11;
+
+ // Surprise likelihood.
+ Likelihood surprise_likelihood = 12;
+
+ // Under-exposed likelihood.
+ Likelihood under_exposed_likelihood = 13;
+
+ // Blurred likelihood.
+ Likelihood blurred_likelihood = 14;
+
+ // Headwear likelihood.
+ Likelihood headwear_likelihood = 15;
+
+ // Additional recognition information. Only computed if
+ // image_context.face_recognition_params is provided, **and** a match is found
+ // to a [Celebrity][google.cloud.vision.v1p4beta1.Celebrity] in the input
+ // [CelebritySet][google.cloud.vision.v1p4beta1.CelebritySet]. This field is
+ // sorted in order of decreasing confidence values.
+ repeated FaceRecognitionResult recognition_result = 16;
+}
+
+// Detected entity location information.
+message LocationInfo {
+ // lat/long location coordinates.
+ google.type.LatLng lat_lng = 1;
+}
+
+// A `Property` consists of a user-supplied name/value pair.
+message Property {
+ // Name of the property.
+ string name = 1;
+
+ // Value of the property.
+ string value = 2;
+
+ // Value of numeric properties.
+ uint64 uint64_value = 3;
+}
+
+// Set of detected entity features.
+message EntityAnnotation {
+ // Opaque entity ID. Some IDs may be available in
+ // [Google Knowledge Graph Search
+ // API](https://developers.google.com/knowledge-graph/).
+ string mid = 1;
+
+ // The language code for the locale in which the entity textual
+ // `description` is expressed.
+ string locale = 2;
+
+ // Entity textual description, expressed in its `locale` language.
+ string description = 3;
+
+ // Overall score of the result. Range [0, 1].
+ float score = 4;
+
+ // **Deprecated. Use `score` instead.**
+ // The accuracy of the entity detection in an image.
+ // For example, for an image in which the "Eiffel Tower" entity is detected,
+ // this field represents the confidence that there is a tower in the query
+ // image. Range [0, 1].
+ float confidence = 5 [deprecated = true];
+
+ // The relevancy of the ICA (Image Content Annotation) label to the
+ // image. For example, the relevancy of "tower" is likely higher to an image
+ // containing the detected "Eiffel Tower" than to an image containing a
+ // detected distant towering building, even though the confidence that
+ // there is a tower in each image may be the same. Range [0, 1].
+ float topicality = 6;
+
+ // Image region to which this entity belongs. Not produced
+ // for `LABEL_DETECTION` features.
+ BoundingPoly bounding_poly = 7;
+
+ // The location information for the detected entity. Multiple
+ // `LocationInfo` elements can be present because one location may
+ // indicate the location of the scene in the image, and another location
+ // may indicate the location of the place where the image was taken.
+ // Location information is usually present for landmarks.
+ repeated LocationInfo locations = 8;
+
+ // Some entities may have optional user-supplied `Property` (name/value)
+ // fields, such a score or string that qualifies the entity.
+ repeated Property properties = 9;
+}
+
+// Set of detected objects with bounding boxes.
+message LocalizedObjectAnnotation {
+ // Object ID that should align with EntityAnnotation mid.
+ string mid = 1;
+
+ // The BCP-47 language code, such as "en-US" or "sr-Latn". For more
+ // information, see
+ // http://www.unicode.org/reports/tr35/#Unicode_locale_identifier.
+ string language_code = 2;
+
+ // Object name, expressed in its `language_code` language.
+ string name = 3;
+
+ // Score of the result. Range [0, 1].
+ float score = 4;
+
+ // Image region to which this object belongs. This must be populated.
+ BoundingPoly bounding_poly = 5;
+}
+
+// Set of features pertaining to the image, computed by computer vision
+// methods over safe-search verticals (for example, adult, spoof, medical,
+// violence).
+message SafeSearchAnnotation {
+ // Represents the adult content likelihood for the image. Adult content may
+ // contain elements such as nudity, pornographic images or cartoons, or
+ // sexual activities.
+ Likelihood adult = 1;
+
+ // Spoof likelihood. The likelihood that an modification
+ // was made to the image's canonical version to make it appear
+ // funny or offensive.
+ Likelihood spoof = 2;
+
+ // Likelihood that this is a medical image.
+ Likelihood medical = 3;
+
+ // Likelihood that this image contains violent content.
+ Likelihood violence = 4;
+
+ // Likelihood that the request image contains racy content. Racy content may
+ // include (but is not limited to) skimpy or sheer clothing, strategically
+ // covered nudity, lewd or provocative poses, or close-ups of sensitive
+ // body areas.
+ Likelihood racy = 9;
+}
+
+// Rectangle determined by min and max `LatLng` pairs.
+message LatLongRect {
+ // Min lat/long pair.
+ google.type.LatLng min_lat_lng = 1;
+
+ // Max lat/long pair.
+ google.type.LatLng max_lat_lng = 2;
+}
+
+// Color information consists of RGB channels, score, and the fraction of
+// the image that the color occupies in the image.
+message ColorInfo {
+ // RGB components of the color.
+ google.type.Color color = 1;
+
+ // Image-specific score for this color. Value in range [0, 1].
+ float score = 2;
+
+ // The fraction of pixels the color occupies in the image.
+ // Value in range [0, 1].
+ float pixel_fraction = 3;
+}
+
+// Set of dominant colors and their corresponding scores.
+message DominantColorsAnnotation {
+ // RGB color values with their score and pixel fraction.
+ repeated ColorInfo colors = 1;
+}
+
+// Stores image properties, such as dominant colors.
+message ImageProperties {
+ // If present, dominant colors completed successfully.
+ DominantColorsAnnotation dominant_colors = 1;
+}
+
+// Single crop hint that is used to generate a new crop when serving an image.
+message CropHint {
+ // The bounding polygon for the crop region. The coordinates of the bounding
+ // box are in the original image's scale.
+ BoundingPoly bounding_poly = 1;
+
+ // Confidence of this being a salient region. Range [0, 1].
+ float confidence = 2;
+
+ // Fraction of importance of this salient region with respect to the original
+ // image.
+ float importance_fraction = 3;
+}
+
+// Set of crop hints that are used to generate new crops when serving images.
+message CropHintsAnnotation {
+ // Crop hint results.
+ repeated CropHint crop_hints = 1;
+}
+
+// Parameters for crop hints annotation request.
+message CropHintsParams {
+ // Aspect ratios in floats, representing the ratio of the width to the height
+ // of the image. For example, if the desired aspect ratio is 4/3, the
+ // corresponding float value should be 1.33333. If not specified, the
+ // best possible crop is returned. The number of provided aspect ratios is
+ // limited to a maximum of 16; any aspect ratios provided after the 16th are
+ // ignored.
+ repeated float aspect_ratios = 1;
+}
+
+// Parameters for web detection request.
+message WebDetectionParams {
+ // Whether to include results derived from the geo information in the image.
+ bool include_geo_results = 2;
+}
+
+// Parameters for text detections. This is used to control TEXT_DETECTION and
+// DOCUMENT_TEXT_DETECTION features.
+message TextDetectionParams {
+
+ // By default, Cloud Vision API only includes confidence score for
+ // DOCUMENT_TEXT_DETECTION result. Set the flag to true to include confidence
+ // score for TEXT_DETECTION as well.
+ bool enable_text_detection_confidence_score = 9;
+
+ // A list of advanced OCR options to fine-tune OCR behavior.
+ repeated string advanced_ocr_options = 11;
+}
+
+// Image context and/or feature-specific parameters.
+message ImageContext {
+ // Not used.
+ LatLongRect lat_long_rect = 1;
+
+ // List of languages to use for TEXT_DETECTION. In most cases, an empty value
+ // yields the best results since it enables automatic language detection. For
+ // languages based on the Latin alphabet, setting `language_hints` is not
+ // needed. In rare cases, when the language of the text in the image is known,
+ // setting a hint will help get better results (although it will be a
+ // significant hindrance if the hint is wrong). Text detection returns an
+ // error if one or more of the specified languages is not one of the
+ // [supported languages](https://cloud.google.com/vision/docs/languages).
+ repeated string language_hints = 2;
+
+ // Parameters for crop hints annotation request.
+ CropHintsParams crop_hints_params = 4;
+
+ // Parameters for face recognition.
+ FaceRecognitionParams face_recognition_params = 10;
+
+ // Parameters for product search.
+ ProductSearchParams product_search_params = 5;
+
+ // Parameters for web detection.
+ WebDetectionParams web_detection_params = 6;
+
+ // Parameters for text detection and document text detection.
+ TextDetectionParams text_detection_params = 12;
+}
+
+// Request for performing Google Cloud Vision API tasks over a user-provided
+// image, with user-requested features, and with context information.
+message AnnotateImageRequest {
+ // The image to be processed.
+ Image image = 1;
+
+ // Requested features.
+ repeated Feature features = 2;
+
+ // Additional context that may accompany the image.
+ ImageContext image_context = 3;
+}
+
+// If an image was produced from a file (e.g. a PDF), this message gives
+// information about the source of that image.
+message ImageAnnotationContext {
+ // The URI of the file used to produce the image.
+ string uri = 1;
+
+ // If the file was a PDF or TIFF, this field gives the page number within
+ // the file used to produce the image.
+ int32 page_number = 2;
+}
+
+// Response to an image annotation request.
+message AnnotateImageResponse {
+ // If present, face detection has completed successfully.
+ repeated FaceAnnotation face_annotations = 1;
+
+ // If present, landmark detection has completed successfully.
+ repeated EntityAnnotation landmark_annotations = 2;
+
+ // If present, logo detection has completed successfully.
+ repeated EntityAnnotation logo_annotations = 3;
+
+ // If present, label detection has completed successfully.
+ repeated EntityAnnotation label_annotations = 4;
+
+ // If present, localized object detection has completed successfully.
+ // This will be sorted descending by confidence score.
+ repeated LocalizedObjectAnnotation localized_object_annotations = 22;
+
+ // If present, text (OCR) detection has completed successfully.
+ repeated EntityAnnotation text_annotations = 5;
+
+ // If present, text (OCR) detection or document (OCR) text detection has
+ // completed successfully.
+ // This annotation provides the structural hierarchy for the OCR detected
+ // text.
+ TextAnnotation full_text_annotation = 12;
+
+ // If present, safe-search annotation has completed successfully.
+ SafeSearchAnnotation safe_search_annotation = 6;
+
+ // If present, image properties were extracted successfully.
+ ImageProperties image_properties_annotation = 8;
+
+ // If present, crop hints have completed successfully.
+ CropHintsAnnotation crop_hints_annotation = 11;
+
+ // If present, web detection has completed successfully.
+ WebDetection web_detection = 13;
+
+ // If present, product search has completed successfully.
+ ProductSearchResults product_search_results = 14;
+
+ // If set, represents the error message for the operation.
+ // Note that filled-in image annotations are guaranteed to be
+ // correct, even when `error` is set.
+ google.rpc.Status error = 9;
+
+ // If present, contextual information is needed to understand where this image
+ // comes from.
+ ImageAnnotationContext context = 21;
+}
+
+// Multiple image annotation requests are batched into a single service call.
+message BatchAnnotateImagesRequest {
+ // Required. Individual image annotation requests for this batch.
+ repeated AnnotateImageRequest requests = 1 [(google.api.field_behavior) = REQUIRED];
+}
+
+// Response to a batch image annotation request.
+message BatchAnnotateImagesResponse {
+ // Individual responses to image annotation requests within the batch.
+ repeated AnnotateImageResponse responses = 1;
+}
+
+// A request to annotate one single file, e.g. a PDF, TIFF or GIF file.
+message AnnotateFileRequest {
+ // Required. Information about the input file.
+ InputConfig input_config = 1;
+
+ // Required. Requested features.
+ repeated Feature features = 2;
+
+ // Additional context that may accompany the image(s) in the file.
+ ImageContext image_context = 3;
+
+ // Pages of the file to perform image annotation.
+ //
+ // Pages starts from 1, we assume the first page of the file is page 1.
+ // At most 5 pages are supported per request. Pages can be negative.
+ //
+ // Page 1 means the first page.
+ // Page 2 means the second page.
+ // Page -1 means the last page.
+ // Page -2 means the second to the last page.
+ //
+ // If the file is GIF instead of PDF or TIFF, page refers to GIF frames.
+ //
+ // If this field is empty, by default the service performs image annotation
+ // for the first 5 pages of the file.
+ repeated int32 pages = 4;
+}
+
+// Response to a single file annotation request. A file may contain one or more
+// images, which individually have their own responses.
+message AnnotateFileResponse {
+ // Information about the file for which this response is generated.
+ InputConfig input_config = 1;
+
+ // Individual responses to images found within the file. This field will be
+ // empty if the `error` field is set.
+ repeated AnnotateImageResponse responses = 2;
+
+ // This field gives the total number of pages in the file.
+ int32 total_pages = 3;
+
+ // If set, represents the error message for the failed request. The
+ // `responses` field will not be set in this case.
+ google.rpc.Status error = 4;
+}
+
+// A list of requests to annotate files using the BatchAnnotateFiles API.
+message BatchAnnotateFilesRequest {
+ // Required. The list of file annotation requests. Right now we support only
+ // one AnnotateFileRequest in BatchAnnotateFilesRequest.
+ repeated AnnotateFileRequest requests = 1
+ [(google.api.field_behavior) = REQUIRED];
+}
+
+// A list of file annotation responses.
+message BatchAnnotateFilesResponse {
+ // The list of file annotation responses, each response corresponding to each
+ // AnnotateFileRequest in BatchAnnotateFilesRequest.
+ repeated AnnotateFileResponse responses = 1;
+}
+
+// An offline file annotation request.
+message AsyncAnnotateFileRequest {
+ // Required. Information about the input file.
+ InputConfig input_config = 1;
+
+ // Required. Requested features.
+ repeated Feature features = 2;
+
+ // Additional context that may accompany the image(s) in the file.
+ ImageContext image_context = 3;
+
+ // Required. The desired output location and metadata (e.g. format).
+ OutputConfig output_config = 4;
+}
+
+// The response for a single offline file annotation request.
+message AsyncAnnotateFileResponse {
+ // The output location and metadata from AsyncAnnotateFileRequest.
+ OutputConfig output_config = 1;
+}
+
+// Request for async image annotation for a list of images.
+message AsyncBatchAnnotateImagesRequest {
+ // Required. Individual image annotation requests for this batch.
+ repeated AnnotateImageRequest requests = 1
+ [(google.api.field_behavior) = REQUIRED];
+
+ // Required. The desired output location and metadata (e.g. format).
+ OutputConfig output_config = 2 [(google.api.field_behavior) = REQUIRED];
+}
+
+// Response to an async batch image annotation request.
+message AsyncBatchAnnotateImagesResponse {
+ // The output location and metadata from AsyncBatchAnnotateImagesRequest.
+ OutputConfig output_config = 1;
+}
+
+// Multiple async file annotation requests are batched into a single service
+// call.
+message AsyncBatchAnnotateFilesRequest {
+ // Required. Individual async file annotation requests for this batch.
+ repeated AsyncAnnotateFileRequest requests = 1
+ [(google.api.field_behavior) = REQUIRED];
+}
+
+// Response to an async batch file annotation request.
+message AsyncBatchAnnotateFilesResponse {
+ // The list of file annotation responses, one for each request in
+ // AsyncBatchAnnotateFilesRequest.
+ repeated AsyncAnnotateFileResponse responses = 1;
+}
+
+// The desired input location and metadata.
+message InputConfig {
+ // The Google Cloud Storage location to read the input from.
+ GcsSource gcs_source = 1;
+
+ // File content, represented as a stream of bytes.
+ // Note: As with all `bytes` fields, protobuffers use a pure binary
+ // representation, whereas JSON representations use base64.
+ //
+ // Currently, this field only works for BatchAnnotateFiles requests. It does
+ // not work for AsyncBatchAnnotateFiles requests.
+ bytes content = 3;
+
+ // The type of the file. Currently only "application/pdf", "image/tiff" and
+ // "image/gif" are supported. Wildcards are not supported.
+ string mime_type = 2;
+}
+
+// The desired output location and metadata.
+message OutputConfig {
+ // The Google Cloud Storage location to write the output(s) to.
+ GcsDestination gcs_destination = 1;
+
+ // The max number of response protos to put into each output JSON file on
+ // Google Cloud Storage.
+ // The valid range is [1, 100]. If not specified, the default value is 20.
+ //
+ // For example, for one pdf file with 100 pages, 100 response protos will
+ // be generated. If `batch_size` = 20, then 5 json files each
+ // containing 20 response protos will be written under the prefix
+ // `gcs_destination`.`uri`.
+ //
+ // Currently, batch_size only applies to GcsDestination, with potential future
+ // support for other output configurations.
+ int32 batch_size = 2;
+}
+
+// The Google Cloud Storage location where the input will be read from.
+message GcsSource {
+ // Google Cloud Storage URI for the input file. This must only be a
+ // Google Cloud Storage object. Wildcards are not currently supported.
+ string uri = 1;
+}
+
+// The Google Cloud Storage location where the output will be written to.
+message GcsDestination {
+ // Google Cloud Storage URI prefix where the results will be stored. Results
+ // will be in JSON format and preceded by its corresponding input URI prefix.
+ // This field can either represent a gcs file prefix or gcs directory. In
+ // either case, the uri should be unique because in order to get all of the
+ // output files, you will need to do a wildcard gcs search on the uri prefix
+ // you provide.
+ //
+ // Examples:
+ //
+ // * File Prefix: gs://bucket-name/here/filenameprefix The output files
+ // will be created in gs://bucket-name/here/ and the names of the
+ // output files will begin with "filenameprefix".
+ //
+ // * Directory Prefix: gs://bucket-name/some/location/ The output files
+ // will be created in gs://bucket-name/some/location/ and the names of the
+ // output files could be anything because there was no filename prefix
+ // specified.
+ //
+ // If multiple outputs, each response is still AnnotateFileResponse, each of
+ // which contains some subset of the full list of AnnotateImageResponse.
+ // Multiple outputs can happen if, for example, the output JSON is too large
+ // and overflows into multiple sharded files.
+ string uri = 1;
+}
+
+// Contains metadata for the BatchAnnotateImages operation.
+message OperationMetadata {
+ // Batch operation states.
+ enum State {
+ // Invalid.
+ STATE_UNSPECIFIED = 0;
+
+ // Request is received.
+ CREATED = 1;
+
+ // Request is actively being processed.
+ RUNNING = 2;
+
+ // The batch processing is done.
+ DONE = 3;
+
+ // The batch processing was cancelled.
+ CANCELLED = 4;
+ }
+
+ // Current state of the batch operation.
+ State state = 1;
+
+ // The time when the batch request was received.
+ google.protobuf.Timestamp create_time = 5;
+
+ // The time when the operation result was last updated.
+ google.protobuf.Timestamp update_time = 6;
+}
diff --git a/packages/google-cloud-vision/protos/google/cloud/vision/v1p4beta1/product_search.proto b/packages/google-cloud-vision/protos/google/cloud/vision/v1p4beta1/product_search.proto
new file mode 100644
index 00000000000..ebb428acc80
--- /dev/null
+++ b/packages/google-cloud-vision/protos/google/cloud/vision/v1p4beta1/product_search.proto
@@ -0,0 +1,127 @@
+// Copyright 2019 Google LLC.
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+//
+
+syntax = "proto3";
+
+package google.cloud.vision.v1p4beta1;
+
+import "google/api/resource.proto";
+import "google/cloud/vision/v1p4beta1/geometry.proto";
+import "google/cloud/vision/v1p4beta1/product_search_service.proto";
+import "google/protobuf/timestamp.proto";
+
+option cc_enable_arenas = true;
+option go_package = "google.golang.org/genproto/googleapis/cloud/vision/v1p4beta1;vision";
+option java_multiple_files = true;
+option java_outer_classname = "ProductSearchProto";
+option java_package = "com.google.cloud.vision.v1p4beta1";
+option objc_class_prefix = "GCVN";
+
+// Parameters for a product search request.
+message ProductSearchParams {
+ // The bounding polygon around the area of interest in the image.
+ // If it is not specified, system discretion will be applied.
+ BoundingPoly bounding_poly = 9;
+
+ // The resource name of a
+ // [ProductSet][google.cloud.vision.v1p4beta1.ProductSet] to be searched for
+ // similar images.
+ //
+ // Format is:
+ // `projects/PROJECT_ID/locations/LOC_ID/productSets/PRODUCT_SET_ID`.
+ string product_set = 6 [(google.api.resource_reference) = {
+ type: "vision.googleapis.com/ProductSet"
+ }];
+
+ // The list of product categories to search in. Currently, we only consider
+ // the first category, and either "homegoods-v2", "apparel-v2", "toys-v2",
+ // "packagedgoods-v1", or "general-v1" should be specified. The legacy
+ // categories "homegoods", "apparel", and "toys" are still supported but will
+ // be deprecated. For new products, please use "homegoods-v2", "apparel-v2",
+ // or "toys-v2" for better product search accuracy. It is recommended to
+ // migrate existing products to these categories as well.
+ repeated string product_categories = 7;
+
+ // The filtering expression. This can be used to restrict search results based
+ // on Product labels. We currently support an AND of OR of key-value
+ // expressions, where each expression within an OR must have the same key. An
+ // '=' should be used to connect the key and value.
+ //
+ // For example, "(color = red OR color = blue) AND brand = Google" is
+ // acceptable, but "(color = red OR brand = Google)" is not acceptable.
+ // "color: red" is not acceptable because it uses a ':' instead of an '='.
+ string filter = 8;
+}
+
+// Results for a product search request.
+message ProductSearchResults {
+ // Information about a product.
+ message Result {
+ // The Product.
+ Product product = 1;
+
+ // A confidence level on the match, ranging from 0 (no confidence) to
+ // 1 (full confidence).
+ float score = 2;
+
+ // The resource name of the image from the product that is the closest match
+ // to the query.
+ string image = 3;
+ }
+
+ // Prediction for what the object in the bounding box is.
+ message ObjectAnnotation {
+ // Object ID that should align with EntityAnnotation mid.
+ string mid = 1;
+
+ // The BCP-47 language code, such as "en-US" or "sr-Latn". For more
+ // information, see
+ // http://www.unicode.org/reports/tr35/#Unicode_locale_identifier.
+ string language_code = 2;
+
+ // Object name, expressed in its `language_code` language.
+ string name = 3;
+
+ // Score of the result. Range [0, 1].
+ float score = 4;
+ }
+
+ // Information about the products similar to a single product in a query
+ // image.
+ message GroupedResult {
+ // The bounding polygon around the product detected in the query image.
+ BoundingPoly bounding_poly = 1;
+
+ // List of results, one for each product match.
+ repeated Result results = 2;
+
+ // List of generic predictions for the object in the bounding box.
+ repeated ObjectAnnotation object_annotations = 3;
+ }
+
+ // Timestamp of the index which provided these results. Products added to the
+ // product set and products removed from the product set after this time are
+ // not reflected in the current results.
+ google.protobuf.Timestamp index_time = 2;
+
+ // List of results, one for each product match.
+ repeated Result results = 5;
+
+ // List of results grouped by products detected in the query image. Each entry
+ // corresponds to one bounding polygon in the query image, and contains the
+ // matching products specific to that region. There may be duplicate product
+ // matches in the union of all the per-product results.
+ repeated GroupedResult product_grouped_results = 6;
+}
diff --git a/packages/google-cloud-vision/protos/google/cloud/vision/v1p4beta1/product_search_service.proto b/packages/google-cloud-vision/protos/google/cloud/vision/v1p4beta1/product_search_service.proto
new file mode 100644
index 00000000000..df7bc7a38a4
--- /dev/null
+++ b/packages/google-cloud-vision/protos/google/cloud/vision/v1p4beta1/product_search_service.proto
@@ -0,0 +1,1039 @@
+// Copyright 2019 Google LLC.
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+//
+
+syntax = "proto3";
+
+package google.cloud.vision.v1p4beta1;
+
+import "google/api/annotations.proto";
+import "google/api/client.proto";
+import "google/api/field_behavior.proto";
+import "google/api/resource.proto";
+import "google/cloud/vision/v1p4beta1/geometry.proto";
+import "google/longrunning/operations.proto";
+import "google/protobuf/empty.proto";
+import "google/protobuf/field_mask.proto";
+import "google/protobuf/timestamp.proto";
+import "google/rpc/status.proto";
+
+option cc_enable_arenas = true;
+option go_package = "google.golang.org/genproto/googleapis/cloud/vision/v1p4beta1;vision";
+option java_multiple_files = true;
+option java_outer_classname = "ProductSearchServiceProto";
+option java_package = "com.google.cloud.vision.v1p4beta1";
+option objc_class_prefix = "GCVN";
+
+// Manages Products and ProductSets of reference images for use in product
+// search. It uses the following resource model:
+//
+// - The API has a collection of
+// [ProductSet][google.cloud.vision.v1p4beta1.ProductSet] resources, named
+// `projects/*/locations/*/productSets/*`, which acts as a way to put different
+// products into groups to limit identification.
+//
+// In parallel,
+//
+// - The API has a collection of
+// [Product][google.cloud.vision.v1p4beta1.Product] resources, named
+// `projects/*/locations/*/products/*`
+//
+// - Each [Product][google.cloud.vision.v1p4beta1.Product] has a collection of
+// [ReferenceImage][google.cloud.vision.v1p4beta1.ReferenceImage] resources,
+// named
+// `projects/*/locations/*/products/*/referenceImages/*`
+service ProductSearch {
+ option (google.api.default_host) = "vision.googleapis.com";
+ option (google.api.oauth_scopes) =
+ "https://www.googleapis.com/auth/cloud-platform,"
+ "https://www.googleapis.com/auth/cloud-vision";
+
+ // Creates and returns a new ProductSet resource.
+ //
+ // Possible errors:
+ //
+ // * Returns INVALID_ARGUMENT if display_name is missing, or is longer than
+ // 4096 characters.
+ rpc CreateProductSet(CreateProductSetRequest) returns (ProductSet) {
+ option (google.api.http) = {
+ post: "/v1p4beta1/{parent=projects/*/locations/*}/productSets"
+ body: "product_set"
+ };
+ option (google.api.method_signature) = "parent,product_set,product_set_id";
+ }
+
+ // Lists ProductSets in an unspecified order.
+ //
+ // Possible errors:
+ //
+ // * Returns INVALID_ARGUMENT if page_size is greater than 100, or less
+ // than 1.
+ rpc ListProductSets(ListProductSetsRequest)
+ returns (ListProductSetsResponse) {
+ option (google.api.http) = {
+ get: "/v1p4beta1/{parent=projects/*/locations/*}/productSets"
+ };
+ option (google.api.method_signature) = "parent";
+ }
+
+ // Gets information associated with a ProductSet.
+ //
+ // Possible errors:
+ //
+ // * Returns NOT_FOUND if the ProductSet does not exist.
+ rpc GetProductSet(GetProductSetRequest) returns (ProductSet) {
+ option (google.api.http) = {
+ get: "/v1p4beta1/{name=projects/*/locations/*/productSets/*}"
+ };
+ option (google.api.method_signature) = "name";
+ }
+
+ // Makes changes to a ProductSet resource.
+ // Only display_name can be updated currently.
+ //
+ // Possible errors:
+ //
+ // * Returns NOT_FOUND if the ProductSet does not exist.
+ // * Returns INVALID_ARGUMENT if display_name is present in update_mask but
+ // missing from the request or longer than 4096 characters.
+ rpc UpdateProductSet(UpdateProductSetRequest) returns (ProductSet) {
+ option (google.api.http) = {
+ patch: "/v1p4beta1/{product_set.name=projects/*/locations/*/productSets/*}"
+ body: "product_set"
+ };
+ option (google.api.method_signature) = "product_set,update_mask";
+ }
+
+ // Permanently deletes a ProductSet. Products and ReferenceImages in the
+ // ProductSet are not deleted.
+ //
+ // The actual image files are not deleted from Google Cloud Storage.
+ rpc DeleteProductSet(DeleteProductSetRequest)
+ returns (google.protobuf.Empty) {
+ option (google.api.http) = {
+ delete: "/v1p4beta1/{name=projects/*/locations/*/productSets/*}"
+ };
+ option (google.api.method_signature) = "name";
+ }
+
+ // Creates and returns a new product resource.
+ //
+ // Possible errors:
+ //
+ // * Returns INVALID_ARGUMENT if display_name is missing or longer than 4096
+ // characters.
+ // * Returns INVALID_ARGUMENT if description is longer than 4096 characters.
+ // * Returns INVALID_ARGUMENT if product_category is missing or invalid.
+ rpc CreateProduct(CreateProductRequest) returns (Product) {
+ option (google.api.http) = {
+ post: "/v1p4beta1/{parent=projects/*/locations/*}/products"
+ body: "product"
+ };
+ option (google.api.method_signature) = "parent,product,product_id";
+ }
+
+ // Lists products in an unspecified order.
+ //
+ // Possible errors:
+ //
+ // * Returns INVALID_ARGUMENT if page_size is greater than 100 or less than 1.
+ rpc ListProducts(ListProductsRequest) returns (ListProductsResponse) {
+ option (google.api.http) = {
+ get: "/v1p4beta1/{parent=projects/*/locations/*}/products"
+ };
+ option (google.api.method_signature) = "parent";
+ }
+
+ // Gets information associated with a Product.
+ //
+ // Possible errors:
+ //
+ // * Returns NOT_FOUND if the Product does not exist.
+ rpc GetProduct(GetProductRequest) returns (Product) {
+ option (google.api.http) = {
+ get: "/v1p4beta1/{name=projects/*/locations/*/products/*}"
+ };
+ option (google.api.method_signature) = "name";
+ }
+
+ // Makes changes to a Product resource.
+ // Only the `display_name`, `description`, and `labels` fields can be updated
+ // right now.
+ //
+ // If labels are updated, the change will not be reflected in queries until
+ // the next index time.
+ //
+ // Possible errors:
+ //
+ // * Returns NOT_FOUND if the Product does not exist.
+ // * Returns INVALID_ARGUMENT if display_name is present in update_mask but is
+ // missing from the request or longer than 4096 characters.
+ // * Returns INVALID_ARGUMENT if description is present in update_mask but is
+ // longer than 4096 characters.
+ // * Returns INVALID_ARGUMENT if product_category is present in update_mask.
+ rpc UpdateProduct(UpdateProductRequest) returns (Product) {
+ option (google.api.http) = {
+ patch: "/v1p4beta1/{product.name=projects/*/locations/*/products/*}"
+ body: "product"
+ };
+ option (google.api.method_signature) = "product,update_mask";
+ }
+
+ // Permanently deletes a product and its reference images.
+ //
+ // Metadata of the product and all its images will be deleted right away, but
+ // search queries against ProductSets containing the product may still work
+ // until all related caches are refreshed.
+ rpc DeleteProduct(DeleteProductRequest) returns (google.protobuf.Empty) {
+ option (google.api.http) = {
+ delete: "/v1p4beta1/{name=projects/*/locations/*/products/*}"
+ };
+ option (google.api.method_signature) = "name";
+ }
+
+ // Creates and returns a new ReferenceImage resource.
+ //
+ // The `bounding_poly` field is optional. If `bounding_poly` is not specified,
+ // the system will try to detect regions of interest in the image that are
+ // compatible with the product_category on the parent product. If it is
+ // specified, detection is ALWAYS skipped. The system converts polygons into
+ // non-rotated rectangles.
+ //
+ // Note that the pipeline will resize the image if the image resolution is too
+ // large to process (above 50MP).
+ //
+ // Possible errors:
+ //
+ // * Returns INVALID_ARGUMENT if the image_uri is missing or longer than 4096
+ // characters.
+ // * Returns INVALID_ARGUMENT if the product does not exist.
+ // * Returns INVALID_ARGUMENT if bounding_poly is not provided, and nothing
+ // compatible with the parent product's product_category is detected.
+ // * Returns INVALID_ARGUMENT if bounding_poly contains more than 10 polygons.
+ rpc CreateReferenceImage(CreateReferenceImageRequest)
+ returns (ReferenceImage) {
+ option (google.api.http) = {
+ post: "/v1p4beta1/{parent=projects/*/locations/*/products/*}/referenceImages"
+ body: "reference_image"
+ };
+ option (google.api.method_signature) =
+ "parent,reference_image,reference_image_id";
+ }
+
+ // Permanently deletes a reference image.
+ //
+ // The image metadata will be deleted right away, but search queries
+ // against ProductSets containing the image may still work until all related
+ // caches are refreshed.
+ //
+ // The actual image files are not deleted from Google Cloud Storage.
+ rpc DeleteReferenceImage(DeleteReferenceImageRequest)
+ returns (google.protobuf.Empty) {
+ option (google.api.http) = {
+ delete: "/v1p4beta1/{name=projects/*/locations/*/products/*/referenceImages/*}"
+ };
+ option (google.api.method_signature) = "name";
+ }
+
+ // Lists reference images.
+ //
+ // Possible errors:
+ //
+ // * Returns NOT_FOUND if the parent product does not exist.
+ // * Returns INVALID_ARGUMENT if the page_size is greater than 100, or less
+ // than 1.
+ rpc ListReferenceImages(ListReferenceImagesRequest)
+ returns (ListReferenceImagesResponse) {
+ option (google.api.http) = {
+ get: "/v1p4beta1/{parent=projects/*/locations/*/products/*}/referenceImages"
+ };
+ option (google.api.method_signature) = "parent";
+ }
+
+ // Gets information associated with a ReferenceImage.
+ //
+ // Possible errors:
+ //
+ // * Returns NOT_FOUND if the specified image does not exist.
+ rpc GetReferenceImage(GetReferenceImageRequest) returns (ReferenceImage) {
+ option (google.api.http) = {
+ get: "/v1p4beta1/{name=projects/*/locations/*/products/*/referenceImages/*}"
+ };
+ option (google.api.method_signature) = "name";
+ }
+
+ // Adds a Product to the specified ProductSet. If the Product is already
+ // present, no change is made.
+ //
+ // One Product can be added to at most 100 ProductSets.
+ //
+ // Possible errors:
+ //
+ // * Returns NOT_FOUND if the Product or the ProductSet doesn't exist.
+ rpc AddProductToProductSet(AddProductToProductSetRequest)
+ returns (google.protobuf.Empty) {
+ option (google.api.http) = {
+ post: "/v1p4beta1/{name=projects/*/locations/*/productSets/*}:addProduct"
+ body: "*"
+ };
+ option (google.api.method_signature) = "name,product";
+ }
+
+ // Removes a Product from the specified ProductSet.
+ rpc RemoveProductFromProductSet(RemoveProductFromProductSetRequest)
+ returns (google.protobuf.Empty) {
+ option (google.api.http) = {
+ post: "/v1p4beta1/{name=projects/*/locations/*/productSets/*}:removeProduct"
+ body: "*"
+ };
+ option (google.api.method_signature) = "name,product";
+ }
+
+ // Lists the Products in a ProductSet, in an unspecified order. If the
+ // ProductSet does not exist, the products field of the response will be
+ // empty.
+ //
+ // Possible errors:
+ //
+ // * Returns INVALID_ARGUMENT if page_size is greater than 100 or less than 1.
+ rpc ListProductsInProductSet(ListProductsInProductSetRequest)
+ returns (ListProductsInProductSetResponse) {
+ option (google.api.http) = {
+ get: "/v1p4beta1/{name=projects/*/locations/*/productSets/*}/products"
+ };
+ option (google.api.method_signature) = "name";
+ }
+
+ // Asynchronous API that imports a list of reference images to specified
+ // product sets based on a list of image information.
+ //
+ // The [google.longrunning.Operation][google.longrunning.Operation] API can be
+ // used to keep track of the progress and results of the request.
+ // `Operation.metadata` contains `BatchOperationMetadata`. (progress)
+ // `Operation.response` contains `ImportProductSetsResponse`. (results)
+ //
+ // The input source of this method is a csv file on Google Cloud Storage.
+ // For the format of the csv file please see
+ // [ImportProductSetsGcsSource.csv_file_uri][google.cloud.vision.v1p4beta1.ImportProductSetsGcsSource.csv_file_uri].
+ rpc ImportProductSets(ImportProductSetsRequest)
+ returns (google.longrunning.Operation) {
+ option (google.api.http) = {
+ post: "/v1p4beta1/{parent=projects/*/locations/*}/productSets:import"
+ body: "*"
+ };
+ option (google.api.method_signature) = "parent,input_config";
+ option (google.longrunning.operation_info) = {
+ response_type: "ImportProductSetsResponse"
+ metadata_type: "BatchOperationMetadata"
+ };
+ }
+
+ // Asynchronous API to delete all Products in a ProductSet or all Products
+ // that are in no ProductSet.
+ //
+ // If a Product is a member of the specified ProductSet in addition to other
+ // ProductSets, the Product will still be deleted.
+ //
+ // It is recommended to not delete the specified ProductSet until after this
+ // operation has completed. It is also recommended to not add any of the
+ // Products involved in the batch delete to a new ProductSet while this
+ // operation is running because those Products may still end up deleted.
+ //
+ // It's not possible to undo the PurgeProducts operation. Therefore, it is
+ // recommended to keep the csv files used in ImportProductSets (if that was
+ // how you originally built the Product Set) before starting PurgeProducts, in
+ // case you need to re-import the data after deletion.
+ //
+ // If the plan is to purge all of the Products from a ProductSet and then
+ // re-use the empty ProductSet to re-import new Products into the empty
+ // ProductSet, you must wait until the PurgeProducts operation has finished
+ // for that ProductSet.
+ //
+ // The [google.longrunning.Operation][google.longrunning.Operation] API can be
+ // used to keep track of the progress and results of the request.
+ // `Operation.metadata` contains `BatchOperationMetadata`. (progress)
+ rpc PurgeProducts(PurgeProductsRequest)
+ returns (google.longrunning.Operation) {
+ option (google.api.http) = {
+ post: "/v1p4beta1/{parent=projects/*/locations/*}/products:purge"
+ body: "*"
+ };
+ option (google.api.method_signature) = "parent";
+ option (google.longrunning.operation_info) = {
+ response_type: "google.protobuf.Empty"
+ metadata_type: "BatchOperationMetadata"
+ };
+ }
+}
+
+// A Product contains ReferenceImages.
+message Product {
+ option (google.api.resource) = {
+ type: "vision.googleapis.com/Product"
+ pattern: "projects/{project}/locations/{location}/products/{product}"
+ };
+
+ // A product label represented as a key-value pair.
+ message KeyValue {
+ // The key of the label attached to the product. Cannot be empty and cannot
+ // exceed 128 bytes.
+ string key = 1;
+
+ // The value of the label attached to the product. Cannot be empty and
+ // cannot exceed 128 bytes.
+ string value = 2;
+ }
+
+ // The resource name of the product.
+ //
+ // Format is:
+ // `projects/PROJECT_ID/locations/LOC_ID/products/PRODUCT_ID`.
+ //
+ // This field is ignored when creating a product.
+ string name = 1;
+
+ // The user-provided name for this Product. Must not be empty. Must be at most
+ // 4096 characters long.
+ string display_name = 2;
+
+ // User-provided metadata to be stored with this product. Must be at most 4096
+ // characters long.
+ string description = 3;
+
+ // Immutable. The category for the product identified by the reference image.
+ // This should be either "homegoods-v2", "apparel-v2", or "toys-v2". The
+ // legacy categories "homegoods", "apparel", and "toys" are still supported,
+ // but these should not be used for new products.
+ string product_category = 4 [(google.api.field_behavior) = IMMUTABLE];
+
+ // Key-value pairs that can be attached to a product. At query time,
+ // constraints can be specified based on the product_labels.
+ //
+ // Note that integer values can be provided as strings, e.g. "1199". Only
+ // strings with integer values can match a range-based restriction which is
+ // to be supported soon.
+ //
+ // Multiple values can be assigned to the same key. One product may have up to
+ // 500 product_labels.
+ //
+ // Notice that the total number of distinct product_labels over all products
+ // in one ProductSet cannot exceed 1M, otherwise the product search pipeline
+ // will refuse to work for that ProductSet.
+ repeated KeyValue product_labels = 5;
+}
+
+// A ProductSet contains Products. A ProductSet can contain a maximum of 1
+// million reference images. If the limit is exceeded, periodic indexing will
+// fail.
+message ProductSet {
+ option (google.api.resource) = {
+ type: "vision.googleapis.com/ProductSet"
+ pattern: "projects/{project}/locations/{location}/productSets/{product_set}"
+ };
+
+ // The resource name of the ProductSet.
+ //
+ // Format is:
+ // `projects/PROJECT_ID/locations/LOC_ID/productSets/PRODUCT_SET_ID`.
+ //
+ // This field is ignored when creating a ProductSet.
+ string name = 1;
+
+ // The user-provided name for this ProductSet. Must not be empty. Must be at
+ // most 4096 characters long.
+ string display_name = 2;
+
+ // Output only. The time at which this ProductSet was last indexed. Query
+ // results will reflect all updates before this time. If this ProductSet has
+ // never been indexed, this timestamp is the default value
+ // "1970-01-01T00:00:00Z".
+ //
+ // This field is ignored when creating a ProductSet.
+ google.protobuf.Timestamp index_time = 3
+ [(google.api.field_behavior) = OUTPUT_ONLY];
+
+ // Output only. If there was an error with indexing the product set, the field
+ // is populated.
+ //
+ // This field is ignored when creating a ProductSet.
+ google.rpc.Status index_error = 4 [(google.api.field_behavior) = OUTPUT_ONLY];
+}
+
+// A `ReferenceImage` represents a product image and its associated metadata,
+// such as bounding boxes.
+message ReferenceImage {
+ option (google.api.resource) = {
+ type: "vision.googleapis.com/ReferenceImage"
+ pattern: "projects/{project}/locations/{location}/products/{product}/referenceImages/{reference_image}"
+ };
+
+ // The resource name of the reference image.
+ //
+ // Format is:
+ //
+ // `projects/PROJECT_ID/locations/LOC_ID/products/PRODUCT_ID/referenceImages/IMAGE_ID`.
+ //
+ // This field is ignored when creating a reference image.
+ string name = 1;
+
+ // Required. The Google Cloud Storage URI of the reference image.
+ //
+ // The URI must start with `gs://`.
+ string uri = 2 [(google.api.field_behavior) = REQUIRED];
+
+ // Optional. Bounding polygons around the areas of interest in the reference
+ // image. If this field is empty, the system will try to detect regions of
+ // interest. At most 10 bounding polygons will be used.
+ //
+ // The provided shape is converted into a non-rotated rectangle. Once
+ // converted, the small edge of the rectangle must be greater than or equal
+ // to 300 pixels. The aspect ratio must be 1:4 or less (i.e. 1:3 is ok; 1:5
+ // is not).
+ repeated BoundingPoly bounding_polys = 3
+ [(google.api.field_behavior) = OPTIONAL];
+}
+
+// Request message for the `CreateProduct` method.
+message CreateProductRequest {
+ // Required. The project in which the Product should be created.
+ //
+ // Format is
+ // `projects/PROJECT_ID/locations/LOC_ID`.
+ string parent = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "locations.googleapis.com/Location"
+ }
+ ];
+
+ // Required. The product to create.
+ Product product = 2 [(google.api.field_behavior) = REQUIRED];
+
+ // A user-supplied resource id for this Product. If set, the server will
+ // attempt to use this value as the resource id. If it is already in use, an
+ // error is returned with code ALREADY_EXISTS. Must be at most 128 characters
+ // long. It cannot contain the character `/`.
+ string product_id = 3;
+}
+
+// Request message for the `ListProducts` method.
+message ListProductsRequest {
+ // Required. The project OR ProductSet from which Products should be listed.
+ //
+ // Format:
+ // `projects/PROJECT_ID/locations/LOC_ID`
+ string parent = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "locations.googleapis.com/Location"
+ }
+ ];
+
+ // The maximum number of items to return. Default 10, maximum 100.
+ int32 page_size = 2;
+
+ // The next_page_token returned from a previous List request, if any.
+ string page_token = 3;
+}
+
+// Response message for the `ListProducts` method.
+message ListProductsResponse {
+ // List of products.
+ repeated Product products = 1;
+
+ // Token to retrieve the next page of results, or empty if there are no more
+ // results in the list.
+ string next_page_token = 2;
+}
+
+// Request message for the `GetProduct` method.
+message GetProductRequest {
+ // Required. Resource name of the Product to get.
+ //
+ // Format is:
+ // `projects/PROJECT_ID/locations/LOC_ID/products/PRODUCT_ID`
+ string name = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = { type: "vision.googleapis.com/Product" }
+ ];
+}
+
+// Request message for the `UpdateProduct` method.
+message UpdateProductRequest {
+ // Required. The Product resource which replaces the one on the server.
+ // product.name is immutable.
+ Product product = 1 [(google.api.field_behavior) = REQUIRED];
+
+ // The [FieldMask][google.protobuf.FieldMask] that specifies which fields
+ // to update.
+ // If update_mask isn't specified, all mutable fields are to be updated.
+ // Valid mask paths include `product_labels`, `display_name`, and
+ // `description`.
+ google.protobuf.FieldMask update_mask = 2;
+}
+
+// Request message for the `DeleteProduct` method.
+message DeleteProductRequest {
+ // Required. Resource name of product to delete.
+ //
+ // Format is:
+ // `projects/PROJECT_ID/locations/LOC_ID/products/PRODUCT_ID`
+ string name = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = { type: "vision.googleapis.com/Product" }
+ ];
+}
+
+// Request message for the `CreateProductSet` method.
+message CreateProductSetRequest {
+ // Required. The project in which the ProductSet should be created.
+ //
+ // Format is `projects/PROJECT_ID/locations/LOC_ID`.
+ string parent = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "locations.googleapis.com/Location"
+ }
+ ];
+
+ // Required. The ProductSet to create.
+ ProductSet product_set = 2 [(google.api.field_behavior) = REQUIRED];
+
+ // A user-supplied resource id for this ProductSet. If set, the server will
+ // attempt to use this value as the resource id. If it is already in use, an
+ // error is returned with code ALREADY_EXISTS. Must be at most 128 characters
+ // long. It cannot contain the character `/`.
+ string product_set_id = 3;
+}
+
+// Request message for the `ListProductSets` method.
+message ListProductSetsRequest {
+ // Required. The project from which ProductSets should be listed.
+ //
+ // Format is `projects/PROJECT_ID/locations/LOC_ID`.
+ string parent = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "locations.googleapis.com/Location"
+ }
+ ];
+
+ // The maximum number of items to return. Default 10, maximum 100.
+ int32 page_size = 2;
+
+ // The next_page_token returned from a previous List request, if any.
+ string page_token = 3;
+}
+
+// Response message for the `ListProductSets` method.
+message ListProductSetsResponse {
+ // List of ProductSets.
+ repeated ProductSet product_sets = 1;
+
+ // Token to retrieve the next page of results, or empty if there are no more
+ // results in the list.
+ string next_page_token = 2;
+}
+
+// Request message for the `GetProductSet` method.
+message GetProductSetRequest {
+ // Required. Resource name of the ProductSet to get.
+ //
+ // Format is:
+ // `projects/PROJECT_ID/locations/LOC_ID/productSets/PRODUCT_SET_ID`
+ string name = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "vision.googleapis.com/ProductSet"
+ }
+ ];
+}
+
+// Request message for the `UpdateProductSet` method.
+message UpdateProductSetRequest {
+ // Required. The ProductSet resource which replaces the one on the server.
+ ProductSet product_set = 1 [(google.api.field_behavior) = REQUIRED];
+
+ // The [FieldMask][google.protobuf.FieldMask] that specifies which fields to
+ // update.
+ // If update_mask isn't specified, all mutable fields are to be updated.
+ // Valid mask path is `display_name`.
+ google.protobuf.FieldMask update_mask = 2;
+}
+
+// Request message for the `DeleteProductSet` method.
+message DeleteProductSetRequest {
+ // Required. Resource name of the ProductSet to delete.
+ //
+ // Format is:
+ // `projects/PROJECT_ID/locations/LOC_ID/productSets/PRODUCT_SET_ID`
+ string name = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "vision.googleapis.com/ProductSet"
+ }
+ ];
+}
+
+// Request message for the `CreateReferenceImage` method.
+message CreateReferenceImageRequest {
+ // Required. Resource name of the product in which to create the reference
+ // image.
+ //
+ // Format is
+ // `projects/PROJECT_ID/locations/LOC_ID/products/PRODUCT_ID`.
+ string parent = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = { type: "vision.googleapis.com/Product" }
+ ];
+
+ // Required. The reference image to create.
+ // If an image ID is specified, it is ignored.
+ ReferenceImage reference_image = 2 [(google.api.field_behavior) = REQUIRED];
+
+ // A user-supplied resource id for the ReferenceImage to be added. If set,
+ // the server will attempt to use this value as the resource id. If it is
+ // already in use, an error is returned with code ALREADY_EXISTS. Must be at
+ // most 128 characters long. It cannot contain the character `/`.
+ string reference_image_id = 3;
+}
+
+// Request message for the `ListReferenceImages` method.
+message ListReferenceImagesRequest {
+ // Required. Resource name of the product containing the reference images.
+ //
+ // Format is
+ // `projects/PROJECT_ID/locations/LOC_ID/products/PRODUCT_ID`.
+ string parent = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = { type: "vision.googleapis.com/Product" }
+ ];
+
+ // The maximum number of items to return. Default 10, maximum 100.
+ int32 page_size = 2;
+
+ // A token identifying a page of results to be returned. This is the value
+ // of `nextPageToken` returned in a previous reference image list request.
+ //
+ // Defaults to the first page if not specified.
+ string page_token = 3;
+}
+
+// Response message for the `ListReferenceImages` method.
+message ListReferenceImagesResponse {
+ // The list of reference images.
+ repeated ReferenceImage reference_images = 1;
+
+ // The maximum number of items to return. Default 10, maximum 100.
+ int32 page_size = 2;
+
+ // The next_page_token returned from a previous List request, if any.
+ string next_page_token = 3;
+}
+
+// Request message for the `GetReferenceImage` method.
+message GetReferenceImageRequest {
+ // Required. The resource name of the ReferenceImage to get.
+ //
+ // Format is:
+ //
+ // `projects/PROJECT_ID/locations/LOC_ID/products/PRODUCT_ID/referenceImages/IMAGE_ID`.
+ string name = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "vision.googleapis.com/ReferenceImage"
+ }
+ ];
+}
+
+// Request message for the `DeleteReferenceImage` method.
+message DeleteReferenceImageRequest {
+ // Required. The resource name of the reference image to delete.
+ //
+ // Format is:
+ //
+ // `projects/PROJECT_ID/locations/LOC_ID/products/PRODUCT_ID/referenceImages/IMAGE_ID`
+ string name = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "vision.googleapis.com/ReferenceImage"
+ }
+ ];
+}
+
+// Request message for the `AddProductToProductSet` method.
+message AddProductToProductSetRequest {
+ // Required. The resource name for the ProductSet to modify.
+ //
+ // Format is:
+ // `projects/PROJECT_ID/locations/LOC_ID/productSets/PRODUCT_SET_ID`
+ string name = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "vision.googleapis.com/ProductSet"
+ }
+ ];
+
+ // Required. The resource name for the Product to be added to this ProductSet.
+ //
+ // Format is:
+ // `projects/PROJECT_ID/locations/LOC_ID/products/PRODUCT_ID`
+ string product = 2 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = { type: "vision.googleapis.com/Product" }
+ ];
+}
+
+// Request message for the `RemoveProductFromProductSet` method.
+message RemoveProductFromProductSetRequest {
+ // Required. The resource name for the ProductSet to modify.
+ //
+ // Format is:
+ // `projects/PROJECT_ID/locations/LOC_ID/productSets/PRODUCT_SET_ID`
+ string name = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "vision.googleapis.com/ProductSet"
+ }
+ ];
+
+ // Required. The resource name for the Product to be removed from this
+ // ProductSet.
+ //
+ // Format is:
+ // `projects/PROJECT_ID/locations/LOC_ID/products/PRODUCT_ID`
+ string product = 2 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = { type: "vision.googleapis.com/Product" }
+ ];
+}
+
+// Request message for the `ListProductsInProductSet` method.
+message ListProductsInProductSetRequest {
+ // Required. The ProductSet resource for which to retrieve Products.
+ //
+ // Format is:
+ // `projects/PROJECT_ID/locations/LOC_ID/productSets/PRODUCT_SET_ID`
+ string name = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "vision.googleapis.com/ProductSet"
+ }
+ ];
+
+ // The maximum number of items to return. Default 10, maximum 100.
+ int32 page_size = 2;
+
+ // The next_page_token returned from a previous List request, if any.
+ string page_token = 3;
+}
+
+// Response message for the `ListProductsInProductSet` method.
+message ListProductsInProductSetResponse {
+ // The list of Products.
+ repeated Product products = 1;
+
+ // Token to retrieve the next page of results, or empty if there are no more
+ // results in the list.
+ string next_page_token = 2;
+}
+
+// The Google Cloud Storage location for a csv file which preserves a list of
+// ImportProductSetRequests in each line.
+message ImportProductSetsGcsSource {
+ // The Google Cloud Storage URI of the input csv file.
+ //
+ // The URI must start with `gs://`.
+ //
+ // The format of the input csv file should be one image per line.
+ // In each line, there are 8 columns.
+ //
+ // 1. image-uri
+ // 2. image-id
+ // 3. product-set-id
+ // 4. product-id
+ // 5. product-category
+ // 6. product-display-name
+ // 7. labels
+ // 8. bounding-poly
+ //
+ // The `image-uri`, `product-set-id`, `product-id`, and `product-category`
+ // columns are required. All other columns are optional.
+ //
+ // If the `ProductSet` or `Product` specified by the `product-set-id` and
+ // `product-id` values does not exist, then the system will create a new
+ // `ProductSet` or `Product` for the image. In this case, the
+ // `product-display-name` column refers to
+ // [display_name][google.cloud.vision.v1p4beta1.Product.display_name], the
+ // `product-category` column refers to
+ // [product_category][google.cloud.vision.v1p4beta1.Product.product_category],
+ // and the `labels` column refers to
+ // [product_labels][google.cloud.vision.v1p4beta1.Product.product_labels].
+ //
+ // The `image-id` column is optional but must be unique if provided. If it is
+ // empty, the system will automatically assign a unique id to the image.
+ //
+ // The `product-display-name` column is optional. If it is empty, the system
+ // sets the [display_name][google.cloud.vision.v1p4beta1.Product.display_name]
+ // field for the product to a space (" "). You can update the `display_name`
+ // later by using the API.
+ //
+ // If a `Product` with the specified `product-id` already exists, then the
+ // system ignores the `product-display-name`, `product-category`, and `labels`
+ // columns.
+ //
+ // The `labels` column (optional) is a line containing a list of
+ // comma-separated key-value pairs, in the following format:
+ //
+ // "key_1=value_1,key_2=value_2,...,key_n=value_n"
+ //
+ // The `bounding-poly` column (optional) identifies one region of
+ // interest from the image in the same manner as `CreateReferenceImage`. If
+ // you do not specify the `bounding-poly` column, then the system will try to
+ // detect regions of interest automatically.
+ //
+ // At most one `bounding-poly` column is allowed per line. If the image
+ // contains multiple regions of interest, add a line to the CSV file that
+ // includes the same product information, and the `bounding-poly` values for
+ // each region of interest.
+ //
+ // The `bounding-poly` column must contain an even number of comma-separated
+ // numbers, in the format "p1_x,p1_y,p2_x,p2_y,...,pn_x,pn_y". Use
+ // non-negative integers for absolute bounding polygons, and float values
+ // in [0, 1] for normalized bounding polygons.
+ //
+ // The system will resize the image if the image resolution is too
+ // large to process (larger than 20MP).
+ string csv_file_uri = 1;
+}
+
+// The input content for the `ImportProductSets` method.
+message ImportProductSetsInputConfig {
+ // The source of the input.
+ oneof source {
+ // The Google Cloud Storage location for a csv file which preserves a list
+ // of ImportProductSetRequests in each line.
+ ImportProductSetsGcsSource gcs_source = 1;
+ }
+}
+
+// Request message for the `ImportProductSets` method.
+message ImportProductSetsRequest {
+ // Required. The project in which the ProductSets should be imported.
+ //
+ // Format is `projects/PROJECT_ID/locations/LOC_ID`.
+ string parent = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "locations.googleapis.com/Location"
+ }
+ ];
+
+ // Required. The input content for the list of requests.
+ ImportProductSetsInputConfig input_config = 2
+ [(google.api.field_behavior) = REQUIRED];
+}
+
+// Response message for the `ImportProductSets` method.
+//
+// This message is returned by the
+// [google.longrunning.Operations.GetOperation][google.longrunning.Operations.GetOperation]
+// method in the returned
+// [google.longrunning.Operation.response][google.longrunning.Operation.response]
+// field.
+message ImportProductSetsResponse {
+ // The list of reference_images that are imported successfully.
+ repeated ReferenceImage reference_images = 1;
+
+ // The rpc status for each ImportProductSet request, including both successes
+ // and errors.
+ //
+ // The number of statuses here matches the number of lines in the csv file,
+ // and statuses[i] stores the success or failure status of processing the i-th
+ // line of the csv, starting from line 0.
+ repeated google.rpc.Status statuses = 2;
+}
+
+// Metadata for the batch operations such as the current state.
+//
+// This is included in the `metadata` field of the `Operation` returned by the
+// `GetOperation` call of the `google::longrunning::Operations` service.
+message BatchOperationMetadata {
+ // Enumerates the possible states that the batch request can be in.
+ enum State {
+ // Invalid.
+ STATE_UNSPECIFIED = 0;
+
+ // Request is actively being processed.
+ PROCESSING = 1;
+
+ // The request is done and at least one item has been successfully
+ // processed.
+ SUCCESSFUL = 2;
+
+ // The request is done and no item has been successfully processed.
+ FAILED = 3;
+
+ // The request is done after the longrunning.Operations.CancelOperation has
+ // been called by the user. Any records that were processed before the
+ // cancel command are output as specified in the request.
+ CANCELLED = 4;
+ }
+
+ // The current state of the batch operation.
+ State state = 1;
+
+ // The time when the batch request was submitted to the server.
+ google.protobuf.Timestamp submit_time = 2;
+
+ // The time when the batch request is finished and
+ // [google.longrunning.Operation.done][google.longrunning.Operation.done] is
+ // set to true.
+ google.protobuf.Timestamp end_time = 3;
+}
+
+// Config to control which ProductSet contains the Products to be deleted.
+message ProductSetPurgeConfig {
+ // The ProductSet that contains the Products to delete. If a Product is a
+ // member of product_set_id in addition to other ProductSets, the Product will
+ // still be deleted.
+ string product_set_id = 1;
+}
+
+// Request message for the `PurgeProducts` method.
+message PurgeProductsRequest {
+ // The Products to delete.
+ oneof target {
+ // Specify which ProductSet contains the Products to be deleted.
+ ProductSetPurgeConfig product_set_purge_config = 2;
+
+ // If delete_orphan_products is true, all Products that are not in any
+ // ProductSet will be deleted.
+ bool delete_orphan_products = 3;
+ }
+
+ // Required. The project and location in which the Products should be deleted.
+ //
+ // Format is `projects/PROJECT_ID/locations/LOC_ID`.
+ string parent = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "locations.googleapis.com/Location"
+ }
+ ];
+
+ // The default value is false. Override this value to true to actually perform
+ // the purge.
+ bool force = 4;
+}
diff --git a/packages/google-cloud-vision/protos/google/cloud/vision/v1p4beta1/text_annotation.proto b/packages/google-cloud-vision/protos/google/cloud/vision/v1p4beta1/text_annotation.proto
new file mode 100644
index 00000000000..233c4c689e4
--- /dev/null
+++ b/packages/google-cloud-vision/protos/google/cloud/vision/v1p4beta1/text_annotation.proto
@@ -0,0 +1,260 @@
+// Copyright 2019 Google LLC.
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+//
+
+syntax = "proto3";
+
+package google.cloud.vision.v1p4beta1;
+
+import "google/cloud/vision/v1p4beta1/geometry.proto";
+
+option cc_enable_arenas = true;
+option go_package = "google.golang.org/genproto/googleapis/cloud/vision/v1p4beta1;vision";
+option java_multiple_files = true;
+option java_outer_classname = "TextAnnotationProto";
+option java_package = "com.google.cloud.vision.v1p4beta1";
+option objc_class_prefix = "GCVN";
+
+// TextAnnotation contains a structured representation of OCR extracted text.
+// The hierarchy of an OCR extracted text structure is like this:
+// TextAnnotation -> Page -> Block -> Paragraph -> Word -> Symbol
+// Each structural component, starting from Page, may further have their own
+// properties. Properties describe detected languages, breaks etc.. Please refer
+// to the
+// [TextAnnotation.TextProperty][google.cloud.vision.v1p4beta1.TextAnnotation.TextProperty]
+// message definition below for more detail.
+message TextAnnotation {
+ // Detected language for a structural component.
+ message DetectedLanguage {
+ // The BCP-47 language code, such as "en-US" or "sr-Latn". For more
+ // information, see
+ // http://www.unicode.org/reports/tr35/#Unicode_locale_identifier.
+ string language_code = 1;
+
+ // Confidence of detected language. Range [0, 1].
+ float confidence = 2;
+ }
+
+ // Detected start or end of a structural component.
+ message DetectedBreak {
+ // Enum to denote the type of break found. New line, space etc.
+ enum BreakType {
+ // Unknown break label type.
+ UNKNOWN = 0;
+
+ // Regular space.
+ SPACE = 1;
+
+ // Sure space (very wide).
+ SURE_SPACE = 2;
+
+ // Line-wrapping break.
+ EOL_SURE_SPACE = 3;
+
+ // End-line hyphen that is not present in text; does not co-occur with
+ // `SPACE`, `LEADER_SPACE`, or `LINE_BREAK`.
+ HYPHEN = 4;
+
+ // Line break that ends a paragraph.
+ LINE_BREAK = 5;
+ }
+
+ // Detected break type.
+ BreakType type = 1;
+
+ // True if break prepends the element.
+ bool is_prefix = 2;
+ }
+
+ // Additional information detected on the structural component.
+ message TextProperty {
+ // A list of detected languages together with confidence.
+ repeated DetectedLanguage detected_languages = 1;
+
+ // Detected start or end of a text segment.
+ DetectedBreak detected_break = 2;
+ }
+
+ // List of pages detected by OCR.
+ repeated Page pages = 1;
+
+ // UTF-8 text detected on the pages.
+ string text = 2;
+}
+
+// Detected page from OCR.
+message Page {
+ // Additional information detected on the page.
+ TextAnnotation.TextProperty property = 1;
+
+ // Page width. For PDFs the unit is points. For images (including
+ // TIFFs) the unit is pixels.
+ int32 width = 2;
+
+ // Page height. For PDFs the unit is points. For images (including
+ // TIFFs) the unit is pixels.
+ int32 height = 3;
+
+ // List of blocks of text, images etc on this page.
+ repeated Block blocks = 4;
+
+ // Confidence of the OCR results on the page. Range [0, 1].
+ float confidence = 5;
+}
+
+// Logical element on the page.
+message Block {
+ // Type of a block (text, image etc) as identified by OCR.
+ enum BlockType {
+ // Unknown block type.
+ UNKNOWN = 0;
+
+ // Regular text block.
+ TEXT = 1;
+
+ // Table block.
+ TABLE = 2;
+
+ // Image block.
+ PICTURE = 3;
+
+ // Horizontal/vertical line box.
+ RULER = 4;
+
+ // Barcode block.
+ BARCODE = 5;
+ }
+
+ // Additional information detected for the block.
+ TextAnnotation.TextProperty property = 1;
+
+ // The bounding box for the block.
+ // The vertices are in the order of top-left, top-right, bottom-right,
+ // bottom-left. When a rotation of the bounding box is detected the rotation
+ // is represented as around the top-left corner as defined when the text is
+ // read in the 'natural' orientation.
+ // For example:
+ //
+ // * when the text is horizontal it might look like:
+ //
+ // 0----1
+ // | |
+ // 3----2
+ //
+ // * when it's rotated 180 degrees around the top-left corner it becomes:
+ //
+ // 2----3
+ // | |
+ // 1----0
+ //
+ // and the vertex order will still be (0, 1, 2, 3).
+ BoundingPoly bounding_box = 2;
+
+ // List of paragraphs in this block (if this blocks is of type text).
+ repeated Paragraph paragraphs = 3;
+
+ // Detected block type (text, image etc) for this block.
+ BlockType block_type = 4;
+
+ // Confidence of the OCR results on the block. Range [0, 1].
+ float confidence = 5;
+}
+
+// Structural unit of text representing a number of words in certain order.
+message Paragraph {
+ // Additional information detected for the paragraph.
+ TextAnnotation.TextProperty property = 1;
+
+ // The bounding box for the paragraph.
+ // The vertices are in the order of top-left, top-right, bottom-right,
+ // bottom-left. When a rotation of the bounding box is detected the rotation
+ // is represented as around the top-left corner as defined when the text is
+ // read in the 'natural' orientation.
+ // For example:
+ // * when the text is horizontal it might look like:
+ // 0----1
+ // | |
+ // 3----2
+ // * when it's rotated 180 degrees around the top-left corner it becomes:
+ // 2----3
+ // | |
+ // 1----0
+ // and the vertex order will still be (0, 1, 2, 3).
+ BoundingPoly bounding_box = 2;
+
+ // List of all words in this paragraph.
+ repeated Word words = 3;
+
+ // Confidence of the OCR results for the paragraph. Range [0, 1].
+ float confidence = 4;
+}
+
+// A word representation.
+message Word {
+ // Additional information detected for the word.
+ TextAnnotation.TextProperty property = 1;
+
+ // The bounding box for the word.
+ // The vertices are in the order of top-left, top-right, bottom-right,
+ // bottom-left. When a rotation of the bounding box is detected the rotation
+ // is represented as around the top-left corner as defined when the text is
+ // read in the 'natural' orientation.
+ // For example:
+ // * when the text is horizontal it might look like:
+ // 0----1
+ // | |
+ // 3----2
+ // * when it's rotated 180 degrees around the top-left corner it becomes:
+ // 2----3
+ // | |
+ // 1----0
+ // and the vertex order will still be (0, 1, 2, 3).
+ BoundingPoly bounding_box = 2;
+
+ // List of symbols in the word.
+ // The order of the symbols follows the natural reading order.
+ repeated Symbol symbols = 3;
+
+ // Confidence of the OCR results for the word. Range [0, 1].
+ float confidence = 4;
+}
+
+// A single symbol representation.
+message Symbol {
+ // Additional information detected for the symbol.
+ TextAnnotation.TextProperty property = 1;
+
+ // The bounding box for the symbol.
+ // The vertices are in the order of top-left, top-right, bottom-right,
+ // bottom-left. When a rotation of the bounding box is detected the rotation
+ // is represented as around the top-left corner as defined when the text is
+ // read in the 'natural' orientation.
+ // For example:
+ // * when the text is horizontal it might look like:
+ // 0----1
+ // | |
+ // 3----2
+ // * when it's rotated 180 degrees around the top-left corner it becomes:
+ // 2----3
+ // | |
+ // 1----0
+ // and the vertex order will still be (0, 1, 2, 3).
+ BoundingPoly bounding_box = 2;
+
+ // The actual UTF-8 representation of the symbol.
+ string text = 3;
+
+ // Confidence of the OCR results for the symbol. Range [0, 1].
+ float confidence = 4;
+}
diff --git a/packages/google-cloud-vision/protos/google/cloud/vision/v1p4beta1/web_detection.proto b/packages/google-cloud-vision/protos/google/cloud/vision/v1p4beta1/web_detection.proto
new file mode 100644
index 00000000000..7d716570f45
--- /dev/null
+++ b/packages/google-cloud-vision/protos/google/cloud/vision/v1p4beta1/web_detection.proto
@@ -0,0 +1,106 @@
+// Copyright 2019 Google LLC.
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+//
+
+syntax = "proto3";
+
+package google.cloud.vision.v1p4beta1;
+
+
+option cc_enable_arenas = true;
+option go_package = "google.golang.org/genproto/googleapis/cloud/vision/v1p4beta1;vision";
+option java_multiple_files = true;
+option java_outer_classname = "WebDetectionProto";
+option java_package = "com.google.cloud.vision.v1p4beta1";
+option objc_class_prefix = "GCVN";
+
+// Relevant information for the image from the Internet.
+message WebDetection {
+ // Entity deduced from similar images on the Internet.
+ message WebEntity {
+ // Opaque entity ID.
+ string entity_id = 1;
+
+ // Overall relevancy score for the entity.
+ // Not normalized and not comparable across different image queries.
+ float score = 2;
+
+ // Canonical description of the entity, in English.
+ string description = 3;
+ }
+
+ // Metadata for online images.
+ message WebImage {
+ // The result image URL.
+ string url = 1;
+
+ // (Deprecated) Overall relevancy score for the image.
+ float score = 2;
+ }
+
+ // Metadata for web pages.
+ message WebPage {
+ // The result web page URL.
+ string url = 1;
+
+ // (Deprecated) Overall relevancy score for the web page.
+ float score = 2;
+
+ // Title for the web page, may contain HTML markups.
+ string page_title = 3;
+
+ // Fully matching images on the page.
+ // Can include resized copies of the query image.
+ repeated WebImage full_matching_images = 4;
+
+ // Partial matching images on the page.
+ // Those images are similar enough to share some key-point features. For
+ // example an original image will likely have partial matching for its
+ // crops.
+ repeated WebImage partial_matching_images = 5;
+ }
+
+ // Label to provide extra metadata for the web detection.
+ message WebLabel {
+ // Label for extra metadata.
+ string label = 1;
+
+ // The BCP-47 language code for `label`, such as "en-US" or "sr-Latn".
+ // For more information, see
+ // http://www.unicode.org/reports/tr35/#Unicode_locale_identifier.
+ string language_code = 2;
+ }
+
+ // Deduced entities from similar images on the Internet.
+ repeated WebEntity web_entities = 1;
+
+ // Fully matching images from the Internet.
+ // Can include resized copies of the query image.
+ repeated WebImage full_matching_images = 2;
+
+ // Partial matching images from the Internet.
+ // Those images are similar enough to share some key-point features. For
+ // example an original image will likely have partial matching for its crops.
+ repeated WebImage partial_matching_images = 3;
+
+ // Web pages containing the matching images from the Internet.
+ repeated WebPage pages_with_matching_images = 4;
+
+ // The visually similar image results.
+ repeated WebImage visually_similar_images = 6;
+
+ // The service's best guess as to the topic of the request image.
+ // Inferred from similar images on the open web.
+ repeated WebLabel best_guess_labels = 8;
+}
diff --git a/packages/google-cloud-vision/protos/protos.d.ts b/packages/google-cloud-vision/protos/protos.d.ts
new file mode 100644
index 00000000000..9beac75e5dc
--- /dev/null
+++ b/packages/google-cloud-vision/protos/protos.d.ts
@@ -0,0 +1,49404 @@
+// Copyright 2023 Google LLC
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+import type {protobuf as $protobuf} from "google-gax";
+import Long = require("long");
+/** Namespace google. */
+export namespace google {
+
+ /** Namespace cloud. */
+ namespace cloud {
+
+ /** Namespace vision. */
+ namespace vision {
+
+ /** Namespace v1. */
+ namespace v1 {
+
+ /** Properties of a Vertex. */
+ interface IVertex {
+
+ /** Vertex x */
+ x?: (number|null);
+
+ /** Vertex y */
+ y?: (number|null);
+ }
+
+ /** Represents a Vertex. */
+ class Vertex implements IVertex {
+
+ /**
+ * Constructs a new Vertex.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1.IVertex);
+
+ /** Vertex x. */
+ public x: number;
+
+ /** Vertex y. */
+ public y: number;
+
+ /**
+ * Creates a new Vertex instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Vertex instance
+ */
+ public static create(properties?: google.cloud.vision.v1.IVertex): google.cloud.vision.v1.Vertex;
+
+ /**
+ * Encodes the specified Vertex message. Does not implicitly {@link google.cloud.vision.v1.Vertex.verify|verify} messages.
+ * @param message Vertex message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1.IVertex, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Vertex message, length delimited. Does not implicitly {@link google.cloud.vision.v1.Vertex.verify|verify} messages.
+ * @param message Vertex message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1.IVertex, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Vertex message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Vertex
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1.Vertex;
+
+ /**
+ * Decodes a Vertex message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Vertex
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1.Vertex;
+
+ /**
+ * Verifies a Vertex message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a Vertex message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Vertex
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1.Vertex;
+
+ /**
+ * Creates a plain object from a Vertex message. Also converts values to other types if specified.
+ * @param message Vertex
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1.Vertex, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Vertex to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Vertex
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a NormalizedVertex. */
+ interface INormalizedVertex {
+
+ /** NormalizedVertex x */
+ x?: (number|null);
+
+ /** NormalizedVertex y */
+ y?: (number|null);
+ }
+
+ /** Represents a NormalizedVertex. */
+ class NormalizedVertex implements INormalizedVertex {
+
+ /**
+ * Constructs a new NormalizedVertex.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1.INormalizedVertex);
+
+ /** NormalizedVertex x. */
+ public x: number;
+
+ /** NormalizedVertex y. */
+ public y: number;
+
+ /**
+ * Creates a new NormalizedVertex instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns NormalizedVertex instance
+ */
+ public static create(properties?: google.cloud.vision.v1.INormalizedVertex): google.cloud.vision.v1.NormalizedVertex;
+
+ /**
+ * Encodes the specified NormalizedVertex message. Does not implicitly {@link google.cloud.vision.v1.NormalizedVertex.verify|verify} messages.
+ * @param message NormalizedVertex message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1.INormalizedVertex, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified NormalizedVertex message, length delimited. Does not implicitly {@link google.cloud.vision.v1.NormalizedVertex.verify|verify} messages.
+ * @param message NormalizedVertex message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1.INormalizedVertex, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a NormalizedVertex message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns NormalizedVertex
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1.NormalizedVertex;
+
+ /**
+ * Decodes a NormalizedVertex message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns NormalizedVertex
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1.NormalizedVertex;
+
+ /**
+ * Verifies a NormalizedVertex message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a NormalizedVertex message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns NormalizedVertex
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1.NormalizedVertex;
+
+ /**
+ * Creates a plain object from a NormalizedVertex message. Also converts values to other types if specified.
+ * @param message NormalizedVertex
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1.NormalizedVertex, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this NormalizedVertex to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for NormalizedVertex
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a BoundingPoly. */
+ interface IBoundingPoly {
+
+ /** BoundingPoly vertices */
+ vertices?: (google.cloud.vision.v1.IVertex[]|null);
+
+ /** BoundingPoly normalizedVertices */
+ normalizedVertices?: (google.cloud.vision.v1.INormalizedVertex[]|null);
+ }
+
+ /** Represents a BoundingPoly. */
+ class BoundingPoly implements IBoundingPoly {
+
+ /**
+ * Constructs a new BoundingPoly.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1.IBoundingPoly);
+
+ /** BoundingPoly vertices. */
+ public vertices: google.cloud.vision.v1.IVertex[];
+
+ /** BoundingPoly normalizedVertices. */
+ public normalizedVertices: google.cloud.vision.v1.INormalizedVertex[];
+
+ /**
+ * Creates a new BoundingPoly instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns BoundingPoly instance
+ */
+ public static create(properties?: google.cloud.vision.v1.IBoundingPoly): google.cloud.vision.v1.BoundingPoly;
+
+ /**
+ * Encodes the specified BoundingPoly message. Does not implicitly {@link google.cloud.vision.v1.BoundingPoly.verify|verify} messages.
+ * @param message BoundingPoly message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1.IBoundingPoly, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified BoundingPoly message, length delimited. Does not implicitly {@link google.cloud.vision.v1.BoundingPoly.verify|verify} messages.
+ * @param message BoundingPoly message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1.IBoundingPoly, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a BoundingPoly message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns BoundingPoly
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1.BoundingPoly;
+
+ /**
+ * Decodes a BoundingPoly message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns BoundingPoly
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1.BoundingPoly;
+
+ /**
+ * Verifies a BoundingPoly message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a BoundingPoly message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns BoundingPoly
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1.BoundingPoly;
+
+ /**
+ * Creates a plain object from a BoundingPoly message. Also converts values to other types if specified.
+ * @param message BoundingPoly
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1.BoundingPoly, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this BoundingPoly to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for BoundingPoly
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a Position. */
+ interface IPosition {
+
+ /** Position x */
+ x?: (number|null);
+
+ /** Position y */
+ y?: (number|null);
+
+ /** Position z */
+ z?: (number|null);
+ }
+
+ /** Represents a Position. */
+ class Position implements IPosition {
+
+ /**
+ * Constructs a new Position.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1.IPosition);
+
+ /** Position x. */
+ public x: number;
+
+ /** Position y. */
+ public y: number;
+
+ /** Position z. */
+ public z: number;
+
+ /**
+ * Creates a new Position instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Position instance
+ */
+ public static create(properties?: google.cloud.vision.v1.IPosition): google.cloud.vision.v1.Position;
+
+ /**
+ * Encodes the specified Position message. Does not implicitly {@link google.cloud.vision.v1.Position.verify|verify} messages.
+ * @param message Position message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1.IPosition, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Position message, length delimited. Does not implicitly {@link google.cloud.vision.v1.Position.verify|verify} messages.
+ * @param message Position message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1.IPosition, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Position message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Position
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1.Position;
+
+ /**
+ * Decodes a Position message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Position
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1.Position;
+
+ /**
+ * Verifies a Position message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a Position message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Position
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1.Position;
+
+ /**
+ * Creates a plain object from a Position message. Also converts values to other types if specified.
+ * @param message Position
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1.Position, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Position to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Position
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Represents an ImageAnnotator */
+ class ImageAnnotator extends $protobuf.rpc.Service {
+
+ /**
+ * Constructs a new ImageAnnotator 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 ImageAnnotator 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): ImageAnnotator;
+
+ /**
+ * Calls BatchAnnotateImages.
+ * @param request BatchAnnotateImagesRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and BatchAnnotateImagesResponse
+ */
+ public batchAnnotateImages(request: google.cloud.vision.v1.IBatchAnnotateImagesRequest, callback: google.cloud.vision.v1.ImageAnnotator.BatchAnnotateImagesCallback): void;
+
+ /**
+ * Calls BatchAnnotateImages.
+ * @param request BatchAnnotateImagesRequest message or plain object
+ * @returns Promise
+ */
+ public batchAnnotateImages(request: google.cloud.vision.v1.IBatchAnnotateImagesRequest): Promise;
+
+ /**
+ * Calls BatchAnnotateFiles.
+ * @param request BatchAnnotateFilesRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and BatchAnnotateFilesResponse
+ */
+ public batchAnnotateFiles(request: google.cloud.vision.v1.IBatchAnnotateFilesRequest, callback: google.cloud.vision.v1.ImageAnnotator.BatchAnnotateFilesCallback): void;
+
+ /**
+ * Calls BatchAnnotateFiles.
+ * @param request BatchAnnotateFilesRequest message or plain object
+ * @returns Promise
+ */
+ public batchAnnotateFiles(request: google.cloud.vision.v1.IBatchAnnotateFilesRequest): Promise;
+
+ /**
+ * Calls AsyncBatchAnnotateImages.
+ * @param request AsyncBatchAnnotateImagesRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Operation
+ */
+ public asyncBatchAnnotateImages(request: google.cloud.vision.v1.IAsyncBatchAnnotateImagesRequest, callback: google.cloud.vision.v1.ImageAnnotator.AsyncBatchAnnotateImagesCallback): void;
+
+ /**
+ * Calls AsyncBatchAnnotateImages.
+ * @param request AsyncBatchAnnotateImagesRequest message or plain object
+ * @returns Promise
+ */
+ public asyncBatchAnnotateImages(request: google.cloud.vision.v1.IAsyncBatchAnnotateImagesRequest): Promise;
+
+ /**
+ * Calls AsyncBatchAnnotateFiles.
+ * @param request AsyncBatchAnnotateFilesRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Operation
+ */
+ public asyncBatchAnnotateFiles(request: google.cloud.vision.v1.IAsyncBatchAnnotateFilesRequest, callback: google.cloud.vision.v1.ImageAnnotator.AsyncBatchAnnotateFilesCallback): void;
+
+ /**
+ * Calls AsyncBatchAnnotateFiles.
+ * @param request AsyncBatchAnnotateFilesRequest message or plain object
+ * @returns Promise
+ */
+ public asyncBatchAnnotateFiles(request: google.cloud.vision.v1.IAsyncBatchAnnotateFilesRequest): Promise;
+ }
+
+ namespace ImageAnnotator {
+
+ /**
+ * Callback as used by {@link google.cloud.vision.v1.ImageAnnotator|batchAnnotateImages}.
+ * @param error Error, if any
+ * @param [response] BatchAnnotateImagesResponse
+ */
+ type BatchAnnotateImagesCallback = (error: (Error|null), response?: google.cloud.vision.v1.BatchAnnotateImagesResponse) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.vision.v1.ImageAnnotator|batchAnnotateFiles}.
+ * @param error Error, if any
+ * @param [response] BatchAnnotateFilesResponse
+ */
+ type BatchAnnotateFilesCallback = (error: (Error|null), response?: google.cloud.vision.v1.BatchAnnotateFilesResponse) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.vision.v1.ImageAnnotator|asyncBatchAnnotateImages}.
+ * @param error Error, if any
+ * @param [response] Operation
+ */
+ type AsyncBatchAnnotateImagesCallback = (error: (Error|null), response?: google.longrunning.Operation) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.vision.v1.ImageAnnotator|asyncBatchAnnotateFiles}.
+ * @param error Error, if any
+ * @param [response] Operation
+ */
+ type AsyncBatchAnnotateFilesCallback = (error: (Error|null), response?: google.longrunning.Operation) => void;
+ }
+
+ /** Likelihood enum. */
+ enum Likelihood {
+ UNKNOWN = 0,
+ VERY_UNLIKELY = 1,
+ UNLIKELY = 2,
+ POSSIBLE = 3,
+ LIKELY = 4,
+ VERY_LIKELY = 5
+ }
+
+ /** Properties of a Feature. */
+ interface IFeature {
+
+ /** Feature type */
+ type?: (google.cloud.vision.v1.Feature.Type|keyof typeof google.cloud.vision.v1.Feature.Type|null);
+
+ /** Feature maxResults */
+ maxResults?: (number|null);
+
+ /** Feature model */
+ model?: (string|null);
+ }
+
+ /** Represents a Feature. */
+ class Feature implements IFeature {
+
+ /**
+ * Constructs a new Feature.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1.IFeature);
+
+ /** Feature type. */
+ public type: (google.cloud.vision.v1.Feature.Type|keyof typeof google.cloud.vision.v1.Feature.Type);
+
+ /** Feature maxResults. */
+ public maxResults: number;
+
+ /** Feature model. */
+ public model: string;
+
+ /**
+ * Creates a new Feature instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Feature instance
+ */
+ public static create(properties?: google.cloud.vision.v1.IFeature): google.cloud.vision.v1.Feature;
+
+ /**
+ * Encodes the specified Feature message. Does not implicitly {@link google.cloud.vision.v1.Feature.verify|verify} messages.
+ * @param message Feature message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1.IFeature, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Feature message, length delimited. Does not implicitly {@link google.cloud.vision.v1.Feature.verify|verify} messages.
+ * @param message Feature message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1.IFeature, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Feature message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Feature
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1.Feature;
+
+ /**
+ * Decodes a Feature message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Feature
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1.Feature;
+
+ /**
+ * Verifies a Feature message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a Feature message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Feature
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1.Feature;
+
+ /**
+ * Creates a plain object from a Feature message. Also converts values to other types if specified.
+ * @param message Feature
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1.Feature, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Feature to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Feature
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace Feature {
+
+ /** Type enum. */
+ enum Type {
+ TYPE_UNSPECIFIED = 0,
+ FACE_DETECTION = 1,
+ LANDMARK_DETECTION = 2,
+ LOGO_DETECTION = 3,
+ LABEL_DETECTION = 4,
+ TEXT_DETECTION = 5,
+ DOCUMENT_TEXT_DETECTION = 11,
+ SAFE_SEARCH_DETECTION = 6,
+ IMAGE_PROPERTIES = 7,
+ CROP_HINTS = 9,
+ WEB_DETECTION = 10,
+ PRODUCT_SEARCH = 12,
+ OBJECT_LOCALIZATION = 19
+ }
+ }
+
+ /** Properties of an ImageSource. */
+ interface IImageSource {
+
+ /** ImageSource gcsImageUri */
+ gcsImageUri?: (string|null);
+
+ /** ImageSource imageUri */
+ imageUri?: (string|null);
+ }
+
+ /** Represents an ImageSource. */
+ class ImageSource implements IImageSource {
+
+ /**
+ * Constructs a new ImageSource.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1.IImageSource);
+
+ /** ImageSource gcsImageUri. */
+ public gcsImageUri: string;
+
+ /** ImageSource imageUri. */
+ public imageUri: string;
+
+ /**
+ * Creates a new ImageSource instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ImageSource instance
+ */
+ public static create(properties?: google.cloud.vision.v1.IImageSource): google.cloud.vision.v1.ImageSource;
+
+ /**
+ * Encodes the specified ImageSource message. Does not implicitly {@link google.cloud.vision.v1.ImageSource.verify|verify} messages.
+ * @param message ImageSource message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1.IImageSource, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ImageSource message, length delimited. Does not implicitly {@link google.cloud.vision.v1.ImageSource.verify|verify} messages.
+ * @param message ImageSource message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1.IImageSource, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an ImageSource message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ImageSource
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1.ImageSource;
+
+ /**
+ * Decodes an ImageSource message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ImageSource
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1.ImageSource;
+
+ /**
+ * Verifies an ImageSource message.
+ * @param message Plain 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 ImageSource message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ImageSource
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1.ImageSource;
+
+ /**
+ * Creates a plain object from an ImageSource message. Also converts values to other types if specified.
+ * @param message ImageSource
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1.ImageSource, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ImageSource to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ImageSource
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an Image. */
+ interface IImage {
+
+ /** Image content */
+ content?: (Uint8Array|string|null);
+
+ /** Image source */
+ source?: (google.cloud.vision.v1.IImageSource|null);
+ }
+
+ /** Represents an Image. */
+ class Image implements IImage {
+
+ /**
+ * Constructs a new Image.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1.IImage);
+
+ /** Image content. */
+ public content: (Uint8Array|string);
+
+ /** Image source. */
+ public source?: (google.cloud.vision.v1.IImageSource|null);
+
+ /**
+ * Creates a new Image instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Image instance
+ */
+ public static create(properties?: google.cloud.vision.v1.IImage): google.cloud.vision.v1.Image;
+
+ /**
+ * Encodes the specified Image message. Does not implicitly {@link google.cloud.vision.v1.Image.verify|verify} messages.
+ * @param message Image message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1.IImage, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Image message, length delimited. Does not implicitly {@link google.cloud.vision.v1.Image.verify|verify} messages.
+ * @param message Image message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1.IImage, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an Image message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Image
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1.Image;
+
+ /**
+ * Decodes an Image message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Image
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1.Image;
+
+ /**
+ * Verifies an Image message.
+ * @param message Plain 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 Image message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Image
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1.Image;
+
+ /**
+ * Creates a plain object from an Image message. Also converts values to other types if specified.
+ * @param message Image
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1.Image, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Image to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Image
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a FaceAnnotation. */
+ interface IFaceAnnotation {
+
+ /** FaceAnnotation boundingPoly */
+ boundingPoly?: (google.cloud.vision.v1.IBoundingPoly|null);
+
+ /** FaceAnnotation fdBoundingPoly */
+ fdBoundingPoly?: (google.cloud.vision.v1.IBoundingPoly|null);
+
+ /** FaceAnnotation landmarks */
+ landmarks?: (google.cloud.vision.v1.FaceAnnotation.ILandmark[]|null);
+
+ /** FaceAnnotation rollAngle */
+ rollAngle?: (number|null);
+
+ /** FaceAnnotation panAngle */
+ panAngle?: (number|null);
+
+ /** FaceAnnotation tiltAngle */
+ tiltAngle?: (number|null);
+
+ /** FaceAnnotation detectionConfidence */
+ detectionConfidence?: (number|null);
+
+ /** FaceAnnotation landmarkingConfidence */
+ landmarkingConfidence?: (number|null);
+
+ /** FaceAnnotation joyLikelihood */
+ joyLikelihood?: (google.cloud.vision.v1.Likelihood|keyof typeof google.cloud.vision.v1.Likelihood|null);
+
+ /** FaceAnnotation sorrowLikelihood */
+ sorrowLikelihood?: (google.cloud.vision.v1.Likelihood|keyof typeof google.cloud.vision.v1.Likelihood|null);
+
+ /** FaceAnnotation angerLikelihood */
+ angerLikelihood?: (google.cloud.vision.v1.Likelihood|keyof typeof google.cloud.vision.v1.Likelihood|null);
+
+ /** FaceAnnotation surpriseLikelihood */
+ surpriseLikelihood?: (google.cloud.vision.v1.Likelihood|keyof typeof google.cloud.vision.v1.Likelihood|null);
+
+ /** FaceAnnotation underExposedLikelihood */
+ underExposedLikelihood?: (google.cloud.vision.v1.Likelihood|keyof typeof google.cloud.vision.v1.Likelihood|null);
+
+ /** FaceAnnotation blurredLikelihood */
+ blurredLikelihood?: (google.cloud.vision.v1.Likelihood|keyof typeof google.cloud.vision.v1.Likelihood|null);
+
+ /** FaceAnnotation headwearLikelihood */
+ headwearLikelihood?: (google.cloud.vision.v1.Likelihood|keyof typeof google.cloud.vision.v1.Likelihood|null);
+ }
+
+ /** Represents a FaceAnnotation. */
+ class FaceAnnotation implements IFaceAnnotation {
+
+ /**
+ * Constructs a new FaceAnnotation.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1.IFaceAnnotation);
+
+ /** FaceAnnotation boundingPoly. */
+ public boundingPoly?: (google.cloud.vision.v1.IBoundingPoly|null);
+
+ /** FaceAnnotation fdBoundingPoly. */
+ public fdBoundingPoly?: (google.cloud.vision.v1.IBoundingPoly|null);
+
+ /** FaceAnnotation landmarks. */
+ public landmarks: google.cloud.vision.v1.FaceAnnotation.ILandmark[];
+
+ /** FaceAnnotation rollAngle. */
+ public rollAngle: number;
+
+ /** FaceAnnotation panAngle. */
+ public panAngle: number;
+
+ /** FaceAnnotation tiltAngle. */
+ public tiltAngle: number;
+
+ /** FaceAnnotation detectionConfidence. */
+ public detectionConfidence: number;
+
+ /** FaceAnnotation landmarkingConfidence. */
+ public landmarkingConfidence: number;
+
+ /** FaceAnnotation joyLikelihood. */
+ public joyLikelihood: (google.cloud.vision.v1.Likelihood|keyof typeof google.cloud.vision.v1.Likelihood);
+
+ /** FaceAnnotation sorrowLikelihood. */
+ public sorrowLikelihood: (google.cloud.vision.v1.Likelihood|keyof typeof google.cloud.vision.v1.Likelihood);
+
+ /** FaceAnnotation angerLikelihood. */
+ public angerLikelihood: (google.cloud.vision.v1.Likelihood|keyof typeof google.cloud.vision.v1.Likelihood);
+
+ /** FaceAnnotation surpriseLikelihood. */
+ public surpriseLikelihood: (google.cloud.vision.v1.Likelihood|keyof typeof google.cloud.vision.v1.Likelihood);
+
+ /** FaceAnnotation underExposedLikelihood. */
+ public underExposedLikelihood: (google.cloud.vision.v1.Likelihood|keyof typeof google.cloud.vision.v1.Likelihood);
+
+ /** FaceAnnotation blurredLikelihood. */
+ public blurredLikelihood: (google.cloud.vision.v1.Likelihood|keyof typeof google.cloud.vision.v1.Likelihood);
+
+ /** FaceAnnotation headwearLikelihood. */
+ public headwearLikelihood: (google.cloud.vision.v1.Likelihood|keyof typeof google.cloud.vision.v1.Likelihood);
+
+ /**
+ * Creates a new FaceAnnotation instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns FaceAnnotation instance
+ */
+ public static create(properties?: google.cloud.vision.v1.IFaceAnnotation): google.cloud.vision.v1.FaceAnnotation;
+
+ /**
+ * Encodes the specified FaceAnnotation message. Does not implicitly {@link google.cloud.vision.v1.FaceAnnotation.verify|verify} messages.
+ * @param message FaceAnnotation message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1.IFaceAnnotation, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified FaceAnnotation message, length delimited. Does not implicitly {@link google.cloud.vision.v1.FaceAnnotation.verify|verify} messages.
+ * @param message FaceAnnotation message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1.IFaceAnnotation, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a FaceAnnotation message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns FaceAnnotation
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1.FaceAnnotation;
+
+ /**
+ * Decodes a FaceAnnotation message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns FaceAnnotation
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1.FaceAnnotation;
+
+ /**
+ * Verifies a FaceAnnotation message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a FaceAnnotation message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns FaceAnnotation
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1.FaceAnnotation;
+
+ /**
+ * Creates a plain object from a FaceAnnotation message. Also converts values to other types if specified.
+ * @param message FaceAnnotation
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1.FaceAnnotation, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this FaceAnnotation to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for FaceAnnotation
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace FaceAnnotation {
+
+ /** Properties of a Landmark. */
+ interface ILandmark {
+
+ /** Landmark type */
+ type?: (google.cloud.vision.v1.FaceAnnotation.Landmark.Type|keyof typeof google.cloud.vision.v1.FaceAnnotation.Landmark.Type|null);
+
+ /** Landmark position */
+ position?: (google.cloud.vision.v1.IPosition|null);
+ }
+
+ /** Represents a Landmark. */
+ class Landmark implements ILandmark {
+
+ /**
+ * Constructs a new Landmark.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1.FaceAnnotation.ILandmark);
+
+ /** Landmark type. */
+ public type: (google.cloud.vision.v1.FaceAnnotation.Landmark.Type|keyof typeof google.cloud.vision.v1.FaceAnnotation.Landmark.Type);
+
+ /** Landmark position. */
+ public position?: (google.cloud.vision.v1.IPosition|null);
+
+ /**
+ * Creates a new Landmark instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Landmark instance
+ */
+ public static create(properties?: google.cloud.vision.v1.FaceAnnotation.ILandmark): google.cloud.vision.v1.FaceAnnotation.Landmark;
+
+ /**
+ * Encodes the specified Landmark message. Does not implicitly {@link google.cloud.vision.v1.FaceAnnotation.Landmark.verify|verify} messages.
+ * @param message Landmark message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1.FaceAnnotation.ILandmark, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Landmark message, length delimited. Does not implicitly {@link google.cloud.vision.v1.FaceAnnotation.Landmark.verify|verify} messages.
+ * @param message Landmark message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1.FaceAnnotation.ILandmark, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Landmark message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Landmark
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1.FaceAnnotation.Landmark;
+
+ /**
+ * Decodes a Landmark message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Landmark
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1.FaceAnnotation.Landmark;
+
+ /**
+ * Verifies a Landmark message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a Landmark message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Landmark
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1.FaceAnnotation.Landmark;
+
+ /**
+ * Creates a plain object from a Landmark message. Also converts values to other types if specified.
+ * @param message Landmark
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1.FaceAnnotation.Landmark, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Landmark to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Landmark
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace Landmark {
+
+ /** Type enum. */
+ enum Type {
+ UNKNOWN_LANDMARK = 0,
+ LEFT_EYE = 1,
+ RIGHT_EYE = 2,
+ LEFT_OF_LEFT_EYEBROW = 3,
+ RIGHT_OF_LEFT_EYEBROW = 4,
+ LEFT_OF_RIGHT_EYEBROW = 5,
+ RIGHT_OF_RIGHT_EYEBROW = 6,
+ MIDPOINT_BETWEEN_EYES = 7,
+ NOSE_TIP = 8,
+ UPPER_LIP = 9,
+ LOWER_LIP = 10,
+ MOUTH_LEFT = 11,
+ MOUTH_RIGHT = 12,
+ MOUTH_CENTER = 13,
+ NOSE_BOTTOM_RIGHT = 14,
+ NOSE_BOTTOM_LEFT = 15,
+ NOSE_BOTTOM_CENTER = 16,
+ LEFT_EYE_TOP_BOUNDARY = 17,
+ LEFT_EYE_RIGHT_CORNER = 18,
+ LEFT_EYE_BOTTOM_BOUNDARY = 19,
+ LEFT_EYE_LEFT_CORNER = 20,
+ RIGHT_EYE_TOP_BOUNDARY = 21,
+ RIGHT_EYE_RIGHT_CORNER = 22,
+ RIGHT_EYE_BOTTOM_BOUNDARY = 23,
+ RIGHT_EYE_LEFT_CORNER = 24,
+ LEFT_EYEBROW_UPPER_MIDPOINT = 25,
+ RIGHT_EYEBROW_UPPER_MIDPOINT = 26,
+ LEFT_EAR_TRAGION = 27,
+ RIGHT_EAR_TRAGION = 28,
+ LEFT_EYE_PUPIL = 29,
+ RIGHT_EYE_PUPIL = 30,
+ FOREHEAD_GLABELLA = 31,
+ CHIN_GNATHION = 32,
+ CHIN_LEFT_GONION = 33,
+ CHIN_RIGHT_GONION = 34,
+ LEFT_CHEEK_CENTER = 35,
+ RIGHT_CHEEK_CENTER = 36
+ }
+ }
+ }
+
+ /** Properties of a LocationInfo. */
+ interface ILocationInfo {
+
+ /** LocationInfo latLng */
+ latLng?: (google.type.ILatLng|null);
+ }
+
+ /** Represents a LocationInfo. */
+ class LocationInfo implements ILocationInfo {
+
+ /**
+ * Constructs a new LocationInfo.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1.ILocationInfo);
+
+ /** LocationInfo latLng. */
+ public latLng?: (google.type.ILatLng|null);
+
+ /**
+ * Creates a new LocationInfo instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns LocationInfo instance
+ */
+ public static create(properties?: google.cloud.vision.v1.ILocationInfo): google.cloud.vision.v1.LocationInfo;
+
+ /**
+ * Encodes the specified LocationInfo message. Does not implicitly {@link google.cloud.vision.v1.LocationInfo.verify|verify} messages.
+ * @param message LocationInfo message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1.ILocationInfo, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified LocationInfo message, length delimited. Does not implicitly {@link google.cloud.vision.v1.LocationInfo.verify|verify} messages.
+ * @param message LocationInfo message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1.ILocationInfo, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a LocationInfo message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns LocationInfo
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1.LocationInfo;
+
+ /**
+ * Decodes a LocationInfo message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns LocationInfo
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1.LocationInfo;
+
+ /**
+ * Verifies a LocationInfo message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a LocationInfo message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns LocationInfo
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1.LocationInfo;
+
+ /**
+ * Creates a plain object from a LocationInfo message. Also converts values to other types if specified.
+ * @param message LocationInfo
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1.LocationInfo, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this LocationInfo to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for LocationInfo
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a Property. */
+ interface IProperty {
+
+ /** Property name */
+ name?: (string|null);
+
+ /** Property value */
+ value?: (string|null);
+
+ /** Property uint64Value */
+ uint64Value?: (number|Long|string|null);
+ }
+
+ /** Represents a Property. */
+ class Property implements IProperty {
+
+ /**
+ * Constructs a new Property.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1.IProperty);
+
+ /** Property name. */
+ public name: string;
+
+ /** Property value. */
+ public value: string;
+
+ /** Property uint64Value. */
+ public uint64Value: (number|Long|string);
+
+ /**
+ * Creates a new Property instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Property instance
+ */
+ public static create(properties?: google.cloud.vision.v1.IProperty): google.cloud.vision.v1.Property;
+
+ /**
+ * Encodes the specified Property message. Does not implicitly {@link google.cloud.vision.v1.Property.verify|verify} messages.
+ * @param message Property message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1.IProperty, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Property message, length delimited. Does not implicitly {@link google.cloud.vision.v1.Property.verify|verify} messages.
+ * @param message Property message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1.IProperty, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Property message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Property
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1.Property;
+
+ /**
+ * Decodes a Property message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Property
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1.Property;
+
+ /**
+ * Verifies a Property message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a Property message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Property
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1.Property;
+
+ /**
+ * Creates a plain object from a Property message. Also converts values to other types if specified.
+ * @param message Property
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1.Property, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Property to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Property
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an EntityAnnotation. */
+ interface IEntityAnnotation {
+
+ /** EntityAnnotation mid */
+ mid?: (string|null);
+
+ /** EntityAnnotation locale */
+ locale?: (string|null);
+
+ /** EntityAnnotation description */
+ description?: (string|null);
+
+ /** EntityAnnotation score */
+ score?: (number|null);
+
+ /** EntityAnnotation confidence */
+ confidence?: (number|null);
+
+ /** EntityAnnotation topicality */
+ topicality?: (number|null);
+
+ /** EntityAnnotation boundingPoly */
+ boundingPoly?: (google.cloud.vision.v1.IBoundingPoly|null);
+
+ /** EntityAnnotation locations */
+ locations?: (google.cloud.vision.v1.ILocationInfo[]|null);
+
+ /** EntityAnnotation properties */
+ properties?: (google.cloud.vision.v1.IProperty[]|null);
+ }
+
+ /** Represents an EntityAnnotation. */
+ class EntityAnnotation implements IEntityAnnotation {
+
+ /**
+ * Constructs a new EntityAnnotation.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1.IEntityAnnotation);
+
+ /** EntityAnnotation mid. */
+ public mid: string;
+
+ /** EntityAnnotation locale. */
+ public locale: string;
+
+ /** EntityAnnotation description. */
+ public description: string;
+
+ /** EntityAnnotation score. */
+ public score: number;
+
+ /** EntityAnnotation confidence. */
+ public confidence: number;
+
+ /** EntityAnnotation topicality. */
+ public topicality: number;
+
+ /** EntityAnnotation boundingPoly. */
+ public boundingPoly?: (google.cloud.vision.v1.IBoundingPoly|null);
+
+ /** EntityAnnotation locations. */
+ public locations: google.cloud.vision.v1.ILocationInfo[];
+
+ /** EntityAnnotation properties. */
+ public properties: google.cloud.vision.v1.IProperty[];
+
+ /**
+ * Creates a new EntityAnnotation instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns EntityAnnotation instance
+ */
+ public static create(properties?: google.cloud.vision.v1.IEntityAnnotation): google.cloud.vision.v1.EntityAnnotation;
+
+ /**
+ * Encodes the specified EntityAnnotation message. Does not implicitly {@link google.cloud.vision.v1.EntityAnnotation.verify|verify} messages.
+ * @param message EntityAnnotation message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1.IEntityAnnotation, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified EntityAnnotation message, length delimited. Does not implicitly {@link google.cloud.vision.v1.EntityAnnotation.verify|verify} messages.
+ * @param message EntityAnnotation message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1.IEntityAnnotation, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an EntityAnnotation message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns EntityAnnotation
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1.EntityAnnotation;
+
+ /**
+ * Decodes an EntityAnnotation message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns EntityAnnotation
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1.EntityAnnotation;
+
+ /**
+ * Verifies an EntityAnnotation message.
+ * @param message Plain 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 EntityAnnotation message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns EntityAnnotation
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1.EntityAnnotation;
+
+ /**
+ * Creates a plain object from an EntityAnnotation message. Also converts values to other types if specified.
+ * @param message EntityAnnotation
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1.EntityAnnotation, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this EntityAnnotation to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for EntityAnnotation
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a LocalizedObjectAnnotation. */
+ interface ILocalizedObjectAnnotation {
+
+ /** LocalizedObjectAnnotation mid */
+ mid?: (string|null);
+
+ /** LocalizedObjectAnnotation languageCode */
+ languageCode?: (string|null);
+
+ /** LocalizedObjectAnnotation name */
+ name?: (string|null);
+
+ /** LocalizedObjectAnnotation score */
+ score?: (number|null);
+
+ /** LocalizedObjectAnnotation boundingPoly */
+ boundingPoly?: (google.cloud.vision.v1.IBoundingPoly|null);
+ }
+
+ /** Represents a LocalizedObjectAnnotation. */
+ class LocalizedObjectAnnotation implements ILocalizedObjectAnnotation {
+
+ /**
+ * Constructs a new LocalizedObjectAnnotation.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1.ILocalizedObjectAnnotation);
+
+ /** LocalizedObjectAnnotation mid. */
+ public mid: string;
+
+ /** LocalizedObjectAnnotation languageCode. */
+ public languageCode: string;
+
+ /** LocalizedObjectAnnotation name. */
+ public name: string;
+
+ /** LocalizedObjectAnnotation score. */
+ public score: number;
+
+ /** LocalizedObjectAnnotation boundingPoly. */
+ public boundingPoly?: (google.cloud.vision.v1.IBoundingPoly|null);
+
+ /**
+ * Creates a new LocalizedObjectAnnotation instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns LocalizedObjectAnnotation instance
+ */
+ public static create(properties?: google.cloud.vision.v1.ILocalizedObjectAnnotation): google.cloud.vision.v1.LocalizedObjectAnnotation;
+
+ /**
+ * Encodes the specified LocalizedObjectAnnotation message. Does not implicitly {@link google.cloud.vision.v1.LocalizedObjectAnnotation.verify|verify} messages.
+ * @param message LocalizedObjectAnnotation message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1.ILocalizedObjectAnnotation, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified LocalizedObjectAnnotation message, length delimited. Does not implicitly {@link google.cloud.vision.v1.LocalizedObjectAnnotation.verify|verify} messages.
+ * @param message LocalizedObjectAnnotation message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1.ILocalizedObjectAnnotation, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a LocalizedObjectAnnotation message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns LocalizedObjectAnnotation
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1.LocalizedObjectAnnotation;
+
+ /**
+ * Decodes a LocalizedObjectAnnotation message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns LocalizedObjectAnnotation
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1.LocalizedObjectAnnotation;
+
+ /**
+ * Verifies a LocalizedObjectAnnotation message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a LocalizedObjectAnnotation message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns LocalizedObjectAnnotation
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1.LocalizedObjectAnnotation;
+
+ /**
+ * Creates a plain object from a LocalizedObjectAnnotation message. Also converts values to other types if specified.
+ * @param message LocalizedObjectAnnotation
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1.LocalizedObjectAnnotation, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this LocalizedObjectAnnotation to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for LocalizedObjectAnnotation
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a SafeSearchAnnotation. */
+ interface ISafeSearchAnnotation {
+
+ /** SafeSearchAnnotation adult */
+ adult?: (google.cloud.vision.v1.Likelihood|keyof typeof google.cloud.vision.v1.Likelihood|null);
+
+ /** SafeSearchAnnotation spoof */
+ spoof?: (google.cloud.vision.v1.Likelihood|keyof typeof google.cloud.vision.v1.Likelihood|null);
+
+ /** SafeSearchAnnotation medical */
+ medical?: (google.cloud.vision.v1.Likelihood|keyof typeof google.cloud.vision.v1.Likelihood|null);
+
+ /** SafeSearchAnnotation violence */
+ violence?: (google.cloud.vision.v1.Likelihood|keyof typeof google.cloud.vision.v1.Likelihood|null);
+
+ /** SafeSearchAnnotation racy */
+ racy?: (google.cloud.vision.v1.Likelihood|keyof typeof google.cloud.vision.v1.Likelihood|null);
+ }
+
+ /** Represents a SafeSearchAnnotation. */
+ class SafeSearchAnnotation implements ISafeSearchAnnotation {
+
+ /**
+ * Constructs a new SafeSearchAnnotation.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1.ISafeSearchAnnotation);
+
+ /** SafeSearchAnnotation adult. */
+ public adult: (google.cloud.vision.v1.Likelihood|keyof typeof google.cloud.vision.v1.Likelihood);
+
+ /** SafeSearchAnnotation spoof. */
+ public spoof: (google.cloud.vision.v1.Likelihood|keyof typeof google.cloud.vision.v1.Likelihood);
+
+ /** SafeSearchAnnotation medical. */
+ public medical: (google.cloud.vision.v1.Likelihood|keyof typeof google.cloud.vision.v1.Likelihood);
+
+ /** SafeSearchAnnotation violence. */
+ public violence: (google.cloud.vision.v1.Likelihood|keyof typeof google.cloud.vision.v1.Likelihood);
+
+ /** SafeSearchAnnotation racy. */
+ public racy: (google.cloud.vision.v1.Likelihood|keyof typeof google.cloud.vision.v1.Likelihood);
+
+ /**
+ * Creates a new SafeSearchAnnotation instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns SafeSearchAnnotation instance
+ */
+ public static create(properties?: google.cloud.vision.v1.ISafeSearchAnnotation): google.cloud.vision.v1.SafeSearchAnnotation;
+
+ /**
+ * Encodes the specified SafeSearchAnnotation message. Does not implicitly {@link google.cloud.vision.v1.SafeSearchAnnotation.verify|verify} messages.
+ * @param message SafeSearchAnnotation message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1.ISafeSearchAnnotation, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified SafeSearchAnnotation message, length delimited. Does not implicitly {@link google.cloud.vision.v1.SafeSearchAnnotation.verify|verify} messages.
+ * @param message SafeSearchAnnotation message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1.ISafeSearchAnnotation, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a SafeSearchAnnotation message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns SafeSearchAnnotation
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1.SafeSearchAnnotation;
+
+ /**
+ * Decodes a SafeSearchAnnotation message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns SafeSearchAnnotation
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1.SafeSearchAnnotation;
+
+ /**
+ * Verifies a SafeSearchAnnotation message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a SafeSearchAnnotation message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns SafeSearchAnnotation
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1.SafeSearchAnnotation;
+
+ /**
+ * Creates a plain object from a SafeSearchAnnotation message. Also converts values to other types if specified.
+ * @param message SafeSearchAnnotation
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1.SafeSearchAnnotation, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this SafeSearchAnnotation to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for SafeSearchAnnotation
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a LatLongRect. */
+ interface ILatLongRect {
+
+ /** LatLongRect minLatLng */
+ minLatLng?: (google.type.ILatLng|null);
+
+ /** LatLongRect maxLatLng */
+ maxLatLng?: (google.type.ILatLng|null);
+ }
+
+ /** Represents a LatLongRect. */
+ class LatLongRect implements ILatLongRect {
+
+ /**
+ * Constructs a new LatLongRect.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1.ILatLongRect);
+
+ /** LatLongRect minLatLng. */
+ public minLatLng?: (google.type.ILatLng|null);
+
+ /** LatLongRect maxLatLng. */
+ public maxLatLng?: (google.type.ILatLng|null);
+
+ /**
+ * Creates a new LatLongRect instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns LatLongRect instance
+ */
+ public static create(properties?: google.cloud.vision.v1.ILatLongRect): google.cloud.vision.v1.LatLongRect;
+
+ /**
+ * Encodes the specified LatLongRect message. Does not implicitly {@link google.cloud.vision.v1.LatLongRect.verify|verify} messages.
+ * @param message LatLongRect message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1.ILatLongRect, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified LatLongRect message, length delimited. Does not implicitly {@link google.cloud.vision.v1.LatLongRect.verify|verify} messages.
+ * @param message LatLongRect message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1.ILatLongRect, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a LatLongRect message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns LatLongRect
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1.LatLongRect;
+
+ /**
+ * Decodes a LatLongRect message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns LatLongRect
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1.LatLongRect;
+
+ /**
+ * Verifies a LatLongRect message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a LatLongRect message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns LatLongRect
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1.LatLongRect;
+
+ /**
+ * Creates a plain object from a LatLongRect message. Also converts values to other types if specified.
+ * @param message LatLongRect
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1.LatLongRect, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this LatLongRect to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for LatLongRect
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ColorInfo. */
+ interface IColorInfo {
+
+ /** ColorInfo color */
+ color?: (google.type.IColor|null);
+
+ /** ColorInfo score */
+ score?: (number|null);
+
+ /** ColorInfo pixelFraction */
+ pixelFraction?: (number|null);
+ }
+
+ /** Represents a ColorInfo. */
+ class ColorInfo implements IColorInfo {
+
+ /**
+ * Constructs a new ColorInfo.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1.IColorInfo);
+
+ /** ColorInfo color. */
+ public color?: (google.type.IColor|null);
+
+ /** ColorInfo score. */
+ public score: number;
+
+ /** ColorInfo pixelFraction. */
+ public pixelFraction: number;
+
+ /**
+ * Creates a new ColorInfo instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ColorInfo instance
+ */
+ public static create(properties?: google.cloud.vision.v1.IColorInfo): google.cloud.vision.v1.ColorInfo;
+
+ /**
+ * Encodes the specified ColorInfo message. Does not implicitly {@link google.cloud.vision.v1.ColorInfo.verify|verify} messages.
+ * @param message ColorInfo message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1.IColorInfo, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ColorInfo message, length delimited. Does not implicitly {@link google.cloud.vision.v1.ColorInfo.verify|verify} messages.
+ * @param message ColorInfo message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1.IColorInfo, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ColorInfo message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ColorInfo
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1.ColorInfo;
+
+ /**
+ * Decodes a ColorInfo message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ColorInfo
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1.ColorInfo;
+
+ /**
+ * Verifies a ColorInfo message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ColorInfo message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ColorInfo
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1.ColorInfo;
+
+ /**
+ * Creates a plain object from a ColorInfo message. Also converts values to other types if specified.
+ * @param message ColorInfo
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1.ColorInfo, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ColorInfo to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ColorInfo
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a DominantColorsAnnotation. */
+ interface IDominantColorsAnnotation {
+
+ /** DominantColorsAnnotation colors */
+ colors?: (google.cloud.vision.v1.IColorInfo[]|null);
+ }
+
+ /** Represents a DominantColorsAnnotation. */
+ class DominantColorsAnnotation implements IDominantColorsAnnotation {
+
+ /**
+ * Constructs a new DominantColorsAnnotation.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1.IDominantColorsAnnotation);
+
+ /** DominantColorsAnnotation colors. */
+ public colors: google.cloud.vision.v1.IColorInfo[];
+
+ /**
+ * Creates a new DominantColorsAnnotation instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns DominantColorsAnnotation instance
+ */
+ public static create(properties?: google.cloud.vision.v1.IDominantColorsAnnotation): google.cloud.vision.v1.DominantColorsAnnotation;
+
+ /**
+ * Encodes the specified DominantColorsAnnotation message. Does not implicitly {@link google.cloud.vision.v1.DominantColorsAnnotation.verify|verify} messages.
+ * @param message DominantColorsAnnotation message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1.IDominantColorsAnnotation, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified DominantColorsAnnotation message, length delimited. Does not implicitly {@link google.cloud.vision.v1.DominantColorsAnnotation.verify|verify} messages.
+ * @param message DominantColorsAnnotation message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1.IDominantColorsAnnotation, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a DominantColorsAnnotation message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns DominantColorsAnnotation
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1.DominantColorsAnnotation;
+
+ /**
+ * Decodes a DominantColorsAnnotation message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns DominantColorsAnnotation
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1.DominantColorsAnnotation;
+
+ /**
+ * Verifies a DominantColorsAnnotation message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a DominantColorsAnnotation message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns DominantColorsAnnotation
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1.DominantColorsAnnotation;
+
+ /**
+ * Creates a plain object from a DominantColorsAnnotation message. Also converts values to other types if specified.
+ * @param message DominantColorsAnnotation
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1.DominantColorsAnnotation, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this DominantColorsAnnotation to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for DominantColorsAnnotation
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an ImageProperties. */
+ interface IImageProperties {
+
+ /** ImageProperties dominantColors */
+ dominantColors?: (google.cloud.vision.v1.IDominantColorsAnnotation|null);
+ }
+
+ /** Represents an ImageProperties. */
+ class ImageProperties implements IImageProperties {
+
+ /**
+ * Constructs a new ImageProperties.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1.IImageProperties);
+
+ /** ImageProperties dominantColors. */
+ public dominantColors?: (google.cloud.vision.v1.IDominantColorsAnnotation|null);
+
+ /**
+ * Creates a new ImageProperties instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ImageProperties instance
+ */
+ public static create(properties?: google.cloud.vision.v1.IImageProperties): google.cloud.vision.v1.ImageProperties;
+
+ /**
+ * Encodes the specified ImageProperties message. Does not implicitly {@link google.cloud.vision.v1.ImageProperties.verify|verify} messages.
+ * @param message ImageProperties message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1.IImageProperties, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ImageProperties message, length delimited. Does not implicitly {@link google.cloud.vision.v1.ImageProperties.verify|verify} messages.
+ * @param message ImageProperties message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1.IImageProperties, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an ImageProperties message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ImageProperties
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1.ImageProperties;
+
+ /**
+ * Decodes an ImageProperties message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ImageProperties
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1.ImageProperties;
+
+ /**
+ * Verifies an ImageProperties message.
+ * @param message Plain 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 ImageProperties message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ImageProperties
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1.ImageProperties;
+
+ /**
+ * Creates a plain object from an ImageProperties message. Also converts values to other types if specified.
+ * @param message ImageProperties
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1.ImageProperties, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ImageProperties to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ImageProperties
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a CropHint. */
+ interface ICropHint {
+
+ /** CropHint boundingPoly */
+ boundingPoly?: (google.cloud.vision.v1.IBoundingPoly|null);
+
+ /** CropHint confidence */
+ confidence?: (number|null);
+
+ /** CropHint importanceFraction */
+ importanceFraction?: (number|null);
+ }
+
+ /** Represents a CropHint. */
+ class CropHint implements ICropHint {
+
+ /**
+ * Constructs a new CropHint.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1.ICropHint);
+
+ /** CropHint boundingPoly. */
+ public boundingPoly?: (google.cloud.vision.v1.IBoundingPoly|null);
+
+ /** CropHint confidence. */
+ public confidence: number;
+
+ /** CropHint importanceFraction. */
+ public importanceFraction: number;
+
+ /**
+ * Creates a new CropHint instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns CropHint instance
+ */
+ public static create(properties?: google.cloud.vision.v1.ICropHint): google.cloud.vision.v1.CropHint;
+
+ /**
+ * Encodes the specified CropHint message. Does not implicitly {@link google.cloud.vision.v1.CropHint.verify|verify} messages.
+ * @param message CropHint message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1.ICropHint, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified CropHint message, length delimited. Does not implicitly {@link google.cloud.vision.v1.CropHint.verify|verify} messages.
+ * @param message CropHint message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1.ICropHint, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a CropHint message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns CropHint
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1.CropHint;
+
+ /**
+ * Decodes a CropHint message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns CropHint
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1.CropHint;
+
+ /**
+ * Verifies a CropHint message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a CropHint message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns CropHint
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1.CropHint;
+
+ /**
+ * Creates a plain object from a CropHint message. Also converts values to other types if specified.
+ * @param message CropHint
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1.CropHint, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this CropHint to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for CropHint
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a CropHintsAnnotation. */
+ interface ICropHintsAnnotation {
+
+ /** CropHintsAnnotation cropHints */
+ cropHints?: (google.cloud.vision.v1.ICropHint[]|null);
+ }
+
+ /** Represents a CropHintsAnnotation. */
+ class CropHintsAnnotation implements ICropHintsAnnotation {
+
+ /**
+ * Constructs a new CropHintsAnnotation.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1.ICropHintsAnnotation);
+
+ /** CropHintsAnnotation cropHints. */
+ public cropHints: google.cloud.vision.v1.ICropHint[];
+
+ /**
+ * Creates a new CropHintsAnnotation instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns CropHintsAnnotation instance
+ */
+ public static create(properties?: google.cloud.vision.v1.ICropHintsAnnotation): google.cloud.vision.v1.CropHintsAnnotation;
+
+ /**
+ * Encodes the specified CropHintsAnnotation message. Does not implicitly {@link google.cloud.vision.v1.CropHintsAnnotation.verify|verify} messages.
+ * @param message CropHintsAnnotation message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1.ICropHintsAnnotation, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified CropHintsAnnotation message, length delimited. Does not implicitly {@link google.cloud.vision.v1.CropHintsAnnotation.verify|verify} messages.
+ * @param message CropHintsAnnotation message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1.ICropHintsAnnotation, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a CropHintsAnnotation message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns CropHintsAnnotation
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1.CropHintsAnnotation;
+
+ /**
+ * Decodes a CropHintsAnnotation message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns CropHintsAnnotation
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1.CropHintsAnnotation;
+
+ /**
+ * Verifies a CropHintsAnnotation message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a CropHintsAnnotation message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns CropHintsAnnotation
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1.CropHintsAnnotation;
+
+ /**
+ * Creates a plain object from a CropHintsAnnotation message. Also converts values to other types if specified.
+ * @param message CropHintsAnnotation
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1.CropHintsAnnotation, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this CropHintsAnnotation to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for CropHintsAnnotation
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a CropHintsParams. */
+ interface ICropHintsParams {
+
+ /** CropHintsParams aspectRatios */
+ aspectRatios?: (number[]|null);
+ }
+
+ /** Represents a CropHintsParams. */
+ class CropHintsParams implements ICropHintsParams {
+
+ /**
+ * Constructs a new CropHintsParams.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1.ICropHintsParams);
+
+ /** CropHintsParams aspectRatios. */
+ public aspectRatios: number[];
+
+ /**
+ * Creates a new CropHintsParams instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns CropHintsParams instance
+ */
+ public static create(properties?: google.cloud.vision.v1.ICropHintsParams): google.cloud.vision.v1.CropHintsParams;
+
+ /**
+ * Encodes the specified CropHintsParams message. Does not implicitly {@link google.cloud.vision.v1.CropHintsParams.verify|verify} messages.
+ * @param message CropHintsParams message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1.ICropHintsParams, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified CropHintsParams message, length delimited. Does not implicitly {@link google.cloud.vision.v1.CropHintsParams.verify|verify} messages.
+ * @param message CropHintsParams message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1.ICropHintsParams, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a CropHintsParams message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns CropHintsParams
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1.CropHintsParams;
+
+ /**
+ * Decodes a CropHintsParams message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns CropHintsParams
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1.CropHintsParams;
+
+ /**
+ * Verifies a CropHintsParams message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a CropHintsParams message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns CropHintsParams
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1.CropHintsParams;
+
+ /**
+ * Creates a plain object from a CropHintsParams message. Also converts values to other types if specified.
+ * @param message CropHintsParams
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1.CropHintsParams, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this CropHintsParams to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for CropHintsParams
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a WebDetectionParams. */
+ interface IWebDetectionParams {
+
+ /** WebDetectionParams includeGeoResults */
+ includeGeoResults?: (boolean|null);
+ }
+
+ /** Represents a WebDetectionParams. */
+ class WebDetectionParams implements IWebDetectionParams {
+
+ /**
+ * Constructs a new WebDetectionParams.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1.IWebDetectionParams);
+
+ /** WebDetectionParams includeGeoResults. */
+ public includeGeoResults: boolean;
+
+ /**
+ * Creates a new WebDetectionParams instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns WebDetectionParams instance
+ */
+ public static create(properties?: google.cloud.vision.v1.IWebDetectionParams): google.cloud.vision.v1.WebDetectionParams;
+
+ /**
+ * Encodes the specified WebDetectionParams message. Does not implicitly {@link google.cloud.vision.v1.WebDetectionParams.verify|verify} messages.
+ * @param message WebDetectionParams message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1.IWebDetectionParams, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified WebDetectionParams message, length delimited. Does not implicitly {@link google.cloud.vision.v1.WebDetectionParams.verify|verify} messages.
+ * @param message WebDetectionParams message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1.IWebDetectionParams, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a WebDetectionParams message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns WebDetectionParams
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1.WebDetectionParams;
+
+ /**
+ * Decodes a WebDetectionParams message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns WebDetectionParams
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1.WebDetectionParams;
+
+ /**
+ * Verifies a WebDetectionParams message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a WebDetectionParams message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns WebDetectionParams
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1.WebDetectionParams;
+
+ /**
+ * Creates a plain object from a WebDetectionParams message. Also converts values to other types if specified.
+ * @param message WebDetectionParams
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1.WebDetectionParams, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this WebDetectionParams to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for WebDetectionParams
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a TextDetectionParams. */
+ interface ITextDetectionParams {
+
+ /** TextDetectionParams enableTextDetectionConfidenceScore */
+ enableTextDetectionConfidenceScore?: (boolean|null);
+
+ /** TextDetectionParams advancedOcrOptions */
+ advancedOcrOptions?: (string[]|null);
+ }
+
+ /** Represents a TextDetectionParams. */
+ class TextDetectionParams implements ITextDetectionParams {
+
+ /**
+ * Constructs a new TextDetectionParams.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1.ITextDetectionParams);
+
+ /** TextDetectionParams enableTextDetectionConfidenceScore. */
+ public enableTextDetectionConfidenceScore: boolean;
+
+ /** TextDetectionParams advancedOcrOptions. */
+ public advancedOcrOptions: string[];
+
+ /**
+ * Creates a new TextDetectionParams instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns TextDetectionParams instance
+ */
+ public static create(properties?: google.cloud.vision.v1.ITextDetectionParams): google.cloud.vision.v1.TextDetectionParams;
+
+ /**
+ * Encodes the specified TextDetectionParams message. Does not implicitly {@link google.cloud.vision.v1.TextDetectionParams.verify|verify} messages.
+ * @param message TextDetectionParams message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1.ITextDetectionParams, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified TextDetectionParams message, length delimited. Does not implicitly {@link google.cloud.vision.v1.TextDetectionParams.verify|verify} messages.
+ * @param message TextDetectionParams message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1.ITextDetectionParams, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a TextDetectionParams message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns TextDetectionParams
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1.TextDetectionParams;
+
+ /**
+ * Decodes a TextDetectionParams message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns TextDetectionParams
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1.TextDetectionParams;
+
+ /**
+ * Verifies a TextDetectionParams message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a TextDetectionParams message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns TextDetectionParams
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1.TextDetectionParams;
+
+ /**
+ * Creates a plain object from a TextDetectionParams message. Also converts values to other types if specified.
+ * @param message TextDetectionParams
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1.TextDetectionParams, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this TextDetectionParams to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for TextDetectionParams
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an ImageContext. */
+ interface IImageContext {
+
+ /** ImageContext latLongRect */
+ latLongRect?: (google.cloud.vision.v1.ILatLongRect|null);
+
+ /** ImageContext languageHints */
+ languageHints?: (string[]|null);
+
+ /** ImageContext cropHintsParams */
+ cropHintsParams?: (google.cloud.vision.v1.ICropHintsParams|null);
+
+ /** ImageContext productSearchParams */
+ productSearchParams?: (google.cloud.vision.v1.IProductSearchParams|null);
+
+ /** ImageContext webDetectionParams */
+ webDetectionParams?: (google.cloud.vision.v1.IWebDetectionParams|null);
+
+ /** ImageContext textDetectionParams */
+ textDetectionParams?: (google.cloud.vision.v1.ITextDetectionParams|null);
+ }
+
+ /** Represents an ImageContext. */
+ class ImageContext implements IImageContext {
+
+ /**
+ * Constructs a new ImageContext.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1.IImageContext);
+
+ /** ImageContext latLongRect. */
+ public latLongRect?: (google.cloud.vision.v1.ILatLongRect|null);
+
+ /** ImageContext languageHints. */
+ public languageHints: string[];
+
+ /** ImageContext cropHintsParams. */
+ public cropHintsParams?: (google.cloud.vision.v1.ICropHintsParams|null);
+
+ /** ImageContext productSearchParams. */
+ public productSearchParams?: (google.cloud.vision.v1.IProductSearchParams|null);
+
+ /** ImageContext webDetectionParams. */
+ public webDetectionParams?: (google.cloud.vision.v1.IWebDetectionParams|null);
+
+ /** ImageContext textDetectionParams. */
+ public textDetectionParams?: (google.cloud.vision.v1.ITextDetectionParams|null);
+
+ /**
+ * Creates a new ImageContext instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ImageContext instance
+ */
+ public static create(properties?: google.cloud.vision.v1.IImageContext): google.cloud.vision.v1.ImageContext;
+
+ /**
+ * Encodes the specified ImageContext message. Does not implicitly {@link google.cloud.vision.v1.ImageContext.verify|verify} messages.
+ * @param message ImageContext message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1.IImageContext, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ImageContext message, length delimited. Does not implicitly {@link google.cloud.vision.v1.ImageContext.verify|verify} messages.
+ * @param message ImageContext message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1.IImageContext, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an ImageContext message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ImageContext
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1.ImageContext;
+
+ /**
+ * Decodes an ImageContext message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ImageContext
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1.ImageContext;
+
+ /**
+ * Verifies an ImageContext message.
+ * @param message Plain 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 ImageContext message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ImageContext
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1.ImageContext;
+
+ /**
+ * Creates a plain object from an ImageContext message. Also converts values to other types if specified.
+ * @param message ImageContext
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1.ImageContext, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ImageContext to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ImageContext
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an AnnotateImageRequest. */
+ interface IAnnotateImageRequest {
+
+ /** AnnotateImageRequest image */
+ image?: (google.cloud.vision.v1.IImage|null);
+
+ /** AnnotateImageRequest features */
+ features?: (google.cloud.vision.v1.IFeature[]|null);
+
+ /** AnnotateImageRequest imageContext */
+ imageContext?: (google.cloud.vision.v1.IImageContext|null);
+ }
+
+ /** Represents an AnnotateImageRequest. */
+ class AnnotateImageRequest implements IAnnotateImageRequest {
+
+ /**
+ * Constructs a new AnnotateImageRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1.IAnnotateImageRequest);
+
+ /** AnnotateImageRequest image. */
+ public image?: (google.cloud.vision.v1.IImage|null);
+
+ /** AnnotateImageRequest features. */
+ public features: google.cloud.vision.v1.IFeature[];
+
+ /** AnnotateImageRequest imageContext. */
+ public imageContext?: (google.cloud.vision.v1.IImageContext|null);
+
+ /**
+ * Creates a new AnnotateImageRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns AnnotateImageRequest instance
+ */
+ public static create(properties?: google.cloud.vision.v1.IAnnotateImageRequest): google.cloud.vision.v1.AnnotateImageRequest;
+
+ /**
+ * Encodes the specified AnnotateImageRequest message. Does not implicitly {@link google.cloud.vision.v1.AnnotateImageRequest.verify|verify} messages.
+ * @param message AnnotateImageRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1.IAnnotateImageRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified AnnotateImageRequest message, length delimited. Does not implicitly {@link google.cloud.vision.v1.AnnotateImageRequest.verify|verify} messages.
+ * @param message AnnotateImageRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1.IAnnotateImageRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an AnnotateImageRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns AnnotateImageRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1.AnnotateImageRequest;
+
+ /**
+ * Decodes an AnnotateImageRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns AnnotateImageRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1.AnnotateImageRequest;
+
+ /**
+ * Verifies an AnnotateImageRequest message.
+ * @param message Plain 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 AnnotateImageRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns AnnotateImageRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1.AnnotateImageRequest;
+
+ /**
+ * Creates a plain object from an AnnotateImageRequest message. Also converts values to other types if specified.
+ * @param message AnnotateImageRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1.AnnotateImageRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this AnnotateImageRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for AnnotateImageRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an ImageAnnotationContext. */
+ interface IImageAnnotationContext {
+
+ /** ImageAnnotationContext uri */
+ uri?: (string|null);
+
+ /** ImageAnnotationContext pageNumber */
+ pageNumber?: (number|null);
+ }
+
+ /** Represents an ImageAnnotationContext. */
+ class ImageAnnotationContext implements IImageAnnotationContext {
+
+ /**
+ * Constructs a new ImageAnnotationContext.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1.IImageAnnotationContext);
+
+ /** ImageAnnotationContext uri. */
+ public uri: string;
+
+ /** ImageAnnotationContext pageNumber. */
+ public pageNumber: number;
+
+ /**
+ * Creates a new ImageAnnotationContext instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ImageAnnotationContext instance
+ */
+ public static create(properties?: google.cloud.vision.v1.IImageAnnotationContext): google.cloud.vision.v1.ImageAnnotationContext;
+
+ /**
+ * Encodes the specified ImageAnnotationContext message. Does not implicitly {@link google.cloud.vision.v1.ImageAnnotationContext.verify|verify} messages.
+ * @param message ImageAnnotationContext message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1.IImageAnnotationContext, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ImageAnnotationContext message, length delimited. Does not implicitly {@link google.cloud.vision.v1.ImageAnnotationContext.verify|verify} messages.
+ * @param message ImageAnnotationContext message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1.IImageAnnotationContext, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an ImageAnnotationContext message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ImageAnnotationContext
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1.ImageAnnotationContext;
+
+ /**
+ * Decodes an ImageAnnotationContext message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ImageAnnotationContext
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1.ImageAnnotationContext;
+
+ /**
+ * Verifies an ImageAnnotationContext message.
+ * @param message Plain 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 ImageAnnotationContext message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ImageAnnotationContext
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1.ImageAnnotationContext;
+
+ /**
+ * Creates a plain object from an ImageAnnotationContext message. Also converts values to other types if specified.
+ * @param message ImageAnnotationContext
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1.ImageAnnotationContext, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ImageAnnotationContext to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ImageAnnotationContext
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an AnnotateImageResponse. */
+ interface IAnnotateImageResponse {
+
+ /** AnnotateImageResponse faceAnnotations */
+ faceAnnotations?: (google.cloud.vision.v1.IFaceAnnotation[]|null);
+
+ /** AnnotateImageResponse landmarkAnnotations */
+ landmarkAnnotations?: (google.cloud.vision.v1.IEntityAnnotation[]|null);
+
+ /** AnnotateImageResponse logoAnnotations */
+ logoAnnotations?: (google.cloud.vision.v1.IEntityAnnotation[]|null);
+
+ /** AnnotateImageResponse labelAnnotations */
+ labelAnnotations?: (google.cloud.vision.v1.IEntityAnnotation[]|null);
+
+ /** AnnotateImageResponse localizedObjectAnnotations */
+ localizedObjectAnnotations?: (google.cloud.vision.v1.ILocalizedObjectAnnotation[]|null);
+
+ /** AnnotateImageResponse textAnnotations */
+ textAnnotations?: (google.cloud.vision.v1.IEntityAnnotation[]|null);
+
+ /** AnnotateImageResponse fullTextAnnotation */
+ fullTextAnnotation?: (google.cloud.vision.v1.ITextAnnotation|null);
+
+ /** AnnotateImageResponse safeSearchAnnotation */
+ safeSearchAnnotation?: (google.cloud.vision.v1.ISafeSearchAnnotation|null);
+
+ /** AnnotateImageResponse imagePropertiesAnnotation */
+ imagePropertiesAnnotation?: (google.cloud.vision.v1.IImageProperties|null);
+
+ /** AnnotateImageResponse cropHintsAnnotation */
+ cropHintsAnnotation?: (google.cloud.vision.v1.ICropHintsAnnotation|null);
+
+ /** AnnotateImageResponse webDetection */
+ webDetection?: (google.cloud.vision.v1.IWebDetection|null);
+
+ /** AnnotateImageResponse productSearchResults */
+ productSearchResults?: (google.cloud.vision.v1.IProductSearchResults|null);
+
+ /** AnnotateImageResponse error */
+ error?: (google.rpc.IStatus|null);
+
+ /** AnnotateImageResponse context */
+ context?: (google.cloud.vision.v1.IImageAnnotationContext|null);
+ }
+
+ /** Represents an AnnotateImageResponse. */
+ class AnnotateImageResponse implements IAnnotateImageResponse {
+
+ /**
+ * Constructs a new AnnotateImageResponse.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1.IAnnotateImageResponse);
+
+ /** AnnotateImageResponse faceAnnotations. */
+ public faceAnnotations: google.cloud.vision.v1.IFaceAnnotation[];
+
+ /** AnnotateImageResponse landmarkAnnotations. */
+ public landmarkAnnotations: google.cloud.vision.v1.IEntityAnnotation[];
+
+ /** AnnotateImageResponse logoAnnotations. */
+ public logoAnnotations: google.cloud.vision.v1.IEntityAnnotation[];
+
+ /** AnnotateImageResponse labelAnnotations. */
+ public labelAnnotations: google.cloud.vision.v1.IEntityAnnotation[];
+
+ /** AnnotateImageResponse localizedObjectAnnotations. */
+ public localizedObjectAnnotations: google.cloud.vision.v1.ILocalizedObjectAnnotation[];
+
+ /** AnnotateImageResponse textAnnotations. */
+ public textAnnotations: google.cloud.vision.v1.IEntityAnnotation[];
+
+ /** AnnotateImageResponse fullTextAnnotation. */
+ public fullTextAnnotation?: (google.cloud.vision.v1.ITextAnnotation|null);
+
+ /** AnnotateImageResponse safeSearchAnnotation. */
+ public safeSearchAnnotation?: (google.cloud.vision.v1.ISafeSearchAnnotation|null);
+
+ /** AnnotateImageResponse imagePropertiesAnnotation. */
+ public imagePropertiesAnnotation?: (google.cloud.vision.v1.IImageProperties|null);
+
+ /** AnnotateImageResponse cropHintsAnnotation. */
+ public cropHintsAnnotation?: (google.cloud.vision.v1.ICropHintsAnnotation|null);
+
+ /** AnnotateImageResponse webDetection. */
+ public webDetection?: (google.cloud.vision.v1.IWebDetection|null);
+
+ /** AnnotateImageResponse productSearchResults. */
+ public productSearchResults?: (google.cloud.vision.v1.IProductSearchResults|null);
+
+ /** AnnotateImageResponse error. */
+ public error?: (google.rpc.IStatus|null);
+
+ /** AnnotateImageResponse context. */
+ public context?: (google.cloud.vision.v1.IImageAnnotationContext|null);
+
+ /**
+ * Creates a new AnnotateImageResponse instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns AnnotateImageResponse instance
+ */
+ public static create(properties?: google.cloud.vision.v1.IAnnotateImageResponse): google.cloud.vision.v1.AnnotateImageResponse;
+
+ /**
+ * Encodes the specified AnnotateImageResponse message. Does not implicitly {@link google.cloud.vision.v1.AnnotateImageResponse.verify|verify} messages.
+ * @param message AnnotateImageResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1.IAnnotateImageResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified AnnotateImageResponse message, length delimited. Does not implicitly {@link google.cloud.vision.v1.AnnotateImageResponse.verify|verify} messages.
+ * @param message AnnotateImageResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1.IAnnotateImageResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an AnnotateImageResponse message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns AnnotateImageResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1.AnnotateImageResponse;
+
+ /**
+ * Decodes an AnnotateImageResponse message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns AnnotateImageResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1.AnnotateImageResponse;
+
+ /**
+ * Verifies an AnnotateImageResponse message.
+ * @param message Plain 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 AnnotateImageResponse message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns AnnotateImageResponse
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1.AnnotateImageResponse;
+
+ /**
+ * Creates a plain object from an AnnotateImageResponse message. Also converts values to other types if specified.
+ * @param message AnnotateImageResponse
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1.AnnotateImageResponse, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this AnnotateImageResponse to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for AnnotateImageResponse
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a BatchAnnotateImagesRequest. */
+ interface IBatchAnnotateImagesRequest {
+
+ /** BatchAnnotateImagesRequest requests */
+ requests?: (google.cloud.vision.v1.IAnnotateImageRequest[]|null);
+
+ /** BatchAnnotateImagesRequest parent */
+ parent?: (string|null);
+ }
+
+ /** Represents a BatchAnnotateImagesRequest. */
+ class BatchAnnotateImagesRequest implements IBatchAnnotateImagesRequest {
+
+ /**
+ * Constructs a new BatchAnnotateImagesRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1.IBatchAnnotateImagesRequest);
+
+ /** BatchAnnotateImagesRequest requests. */
+ public requests: google.cloud.vision.v1.IAnnotateImageRequest[];
+
+ /** BatchAnnotateImagesRequest parent. */
+ public parent: string;
+
+ /**
+ * Creates a new BatchAnnotateImagesRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns BatchAnnotateImagesRequest instance
+ */
+ public static create(properties?: google.cloud.vision.v1.IBatchAnnotateImagesRequest): google.cloud.vision.v1.BatchAnnotateImagesRequest;
+
+ /**
+ * Encodes the specified BatchAnnotateImagesRequest message. Does not implicitly {@link google.cloud.vision.v1.BatchAnnotateImagesRequest.verify|verify} messages.
+ * @param message BatchAnnotateImagesRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1.IBatchAnnotateImagesRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified BatchAnnotateImagesRequest message, length delimited. Does not implicitly {@link google.cloud.vision.v1.BatchAnnotateImagesRequest.verify|verify} messages.
+ * @param message BatchAnnotateImagesRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1.IBatchAnnotateImagesRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a BatchAnnotateImagesRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns BatchAnnotateImagesRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1.BatchAnnotateImagesRequest;
+
+ /**
+ * Decodes a BatchAnnotateImagesRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns BatchAnnotateImagesRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1.BatchAnnotateImagesRequest;
+
+ /**
+ * Verifies a BatchAnnotateImagesRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a BatchAnnotateImagesRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns BatchAnnotateImagesRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1.BatchAnnotateImagesRequest;
+
+ /**
+ * Creates a plain object from a BatchAnnotateImagesRequest message. Also converts values to other types if specified.
+ * @param message BatchAnnotateImagesRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1.BatchAnnotateImagesRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this BatchAnnotateImagesRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for BatchAnnotateImagesRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a BatchAnnotateImagesResponse. */
+ interface IBatchAnnotateImagesResponse {
+
+ /** BatchAnnotateImagesResponse responses */
+ responses?: (google.cloud.vision.v1.IAnnotateImageResponse[]|null);
+ }
+
+ /** Represents a BatchAnnotateImagesResponse. */
+ class BatchAnnotateImagesResponse implements IBatchAnnotateImagesResponse {
+
+ /**
+ * Constructs a new BatchAnnotateImagesResponse.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1.IBatchAnnotateImagesResponse);
+
+ /** BatchAnnotateImagesResponse responses. */
+ public responses: google.cloud.vision.v1.IAnnotateImageResponse[];
+
+ /**
+ * Creates a new BatchAnnotateImagesResponse instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns BatchAnnotateImagesResponse instance
+ */
+ public static create(properties?: google.cloud.vision.v1.IBatchAnnotateImagesResponse): google.cloud.vision.v1.BatchAnnotateImagesResponse;
+
+ /**
+ * Encodes the specified BatchAnnotateImagesResponse message. Does not implicitly {@link google.cloud.vision.v1.BatchAnnotateImagesResponse.verify|verify} messages.
+ * @param message BatchAnnotateImagesResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1.IBatchAnnotateImagesResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified BatchAnnotateImagesResponse message, length delimited. Does not implicitly {@link google.cloud.vision.v1.BatchAnnotateImagesResponse.verify|verify} messages.
+ * @param message BatchAnnotateImagesResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1.IBatchAnnotateImagesResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a BatchAnnotateImagesResponse message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns BatchAnnotateImagesResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1.BatchAnnotateImagesResponse;
+
+ /**
+ * Decodes a BatchAnnotateImagesResponse message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns BatchAnnotateImagesResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1.BatchAnnotateImagesResponse;
+
+ /**
+ * Verifies a BatchAnnotateImagesResponse message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a BatchAnnotateImagesResponse message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns BatchAnnotateImagesResponse
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1.BatchAnnotateImagesResponse;
+
+ /**
+ * Creates a plain object from a BatchAnnotateImagesResponse message. Also converts values to other types if specified.
+ * @param message BatchAnnotateImagesResponse
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1.BatchAnnotateImagesResponse, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this BatchAnnotateImagesResponse to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for BatchAnnotateImagesResponse
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an AnnotateFileRequest. */
+ interface IAnnotateFileRequest {
+
+ /** AnnotateFileRequest inputConfig */
+ inputConfig?: (google.cloud.vision.v1.IInputConfig|null);
+
+ /** AnnotateFileRequest features */
+ features?: (google.cloud.vision.v1.IFeature[]|null);
+
+ /** AnnotateFileRequest imageContext */
+ imageContext?: (google.cloud.vision.v1.IImageContext|null);
+
+ /** AnnotateFileRequest pages */
+ pages?: (number[]|null);
+ }
+
+ /** Represents an AnnotateFileRequest. */
+ class AnnotateFileRequest implements IAnnotateFileRequest {
+
+ /**
+ * Constructs a new AnnotateFileRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1.IAnnotateFileRequest);
+
+ /** AnnotateFileRequest inputConfig. */
+ public inputConfig?: (google.cloud.vision.v1.IInputConfig|null);
+
+ /** AnnotateFileRequest features. */
+ public features: google.cloud.vision.v1.IFeature[];
+
+ /** AnnotateFileRequest imageContext. */
+ public imageContext?: (google.cloud.vision.v1.IImageContext|null);
+
+ /** AnnotateFileRequest pages. */
+ public pages: number[];
+
+ /**
+ * Creates a new AnnotateFileRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns AnnotateFileRequest instance
+ */
+ public static create(properties?: google.cloud.vision.v1.IAnnotateFileRequest): google.cloud.vision.v1.AnnotateFileRequest;
+
+ /**
+ * Encodes the specified AnnotateFileRequest message. Does not implicitly {@link google.cloud.vision.v1.AnnotateFileRequest.verify|verify} messages.
+ * @param message AnnotateFileRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1.IAnnotateFileRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified AnnotateFileRequest message, length delimited. Does not implicitly {@link google.cloud.vision.v1.AnnotateFileRequest.verify|verify} messages.
+ * @param message AnnotateFileRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1.IAnnotateFileRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an AnnotateFileRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns AnnotateFileRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1.AnnotateFileRequest;
+
+ /**
+ * Decodes an AnnotateFileRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns AnnotateFileRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1.AnnotateFileRequest;
+
+ /**
+ * Verifies an AnnotateFileRequest message.
+ * @param message Plain 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 AnnotateFileRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns AnnotateFileRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1.AnnotateFileRequest;
+
+ /**
+ * Creates a plain object from an AnnotateFileRequest message. Also converts values to other types if specified.
+ * @param message AnnotateFileRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1.AnnotateFileRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this AnnotateFileRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for AnnotateFileRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an AnnotateFileResponse. */
+ interface IAnnotateFileResponse {
+
+ /** AnnotateFileResponse inputConfig */
+ inputConfig?: (google.cloud.vision.v1.IInputConfig|null);
+
+ /** AnnotateFileResponse responses */
+ responses?: (google.cloud.vision.v1.IAnnotateImageResponse[]|null);
+
+ /** AnnotateFileResponse totalPages */
+ totalPages?: (number|null);
+
+ /** AnnotateFileResponse error */
+ error?: (google.rpc.IStatus|null);
+ }
+
+ /** Represents an AnnotateFileResponse. */
+ class AnnotateFileResponse implements IAnnotateFileResponse {
+
+ /**
+ * Constructs a new AnnotateFileResponse.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1.IAnnotateFileResponse);
+
+ /** AnnotateFileResponse inputConfig. */
+ public inputConfig?: (google.cloud.vision.v1.IInputConfig|null);
+
+ /** AnnotateFileResponse responses. */
+ public responses: google.cloud.vision.v1.IAnnotateImageResponse[];
+
+ /** AnnotateFileResponse totalPages. */
+ public totalPages: number;
+
+ /** AnnotateFileResponse error. */
+ public error?: (google.rpc.IStatus|null);
+
+ /**
+ * Creates a new AnnotateFileResponse instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns AnnotateFileResponse instance
+ */
+ public static create(properties?: google.cloud.vision.v1.IAnnotateFileResponse): google.cloud.vision.v1.AnnotateFileResponse;
+
+ /**
+ * Encodes the specified AnnotateFileResponse message. Does not implicitly {@link google.cloud.vision.v1.AnnotateFileResponse.verify|verify} messages.
+ * @param message AnnotateFileResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1.IAnnotateFileResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified AnnotateFileResponse message, length delimited. Does not implicitly {@link google.cloud.vision.v1.AnnotateFileResponse.verify|verify} messages.
+ * @param message AnnotateFileResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1.IAnnotateFileResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an AnnotateFileResponse message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns AnnotateFileResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1.AnnotateFileResponse;
+
+ /**
+ * Decodes an AnnotateFileResponse message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns AnnotateFileResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1.AnnotateFileResponse;
+
+ /**
+ * Verifies an AnnotateFileResponse message.
+ * @param message Plain 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 AnnotateFileResponse message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns AnnotateFileResponse
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1.AnnotateFileResponse;
+
+ /**
+ * Creates a plain object from an AnnotateFileResponse message. Also converts values to other types if specified.
+ * @param message AnnotateFileResponse
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1.AnnotateFileResponse, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this AnnotateFileResponse to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for AnnotateFileResponse
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a BatchAnnotateFilesRequest. */
+ interface IBatchAnnotateFilesRequest {
+
+ /** BatchAnnotateFilesRequest requests */
+ requests?: (google.cloud.vision.v1.IAnnotateFileRequest[]|null);
+
+ /** BatchAnnotateFilesRequest parent */
+ parent?: (string|null);
+ }
+
+ /** Represents a BatchAnnotateFilesRequest. */
+ class BatchAnnotateFilesRequest implements IBatchAnnotateFilesRequest {
+
+ /**
+ * Constructs a new BatchAnnotateFilesRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1.IBatchAnnotateFilesRequest);
+
+ /** BatchAnnotateFilesRequest requests. */
+ public requests: google.cloud.vision.v1.IAnnotateFileRequest[];
+
+ /** BatchAnnotateFilesRequest parent. */
+ public parent: string;
+
+ /**
+ * Creates a new BatchAnnotateFilesRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns BatchAnnotateFilesRequest instance
+ */
+ public static create(properties?: google.cloud.vision.v1.IBatchAnnotateFilesRequest): google.cloud.vision.v1.BatchAnnotateFilesRequest;
+
+ /**
+ * Encodes the specified BatchAnnotateFilesRequest message. Does not implicitly {@link google.cloud.vision.v1.BatchAnnotateFilesRequest.verify|verify} messages.
+ * @param message BatchAnnotateFilesRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1.IBatchAnnotateFilesRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified BatchAnnotateFilesRequest message, length delimited. Does not implicitly {@link google.cloud.vision.v1.BatchAnnotateFilesRequest.verify|verify} messages.
+ * @param message BatchAnnotateFilesRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1.IBatchAnnotateFilesRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a BatchAnnotateFilesRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns BatchAnnotateFilesRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1.BatchAnnotateFilesRequest;
+
+ /**
+ * Decodes a BatchAnnotateFilesRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns BatchAnnotateFilesRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1.BatchAnnotateFilesRequest;
+
+ /**
+ * Verifies a BatchAnnotateFilesRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a BatchAnnotateFilesRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns BatchAnnotateFilesRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1.BatchAnnotateFilesRequest;
+
+ /**
+ * Creates a plain object from a BatchAnnotateFilesRequest message. Also converts values to other types if specified.
+ * @param message BatchAnnotateFilesRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1.BatchAnnotateFilesRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this BatchAnnotateFilesRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for BatchAnnotateFilesRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a BatchAnnotateFilesResponse. */
+ interface IBatchAnnotateFilesResponse {
+
+ /** BatchAnnotateFilesResponse responses */
+ responses?: (google.cloud.vision.v1.IAnnotateFileResponse[]|null);
+ }
+
+ /** Represents a BatchAnnotateFilesResponse. */
+ class BatchAnnotateFilesResponse implements IBatchAnnotateFilesResponse {
+
+ /**
+ * Constructs a new BatchAnnotateFilesResponse.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1.IBatchAnnotateFilesResponse);
+
+ /** BatchAnnotateFilesResponse responses. */
+ public responses: google.cloud.vision.v1.IAnnotateFileResponse[];
+
+ /**
+ * Creates a new BatchAnnotateFilesResponse instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns BatchAnnotateFilesResponse instance
+ */
+ public static create(properties?: google.cloud.vision.v1.IBatchAnnotateFilesResponse): google.cloud.vision.v1.BatchAnnotateFilesResponse;
+
+ /**
+ * Encodes the specified BatchAnnotateFilesResponse message. Does not implicitly {@link google.cloud.vision.v1.BatchAnnotateFilesResponse.verify|verify} messages.
+ * @param message BatchAnnotateFilesResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1.IBatchAnnotateFilesResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified BatchAnnotateFilesResponse message, length delimited. Does not implicitly {@link google.cloud.vision.v1.BatchAnnotateFilesResponse.verify|verify} messages.
+ * @param message BatchAnnotateFilesResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1.IBatchAnnotateFilesResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a BatchAnnotateFilesResponse message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns BatchAnnotateFilesResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1.BatchAnnotateFilesResponse;
+
+ /**
+ * Decodes a BatchAnnotateFilesResponse message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns BatchAnnotateFilesResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1.BatchAnnotateFilesResponse;
+
+ /**
+ * Verifies a BatchAnnotateFilesResponse message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a BatchAnnotateFilesResponse message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns BatchAnnotateFilesResponse
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1.BatchAnnotateFilesResponse;
+
+ /**
+ * Creates a plain object from a BatchAnnotateFilesResponse message. Also converts values to other types if specified.
+ * @param message BatchAnnotateFilesResponse
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1.BatchAnnotateFilesResponse, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this BatchAnnotateFilesResponse to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for BatchAnnotateFilesResponse
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an AsyncAnnotateFileRequest. */
+ interface IAsyncAnnotateFileRequest {
+
+ /** AsyncAnnotateFileRequest inputConfig */
+ inputConfig?: (google.cloud.vision.v1.IInputConfig|null);
+
+ /** AsyncAnnotateFileRequest features */
+ features?: (google.cloud.vision.v1.IFeature[]|null);
+
+ /** AsyncAnnotateFileRequest imageContext */
+ imageContext?: (google.cloud.vision.v1.IImageContext|null);
+
+ /** AsyncAnnotateFileRequest outputConfig */
+ outputConfig?: (google.cloud.vision.v1.IOutputConfig|null);
+ }
+
+ /** Represents an AsyncAnnotateFileRequest. */
+ class AsyncAnnotateFileRequest implements IAsyncAnnotateFileRequest {
+
+ /**
+ * Constructs a new AsyncAnnotateFileRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1.IAsyncAnnotateFileRequest);
+
+ /** AsyncAnnotateFileRequest inputConfig. */
+ public inputConfig?: (google.cloud.vision.v1.IInputConfig|null);
+
+ /** AsyncAnnotateFileRequest features. */
+ public features: google.cloud.vision.v1.IFeature[];
+
+ /** AsyncAnnotateFileRequest imageContext. */
+ public imageContext?: (google.cloud.vision.v1.IImageContext|null);
+
+ /** AsyncAnnotateFileRequest outputConfig. */
+ public outputConfig?: (google.cloud.vision.v1.IOutputConfig|null);
+
+ /**
+ * Creates a new AsyncAnnotateFileRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns AsyncAnnotateFileRequest instance
+ */
+ public static create(properties?: google.cloud.vision.v1.IAsyncAnnotateFileRequest): google.cloud.vision.v1.AsyncAnnotateFileRequest;
+
+ /**
+ * Encodes the specified AsyncAnnotateFileRequest message. Does not implicitly {@link google.cloud.vision.v1.AsyncAnnotateFileRequest.verify|verify} messages.
+ * @param message AsyncAnnotateFileRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1.IAsyncAnnotateFileRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified AsyncAnnotateFileRequest message, length delimited. Does not implicitly {@link google.cloud.vision.v1.AsyncAnnotateFileRequest.verify|verify} messages.
+ * @param message AsyncAnnotateFileRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1.IAsyncAnnotateFileRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an AsyncAnnotateFileRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns AsyncAnnotateFileRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1.AsyncAnnotateFileRequest;
+
+ /**
+ * Decodes an AsyncAnnotateFileRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns AsyncAnnotateFileRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1.AsyncAnnotateFileRequest;
+
+ /**
+ * Verifies an AsyncAnnotateFileRequest message.
+ * @param message Plain 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 AsyncAnnotateFileRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns AsyncAnnotateFileRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1.AsyncAnnotateFileRequest;
+
+ /**
+ * Creates a plain object from an AsyncAnnotateFileRequest message. Also converts values to other types if specified.
+ * @param message AsyncAnnotateFileRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1.AsyncAnnotateFileRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this AsyncAnnotateFileRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for AsyncAnnotateFileRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an AsyncAnnotateFileResponse. */
+ interface IAsyncAnnotateFileResponse {
+
+ /** AsyncAnnotateFileResponse outputConfig */
+ outputConfig?: (google.cloud.vision.v1.IOutputConfig|null);
+ }
+
+ /** Represents an AsyncAnnotateFileResponse. */
+ class AsyncAnnotateFileResponse implements IAsyncAnnotateFileResponse {
+
+ /**
+ * Constructs a new AsyncAnnotateFileResponse.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1.IAsyncAnnotateFileResponse);
+
+ /** AsyncAnnotateFileResponse outputConfig. */
+ public outputConfig?: (google.cloud.vision.v1.IOutputConfig|null);
+
+ /**
+ * Creates a new AsyncAnnotateFileResponse instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns AsyncAnnotateFileResponse instance
+ */
+ public static create(properties?: google.cloud.vision.v1.IAsyncAnnotateFileResponse): google.cloud.vision.v1.AsyncAnnotateFileResponse;
+
+ /**
+ * Encodes the specified AsyncAnnotateFileResponse message. Does not implicitly {@link google.cloud.vision.v1.AsyncAnnotateFileResponse.verify|verify} messages.
+ * @param message AsyncAnnotateFileResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1.IAsyncAnnotateFileResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified AsyncAnnotateFileResponse message, length delimited. Does not implicitly {@link google.cloud.vision.v1.AsyncAnnotateFileResponse.verify|verify} messages.
+ * @param message AsyncAnnotateFileResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1.IAsyncAnnotateFileResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an AsyncAnnotateFileResponse message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns AsyncAnnotateFileResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1.AsyncAnnotateFileResponse;
+
+ /**
+ * Decodes an AsyncAnnotateFileResponse message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns AsyncAnnotateFileResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1.AsyncAnnotateFileResponse;
+
+ /**
+ * Verifies an AsyncAnnotateFileResponse message.
+ * @param message Plain 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 AsyncAnnotateFileResponse message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns AsyncAnnotateFileResponse
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1.AsyncAnnotateFileResponse;
+
+ /**
+ * Creates a plain object from an AsyncAnnotateFileResponse message. Also converts values to other types if specified.
+ * @param message AsyncAnnotateFileResponse
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1.AsyncAnnotateFileResponse, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this AsyncAnnotateFileResponse to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for AsyncAnnotateFileResponse
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an AsyncBatchAnnotateImagesRequest. */
+ interface IAsyncBatchAnnotateImagesRequest {
+
+ /** AsyncBatchAnnotateImagesRequest requests */
+ requests?: (google.cloud.vision.v1.IAnnotateImageRequest[]|null);
+
+ /** AsyncBatchAnnotateImagesRequest outputConfig */
+ outputConfig?: (google.cloud.vision.v1.IOutputConfig|null);
+
+ /** AsyncBatchAnnotateImagesRequest parent */
+ parent?: (string|null);
+ }
+
+ /** Represents an AsyncBatchAnnotateImagesRequest. */
+ class AsyncBatchAnnotateImagesRequest implements IAsyncBatchAnnotateImagesRequest {
+
+ /**
+ * Constructs a new AsyncBatchAnnotateImagesRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1.IAsyncBatchAnnotateImagesRequest);
+
+ /** AsyncBatchAnnotateImagesRequest requests. */
+ public requests: google.cloud.vision.v1.IAnnotateImageRequest[];
+
+ /** AsyncBatchAnnotateImagesRequest outputConfig. */
+ public outputConfig?: (google.cloud.vision.v1.IOutputConfig|null);
+
+ /** AsyncBatchAnnotateImagesRequest parent. */
+ public parent: string;
+
+ /**
+ * Creates a new AsyncBatchAnnotateImagesRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns AsyncBatchAnnotateImagesRequest instance
+ */
+ public static create(properties?: google.cloud.vision.v1.IAsyncBatchAnnotateImagesRequest): google.cloud.vision.v1.AsyncBatchAnnotateImagesRequest;
+
+ /**
+ * Encodes the specified AsyncBatchAnnotateImagesRequest message. Does not implicitly {@link google.cloud.vision.v1.AsyncBatchAnnotateImagesRequest.verify|verify} messages.
+ * @param message AsyncBatchAnnotateImagesRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1.IAsyncBatchAnnotateImagesRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified AsyncBatchAnnotateImagesRequest message, length delimited. Does not implicitly {@link google.cloud.vision.v1.AsyncBatchAnnotateImagesRequest.verify|verify} messages.
+ * @param message AsyncBatchAnnotateImagesRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1.IAsyncBatchAnnotateImagesRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an AsyncBatchAnnotateImagesRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns AsyncBatchAnnotateImagesRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1.AsyncBatchAnnotateImagesRequest;
+
+ /**
+ * Decodes an AsyncBatchAnnotateImagesRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns AsyncBatchAnnotateImagesRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1.AsyncBatchAnnotateImagesRequest;
+
+ /**
+ * Verifies an AsyncBatchAnnotateImagesRequest message.
+ * @param message Plain 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 AsyncBatchAnnotateImagesRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns AsyncBatchAnnotateImagesRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1.AsyncBatchAnnotateImagesRequest;
+
+ /**
+ * Creates a plain object from an AsyncBatchAnnotateImagesRequest message. Also converts values to other types if specified.
+ * @param message AsyncBatchAnnotateImagesRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1.AsyncBatchAnnotateImagesRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this AsyncBatchAnnotateImagesRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for AsyncBatchAnnotateImagesRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an AsyncBatchAnnotateImagesResponse. */
+ interface IAsyncBatchAnnotateImagesResponse {
+
+ /** AsyncBatchAnnotateImagesResponse outputConfig */
+ outputConfig?: (google.cloud.vision.v1.IOutputConfig|null);
+ }
+
+ /** Represents an AsyncBatchAnnotateImagesResponse. */
+ class AsyncBatchAnnotateImagesResponse implements IAsyncBatchAnnotateImagesResponse {
+
+ /**
+ * Constructs a new AsyncBatchAnnotateImagesResponse.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1.IAsyncBatchAnnotateImagesResponse);
+
+ /** AsyncBatchAnnotateImagesResponse outputConfig. */
+ public outputConfig?: (google.cloud.vision.v1.IOutputConfig|null);
+
+ /**
+ * Creates a new AsyncBatchAnnotateImagesResponse instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns AsyncBatchAnnotateImagesResponse instance
+ */
+ public static create(properties?: google.cloud.vision.v1.IAsyncBatchAnnotateImagesResponse): google.cloud.vision.v1.AsyncBatchAnnotateImagesResponse;
+
+ /**
+ * Encodes the specified AsyncBatchAnnotateImagesResponse message. Does not implicitly {@link google.cloud.vision.v1.AsyncBatchAnnotateImagesResponse.verify|verify} messages.
+ * @param message AsyncBatchAnnotateImagesResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1.IAsyncBatchAnnotateImagesResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified AsyncBatchAnnotateImagesResponse message, length delimited. Does not implicitly {@link google.cloud.vision.v1.AsyncBatchAnnotateImagesResponse.verify|verify} messages.
+ * @param message AsyncBatchAnnotateImagesResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1.IAsyncBatchAnnotateImagesResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an AsyncBatchAnnotateImagesResponse message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns AsyncBatchAnnotateImagesResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1.AsyncBatchAnnotateImagesResponse;
+
+ /**
+ * Decodes an AsyncBatchAnnotateImagesResponse message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns AsyncBatchAnnotateImagesResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1.AsyncBatchAnnotateImagesResponse;
+
+ /**
+ * Verifies an AsyncBatchAnnotateImagesResponse message.
+ * @param message Plain 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 AsyncBatchAnnotateImagesResponse message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns AsyncBatchAnnotateImagesResponse
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1.AsyncBatchAnnotateImagesResponse;
+
+ /**
+ * Creates a plain object from an AsyncBatchAnnotateImagesResponse message. Also converts values to other types if specified.
+ * @param message AsyncBatchAnnotateImagesResponse
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1.AsyncBatchAnnotateImagesResponse, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this AsyncBatchAnnotateImagesResponse to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for AsyncBatchAnnotateImagesResponse
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an AsyncBatchAnnotateFilesRequest. */
+ interface IAsyncBatchAnnotateFilesRequest {
+
+ /** AsyncBatchAnnotateFilesRequest requests */
+ requests?: (google.cloud.vision.v1.IAsyncAnnotateFileRequest[]|null);
+
+ /** AsyncBatchAnnotateFilesRequest parent */
+ parent?: (string|null);
+ }
+
+ /** Represents an AsyncBatchAnnotateFilesRequest. */
+ class AsyncBatchAnnotateFilesRequest implements IAsyncBatchAnnotateFilesRequest {
+
+ /**
+ * Constructs a new AsyncBatchAnnotateFilesRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1.IAsyncBatchAnnotateFilesRequest);
+
+ /** AsyncBatchAnnotateFilesRequest requests. */
+ public requests: google.cloud.vision.v1.IAsyncAnnotateFileRequest[];
+
+ /** AsyncBatchAnnotateFilesRequest parent. */
+ public parent: string;
+
+ /**
+ * Creates a new AsyncBatchAnnotateFilesRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns AsyncBatchAnnotateFilesRequest instance
+ */
+ public static create(properties?: google.cloud.vision.v1.IAsyncBatchAnnotateFilesRequest): google.cloud.vision.v1.AsyncBatchAnnotateFilesRequest;
+
+ /**
+ * Encodes the specified AsyncBatchAnnotateFilesRequest message. Does not implicitly {@link google.cloud.vision.v1.AsyncBatchAnnotateFilesRequest.verify|verify} messages.
+ * @param message AsyncBatchAnnotateFilesRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1.IAsyncBatchAnnotateFilesRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified AsyncBatchAnnotateFilesRequest message, length delimited. Does not implicitly {@link google.cloud.vision.v1.AsyncBatchAnnotateFilesRequest.verify|verify} messages.
+ * @param message AsyncBatchAnnotateFilesRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1.IAsyncBatchAnnotateFilesRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an AsyncBatchAnnotateFilesRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns AsyncBatchAnnotateFilesRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1.AsyncBatchAnnotateFilesRequest;
+
+ /**
+ * Decodes an AsyncBatchAnnotateFilesRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns AsyncBatchAnnotateFilesRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1.AsyncBatchAnnotateFilesRequest;
+
+ /**
+ * Verifies an AsyncBatchAnnotateFilesRequest message.
+ * @param message Plain 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 AsyncBatchAnnotateFilesRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns AsyncBatchAnnotateFilesRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1.AsyncBatchAnnotateFilesRequest;
+
+ /**
+ * Creates a plain object from an AsyncBatchAnnotateFilesRequest message. Also converts values to other types if specified.
+ * @param message AsyncBatchAnnotateFilesRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1.AsyncBatchAnnotateFilesRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this AsyncBatchAnnotateFilesRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for AsyncBatchAnnotateFilesRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an AsyncBatchAnnotateFilesResponse. */
+ interface IAsyncBatchAnnotateFilesResponse {
+
+ /** AsyncBatchAnnotateFilesResponse responses */
+ responses?: (google.cloud.vision.v1.IAsyncAnnotateFileResponse[]|null);
+ }
+
+ /** Represents an AsyncBatchAnnotateFilesResponse. */
+ class AsyncBatchAnnotateFilesResponse implements IAsyncBatchAnnotateFilesResponse {
+
+ /**
+ * Constructs a new AsyncBatchAnnotateFilesResponse.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1.IAsyncBatchAnnotateFilesResponse);
+
+ /** AsyncBatchAnnotateFilesResponse responses. */
+ public responses: google.cloud.vision.v1.IAsyncAnnotateFileResponse[];
+
+ /**
+ * Creates a new AsyncBatchAnnotateFilesResponse instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns AsyncBatchAnnotateFilesResponse instance
+ */
+ public static create(properties?: google.cloud.vision.v1.IAsyncBatchAnnotateFilesResponse): google.cloud.vision.v1.AsyncBatchAnnotateFilesResponse;
+
+ /**
+ * Encodes the specified AsyncBatchAnnotateFilesResponse message. Does not implicitly {@link google.cloud.vision.v1.AsyncBatchAnnotateFilesResponse.verify|verify} messages.
+ * @param message AsyncBatchAnnotateFilesResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1.IAsyncBatchAnnotateFilesResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified AsyncBatchAnnotateFilesResponse message, length delimited. Does not implicitly {@link google.cloud.vision.v1.AsyncBatchAnnotateFilesResponse.verify|verify} messages.
+ * @param message AsyncBatchAnnotateFilesResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1.IAsyncBatchAnnotateFilesResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an AsyncBatchAnnotateFilesResponse message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns AsyncBatchAnnotateFilesResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1.AsyncBatchAnnotateFilesResponse;
+
+ /**
+ * Decodes an AsyncBatchAnnotateFilesResponse message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns AsyncBatchAnnotateFilesResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1.AsyncBatchAnnotateFilesResponse;
+
+ /**
+ * Verifies an AsyncBatchAnnotateFilesResponse message.
+ * @param message Plain 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 AsyncBatchAnnotateFilesResponse message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns AsyncBatchAnnotateFilesResponse
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1.AsyncBatchAnnotateFilesResponse;
+
+ /**
+ * Creates a plain object from an AsyncBatchAnnotateFilesResponse message. Also converts values to other types if specified.
+ * @param message AsyncBatchAnnotateFilesResponse
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1.AsyncBatchAnnotateFilesResponse, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this AsyncBatchAnnotateFilesResponse to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for AsyncBatchAnnotateFilesResponse
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an InputConfig. */
+ interface IInputConfig {
+
+ /** InputConfig gcsSource */
+ gcsSource?: (google.cloud.vision.v1.IGcsSource|null);
+
+ /** InputConfig content */
+ content?: (Uint8Array|string|null);
+
+ /** InputConfig mimeType */
+ mimeType?: (string|null);
+ }
+
+ /** Represents an InputConfig. */
+ class InputConfig implements IInputConfig {
+
+ /**
+ * Constructs a new InputConfig.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1.IInputConfig);
+
+ /** InputConfig gcsSource. */
+ public gcsSource?: (google.cloud.vision.v1.IGcsSource|null);
+
+ /** InputConfig content. */
+ public content: (Uint8Array|string);
+
+ /** InputConfig mimeType. */
+ public mimeType: string;
+
+ /**
+ * Creates a new InputConfig instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns InputConfig instance
+ */
+ public static create(properties?: google.cloud.vision.v1.IInputConfig): google.cloud.vision.v1.InputConfig;
+
+ /**
+ * Encodes the specified InputConfig message. Does not implicitly {@link google.cloud.vision.v1.InputConfig.verify|verify} messages.
+ * @param message InputConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1.IInputConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified InputConfig message, length delimited. Does not implicitly {@link google.cloud.vision.v1.InputConfig.verify|verify} messages.
+ * @param message InputConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1.IInputConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an InputConfig message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns InputConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1.InputConfig;
+
+ /**
+ * Decodes an InputConfig message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns InputConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1.InputConfig;
+
+ /**
+ * Verifies an InputConfig message.
+ * @param message Plain 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 InputConfig message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns InputConfig
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1.InputConfig;
+
+ /**
+ * Creates a plain object from an InputConfig message. Also converts values to other types if specified.
+ * @param message InputConfig
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1.InputConfig, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this InputConfig to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for InputConfig
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an OutputConfig. */
+ interface IOutputConfig {
+
+ /** OutputConfig gcsDestination */
+ gcsDestination?: (google.cloud.vision.v1.IGcsDestination|null);
+
+ /** OutputConfig batchSize */
+ batchSize?: (number|null);
+ }
+
+ /** Represents an OutputConfig. */
+ class OutputConfig implements IOutputConfig {
+
+ /**
+ * Constructs a new OutputConfig.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1.IOutputConfig);
+
+ /** OutputConfig gcsDestination. */
+ public gcsDestination?: (google.cloud.vision.v1.IGcsDestination|null);
+
+ /** OutputConfig batchSize. */
+ public batchSize: number;
+
+ /**
+ * Creates a new OutputConfig instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns OutputConfig instance
+ */
+ public static create(properties?: google.cloud.vision.v1.IOutputConfig): google.cloud.vision.v1.OutputConfig;
+
+ /**
+ * Encodes the specified OutputConfig message. Does not implicitly {@link google.cloud.vision.v1.OutputConfig.verify|verify} messages.
+ * @param message OutputConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1.IOutputConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified OutputConfig message, length delimited. Does not implicitly {@link google.cloud.vision.v1.OutputConfig.verify|verify} messages.
+ * @param message OutputConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1.IOutputConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an OutputConfig message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns OutputConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1.OutputConfig;
+
+ /**
+ * Decodes an OutputConfig message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns OutputConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1.OutputConfig;
+
+ /**
+ * Verifies an OutputConfig message.
+ * @param message Plain 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 OutputConfig message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns OutputConfig
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1.OutputConfig;
+
+ /**
+ * Creates a plain object from an OutputConfig message. Also converts values to other types if specified.
+ * @param message OutputConfig
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1.OutputConfig, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this OutputConfig to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for OutputConfig
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a GcsSource. */
+ interface IGcsSource {
+
+ /** GcsSource uri */
+ uri?: (string|null);
+ }
+
+ /** Represents a GcsSource. */
+ class GcsSource implements IGcsSource {
+
+ /**
+ * Constructs a new GcsSource.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1.IGcsSource);
+
+ /** GcsSource uri. */
+ public uri: string;
+
+ /**
+ * Creates a new GcsSource instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns GcsSource instance
+ */
+ public static create(properties?: google.cloud.vision.v1.IGcsSource): google.cloud.vision.v1.GcsSource;
+
+ /**
+ * Encodes the specified GcsSource message. Does not implicitly {@link google.cloud.vision.v1.GcsSource.verify|verify} messages.
+ * @param message GcsSource message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1.IGcsSource, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified GcsSource message, length delimited. Does not implicitly {@link google.cloud.vision.v1.GcsSource.verify|verify} messages.
+ * @param message GcsSource message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1.IGcsSource, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a GcsSource message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns GcsSource
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1.GcsSource;
+
+ /**
+ * Decodes a GcsSource message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns GcsSource
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1.GcsSource;
+
+ /**
+ * Verifies a GcsSource message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a GcsSource message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns GcsSource
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1.GcsSource;
+
+ /**
+ * Creates a plain object from a GcsSource message. Also converts values to other types if specified.
+ * @param message GcsSource
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1.GcsSource, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this GcsSource to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for GcsSource
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a GcsDestination. */
+ interface IGcsDestination {
+
+ /** GcsDestination uri */
+ uri?: (string|null);
+ }
+
+ /** Represents a GcsDestination. */
+ class GcsDestination implements IGcsDestination {
+
+ /**
+ * Constructs a new GcsDestination.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1.IGcsDestination);
+
+ /** GcsDestination uri. */
+ public uri: string;
+
+ /**
+ * Creates a new GcsDestination instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns GcsDestination instance
+ */
+ public static create(properties?: google.cloud.vision.v1.IGcsDestination): google.cloud.vision.v1.GcsDestination;
+
+ /**
+ * Encodes the specified GcsDestination message. Does not implicitly {@link google.cloud.vision.v1.GcsDestination.verify|verify} messages.
+ * @param message GcsDestination message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1.IGcsDestination, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified GcsDestination message, length delimited. Does not implicitly {@link google.cloud.vision.v1.GcsDestination.verify|verify} messages.
+ * @param message GcsDestination message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1.IGcsDestination, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a GcsDestination message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns GcsDestination
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1.GcsDestination;
+
+ /**
+ * Decodes a GcsDestination message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns GcsDestination
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1.GcsDestination;
+
+ /**
+ * Verifies a GcsDestination message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a GcsDestination message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns GcsDestination
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1.GcsDestination;
+
+ /**
+ * Creates a plain object from a GcsDestination message. Also converts values to other types if specified.
+ * @param message GcsDestination
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1.GcsDestination, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this GcsDestination to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for GcsDestination
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an OperationMetadata. */
+ interface IOperationMetadata {
+
+ /** OperationMetadata state */
+ state?: (google.cloud.vision.v1.OperationMetadata.State|keyof typeof google.cloud.vision.v1.OperationMetadata.State|null);
+
+ /** OperationMetadata createTime */
+ createTime?: (google.protobuf.ITimestamp|null);
+
+ /** OperationMetadata updateTime */
+ updateTime?: (google.protobuf.ITimestamp|null);
+ }
+
+ /** Represents an OperationMetadata. */
+ class OperationMetadata implements IOperationMetadata {
+
+ /**
+ * Constructs a new OperationMetadata.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1.IOperationMetadata);
+
+ /** OperationMetadata state. */
+ public state: (google.cloud.vision.v1.OperationMetadata.State|keyof typeof google.cloud.vision.v1.OperationMetadata.State);
+
+ /** OperationMetadata createTime. */
+ public createTime?: (google.protobuf.ITimestamp|null);
+
+ /** OperationMetadata updateTime. */
+ public updateTime?: (google.protobuf.ITimestamp|null);
+
+ /**
+ * Creates a new OperationMetadata instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns OperationMetadata instance
+ */
+ public static create(properties?: google.cloud.vision.v1.IOperationMetadata): google.cloud.vision.v1.OperationMetadata;
+
+ /**
+ * Encodes the specified OperationMetadata message. Does not implicitly {@link google.cloud.vision.v1.OperationMetadata.verify|verify} messages.
+ * @param message OperationMetadata message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1.IOperationMetadata, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified OperationMetadata message, length delimited. Does not implicitly {@link google.cloud.vision.v1.OperationMetadata.verify|verify} messages.
+ * @param message OperationMetadata message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1.IOperationMetadata, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an OperationMetadata message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns OperationMetadata
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1.OperationMetadata;
+
+ /**
+ * Decodes an OperationMetadata message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns OperationMetadata
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1.OperationMetadata;
+
+ /**
+ * Verifies an OperationMetadata message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates an OperationMetadata message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns OperationMetadata
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1.OperationMetadata;
+
+ /**
+ * Creates a plain object from an OperationMetadata message. Also converts values to other types if specified.
+ * @param message OperationMetadata
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1.OperationMetadata, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this OperationMetadata to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for OperationMetadata
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace OperationMetadata {
+
+ /** State enum. */
+ enum State {
+ STATE_UNSPECIFIED = 0,
+ CREATED = 1,
+ RUNNING = 2,
+ DONE = 3,
+ CANCELLED = 4
+ }
+ }
+
+ /** Properties of a ProductSearchParams. */
+ interface IProductSearchParams {
+
+ /** ProductSearchParams boundingPoly */
+ boundingPoly?: (google.cloud.vision.v1.IBoundingPoly|null);
+
+ /** ProductSearchParams productSet */
+ productSet?: (string|null);
+
+ /** ProductSearchParams productCategories */
+ productCategories?: (string[]|null);
+
+ /** ProductSearchParams filter */
+ filter?: (string|null);
+ }
+
+ /** Represents a ProductSearchParams. */
+ class ProductSearchParams implements IProductSearchParams {
+
+ /**
+ * Constructs a new ProductSearchParams.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1.IProductSearchParams);
+
+ /** ProductSearchParams boundingPoly. */
+ public boundingPoly?: (google.cloud.vision.v1.IBoundingPoly|null);
+
+ /** ProductSearchParams productSet. */
+ public productSet: string;
+
+ /** ProductSearchParams productCategories. */
+ public productCategories: string[];
+
+ /** ProductSearchParams filter. */
+ public filter: string;
+
+ /**
+ * Creates a new ProductSearchParams instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ProductSearchParams instance
+ */
+ public static create(properties?: google.cloud.vision.v1.IProductSearchParams): google.cloud.vision.v1.ProductSearchParams;
+
+ /**
+ * Encodes the specified ProductSearchParams message. Does not implicitly {@link google.cloud.vision.v1.ProductSearchParams.verify|verify} messages.
+ * @param message ProductSearchParams message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1.IProductSearchParams, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ProductSearchParams message, length delimited. Does not implicitly {@link google.cloud.vision.v1.ProductSearchParams.verify|verify} messages.
+ * @param message ProductSearchParams message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1.IProductSearchParams, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ProductSearchParams message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ProductSearchParams
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1.ProductSearchParams;
+
+ /**
+ * Decodes a ProductSearchParams message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ProductSearchParams
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1.ProductSearchParams;
+
+ /**
+ * Verifies a ProductSearchParams message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ProductSearchParams message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ProductSearchParams
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1.ProductSearchParams;
+
+ /**
+ * Creates a plain object from a ProductSearchParams message. Also converts values to other types if specified.
+ * @param message ProductSearchParams
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1.ProductSearchParams, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ProductSearchParams to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ProductSearchParams
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ProductSearchResults. */
+ interface IProductSearchResults {
+
+ /** ProductSearchResults indexTime */
+ indexTime?: (google.protobuf.ITimestamp|null);
+
+ /** ProductSearchResults results */
+ results?: (google.cloud.vision.v1.ProductSearchResults.IResult[]|null);
+
+ /** ProductSearchResults productGroupedResults */
+ productGroupedResults?: (google.cloud.vision.v1.ProductSearchResults.IGroupedResult[]|null);
+ }
+
+ /** Represents a ProductSearchResults. */
+ class ProductSearchResults implements IProductSearchResults {
+
+ /**
+ * Constructs a new ProductSearchResults.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1.IProductSearchResults);
+
+ /** ProductSearchResults indexTime. */
+ public indexTime?: (google.protobuf.ITimestamp|null);
+
+ /** ProductSearchResults results. */
+ public results: google.cloud.vision.v1.ProductSearchResults.IResult[];
+
+ /** ProductSearchResults productGroupedResults. */
+ public productGroupedResults: google.cloud.vision.v1.ProductSearchResults.IGroupedResult[];
+
+ /**
+ * Creates a new ProductSearchResults instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ProductSearchResults instance
+ */
+ public static create(properties?: google.cloud.vision.v1.IProductSearchResults): google.cloud.vision.v1.ProductSearchResults;
+
+ /**
+ * Encodes the specified ProductSearchResults message. Does not implicitly {@link google.cloud.vision.v1.ProductSearchResults.verify|verify} messages.
+ * @param message ProductSearchResults message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1.IProductSearchResults, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ProductSearchResults message, length delimited. Does not implicitly {@link google.cloud.vision.v1.ProductSearchResults.verify|verify} messages.
+ * @param message ProductSearchResults message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1.IProductSearchResults, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ProductSearchResults message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ProductSearchResults
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1.ProductSearchResults;
+
+ /**
+ * Decodes a ProductSearchResults message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ProductSearchResults
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1.ProductSearchResults;
+
+ /**
+ * Verifies a ProductSearchResults message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ProductSearchResults message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ProductSearchResults
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1.ProductSearchResults;
+
+ /**
+ * Creates a plain object from a ProductSearchResults message. Also converts values to other types if specified.
+ * @param message ProductSearchResults
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1.ProductSearchResults, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ProductSearchResults to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ProductSearchResults
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace ProductSearchResults {
+
+ /** Properties of a Result. */
+ interface IResult {
+
+ /** Result product */
+ product?: (google.cloud.vision.v1.IProduct|null);
+
+ /** Result score */
+ score?: (number|null);
+
+ /** Result image */
+ image?: (string|null);
+ }
+
+ /** Represents a Result. */
+ class Result implements IResult {
+
+ /**
+ * Constructs a new Result.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1.ProductSearchResults.IResult);
+
+ /** Result product. */
+ public product?: (google.cloud.vision.v1.IProduct|null);
+
+ /** Result score. */
+ public score: number;
+
+ /** Result image. */
+ public image: string;
+
+ /**
+ * Creates a new Result instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Result instance
+ */
+ public static create(properties?: google.cloud.vision.v1.ProductSearchResults.IResult): google.cloud.vision.v1.ProductSearchResults.Result;
+
+ /**
+ * Encodes the specified Result message. Does not implicitly {@link google.cloud.vision.v1.ProductSearchResults.Result.verify|verify} messages.
+ * @param message Result message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1.ProductSearchResults.IResult, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Result message, length delimited. Does not implicitly {@link google.cloud.vision.v1.ProductSearchResults.Result.verify|verify} messages.
+ * @param message Result message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1.ProductSearchResults.IResult, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Result message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Result
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1.ProductSearchResults.Result;
+
+ /**
+ * Decodes a Result message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Result
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1.ProductSearchResults.Result;
+
+ /**
+ * Verifies a Result message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a Result message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Result
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1.ProductSearchResults.Result;
+
+ /**
+ * Creates a plain object from a Result message. Also converts values to other types if specified.
+ * @param message Result
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1.ProductSearchResults.Result, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Result to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Result
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an ObjectAnnotation. */
+ interface IObjectAnnotation {
+
+ /** ObjectAnnotation mid */
+ mid?: (string|null);
+
+ /** ObjectAnnotation languageCode */
+ languageCode?: (string|null);
+
+ /** ObjectAnnotation name */
+ name?: (string|null);
+
+ /** ObjectAnnotation score */
+ score?: (number|null);
+ }
+
+ /** Represents an ObjectAnnotation. */
+ class ObjectAnnotation implements IObjectAnnotation {
+
+ /**
+ * Constructs a new ObjectAnnotation.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1.ProductSearchResults.IObjectAnnotation);
+
+ /** ObjectAnnotation mid. */
+ public mid: string;
+
+ /** ObjectAnnotation languageCode. */
+ public languageCode: string;
+
+ /** ObjectAnnotation name. */
+ public name: string;
+
+ /** ObjectAnnotation score. */
+ public score: number;
+
+ /**
+ * Creates a new ObjectAnnotation instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ObjectAnnotation instance
+ */
+ public static create(properties?: google.cloud.vision.v1.ProductSearchResults.IObjectAnnotation): google.cloud.vision.v1.ProductSearchResults.ObjectAnnotation;
+
+ /**
+ * Encodes the specified ObjectAnnotation message. Does not implicitly {@link google.cloud.vision.v1.ProductSearchResults.ObjectAnnotation.verify|verify} messages.
+ * @param message ObjectAnnotation message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1.ProductSearchResults.IObjectAnnotation, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ObjectAnnotation message, length delimited. Does not implicitly {@link google.cloud.vision.v1.ProductSearchResults.ObjectAnnotation.verify|verify} messages.
+ * @param message ObjectAnnotation message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1.ProductSearchResults.IObjectAnnotation, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an ObjectAnnotation message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ObjectAnnotation
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1.ProductSearchResults.ObjectAnnotation;
+
+ /**
+ * Decodes an ObjectAnnotation message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ObjectAnnotation
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1.ProductSearchResults.ObjectAnnotation;
+
+ /**
+ * Verifies an ObjectAnnotation message.
+ * @param message Plain 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 ObjectAnnotation message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ObjectAnnotation
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1.ProductSearchResults.ObjectAnnotation;
+
+ /**
+ * Creates a plain object from an ObjectAnnotation message. Also converts values to other types if specified.
+ * @param message ObjectAnnotation
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1.ProductSearchResults.ObjectAnnotation, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ObjectAnnotation to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ObjectAnnotation
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a GroupedResult. */
+ interface IGroupedResult {
+
+ /** GroupedResult boundingPoly */
+ boundingPoly?: (google.cloud.vision.v1.IBoundingPoly|null);
+
+ /** GroupedResult results */
+ results?: (google.cloud.vision.v1.ProductSearchResults.IResult[]|null);
+
+ /** GroupedResult objectAnnotations */
+ objectAnnotations?: (google.cloud.vision.v1.ProductSearchResults.IObjectAnnotation[]|null);
+ }
+
+ /** Represents a GroupedResult. */
+ class GroupedResult implements IGroupedResult {
+
+ /**
+ * Constructs a new GroupedResult.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1.ProductSearchResults.IGroupedResult);
+
+ /** GroupedResult boundingPoly. */
+ public boundingPoly?: (google.cloud.vision.v1.IBoundingPoly|null);
+
+ /** GroupedResult results. */
+ public results: google.cloud.vision.v1.ProductSearchResults.IResult[];
+
+ /** GroupedResult objectAnnotations. */
+ public objectAnnotations: google.cloud.vision.v1.ProductSearchResults.IObjectAnnotation[];
+
+ /**
+ * Creates a new GroupedResult instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns GroupedResult instance
+ */
+ public static create(properties?: google.cloud.vision.v1.ProductSearchResults.IGroupedResult): google.cloud.vision.v1.ProductSearchResults.GroupedResult;
+
+ /**
+ * Encodes the specified GroupedResult message. Does not implicitly {@link google.cloud.vision.v1.ProductSearchResults.GroupedResult.verify|verify} messages.
+ * @param message GroupedResult message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1.ProductSearchResults.IGroupedResult, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified GroupedResult message, length delimited. Does not implicitly {@link google.cloud.vision.v1.ProductSearchResults.GroupedResult.verify|verify} messages.
+ * @param message GroupedResult message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1.ProductSearchResults.IGroupedResult, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a GroupedResult message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns GroupedResult
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1.ProductSearchResults.GroupedResult;
+
+ /**
+ * Decodes a GroupedResult message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns GroupedResult
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1.ProductSearchResults.GroupedResult;
+
+ /**
+ * Verifies a GroupedResult message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a GroupedResult message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns GroupedResult
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1.ProductSearchResults.GroupedResult;
+
+ /**
+ * Creates a plain object from a GroupedResult message. Also converts values to other types if specified.
+ * @param message GroupedResult
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1.ProductSearchResults.GroupedResult, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this GroupedResult to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for GroupedResult
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+ }
+
+ /** Represents a ProductSearch */
+ class ProductSearch extends $protobuf.rpc.Service {
+
+ /**
+ * Constructs a new ProductSearch 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 ProductSearch 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): ProductSearch;
+
+ /**
+ * Calls CreateProductSet.
+ * @param request CreateProductSetRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and ProductSet
+ */
+ public createProductSet(request: google.cloud.vision.v1.ICreateProductSetRequest, callback: google.cloud.vision.v1.ProductSearch.CreateProductSetCallback): void;
+
+ /**
+ * Calls CreateProductSet.
+ * @param request CreateProductSetRequest message or plain object
+ * @returns Promise
+ */
+ public createProductSet(request: google.cloud.vision.v1.ICreateProductSetRequest): Promise;
+
+ /**
+ * Calls ListProductSets.
+ * @param request ListProductSetsRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and ListProductSetsResponse
+ */
+ public listProductSets(request: google.cloud.vision.v1.IListProductSetsRequest, callback: google.cloud.vision.v1.ProductSearch.ListProductSetsCallback): void;
+
+ /**
+ * Calls ListProductSets.
+ * @param request ListProductSetsRequest message or plain object
+ * @returns Promise
+ */
+ public listProductSets(request: google.cloud.vision.v1.IListProductSetsRequest): Promise;
+
+ /**
+ * Calls GetProductSet.
+ * @param request GetProductSetRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and ProductSet
+ */
+ public getProductSet(request: google.cloud.vision.v1.IGetProductSetRequest, callback: google.cloud.vision.v1.ProductSearch.GetProductSetCallback): void;
+
+ /**
+ * Calls GetProductSet.
+ * @param request GetProductSetRequest message or plain object
+ * @returns Promise
+ */
+ public getProductSet(request: google.cloud.vision.v1.IGetProductSetRequest): Promise;
+
+ /**
+ * Calls UpdateProductSet.
+ * @param request UpdateProductSetRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and ProductSet
+ */
+ public updateProductSet(request: google.cloud.vision.v1.IUpdateProductSetRequest, callback: google.cloud.vision.v1.ProductSearch.UpdateProductSetCallback): void;
+
+ /**
+ * Calls UpdateProductSet.
+ * @param request UpdateProductSetRequest message or plain object
+ * @returns Promise
+ */
+ public updateProductSet(request: google.cloud.vision.v1.IUpdateProductSetRequest): Promise;
+
+ /**
+ * Calls DeleteProductSet.
+ * @param request DeleteProductSetRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Empty
+ */
+ public deleteProductSet(request: google.cloud.vision.v1.IDeleteProductSetRequest, callback: google.cloud.vision.v1.ProductSearch.DeleteProductSetCallback): void;
+
+ /**
+ * Calls DeleteProductSet.
+ * @param request DeleteProductSetRequest message or plain object
+ * @returns Promise
+ */
+ public deleteProductSet(request: google.cloud.vision.v1.IDeleteProductSetRequest): Promise;
+
+ /**
+ * Calls CreateProduct.
+ * @param request CreateProductRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Product
+ */
+ public createProduct(request: google.cloud.vision.v1.ICreateProductRequest, callback: google.cloud.vision.v1.ProductSearch.CreateProductCallback): void;
+
+ /**
+ * Calls CreateProduct.
+ * @param request CreateProductRequest message or plain object
+ * @returns Promise
+ */
+ public createProduct(request: google.cloud.vision.v1.ICreateProductRequest): Promise;
+
+ /**
+ * Calls ListProducts.
+ * @param request ListProductsRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and ListProductsResponse
+ */
+ public listProducts(request: google.cloud.vision.v1.IListProductsRequest, callback: google.cloud.vision.v1.ProductSearch.ListProductsCallback): void;
+
+ /**
+ * Calls ListProducts.
+ * @param request ListProductsRequest message or plain object
+ * @returns Promise
+ */
+ public listProducts(request: google.cloud.vision.v1.IListProductsRequest): Promise;
+
+ /**
+ * Calls GetProduct.
+ * @param request GetProductRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Product
+ */
+ public getProduct(request: google.cloud.vision.v1.IGetProductRequest, callback: google.cloud.vision.v1.ProductSearch.GetProductCallback): void;
+
+ /**
+ * Calls GetProduct.
+ * @param request GetProductRequest message or plain object
+ * @returns Promise
+ */
+ public getProduct(request: google.cloud.vision.v1.IGetProductRequest): Promise;
+
+ /**
+ * Calls UpdateProduct.
+ * @param request UpdateProductRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Product
+ */
+ public updateProduct(request: google.cloud.vision.v1.IUpdateProductRequest, callback: google.cloud.vision.v1.ProductSearch.UpdateProductCallback): void;
+
+ /**
+ * Calls UpdateProduct.
+ * @param request UpdateProductRequest message or plain object
+ * @returns Promise
+ */
+ public updateProduct(request: google.cloud.vision.v1.IUpdateProductRequest): Promise;
+
+ /**
+ * Calls DeleteProduct.
+ * @param request DeleteProductRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Empty
+ */
+ public deleteProduct(request: google.cloud.vision.v1.IDeleteProductRequest, callback: google.cloud.vision.v1.ProductSearch.DeleteProductCallback): void;
+
+ /**
+ * Calls DeleteProduct.
+ * @param request DeleteProductRequest message or plain object
+ * @returns Promise
+ */
+ public deleteProduct(request: google.cloud.vision.v1.IDeleteProductRequest): Promise;
+
+ /**
+ * Calls CreateReferenceImage.
+ * @param request CreateReferenceImageRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and ReferenceImage
+ */
+ public createReferenceImage(request: google.cloud.vision.v1.ICreateReferenceImageRequest, callback: google.cloud.vision.v1.ProductSearch.CreateReferenceImageCallback): void;
+
+ /**
+ * Calls CreateReferenceImage.
+ * @param request CreateReferenceImageRequest message or plain object
+ * @returns Promise
+ */
+ public createReferenceImage(request: google.cloud.vision.v1.ICreateReferenceImageRequest): Promise;
+
+ /**
+ * Calls DeleteReferenceImage.
+ * @param request DeleteReferenceImageRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Empty
+ */
+ public deleteReferenceImage(request: google.cloud.vision.v1.IDeleteReferenceImageRequest, callback: google.cloud.vision.v1.ProductSearch.DeleteReferenceImageCallback): void;
+
+ /**
+ * Calls DeleteReferenceImage.
+ * @param request DeleteReferenceImageRequest message or plain object
+ * @returns Promise
+ */
+ public deleteReferenceImage(request: google.cloud.vision.v1.IDeleteReferenceImageRequest): Promise;
+
+ /**
+ * Calls ListReferenceImages.
+ * @param request ListReferenceImagesRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and ListReferenceImagesResponse
+ */
+ public listReferenceImages(request: google.cloud.vision.v1.IListReferenceImagesRequest, callback: google.cloud.vision.v1.ProductSearch.ListReferenceImagesCallback): void;
+
+ /**
+ * Calls ListReferenceImages.
+ * @param request ListReferenceImagesRequest message or plain object
+ * @returns Promise
+ */
+ public listReferenceImages(request: google.cloud.vision.v1.IListReferenceImagesRequest): Promise;
+
+ /**
+ * Calls GetReferenceImage.
+ * @param request GetReferenceImageRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and ReferenceImage
+ */
+ public getReferenceImage(request: google.cloud.vision.v1.IGetReferenceImageRequest, callback: google.cloud.vision.v1.ProductSearch.GetReferenceImageCallback): void;
+
+ /**
+ * Calls GetReferenceImage.
+ * @param request GetReferenceImageRequest message or plain object
+ * @returns Promise
+ */
+ public getReferenceImage(request: google.cloud.vision.v1.IGetReferenceImageRequest): Promise;
+
+ /**
+ * Calls AddProductToProductSet.
+ * @param request AddProductToProductSetRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Empty
+ */
+ public addProductToProductSet(request: google.cloud.vision.v1.IAddProductToProductSetRequest, callback: google.cloud.vision.v1.ProductSearch.AddProductToProductSetCallback): void;
+
+ /**
+ * Calls AddProductToProductSet.
+ * @param request AddProductToProductSetRequest message or plain object
+ * @returns Promise
+ */
+ public addProductToProductSet(request: google.cloud.vision.v1.IAddProductToProductSetRequest): Promise;
+
+ /**
+ * Calls RemoveProductFromProductSet.
+ * @param request RemoveProductFromProductSetRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Empty
+ */
+ public removeProductFromProductSet(request: google.cloud.vision.v1.IRemoveProductFromProductSetRequest, callback: google.cloud.vision.v1.ProductSearch.RemoveProductFromProductSetCallback): void;
+
+ /**
+ * Calls RemoveProductFromProductSet.
+ * @param request RemoveProductFromProductSetRequest message or plain object
+ * @returns Promise
+ */
+ public removeProductFromProductSet(request: google.cloud.vision.v1.IRemoveProductFromProductSetRequest): Promise;
+
+ /**
+ * Calls ListProductsInProductSet.
+ * @param request ListProductsInProductSetRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and ListProductsInProductSetResponse
+ */
+ public listProductsInProductSet(request: google.cloud.vision.v1.IListProductsInProductSetRequest, callback: google.cloud.vision.v1.ProductSearch.ListProductsInProductSetCallback): void;
+
+ /**
+ * Calls ListProductsInProductSet.
+ * @param request ListProductsInProductSetRequest message or plain object
+ * @returns Promise
+ */
+ public listProductsInProductSet(request: google.cloud.vision.v1.IListProductsInProductSetRequest): Promise;
+
+ /**
+ * Calls ImportProductSets.
+ * @param request ImportProductSetsRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Operation
+ */
+ public importProductSets(request: google.cloud.vision.v1.IImportProductSetsRequest, callback: google.cloud.vision.v1.ProductSearch.ImportProductSetsCallback): void;
+
+ /**
+ * Calls ImportProductSets.
+ * @param request ImportProductSetsRequest message or plain object
+ * @returns Promise
+ */
+ public importProductSets(request: google.cloud.vision.v1.IImportProductSetsRequest): Promise;
+
+ /**
+ * Calls PurgeProducts.
+ * @param request PurgeProductsRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Operation
+ */
+ public purgeProducts(request: google.cloud.vision.v1.IPurgeProductsRequest, callback: google.cloud.vision.v1.ProductSearch.PurgeProductsCallback): void;
+
+ /**
+ * Calls PurgeProducts.
+ * @param request PurgeProductsRequest message or plain object
+ * @returns Promise
+ */
+ public purgeProducts(request: google.cloud.vision.v1.IPurgeProductsRequest): Promise;
+ }
+
+ namespace ProductSearch {
+
+ /**
+ * Callback as used by {@link google.cloud.vision.v1.ProductSearch|createProductSet}.
+ * @param error Error, if any
+ * @param [response] ProductSet
+ */
+ type CreateProductSetCallback = (error: (Error|null), response?: google.cloud.vision.v1.ProductSet) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.vision.v1.ProductSearch|listProductSets}.
+ * @param error Error, if any
+ * @param [response] ListProductSetsResponse
+ */
+ type ListProductSetsCallback = (error: (Error|null), response?: google.cloud.vision.v1.ListProductSetsResponse) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.vision.v1.ProductSearch|getProductSet}.
+ * @param error Error, if any
+ * @param [response] ProductSet
+ */
+ type GetProductSetCallback = (error: (Error|null), response?: google.cloud.vision.v1.ProductSet) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.vision.v1.ProductSearch|updateProductSet}.
+ * @param error Error, if any
+ * @param [response] ProductSet
+ */
+ type UpdateProductSetCallback = (error: (Error|null), response?: google.cloud.vision.v1.ProductSet) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.vision.v1.ProductSearch|deleteProductSet}.
+ * @param error Error, if any
+ * @param [response] Empty
+ */
+ type DeleteProductSetCallback = (error: (Error|null), response?: google.protobuf.Empty) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.vision.v1.ProductSearch|createProduct}.
+ * @param error Error, if any
+ * @param [response] Product
+ */
+ type CreateProductCallback = (error: (Error|null), response?: google.cloud.vision.v1.Product) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.vision.v1.ProductSearch|listProducts}.
+ * @param error Error, if any
+ * @param [response] ListProductsResponse
+ */
+ type ListProductsCallback = (error: (Error|null), response?: google.cloud.vision.v1.ListProductsResponse) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.vision.v1.ProductSearch|getProduct}.
+ * @param error Error, if any
+ * @param [response] Product
+ */
+ type GetProductCallback = (error: (Error|null), response?: google.cloud.vision.v1.Product) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.vision.v1.ProductSearch|updateProduct}.
+ * @param error Error, if any
+ * @param [response] Product
+ */
+ type UpdateProductCallback = (error: (Error|null), response?: google.cloud.vision.v1.Product) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.vision.v1.ProductSearch|deleteProduct}.
+ * @param error Error, if any
+ * @param [response] Empty
+ */
+ type DeleteProductCallback = (error: (Error|null), response?: google.protobuf.Empty) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.vision.v1.ProductSearch|createReferenceImage}.
+ * @param error Error, if any
+ * @param [response] ReferenceImage
+ */
+ type CreateReferenceImageCallback = (error: (Error|null), response?: google.cloud.vision.v1.ReferenceImage) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.vision.v1.ProductSearch|deleteReferenceImage}.
+ * @param error Error, if any
+ * @param [response] Empty
+ */
+ type DeleteReferenceImageCallback = (error: (Error|null), response?: google.protobuf.Empty) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.vision.v1.ProductSearch|listReferenceImages}.
+ * @param error Error, if any
+ * @param [response] ListReferenceImagesResponse
+ */
+ type ListReferenceImagesCallback = (error: (Error|null), response?: google.cloud.vision.v1.ListReferenceImagesResponse) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.vision.v1.ProductSearch|getReferenceImage}.
+ * @param error Error, if any
+ * @param [response] ReferenceImage
+ */
+ type GetReferenceImageCallback = (error: (Error|null), response?: google.cloud.vision.v1.ReferenceImage) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.vision.v1.ProductSearch|addProductToProductSet}.
+ * @param error Error, if any
+ * @param [response] Empty
+ */
+ type AddProductToProductSetCallback = (error: (Error|null), response?: google.protobuf.Empty) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.vision.v1.ProductSearch|removeProductFromProductSet}.
+ * @param error Error, if any
+ * @param [response] Empty
+ */
+ type RemoveProductFromProductSetCallback = (error: (Error|null), response?: google.protobuf.Empty) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.vision.v1.ProductSearch|listProductsInProductSet}.
+ * @param error Error, if any
+ * @param [response] ListProductsInProductSetResponse
+ */
+ type ListProductsInProductSetCallback = (error: (Error|null), response?: google.cloud.vision.v1.ListProductsInProductSetResponse) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.vision.v1.ProductSearch|importProductSets}.
+ * @param error Error, if any
+ * @param [response] Operation
+ */
+ type ImportProductSetsCallback = (error: (Error|null), response?: google.longrunning.Operation) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.vision.v1.ProductSearch|purgeProducts}.
+ * @param error Error, if any
+ * @param [response] Operation
+ */
+ type PurgeProductsCallback = (error: (Error|null), response?: google.longrunning.Operation) => void;
+ }
+
+ /** Properties of a Product. */
+ interface IProduct {
+
+ /** Product name */
+ name?: (string|null);
+
+ /** Product displayName */
+ displayName?: (string|null);
+
+ /** Product description */
+ description?: (string|null);
+
+ /** Product productCategory */
+ productCategory?: (string|null);
+
+ /** Product productLabels */
+ productLabels?: (google.cloud.vision.v1.Product.IKeyValue[]|null);
+ }
+
+ /** Represents a Product. */
+ class Product implements IProduct {
+
+ /**
+ * Constructs a new Product.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1.IProduct);
+
+ /** Product name. */
+ public name: string;
+
+ /** Product displayName. */
+ public displayName: string;
+
+ /** Product description. */
+ public description: string;
+
+ /** Product productCategory. */
+ public productCategory: string;
+
+ /** Product productLabels. */
+ public productLabels: google.cloud.vision.v1.Product.IKeyValue[];
+
+ /**
+ * Creates a new Product instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Product instance
+ */
+ public static create(properties?: google.cloud.vision.v1.IProduct): google.cloud.vision.v1.Product;
+
+ /**
+ * Encodes the specified Product message. Does not implicitly {@link google.cloud.vision.v1.Product.verify|verify} messages.
+ * @param message Product message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1.IProduct, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Product message, length delimited. Does not implicitly {@link google.cloud.vision.v1.Product.verify|verify} messages.
+ * @param message Product message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1.IProduct, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Product message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Product
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1.Product;
+
+ /**
+ * Decodes a Product message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Product
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1.Product;
+
+ /**
+ * Verifies a Product message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a Product message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Product
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1.Product;
+
+ /**
+ * Creates a plain object from a Product message. Also converts values to other types if specified.
+ * @param message Product
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1.Product, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Product to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Product
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace Product {
+
+ /** Properties of a KeyValue. */
+ interface IKeyValue {
+
+ /** KeyValue key */
+ key?: (string|null);
+
+ /** KeyValue value */
+ value?: (string|null);
+ }
+
+ /** Represents a KeyValue. */
+ class KeyValue implements IKeyValue {
+
+ /**
+ * Constructs a new KeyValue.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1.Product.IKeyValue);
+
+ /** KeyValue key. */
+ public key: string;
+
+ /** KeyValue value. */
+ public value: string;
+
+ /**
+ * Creates a new KeyValue instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns KeyValue instance
+ */
+ public static create(properties?: google.cloud.vision.v1.Product.IKeyValue): google.cloud.vision.v1.Product.KeyValue;
+
+ /**
+ * Encodes the specified KeyValue message. Does not implicitly {@link google.cloud.vision.v1.Product.KeyValue.verify|verify} messages.
+ * @param message KeyValue message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1.Product.IKeyValue, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified KeyValue message, length delimited. Does not implicitly {@link google.cloud.vision.v1.Product.KeyValue.verify|verify} messages.
+ * @param message KeyValue message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1.Product.IKeyValue, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a KeyValue message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns KeyValue
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1.Product.KeyValue;
+
+ /**
+ * Decodes a KeyValue message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns KeyValue
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1.Product.KeyValue;
+
+ /**
+ * Verifies a KeyValue message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a KeyValue message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns KeyValue
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1.Product.KeyValue;
+
+ /**
+ * Creates a plain object from a KeyValue message. Also converts values to other types if specified.
+ * @param message KeyValue
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1.Product.KeyValue, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this KeyValue to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for KeyValue
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+ }
+
+ /** Properties of a ProductSet. */
+ interface IProductSet {
+
+ /** ProductSet name */
+ name?: (string|null);
+
+ /** ProductSet displayName */
+ displayName?: (string|null);
+
+ /** ProductSet indexTime */
+ indexTime?: (google.protobuf.ITimestamp|null);
+
+ /** ProductSet indexError */
+ indexError?: (google.rpc.IStatus|null);
+ }
+
+ /** Represents a ProductSet. */
+ class ProductSet implements IProductSet {
+
+ /**
+ * Constructs a new ProductSet.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1.IProductSet);
+
+ /** ProductSet name. */
+ public name: string;
+
+ /** ProductSet displayName. */
+ public displayName: string;
+
+ /** ProductSet indexTime. */
+ public indexTime?: (google.protobuf.ITimestamp|null);
+
+ /** ProductSet indexError. */
+ public indexError?: (google.rpc.IStatus|null);
+
+ /**
+ * Creates a new ProductSet instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ProductSet instance
+ */
+ public static create(properties?: google.cloud.vision.v1.IProductSet): google.cloud.vision.v1.ProductSet;
+
+ /**
+ * Encodes the specified ProductSet message. Does not implicitly {@link google.cloud.vision.v1.ProductSet.verify|verify} messages.
+ * @param message ProductSet message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1.IProductSet, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ProductSet message, length delimited. Does not implicitly {@link google.cloud.vision.v1.ProductSet.verify|verify} messages.
+ * @param message ProductSet message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1.IProductSet, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ProductSet message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ProductSet
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1.ProductSet;
+
+ /**
+ * Decodes a ProductSet message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ProductSet
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1.ProductSet;
+
+ /**
+ * Verifies a ProductSet message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ProductSet message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ProductSet
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1.ProductSet;
+
+ /**
+ * Creates a plain object from a ProductSet message. Also converts values to other types if specified.
+ * @param message ProductSet
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1.ProductSet, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ProductSet to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ProductSet
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ReferenceImage. */
+ interface IReferenceImage {
+
+ /** ReferenceImage name */
+ name?: (string|null);
+
+ /** ReferenceImage uri */
+ uri?: (string|null);
+
+ /** ReferenceImage boundingPolys */
+ boundingPolys?: (google.cloud.vision.v1.IBoundingPoly[]|null);
+ }
+
+ /** Represents a ReferenceImage. */
+ class ReferenceImage implements IReferenceImage {
+
+ /**
+ * Constructs a new ReferenceImage.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1.IReferenceImage);
+
+ /** ReferenceImage name. */
+ public name: string;
+
+ /** ReferenceImage uri. */
+ public uri: string;
+
+ /** ReferenceImage boundingPolys. */
+ public boundingPolys: google.cloud.vision.v1.IBoundingPoly[];
+
+ /**
+ * Creates a new ReferenceImage instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ReferenceImage instance
+ */
+ public static create(properties?: google.cloud.vision.v1.IReferenceImage): google.cloud.vision.v1.ReferenceImage;
+
+ /**
+ * Encodes the specified ReferenceImage message. Does not implicitly {@link google.cloud.vision.v1.ReferenceImage.verify|verify} messages.
+ * @param message ReferenceImage message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1.IReferenceImage, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ReferenceImage message, length delimited. Does not implicitly {@link google.cloud.vision.v1.ReferenceImage.verify|verify} messages.
+ * @param message ReferenceImage message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1.IReferenceImage, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ReferenceImage message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ReferenceImage
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1.ReferenceImage;
+
+ /**
+ * Decodes a ReferenceImage message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ReferenceImage
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1.ReferenceImage;
+
+ /**
+ * Verifies a ReferenceImage message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ReferenceImage message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ReferenceImage
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1.ReferenceImage;
+
+ /**
+ * Creates a plain object from a ReferenceImage message. Also converts values to other types if specified.
+ * @param message ReferenceImage
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1.ReferenceImage, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ReferenceImage to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ReferenceImage
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a CreateProductRequest. */
+ interface ICreateProductRequest {
+
+ /** CreateProductRequest parent */
+ parent?: (string|null);
+
+ /** CreateProductRequest product */
+ product?: (google.cloud.vision.v1.IProduct|null);
+
+ /** CreateProductRequest productId */
+ productId?: (string|null);
+ }
+
+ /** Represents a CreateProductRequest. */
+ class CreateProductRequest implements ICreateProductRequest {
+
+ /**
+ * Constructs a new CreateProductRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1.ICreateProductRequest);
+
+ /** CreateProductRequest parent. */
+ public parent: string;
+
+ /** CreateProductRequest product. */
+ public product?: (google.cloud.vision.v1.IProduct|null);
+
+ /** CreateProductRequest productId. */
+ public productId: string;
+
+ /**
+ * Creates a new CreateProductRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns CreateProductRequest instance
+ */
+ public static create(properties?: google.cloud.vision.v1.ICreateProductRequest): google.cloud.vision.v1.CreateProductRequest;
+
+ /**
+ * Encodes the specified CreateProductRequest message. Does not implicitly {@link google.cloud.vision.v1.CreateProductRequest.verify|verify} messages.
+ * @param message CreateProductRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1.ICreateProductRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified CreateProductRequest message, length delimited. Does not implicitly {@link google.cloud.vision.v1.CreateProductRequest.verify|verify} messages.
+ * @param message CreateProductRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1.ICreateProductRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a CreateProductRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns CreateProductRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1.CreateProductRequest;
+
+ /**
+ * Decodes a CreateProductRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns CreateProductRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1.CreateProductRequest;
+
+ /**
+ * Verifies a CreateProductRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a CreateProductRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns CreateProductRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1.CreateProductRequest;
+
+ /**
+ * Creates a plain object from a CreateProductRequest message. Also converts values to other types if specified.
+ * @param message CreateProductRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1.CreateProductRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this CreateProductRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for CreateProductRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ListProductsRequest. */
+ interface IListProductsRequest {
+
+ /** ListProductsRequest parent */
+ parent?: (string|null);
+
+ /** ListProductsRequest pageSize */
+ pageSize?: (number|null);
+
+ /** ListProductsRequest pageToken */
+ pageToken?: (string|null);
+ }
+
+ /** Represents a ListProductsRequest. */
+ class ListProductsRequest implements IListProductsRequest {
+
+ /**
+ * Constructs a new ListProductsRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1.IListProductsRequest);
+
+ /** ListProductsRequest parent. */
+ public parent: string;
+
+ /** ListProductsRequest pageSize. */
+ public pageSize: number;
+
+ /** ListProductsRequest pageToken. */
+ public pageToken: string;
+
+ /**
+ * Creates a new ListProductsRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ListProductsRequest instance
+ */
+ public static create(properties?: google.cloud.vision.v1.IListProductsRequest): google.cloud.vision.v1.ListProductsRequest;
+
+ /**
+ * Encodes the specified ListProductsRequest message. Does not implicitly {@link google.cloud.vision.v1.ListProductsRequest.verify|verify} messages.
+ * @param message ListProductsRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1.IListProductsRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ListProductsRequest message, length delimited. Does not implicitly {@link google.cloud.vision.v1.ListProductsRequest.verify|verify} messages.
+ * @param message ListProductsRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1.IListProductsRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ListProductsRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ListProductsRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1.ListProductsRequest;
+
+ /**
+ * Decodes a ListProductsRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ListProductsRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1.ListProductsRequest;
+
+ /**
+ * Verifies a ListProductsRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ListProductsRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ListProductsRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1.ListProductsRequest;
+
+ /**
+ * Creates a plain object from a ListProductsRequest message. Also converts values to other types if specified.
+ * @param message ListProductsRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1.ListProductsRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ListProductsRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ListProductsRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ListProductsResponse. */
+ interface IListProductsResponse {
+
+ /** ListProductsResponse products */
+ products?: (google.cloud.vision.v1.IProduct[]|null);
+
+ /** ListProductsResponse nextPageToken */
+ nextPageToken?: (string|null);
+ }
+
+ /** Represents a ListProductsResponse. */
+ class ListProductsResponse implements IListProductsResponse {
+
+ /**
+ * Constructs a new ListProductsResponse.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1.IListProductsResponse);
+
+ /** ListProductsResponse products. */
+ public products: google.cloud.vision.v1.IProduct[];
+
+ /** ListProductsResponse nextPageToken. */
+ public nextPageToken: string;
+
+ /**
+ * Creates a new ListProductsResponse instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ListProductsResponse instance
+ */
+ public static create(properties?: google.cloud.vision.v1.IListProductsResponse): google.cloud.vision.v1.ListProductsResponse;
+
+ /**
+ * Encodes the specified ListProductsResponse message. Does not implicitly {@link google.cloud.vision.v1.ListProductsResponse.verify|verify} messages.
+ * @param message ListProductsResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1.IListProductsResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ListProductsResponse message, length delimited. Does not implicitly {@link google.cloud.vision.v1.ListProductsResponse.verify|verify} messages.
+ * @param message ListProductsResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1.IListProductsResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ListProductsResponse message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ListProductsResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1.ListProductsResponse;
+
+ /**
+ * Decodes a ListProductsResponse message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ListProductsResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1.ListProductsResponse;
+
+ /**
+ * Verifies a ListProductsResponse message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ListProductsResponse message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ListProductsResponse
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1.ListProductsResponse;
+
+ /**
+ * Creates a plain object from a ListProductsResponse message. Also converts values to other types if specified.
+ * @param message ListProductsResponse
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1.ListProductsResponse, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ListProductsResponse to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ListProductsResponse
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a GetProductRequest. */
+ interface IGetProductRequest {
+
+ /** GetProductRequest name */
+ name?: (string|null);
+ }
+
+ /** Represents a GetProductRequest. */
+ class GetProductRequest implements IGetProductRequest {
+
+ /**
+ * Constructs a new GetProductRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1.IGetProductRequest);
+
+ /** GetProductRequest name. */
+ public name: string;
+
+ /**
+ * Creates a new GetProductRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns GetProductRequest instance
+ */
+ public static create(properties?: google.cloud.vision.v1.IGetProductRequest): google.cloud.vision.v1.GetProductRequest;
+
+ /**
+ * Encodes the specified GetProductRequest message. Does not implicitly {@link google.cloud.vision.v1.GetProductRequest.verify|verify} messages.
+ * @param message GetProductRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1.IGetProductRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified GetProductRequest message, length delimited. Does not implicitly {@link google.cloud.vision.v1.GetProductRequest.verify|verify} messages.
+ * @param message GetProductRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1.IGetProductRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a GetProductRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns GetProductRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1.GetProductRequest;
+
+ /**
+ * Decodes a GetProductRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns GetProductRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1.GetProductRequest;
+
+ /**
+ * Verifies a GetProductRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a GetProductRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns GetProductRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1.GetProductRequest;
+
+ /**
+ * Creates a plain object from a GetProductRequest message. Also converts values to other types if specified.
+ * @param message GetProductRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1.GetProductRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this GetProductRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for GetProductRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an UpdateProductRequest. */
+ interface IUpdateProductRequest {
+
+ /** UpdateProductRequest product */
+ product?: (google.cloud.vision.v1.IProduct|null);
+
+ /** UpdateProductRequest updateMask */
+ updateMask?: (google.protobuf.IFieldMask|null);
+ }
+
+ /** Represents an UpdateProductRequest. */
+ class UpdateProductRequest implements IUpdateProductRequest {
+
+ /**
+ * Constructs a new UpdateProductRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1.IUpdateProductRequest);
+
+ /** UpdateProductRequest product. */
+ public product?: (google.cloud.vision.v1.IProduct|null);
+
+ /** UpdateProductRequest updateMask. */
+ public updateMask?: (google.protobuf.IFieldMask|null);
+
+ /**
+ * Creates a new UpdateProductRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns UpdateProductRequest instance
+ */
+ public static create(properties?: google.cloud.vision.v1.IUpdateProductRequest): google.cloud.vision.v1.UpdateProductRequest;
+
+ /**
+ * Encodes the specified UpdateProductRequest message. Does not implicitly {@link google.cloud.vision.v1.UpdateProductRequest.verify|verify} messages.
+ * @param message UpdateProductRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1.IUpdateProductRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified UpdateProductRequest message, length delimited. Does not implicitly {@link google.cloud.vision.v1.UpdateProductRequest.verify|verify} messages.
+ * @param message UpdateProductRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1.IUpdateProductRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an UpdateProductRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns UpdateProductRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1.UpdateProductRequest;
+
+ /**
+ * Decodes an UpdateProductRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns UpdateProductRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1.UpdateProductRequest;
+
+ /**
+ * Verifies an UpdateProductRequest message.
+ * @param message Plain 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 UpdateProductRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns UpdateProductRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1.UpdateProductRequest;
+
+ /**
+ * Creates a plain object from an UpdateProductRequest message. Also converts values to other types if specified.
+ * @param message UpdateProductRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1.UpdateProductRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this UpdateProductRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for UpdateProductRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a DeleteProductRequest. */
+ interface IDeleteProductRequest {
+
+ /** DeleteProductRequest name */
+ name?: (string|null);
+ }
+
+ /** Represents a DeleteProductRequest. */
+ class DeleteProductRequest implements IDeleteProductRequest {
+
+ /**
+ * Constructs a new DeleteProductRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1.IDeleteProductRequest);
+
+ /** DeleteProductRequest name. */
+ public name: string;
+
+ /**
+ * Creates a new DeleteProductRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns DeleteProductRequest instance
+ */
+ public static create(properties?: google.cloud.vision.v1.IDeleteProductRequest): google.cloud.vision.v1.DeleteProductRequest;
+
+ /**
+ * Encodes the specified DeleteProductRequest message. Does not implicitly {@link google.cloud.vision.v1.DeleteProductRequest.verify|verify} messages.
+ * @param message DeleteProductRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1.IDeleteProductRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified DeleteProductRequest message, length delimited. Does not implicitly {@link google.cloud.vision.v1.DeleteProductRequest.verify|verify} messages.
+ * @param message DeleteProductRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1.IDeleteProductRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a DeleteProductRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns DeleteProductRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1.DeleteProductRequest;
+
+ /**
+ * Decodes a DeleteProductRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns DeleteProductRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1.DeleteProductRequest;
+
+ /**
+ * Verifies a DeleteProductRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a DeleteProductRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns DeleteProductRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1.DeleteProductRequest;
+
+ /**
+ * Creates a plain object from a DeleteProductRequest message. Also converts values to other types if specified.
+ * @param message DeleteProductRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1.DeleteProductRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this DeleteProductRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for DeleteProductRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a CreateProductSetRequest. */
+ interface ICreateProductSetRequest {
+
+ /** CreateProductSetRequest parent */
+ parent?: (string|null);
+
+ /** CreateProductSetRequest productSet */
+ productSet?: (google.cloud.vision.v1.IProductSet|null);
+
+ /** CreateProductSetRequest productSetId */
+ productSetId?: (string|null);
+ }
+
+ /** Represents a CreateProductSetRequest. */
+ class CreateProductSetRequest implements ICreateProductSetRequest {
+
+ /**
+ * Constructs a new CreateProductSetRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1.ICreateProductSetRequest);
+
+ /** CreateProductSetRequest parent. */
+ public parent: string;
+
+ /** CreateProductSetRequest productSet. */
+ public productSet?: (google.cloud.vision.v1.IProductSet|null);
+
+ /** CreateProductSetRequest productSetId. */
+ public productSetId: string;
+
+ /**
+ * Creates a new CreateProductSetRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns CreateProductSetRequest instance
+ */
+ public static create(properties?: google.cloud.vision.v1.ICreateProductSetRequest): google.cloud.vision.v1.CreateProductSetRequest;
+
+ /**
+ * Encodes the specified CreateProductSetRequest message. Does not implicitly {@link google.cloud.vision.v1.CreateProductSetRequest.verify|verify} messages.
+ * @param message CreateProductSetRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1.ICreateProductSetRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified CreateProductSetRequest message, length delimited. Does not implicitly {@link google.cloud.vision.v1.CreateProductSetRequest.verify|verify} messages.
+ * @param message CreateProductSetRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1.ICreateProductSetRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a CreateProductSetRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns CreateProductSetRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1.CreateProductSetRequest;
+
+ /**
+ * Decodes a CreateProductSetRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns CreateProductSetRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1.CreateProductSetRequest;
+
+ /**
+ * Verifies a CreateProductSetRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a CreateProductSetRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns CreateProductSetRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1.CreateProductSetRequest;
+
+ /**
+ * Creates a plain object from a CreateProductSetRequest message. Also converts values to other types if specified.
+ * @param message CreateProductSetRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1.CreateProductSetRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this CreateProductSetRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for CreateProductSetRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ListProductSetsRequest. */
+ interface IListProductSetsRequest {
+
+ /** ListProductSetsRequest parent */
+ parent?: (string|null);
+
+ /** ListProductSetsRequest pageSize */
+ pageSize?: (number|null);
+
+ /** ListProductSetsRequest pageToken */
+ pageToken?: (string|null);
+ }
+
+ /** Represents a ListProductSetsRequest. */
+ class ListProductSetsRequest implements IListProductSetsRequest {
+
+ /**
+ * Constructs a new ListProductSetsRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1.IListProductSetsRequest);
+
+ /** ListProductSetsRequest parent. */
+ public parent: string;
+
+ /** ListProductSetsRequest pageSize. */
+ public pageSize: number;
+
+ /** ListProductSetsRequest pageToken. */
+ public pageToken: string;
+
+ /**
+ * Creates a new ListProductSetsRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ListProductSetsRequest instance
+ */
+ public static create(properties?: google.cloud.vision.v1.IListProductSetsRequest): google.cloud.vision.v1.ListProductSetsRequest;
+
+ /**
+ * Encodes the specified ListProductSetsRequest message. Does not implicitly {@link google.cloud.vision.v1.ListProductSetsRequest.verify|verify} messages.
+ * @param message ListProductSetsRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1.IListProductSetsRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ListProductSetsRequest message, length delimited. Does not implicitly {@link google.cloud.vision.v1.ListProductSetsRequest.verify|verify} messages.
+ * @param message ListProductSetsRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1.IListProductSetsRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ListProductSetsRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ListProductSetsRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1.ListProductSetsRequest;
+
+ /**
+ * Decodes a ListProductSetsRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ListProductSetsRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1.ListProductSetsRequest;
+
+ /**
+ * Verifies a ListProductSetsRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ListProductSetsRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ListProductSetsRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1.ListProductSetsRequest;
+
+ /**
+ * Creates a plain object from a ListProductSetsRequest message. Also converts values to other types if specified.
+ * @param message ListProductSetsRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1.ListProductSetsRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ListProductSetsRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ListProductSetsRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ListProductSetsResponse. */
+ interface IListProductSetsResponse {
+
+ /** ListProductSetsResponse productSets */
+ productSets?: (google.cloud.vision.v1.IProductSet[]|null);
+
+ /** ListProductSetsResponse nextPageToken */
+ nextPageToken?: (string|null);
+ }
+
+ /** Represents a ListProductSetsResponse. */
+ class ListProductSetsResponse implements IListProductSetsResponse {
+
+ /**
+ * Constructs a new ListProductSetsResponse.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1.IListProductSetsResponse);
+
+ /** ListProductSetsResponse productSets. */
+ public productSets: google.cloud.vision.v1.IProductSet[];
+
+ /** ListProductSetsResponse nextPageToken. */
+ public nextPageToken: string;
+
+ /**
+ * Creates a new ListProductSetsResponse instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ListProductSetsResponse instance
+ */
+ public static create(properties?: google.cloud.vision.v1.IListProductSetsResponse): google.cloud.vision.v1.ListProductSetsResponse;
+
+ /**
+ * Encodes the specified ListProductSetsResponse message. Does not implicitly {@link google.cloud.vision.v1.ListProductSetsResponse.verify|verify} messages.
+ * @param message ListProductSetsResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1.IListProductSetsResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ListProductSetsResponse message, length delimited. Does not implicitly {@link google.cloud.vision.v1.ListProductSetsResponse.verify|verify} messages.
+ * @param message ListProductSetsResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1.IListProductSetsResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ListProductSetsResponse message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ListProductSetsResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1.ListProductSetsResponse;
+
+ /**
+ * Decodes a ListProductSetsResponse message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ListProductSetsResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1.ListProductSetsResponse;
+
+ /**
+ * Verifies a ListProductSetsResponse message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ListProductSetsResponse message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ListProductSetsResponse
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1.ListProductSetsResponse;
+
+ /**
+ * Creates a plain object from a ListProductSetsResponse message. Also converts values to other types if specified.
+ * @param message ListProductSetsResponse
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1.ListProductSetsResponse, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ListProductSetsResponse to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ListProductSetsResponse
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a GetProductSetRequest. */
+ interface IGetProductSetRequest {
+
+ /** GetProductSetRequest name */
+ name?: (string|null);
+ }
+
+ /** Represents a GetProductSetRequest. */
+ class GetProductSetRequest implements IGetProductSetRequest {
+
+ /**
+ * Constructs a new GetProductSetRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1.IGetProductSetRequest);
+
+ /** GetProductSetRequest name. */
+ public name: string;
+
+ /**
+ * Creates a new GetProductSetRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns GetProductSetRequest instance
+ */
+ public static create(properties?: google.cloud.vision.v1.IGetProductSetRequest): google.cloud.vision.v1.GetProductSetRequest;
+
+ /**
+ * Encodes the specified GetProductSetRequest message. Does not implicitly {@link google.cloud.vision.v1.GetProductSetRequest.verify|verify} messages.
+ * @param message GetProductSetRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1.IGetProductSetRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified GetProductSetRequest message, length delimited. Does not implicitly {@link google.cloud.vision.v1.GetProductSetRequest.verify|verify} messages.
+ * @param message GetProductSetRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1.IGetProductSetRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a GetProductSetRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns GetProductSetRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1.GetProductSetRequest;
+
+ /**
+ * Decodes a GetProductSetRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns GetProductSetRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1.GetProductSetRequest;
+
+ /**
+ * Verifies a GetProductSetRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a GetProductSetRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns GetProductSetRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1.GetProductSetRequest;
+
+ /**
+ * Creates a plain object from a GetProductSetRequest message. Also converts values to other types if specified.
+ * @param message GetProductSetRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1.GetProductSetRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this GetProductSetRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for GetProductSetRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an UpdateProductSetRequest. */
+ interface IUpdateProductSetRequest {
+
+ /** UpdateProductSetRequest productSet */
+ productSet?: (google.cloud.vision.v1.IProductSet|null);
+
+ /** UpdateProductSetRequest updateMask */
+ updateMask?: (google.protobuf.IFieldMask|null);
+ }
+
+ /** Represents an UpdateProductSetRequest. */
+ class UpdateProductSetRequest implements IUpdateProductSetRequest {
+
+ /**
+ * Constructs a new UpdateProductSetRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1.IUpdateProductSetRequest);
+
+ /** UpdateProductSetRequest productSet. */
+ public productSet?: (google.cloud.vision.v1.IProductSet|null);
+
+ /** UpdateProductSetRequest updateMask. */
+ public updateMask?: (google.protobuf.IFieldMask|null);
+
+ /**
+ * Creates a new UpdateProductSetRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns UpdateProductSetRequest instance
+ */
+ public static create(properties?: google.cloud.vision.v1.IUpdateProductSetRequest): google.cloud.vision.v1.UpdateProductSetRequest;
+
+ /**
+ * Encodes the specified UpdateProductSetRequest message. Does not implicitly {@link google.cloud.vision.v1.UpdateProductSetRequest.verify|verify} messages.
+ * @param message UpdateProductSetRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1.IUpdateProductSetRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified UpdateProductSetRequest message, length delimited. Does not implicitly {@link google.cloud.vision.v1.UpdateProductSetRequest.verify|verify} messages.
+ * @param message UpdateProductSetRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1.IUpdateProductSetRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an UpdateProductSetRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns UpdateProductSetRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1.UpdateProductSetRequest;
+
+ /**
+ * Decodes an UpdateProductSetRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns UpdateProductSetRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1.UpdateProductSetRequest;
+
+ /**
+ * Verifies an UpdateProductSetRequest message.
+ * @param message Plain 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 UpdateProductSetRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns UpdateProductSetRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1.UpdateProductSetRequest;
+
+ /**
+ * Creates a plain object from an UpdateProductSetRequest message. Also converts values to other types if specified.
+ * @param message UpdateProductSetRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1.UpdateProductSetRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this UpdateProductSetRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for UpdateProductSetRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a DeleteProductSetRequest. */
+ interface IDeleteProductSetRequest {
+
+ /** DeleteProductSetRequest name */
+ name?: (string|null);
+ }
+
+ /** Represents a DeleteProductSetRequest. */
+ class DeleteProductSetRequest implements IDeleteProductSetRequest {
+
+ /**
+ * Constructs a new DeleteProductSetRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1.IDeleteProductSetRequest);
+
+ /** DeleteProductSetRequest name. */
+ public name: string;
+
+ /**
+ * Creates a new DeleteProductSetRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns DeleteProductSetRequest instance
+ */
+ public static create(properties?: google.cloud.vision.v1.IDeleteProductSetRequest): google.cloud.vision.v1.DeleteProductSetRequest;
+
+ /**
+ * Encodes the specified DeleteProductSetRequest message. Does not implicitly {@link google.cloud.vision.v1.DeleteProductSetRequest.verify|verify} messages.
+ * @param message DeleteProductSetRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1.IDeleteProductSetRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified DeleteProductSetRequest message, length delimited. Does not implicitly {@link google.cloud.vision.v1.DeleteProductSetRequest.verify|verify} messages.
+ * @param message DeleteProductSetRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1.IDeleteProductSetRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a DeleteProductSetRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns DeleteProductSetRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1.DeleteProductSetRequest;
+
+ /**
+ * Decodes a DeleteProductSetRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns DeleteProductSetRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1.DeleteProductSetRequest;
+
+ /**
+ * Verifies a DeleteProductSetRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a DeleteProductSetRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns DeleteProductSetRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1.DeleteProductSetRequest;
+
+ /**
+ * Creates a plain object from a DeleteProductSetRequest message. Also converts values to other types if specified.
+ * @param message DeleteProductSetRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1.DeleteProductSetRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this DeleteProductSetRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for DeleteProductSetRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a CreateReferenceImageRequest. */
+ interface ICreateReferenceImageRequest {
+
+ /** CreateReferenceImageRequest parent */
+ parent?: (string|null);
+
+ /** CreateReferenceImageRequest referenceImage */
+ referenceImage?: (google.cloud.vision.v1.IReferenceImage|null);
+
+ /** CreateReferenceImageRequest referenceImageId */
+ referenceImageId?: (string|null);
+ }
+
+ /** Represents a CreateReferenceImageRequest. */
+ class CreateReferenceImageRequest implements ICreateReferenceImageRequest {
+
+ /**
+ * Constructs a new CreateReferenceImageRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1.ICreateReferenceImageRequest);
+
+ /** CreateReferenceImageRequest parent. */
+ public parent: string;
+
+ /** CreateReferenceImageRequest referenceImage. */
+ public referenceImage?: (google.cloud.vision.v1.IReferenceImage|null);
+
+ /** CreateReferenceImageRequest referenceImageId. */
+ public referenceImageId: string;
+
+ /**
+ * Creates a new CreateReferenceImageRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns CreateReferenceImageRequest instance
+ */
+ public static create(properties?: google.cloud.vision.v1.ICreateReferenceImageRequest): google.cloud.vision.v1.CreateReferenceImageRequest;
+
+ /**
+ * Encodes the specified CreateReferenceImageRequest message. Does not implicitly {@link google.cloud.vision.v1.CreateReferenceImageRequest.verify|verify} messages.
+ * @param message CreateReferenceImageRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1.ICreateReferenceImageRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified CreateReferenceImageRequest message, length delimited. Does not implicitly {@link google.cloud.vision.v1.CreateReferenceImageRequest.verify|verify} messages.
+ * @param message CreateReferenceImageRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1.ICreateReferenceImageRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a CreateReferenceImageRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns CreateReferenceImageRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1.CreateReferenceImageRequest;
+
+ /**
+ * Decodes a CreateReferenceImageRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns CreateReferenceImageRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1.CreateReferenceImageRequest;
+
+ /**
+ * Verifies a CreateReferenceImageRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a CreateReferenceImageRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns CreateReferenceImageRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1.CreateReferenceImageRequest;
+
+ /**
+ * Creates a plain object from a CreateReferenceImageRequest message. Also converts values to other types if specified.
+ * @param message CreateReferenceImageRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1.CreateReferenceImageRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this CreateReferenceImageRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for CreateReferenceImageRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ListReferenceImagesRequest. */
+ interface IListReferenceImagesRequest {
+
+ /** ListReferenceImagesRequest parent */
+ parent?: (string|null);
+
+ /** ListReferenceImagesRequest pageSize */
+ pageSize?: (number|null);
+
+ /** ListReferenceImagesRequest pageToken */
+ pageToken?: (string|null);
+ }
+
+ /** Represents a ListReferenceImagesRequest. */
+ class ListReferenceImagesRequest implements IListReferenceImagesRequest {
+
+ /**
+ * Constructs a new ListReferenceImagesRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1.IListReferenceImagesRequest);
+
+ /** ListReferenceImagesRequest parent. */
+ public parent: string;
+
+ /** ListReferenceImagesRequest pageSize. */
+ public pageSize: number;
+
+ /** ListReferenceImagesRequest pageToken. */
+ public pageToken: string;
+
+ /**
+ * Creates a new ListReferenceImagesRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ListReferenceImagesRequest instance
+ */
+ public static create(properties?: google.cloud.vision.v1.IListReferenceImagesRequest): google.cloud.vision.v1.ListReferenceImagesRequest;
+
+ /**
+ * Encodes the specified ListReferenceImagesRequest message. Does not implicitly {@link google.cloud.vision.v1.ListReferenceImagesRequest.verify|verify} messages.
+ * @param message ListReferenceImagesRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1.IListReferenceImagesRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ListReferenceImagesRequest message, length delimited. Does not implicitly {@link google.cloud.vision.v1.ListReferenceImagesRequest.verify|verify} messages.
+ * @param message ListReferenceImagesRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1.IListReferenceImagesRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ListReferenceImagesRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ListReferenceImagesRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1.ListReferenceImagesRequest;
+
+ /**
+ * Decodes a ListReferenceImagesRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ListReferenceImagesRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1.ListReferenceImagesRequest;
+
+ /**
+ * Verifies a ListReferenceImagesRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ListReferenceImagesRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ListReferenceImagesRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1.ListReferenceImagesRequest;
+
+ /**
+ * Creates a plain object from a ListReferenceImagesRequest message. Also converts values to other types if specified.
+ * @param message ListReferenceImagesRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1.ListReferenceImagesRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ListReferenceImagesRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ListReferenceImagesRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ListReferenceImagesResponse. */
+ interface IListReferenceImagesResponse {
+
+ /** ListReferenceImagesResponse referenceImages */
+ referenceImages?: (google.cloud.vision.v1.IReferenceImage[]|null);
+
+ /** ListReferenceImagesResponse pageSize */
+ pageSize?: (number|null);
+
+ /** ListReferenceImagesResponse nextPageToken */
+ nextPageToken?: (string|null);
+ }
+
+ /** Represents a ListReferenceImagesResponse. */
+ class ListReferenceImagesResponse implements IListReferenceImagesResponse {
+
+ /**
+ * Constructs a new ListReferenceImagesResponse.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1.IListReferenceImagesResponse);
+
+ /** ListReferenceImagesResponse referenceImages. */
+ public referenceImages: google.cloud.vision.v1.IReferenceImage[];
+
+ /** ListReferenceImagesResponse pageSize. */
+ public pageSize: number;
+
+ /** ListReferenceImagesResponse nextPageToken. */
+ public nextPageToken: string;
+
+ /**
+ * Creates a new ListReferenceImagesResponse instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ListReferenceImagesResponse instance
+ */
+ public static create(properties?: google.cloud.vision.v1.IListReferenceImagesResponse): google.cloud.vision.v1.ListReferenceImagesResponse;
+
+ /**
+ * Encodes the specified ListReferenceImagesResponse message. Does not implicitly {@link google.cloud.vision.v1.ListReferenceImagesResponse.verify|verify} messages.
+ * @param message ListReferenceImagesResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1.IListReferenceImagesResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ListReferenceImagesResponse message, length delimited. Does not implicitly {@link google.cloud.vision.v1.ListReferenceImagesResponse.verify|verify} messages.
+ * @param message ListReferenceImagesResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1.IListReferenceImagesResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ListReferenceImagesResponse message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ListReferenceImagesResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1.ListReferenceImagesResponse;
+
+ /**
+ * Decodes a ListReferenceImagesResponse message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ListReferenceImagesResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1.ListReferenceImagesResponse;
+
+ /**
+ * Verifies a ListReferenceImagesResponse message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ListReferenceImagesResponse message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ListReferenceImagesResponse
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1.ListReferenceImagesResponse;
+
+ /**
+ * Creates a plain object from a ListReferenceImagesResponse message. Also converts values to other types if specified.
+ * @param message ListReferenceImagesResponse
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1.ListReferenceImagesResponse, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ListReferenceImagesResponse to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ListReferenceImagesResponse
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a GetReferenceImageRequest. */
+ interface IGetReferenceImageRequest {
+
+ /** GetReferenceImageRequest name */
+ name?: (string|null);
+ }
+
+ /** Represents a GetReferenceImageRequest. */
+ class GetReferenceImageRequest implements IGetReferenceImageRequest {
+
+ /**
+ * Constructs a new GetReferenceImageRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1.IGetReferenceImageRequest);
+
+ /** GetReferenceImageRequest name. */
+ public name: string;
+
+ /**
+ * Creates a new GetReferenceImageRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns GetReferenceImageRequest instance
+ */
+ public static create(properties?: google.cloud.vision.v1.IGetReferenceImageRequest): google.cloud.vision.v1.GetReferenceImageRequest;
+
+ /**
+ * Encodes the specified GetReferenceImageRequest message. Does not implicitly {@link google.cloud.vision.v1.GetReferenceImageRequest.verify|verify} messages.
+ * @param message GetReferenceImageRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1.IGetReferenceImageRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified GetReferenceImageRequest message, length delimited. Does not implicitly {@link google.cloud.vision.v1.GetReferenceImageRequest.verify|verify} messages.
+ * @param message GetReferenceImageRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1.IGetReferenceImageRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a GetReferenceImageRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns GetReferenceImageRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1.GetReferenceImageRequest;
+
+ /**
+ * Decodes a GetReferenceImageRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns GetReferenceImageRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1.GetReferenceImageRequest;
+
+ /**
+ * Verifies a GetReferenceImageRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a GetReferenceImageRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns GetReferenceImageRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1.GetReferenceImageRequest;
+
+ /**
+ * Creates a plain object from a GetReferenceImageRequest message. Also converts values to other types if specified.
+ * @param message GetReferenceImageRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1.GetReferenceImageRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this GetReferenceImageRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for GetReferenceImageRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a DeleteReferenceImageRequest. */
+ interface IDeleteReferenceImageRequest {
+
+ /** DeleteReferenceImageRequest name */
+ name?: (string|null);
+ }
+
+ /** Represents a DeleteReferenceImageRequest. */
+ class DeleteReferenceImageRequest implements IDeleteReferenceImageRequest {
+
+ /**
+ * Constructs a new DeleteReferenceImageRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1.IDeleteReferenceImageRequest);
+
+ /** DeleteReferenceImageRequest name. */
+ public name: string;
+
+ /**
+ * Creates a new DeleteReferenceImageRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns DeleteReferenceImageRequest instance
+ */
+ public static create(properties?: google.cloud.vision.v1.IDeleteReferenceImageRequest): google.cloud.vision.v1.DeleteReferenceImageRequest;
+
+ /**
+ * Encodes the specified DeleteReferenceImageRequest message. Does not implicitly {@link google.cloud.vision.v1.DeleteReferenceImageRequest.verify|verify} messages.
+ * @param message DeleteReferenceImageRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1.IDeleteReferenceImageRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified DeleteReferenceImageRequest message, length delimited. Does not implicitly {@link google.cloud.vision.v1.DeleteReferenceImageRequest.verify|verify} messages.
+ * @param message DeleteReferenceImageRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1.IDeleteReferenceImageRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a DeleteReferenceImageRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns DeleteReferenceImageRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1.DeleteReferenceImageRequest;
+
+ /**
+ * Decodes a DeleteReferenceImageRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns DeleteReferenceImageRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1.DeleteReferenceImageRequest;
+
+ /**
+ * Verifies a DeleteReferenceImageRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a DeleteReferenceImageRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns DeleteReferenceImageRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1.DeleteReferenceImageRequest;
+
+ /**
+ * Creates a plain object from a DeleteReferenceImageRequest message. Also converts values to other types if specified.
+ * @param message DeleteReferenceImageRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1.DeleteReferenceImageRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this DeleteReferenceImageRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for DeleteReferenceImageRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an AddProductToProductSetRequest. */
+ interface IAddProductToProductSetRequest {
+
+ /** AddProductToProductSetRequest name */
+ name?: (string|null);
+
+ /** AddProductToProductSetRequest product */
+ product?: (string|null);
+ }
+
+ /** Represents an AddProductToProductSetRequest. */
+ class AddProductToProductSetRequest implements IAddProductToProductSetRequest {
+
+ /**
+ * Constructs a new AddProductToProductSetRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1.IAddProductToProductSetRequest);
+
+ /** AddProductToProductSetRequest name. */
+ public name: string;
+
+ /** AddProductToProductSetRequest product. */
+ public product: string;
+
+ /**
+ * Creates a new AddProductToProductSetRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns AddProductToProductSetRequest instance
+ */
+ public static create(properties?: google.cloud.vision.v1.IAddProductToProductSetRequest): google.cloud.vision.v1.AddProductToProductSetRequest;
+
+ /**
+ * Encodes the specified AddProductToProductSetRequest message. Does not implicitly {@link google.cloud.vision.v1.AddProductToProductSetRequest.verify|verify} messages.
+ * @param message AddProductToProductSetRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1.IAddProductToProductSetRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified AddProductToProductSetRequest message, length delimited. Does not implicitly {@link google.cloud.vision.v1.AddProductToProductSetRequest.verify|verify} messages.
+ * @param message AddProductToProductSetRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1.IAddProductToProductSetRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an AddProductToProductSetRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns AddProductToProductSetRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1.AddProductToProductSetRequest;
+
+ /**
+ * Decodes an AddProductToProductSetRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns AddProductToProductSetRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1.AddProductToProductSetRequest;
+
+ /**
+ * Verifies an AddProductToProductSetRequest message.
+ * @param message Plain 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 AddProductToProductSetRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns AddProductToProductSetRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1.AddProductToProductSetRequest;
+
+ /**
+ * Creates a plain object from an AddProductToProductSetRequest message. Also converts values to other types if specified.
+ * @param message AddProductToProductSetRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1.AddProductToProductSetRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this AddProductToProductSetRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for AddProductToProductSetRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a RemoveProductFromProductSetRequest. */
+ interface IRemoveProductFromProductSetRequest {
+
+ /** RemoveProductFromProductSetRequest name */
+ name?: (string|null);
+
+ /** RemoveProductFromProductSetRequest product */
+ product?: (string|null);
+ }
+
+ /** Represents a RemoveProductFromProductSetRequest. */
+ class RemoveProductFromProductSetRequest implements IRemoveProductFromProductSetRequest {
+
+ /**
+ * Constructs a new RemoveProductFromProductSetRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1.IRemoveProductFromProductSetRequest);
+
+ /** RemoveProductFromProductSetRequest name. */
+ public name: string;
+
+ /** RemoveProductFromProductSetRequest product. */
+ public product: string;
+
+ /**
+ * Creates a new RemoveProductFromProductSetRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns RemoveProductFromProductSetRequest instance
+ */
+ public static create(properties?: google.cloud.vision.v1.IRemoveProductFromProductSetRequest): google.cloud.vision.v1.RemoveProductFromProductSetRequest;
+
+ /**
+ * Encodes the specified RemoveProductFromProductSetRequest message. Does not implicitly {@link google.cloud.vision.v1.RemoveProductFromProductSetRequest.verify|verify} messages.
+ * @param message RemoveProductFromProductSetRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1.IRemoveProductFromProductSetRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified RemoveProductFromProductSetRequest message, length delimited. Does not implicitly {@link google.cloud.vision.v1.RemoveProductFromProductSetRequest.verify|verify} messages.
+ * @param message RemoveProductFromProductSetRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1.IRemoveProductFromProductSetRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a RemoveProductFromProductSetRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns RemoveProductFromProductSetRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1.RemoveProductFromProductSetRequest;
+
+ /**
+ * Decodes a RemoveProductFromProductSetRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns RemoveProductFromProductSetRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1.RemoveProductFromProductSetRequest;
+
+ /**
+ * Verifies a RemoveProductFromProductSetRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a RemoveProductFromProductSetRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns RemoveProductFromProductSetRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1.RemoveProductFromProductSetRequest;
+
+ /**
+ * Creates a plain object from a RemoveProductFromProductSetRequest message. Also converts values to other types if specified.
+ * @param message RemoveProductFromProductSetRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1.RemoveProductFromProductSetRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this RemoveProductFromProductSetRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for RemoveProductFromProductSetRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ListProductsInProductSetRequest. */
+ interface IListProductsInProductSetRequest {
+
+ /** ListProductsInProductSetRequest name */
+ name?: (string|null);
+
+ /** ListProductsInProductSetRequest pageSize */
+ pageSize?: (number|null);
+
+ /** ListProductsInProductSetRequest pageToken */
+ pageToken?: (string|null);
+ }
+
+ /** Represents a ListProductsInProductSetRequest. */
+ class ListProductsInProductSetRequest implements IListProductsInProductSetRequest {
+
+ /**
+ * Constructs a new ListProductsInProductSetRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1.IListProductsInProductSetRequest);
+
+ /** ListProductsInProductSetRequest name. */
+ public name: string;
+
+ /** ListProductsInProductSetRequest pageSize. */
+ public pageSize: number;
+
+ /** ListProductsInProductSetRequest pageToken. */
+ public pageToken: string;
+
+ /**
+ * Creates a new ListProductsInProductSetRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ListProductsInProductSetRequest instance
+ */
+ public static create(properties?: google.cloud.vision.v1.IListProductsInProductSetRequest): google.cloud.vision.v1.ListProductsInProductSetRequest;
+
+ /**
+ * Encodes the specified ListProductsInProductSetRequest message. Does not implicitly {@link google.cloud.vision.v1.ListProductsInProductSetRequest.verify|verify} messages.
+ * @param message ListProductsInProductSetRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1.IListProductsInProductSetRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ListProductsInProductSetRequest message, length delimited. Does not implicitly {@link google.cloud.vision.v1.ListProductsInProductSetRequest.verify|verify} messages.
+ * @param message ListProductsInProductSetRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1.IListProductsInProductSetRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ListProductsInProductSetRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ListProductsInProductSetRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1.ListProductsInProductSetRequest;
+
+ /**
+ * Decodes a ListProductsInProductSetRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ListProductsInProductSetRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1.ListProductsInProductSetRequest;
+
+ /**
+ * Verifies a ListProductsInProductSetRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ListProductsInProductSetRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ListProductsInProductSetRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1.ListProductsInProductSetRequest;
+
+ /**
+ * Creates a plain object from a ListProductsInProductSetRequest message. Also converts values to other types if specified.
+ * @param message ListProductsInProductSetRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1.ListProductsInProductSetRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ListProductsInProductSetRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ListProductsInProductSetRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ListProductsInProductSetResponse. */
+ interface IListProductsInProductSetResponse {
+
+ /** ListProductsInProductSetResponse products */
+ products?: (google.cloud.vision.v1.IProduct[]|null);
+
+ /** ListProductsInProductSetResponse nextPageToken */
+ nextPageToken?: (string|null);
+ }
+
+ /** Represents a ListProductsInProductSetResponse. */
+ class ListProductsInProductSetResponse implements IListProductsInProductSetResponse {
+
+ /**
+ * Constructs a new ListProductsInProductSetResponse.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1.IListProductsInProductSetResponse);
+
+ /** ListProductsInProductSetResponse products. */
+ public products: google.cloud.vision.v1.IProduct[];
+
+ /** ListProductsInProductSetResponse nextPageToken. */
+ public nextPageToken: string;
+
+ /**
+ * Creates a new ListProductsInProductSetResponse instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ListProductsInProductSetResponse instance
+ */
+ public static create(properties?: google.cloud.vision.v1.IListProductsInProductSetResponse): google.cloud.vision.v1.ListProductsInProductSetResponse;
+
+ /**
+ * Encodes the specified ListProductsInProductSetResponse message. Does not implicitly {@link google.cloud.vision.v1.ListProductsInProductSetResponse.verify|verify} messages.
+ * @param message ListProductsInProductSetResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1.IListProductsInProductSetResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ListProductsInProductSetResponse message, length delimited. Does not implicitly {@link google.cloud.vision.v1.ListProductsInProductSetResponse.verify|verify} messages.
+ * @param message ListProductsInProductSetResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1.IListProductsInProductSetResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ListProductsInProductSetResponse message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ListProductsInProductSetResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1.ListProductsInProductSetResponse;
+
+ /**
+ * Decodes a ListProductsInProductSetResponse message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ListProductsInProductSetResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1.ListProductsInProductSetResponse;
+
+ /**
+ * Verifies a ListProductsInProductSetResponse message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ListProductsInProductSetResponse message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ListProductsInProductSetResponse
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1.ListProductsInProductSetResponse;
+
+ /**
+ * Creates a plain object from a ListProductsInProductSetResponse message. Also converts values to other types if specified.
+ * @param message ListProductsInProductSetResponse
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1.ListProductsInProductSetResponse, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ListProductsInProductSetResponse to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ListProductsInProductSetResponse
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an ImportProductSetsGcsSource. */
+ interface IImportProductSetsGcsSource {
+
+ /** ImportProductSetsGcsSource csvFileUri */
+ csvFileUri?: (string|null);
+ }
+
+ /** Represents an ImportProductSetsGcsSource. */
+ class ImportProductSetsGcsSource implements IImportProductSetsGcsSource {
+
+ /**
+ * Constructs a new ImportProductSetsGcsSource.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1.IImportProductSetsGcsSource);
+
+ /** ImportProductSetsGcsSource csvFileUri. */
+ public csvFileUri: string;
+
+ /**
+ * Creates a new ImportProductSetsGcsSource instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ImportProductSetsGcsSource instance
+ */
+ public static create(properties?: google.cloud.vision.v1.IImportProductSetsGcsSource): google.cloud.vision.v1.ImportProductSetsGcsSource;
+
+ /**
+ * Encodes the specified ImportProductSetsGcsSource message. Does not implicitly {@link google.cloud.vision.v1.ImportProductSetsGcsSource.verify|verify} messages.
+ * @param message ImportProductSetsGcsSource message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1.IImportProductSetsGcsSource, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ImportProductSetsGcsSource message, length delimited. Does not implicitly {@link google.cloud.vision.v1.ImportProductSetsGcsSource.verify|verify} messages.
+ * @param message ImportProductSetsGcsSource message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1.IImportProductSetsGcsSource, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an ImportProductSetsGcsSource message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ImportProductSetsGcsSource
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1.ImportProductSetsGcsSource;
+
+ /**
+ * Decodes an ImportProductSetsGcsSource message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ImportProductSetsGcsSource
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1.ImportProductSetsGcsSource;
+
+ /**
+ * Verifies an ImportProductSetsGcsSource message.
+ * @param message Plain 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 ImportProductSetsGcsSource message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ImportProductSetsGcsSource
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1.ImportProductSetsGcsSource;
+
+ /**
+ * Creates a plain object from an ImportProductSetsGcsSource message. Also converts values to other types if specified.
+ * @param message ImportProductSetsGcsSource
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1.ImportProductSetsGcsSource, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ImportProductSetsGcsSource to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ImportProductSetsGcsSource
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an ImportProductSetsInputConfig. */
+ interface IImportProductSetsInputConfig {
+
+ /** ImportProductSetsInputConfig gcsSource */
+ gcsSource?: (google.cloud.vision.v1.IImportProductSetsGcsSource|null);
+ }
+
+ /** Represents an ImportProductSetsInputConfig. */
+ class ImportProductSetsInputConfig implements IImportProductSetsInputConfig {
+
+ /**
+ * Constructs a new ImportProductSetsInputConfig.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1.IImportProductSetsInputConfig);
+
+ /** ImportProductSetsInputConfig gcsSource. */
+ public gcsSource?: (google.cloud.vision.v1.IImportProductSetsGcsSource|null);
+
+ /** ImportProductSetsInputConfig source. */
+ public source?: "gcsSource";
+
+ /**
+ * Creates a new ImportProductSetsInputConfig instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ImportProductSetsInputConfig instance
+ */
+ public static create(properties?: google.cloud.vision.v1.IImportProductSetsInputConfig): google.cloud.vision.v1.ImportProductSetsInputConfig;
+
+ /**
+ * Encodes the specified ImportProductSetsInputConfig message. Does not implicitly {@link google.cloud.vision.v1.ImportProductSetsInputConfig.verify|verify} messages.
+ * @param message ImportProductSetsInputConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1.IImportProductSetsInputConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ImportProductSetsInputConfig message, length delimited. Does not implicitly {@link google.cloud.vision.v1.ImportProductSetsInputConfig.verify|verify} messages.
+ * @param message ImportProductSetsInputConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1.IImportProductSetsInputConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an ImportProductSetsInputConfig message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ImportProductSetsInputConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1.ImportProductSetsInputConfig;
+
+ /**
+ * Decodes an ImportProductSetsInputConfig message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ImportProductSetsInputConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1.ImportProductSetsInputConfig;
+
+ /**
+ * Verifies an ImportProductSetsInputConfig message.
+ * @param message Plain 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 ImportProductSetsInputConfig message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ImportProductSetsInputConfig
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1.ImportProductSetsInputConfig;
+
+ /**
+ * Creates a plain object from an ImportProductSetsInputConfig message. Also converts values to other types if specified.
+ * @param message ImportProductSetsInputConfig
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1.ImportProductSetsInputConfig, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ImportProductSetsInputConfig to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ImportProductSetsInputConfig
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an ImportProductSetsRequest. */
+ interface IImportProductSetsRequest {
+
+ /** ImportProductSetsRequest parent */
+ parent?: (string|null);
+
+ /** ImportProductSetsRequest inputConfig */
+ inputConfig?: (google.cloud.vision.v1.IImportProductSetsInputConfig|null);
+ }
+
+ /** Represents an ImportProductSetsRequest. */
+ class ImportProductSetsRequest implements IImportProductSetsRequest {
+
+ /**
+ * Constructs a new ImportProductSetsRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1.IImportProductSetsRequest);
+
+ /** ImportProductSetsRequest parent. */
+ public parent: string;
+
+ /** ImportProductSetsRequest inputConfig. */
+ public inputConfig?: (google.cloud.vision.v1.IImportProductSetsInputConfig|null);
+
+ /**
+ * Creates a new ImportProductSetsRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ImportProductSetsRequest instance
+ */
+ public static create(properties?: google.cloud.vision.v1.IImportProductSetsRequest): google.cloud.vision.v1.ImportProductSetsRequest;
+
+ /**
+ * Encodes the specified ImportProductSetsRequest message. Does not implicitly {@link google.cloud.vision.v1.ImportProductSetsRequest.verify|verify} messages.
+ * @param message ImportProductSetsRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1.IImportProductSetsRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ImportProductSetsRequest message, length delimited. Does not implicitly {@link google.cloud.vision.v1.ImportProductSetsRequest.verify|verify} messages.
+ * @param message ImportProductSetsRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1.IImportProductSetsRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an ImportProductSetsRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ImportProductSetsRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1.ImportProductSetsRequest;
+
+ /**
+ * Decodes an ImportProductSetsRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ImportProductSetsRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1.ImportProductSetsRequest;
+
+ /**
+ * Verifies an ImportProductSetsRequest message.
+ * @param message Plain 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 ImportProductSetsRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ImportProductSetsRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1.ImportProductSetsRequest;
+
+ /**
+ * Creates a plain object from an ImportProductSetsRequest message. Also converts values to other types if specified.
+ * @param message ImportProductSetsRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1.ImportProductSetsRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ImportProductSetsRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ImportProductSetsRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an ImportProductSetsResponse. */
+ interface IImportProductSetsResponse {
+
+ /** ImportProductSetsResponse referenceImages */
+ referenceImages?: (google.cloud.vision.v1.IReferenceImage[]|null);
+
+ /** ImportProductSetsResponse statuses */
+ statuses?: (google.rpc.IStatus[]|null);
+ }
+
+ /** Represents an ImportProductSetsResponse. */
+ class ImportProductSetsResponse implements IImportProductSetsResponse {
+
+ /**
+ * Constructs a new ImportProductSetsResponse.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1.IImportProductSetsResponse);
+
+ /** ImportProductSetsResponse referenceImages. */
+ public referenceImages: google.cloud.vision.v1.IReferenceImage[];
+
+ /** ImportProductSetsResponse statuses. */
+ public statuses: google.rpc.IStatus[];
+
+ /**
+ * Creates a new ImportProductSetsResponse instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ImportProductSetsResponse instance
+ */
+ public static create(properties?: google.cloud.vision.v1.IImportProductSetsResponse): google.cloud.vision.v1.ImportProductSetsResponse;
+
+ /**
+ * Encodes the specified ImportProductSetsResponse message. Does not implicitly {@link google.cloud.vision.v1.ImportProductSetsResponse.verify|verify} messages.
+ * @param message ImportProductSetsResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1.IImportProductSetsResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ImportProductSetsResponse message, length delimited. Does not implicitly {@link google.cloud.vision.v1.ImportProductSetsResponse.verify|verify} messages.
+ * @param message ImportProductSetsResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1.IImportProductSetsResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an ImportProductSetsResponse message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ImportProductSetsResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1.ImportProductSetsResponse;
+
+ /**
+ * Decodes an ImportProductSetsResponse message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ImportProductSetsResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1.ImportProductSetsResponse;
+
+ /**
+ * Verifies an ImportProductSetsResponse message.
+ * @param message Plain 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 ImportProductSetsResponse message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ImportProductSetsResponse
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1.ImportProductSetsResponse;
+
+ /**
+ * Creates a plain object from an ImportProductSetsResponse message. Also converts values to other types if specified.
+ * @param message ImportProductSetsResponse
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1.ImportProductSetsResponse, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ImportProductSetsResponse to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ImportProductSetsResponse
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a BatchOperationMetadata. */
+ interface IBatchOperationMetadata {
+
+ /** BatchOperationMetadata state */
+ state?: (google.cloud.vision.v1.BatchOperationMetadata.State|keyof typeof google.cloud.vision.v1.BatchOperationMetadata.State|null);
+
+ /** BatchOperationMetadata submitTime */
+ submitTime?: (google.protobuf.ITimestamp|null);
+
+ /** BatchOperationMetadata endTime */
+ endTime?: (google.protobuf.ITimestamp|null);
+ }
+
+ /** Represents a BatchOperationMetadata. */
+ class BatchOperationMetadata implements IBatchOperationMetadata {
+
+ /**
+ * Constructs a new BatchOperationMetadata.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1.IBatchOperationMetadata);
+
+ /** BatchOperationMetadata state. */
+ public state: (google.cloud.vision.v1.BatchOperationMetadata.State|keyof typeof google.cloud.vision.v1.BatchOperationMetadata.State);
+
+ /** BatchOperationMetadata submitTime. */
+ public submitTime?: (google.protobuf.ITimestamp|null);
+
+ /** BatchOperationMetadata endTime. */
+ public endTime?: (google.protobuf.ITimestamp|null);
+
+ /**
+ * Creates a new BatchOperationMetadata instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns BatchOperationMetadata instance
+ */
+ public static create(properties?: google.cloud.vision.v1.IBatchOperationMetadata): google.cloud.vision.v1.BatchOperationMetadata;
+
+ /**
+ * Encodes the specified BatchOperationMetadata message. Does not implicitly {@link google.cloud.vision.v1.BatchOperationMetadata.verify|verify} messages.
+ * @param message BatchOperationMetadata message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1.IBatchOperationMetadata, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified BatchOperationMetadata message, length delimited. Does not implicitly {@link google.cloud.vision.v1.BatchOperationMetadata.verify|verify} messages.
+ * @param message BatchOperationMetadata message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1.IBatchOperationMetadata, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a BatchOperationMetadata message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns BatchOperationMetadata
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1.BatchOperationMetadata;
+
+ /**
+ * Decodes a BatchOperationMetadata message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns BatchOperationMetadata
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1.BatchOperationMetadata;
+
+ /**
+ * Verifies a BatchOperationMetadata message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a BatchOperationMetadata message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns BatchOperationMetadata
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1.BatchOperationMetadata;
+
+ /**
+ * Creates a plain object from a BatchOperationMetadata message. Also converts values to other types if specified.
+ * @param message BatchOperationMetadata
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1.BatchOperationMetadata, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this BatchOperationMetadata to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for BatchOperationMetadata
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace BatchOperationMetadata {
+
+ /** State enum. */
+ enum State {
+ STATE_UNSPECIFIED = 0,
+ PROCESSING = 1,
+ SUCCESSFUL = 2,
+ FAILED = 3,
+ CANCELLED = 4
+ }
+ }
+
+ /** Properties of a ProductSetPurgeConfig. */
+ interface IProductSetPurgeConfig {
+
+ /** ProductSetPurgeConfig productSetId */
+ productSetId?: (string|null);
+ }
+
+ /** Represents a ProductSetPurgeConfig. */
+ class ProductSetPurgeConfig implements IProductSetPurgeConfig {
+
+ /**
+ * Constructs a new ProductSetPurgeConfig.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1.IProductSetPurgeConfig);
+
+ /** ProductSetPurgeConfig productSetId. */
+ public productSetId: string;
+
+ /**
+ * Creates a new ProductSetPurgeConfig instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ProductSetPurgeConfig instance
+ */
+ public static create(properties?: google.cloud.vision.v1.IProductSetPurgeConfig): google.cloud.vision.v1.ProductSetPurgeConfig;
+
+ /**
+ * Encodes the specified ProductSetPurgeConfig message. Does not implicitly {@link google.cloud.vision.v1.ProductSetPurgeConfig.verify|verify} messages.
+ * @param message ProductSetPurgeConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1.IProductSetPurgeConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ProductSetPurgeConfig message, length delimited. Does not implicitly {@link google.cloud.vision.v1.ProductSetPurgeConfig.verify|verify} messages.
+ * @param message ProductSetPurgeConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1.IProductSetPurgeConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ProductSetPurgeConfig message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ProductSetPurgeConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1.ProductSetPurgeConfig;
+
+ /**
+ * Decodes a ProductSetPurgeConfig message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ProductSetPurgeConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1.ProductSetPurgeConfig;
+
+ /**
+ * Verifies a ProductSetPurgeConfig message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ProductSetPurgeConfig message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ProductSetPurgeConfig
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1.ProductSetPurgeConfig;
+
+ /**
+ * Creates a plain object from a ProductSetPurgeConfig message. Also converts values to other types if specified.
+ * @param message ProductSetPurgeConfig
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1.ProductSetPurgeConfig, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ProductSetPurgeConfig to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ProductSetPurgeConfig
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a PurgeProductsRequest. */
+ interface IPurgeProductsRequest {
+
+ /** PurgeProductsRequest productSetPurgeConfig */
+ productSetPurgeConfig?: (google.cloud.vision.v1.IProductSetPurgeConfig|null);
+
+ /** PurgeProductsRequest deleteOrphanProducts */
+ deleteOrphanProducts?: (boolean|null);
+
+ /** PurgeProductsRequest parent */
+ parent?: (string|null);
+
+ /** PurgeProductsRequest force */
+ force?: (boolean|null);
+ }
+
+ /** Represents a PurgeProductsRequest. */
+ class PurgeProductsRequest implements IPurgeProductsRequest {
+
+ /**
+ * Constructs a new PurgeProductsRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1.IPurgeProductsRequest);
+
+ /** PurgeProductsRequest productSetPurgeConfig. */
+ public productSetPurgeConfig?: (google.cloud.vision.v1.IProductSetPurgeConfig|null);
+
+ /** PurgeProductsRequest deleteOrphanProducts. */
+ public deleteOrphanProducts?: (boolean|null);
+
+ /** PurgeProductsRequest parent. */
+ public parent: string;
+
+ /** PurgeProductsRequest force. */
+ public force: boolean;
+
+ /** PurgeProductsRequest target. */
+ public target?: ("productSetPurgeConfig"|"deleteOrphanProducts");
+
+ /**
+ * Creates a new PurgeProductsRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns PurgeProductsRequest instance
+ */
+ public static create(properties?: google.cloud.vision.v1.IPurgeProductsRequest): google.cloud.vision.v1.PurgeProductsRequest;
+
+ /**
+ * Encodes the specified PurgeProductsRequest message. Does not implicitly {@link google.cloud.vision.v1.PurgeProductsRequest.verify|verify} messages.
+ * @param message PurgeProductsRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1.IPurgeProductsRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified PurgeProductsRequest message, length delimited. Does not implicitly {@link google.cloud.vision.v1.PurgeProductsRequest.verify|verify} messages.
+ * @param message PurgeProductsRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1.IPurgeProductsRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a PurgeProductsRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns PurgeProductsRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1.PurgeProductsRequest;
+
+ /**
+ * Decodes a PurgeProductsRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns PurgeProductsRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1.PurgeProductsRequest;
+
+ /**
+ * Verifies a PurgeProductsRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a PurgeProductsRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns PurgeProductsRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1.PurgeProductsRequest;
+
+ /**
+ * Creates a plain object from a PurgeProductsRequest message. Also converts values to other types if specified.
+ * @param message PurgeProductsRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1.PurgeProductsRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this PurgeProductsRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for PurgeProductsRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a TextAnnotation. */
+ interface ITextAnnotation {
+
+ /** TextAnnotation pages */
+ pages?: (google.cloud.vision.v1.IPage[]|null);
+
+ /** TextAnnotation text */
+ text?: (string|null);
+ }
+
+ /** Represents a TextAnnotation. */
+ class TextAnnotation implements ITextAnnotation {
+
+ /**
+ * Constructs a new TextAnnotation.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1.ITextAnnotation);
+
+ /** TextAnnotation pages. */
+ public pages: google.cloud.vision.v1.IPage[];
+
+ /** TextAnnotation text. */
+ public text: string;
+
+ /**
+ * Creates a new TextAnnotation instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns TextAnnotation instance
+ */
+ public static create(properties?: google.cloud.vision.v1.ITextAnnotation): google.cloud.vision.v1.TextAnnotation;
+
+ /**
+ * Encodes the specified TextAnnotation message. Does not implicitly {@link google.cloud.vision.v1.TextAnnotation.verify|verify} messages.
+ * @param message TextAnnotation message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1.ITextAnnotation, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified TextAnnotation message, length delimited. Does not implicitly {@link google.cloud.vision.v1.TextAnnotation.verify|verify} messages.
+ * @param message TextAnnotation message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1.ITextAnnotation, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a TextAnnotation message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns TextAnnotation
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1.TextAnnotation;
+
+ /**
+ * Decodes a TextAnnotation message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns TextAnnotation
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1.TextAnnotation;
+
+ /**
+ * Verifies a TextAnnotation message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a TextAnnotation message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns TextAnnotation
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1.TextAnnotation;
+
+ /**
+ * Creates a plain object from a TextAnnotation message. Also converts values to other types if specified.
+ * @param message TextAnnotation
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1.TextAnnotation, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this TextAnnotation to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for TextAnnotation
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace TextAnnotation {
+
+ /** Properties of a DetectedLanguage. */
+ interface IDetectedLanguage {
+
+ /** DetectedLanguage languageCode */
+ languageCode?: (string|null);
+
+ /** DetectedLanguage confidence */
+ confidence?: (number|null);
+ }
+
+ /** Represents a DetectedLanguage. */
+ class DetectedLanguage implements IDetectedLanguage {
+
+ /**
+ * Constructs a new DetectedLanguage.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1.TextAnnotation.IDetectedLanguage);
+
+ /** DetectedLanguage languageCode. */
+ public languageCode: string;
+
+ /** DetectedLanguage confidence. */
+ public confidence: number;
+
+ /**
+ * Creates a new DetectedLanguage instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns DetectedLanguage instance
+ */
+ public static create(properties?: google.cloud.vision.v1.TextAnnotation.IDetectedLanguage): google.cloud.vision.v1.TextAnnotation.DetectedLanguage;
+
+ /**
+ * Encodes the specified DetectedLanguage message. Does not implicitly {@link google.cloud.vision.v1.TextAnnotation.DetectedLanguage.verify|verify} messages.
+ * @param message DetectedLanguage message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1.TextAnnotation.IDetectedLanguage, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified DetectedLanguage message, length delimited. Does not implicitly {@link google.cloud.vision.v1.TextAnnotation.DetectedLanguage.verify|verify} messages.
+ * @param message DetectedLanguage message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1.TextAnnotation.IDetectedLanguage, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a DetectedLanguage message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns DetectedLanguage
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1.TextAnnotation.DetectedLanguage;
+
+ /**
+ * Decodes a DetectedLanguage message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns DetectedLanguage
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1.TextAnnotation.DetectedLanguage;
+
+ /**
+ * Verifies a DetectedLanguage message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a DetectedLanguage message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns DetectedLanguage
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1.TextAnnotation.DetectedLanguage;
+
+ /**
+ * Creates a plain object from a DetectedLanguage message. Also converts values to other types if specified.
+ * @param message DetectedLanguage
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1.TextAnnotation.DetectedLanguage, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this DetectedLanguage to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for DetectedLanguage
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a DetectedBreak. */
+ interface IDetectedBreak {
+
+ /** DetectedBreak type */
+ type?: (google.cloud.vision.v1.TextAnnotation.DetectedBreak.BreakType|keyof typeof google.cloud.vision.v1.TextAnnotation.DetectedBreak.BreakType|null);
+
+ /** DetectedBreak isPrefix */
+ isPrefix?: (boolean|null);
+ }
+
+ /** Represents a DetectedBreak. */
+ class DetectedBreak implements IDetectedBreak {
+
+ /**
+ * Constructs a new DetectedBreak.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1.TextAnnotation.IDetectedBreak);
+
+ /** DetectedBreak type. */
+ public type: (google.cloud.vision.v1.TextAnnotation.DetectedBreak.BreakType|keyof typeof google.cloud.vision.v1.TextAnnotation.DetectedBreak.BreakType);
+
+ /** DetectedBreak isPrefix. */
+ public isPrefix: boolean;
+
+ /**
+ * Creates a new DetectedBreak instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns DetectedBreak instance
+ */
+ public static create(properties?: google.cloud.vision.v1.TextAnnotation.IDetectedBreak): google.cloud.vision.v1.TextAnnotation.DetectedBreak;
+
+ /**
+ * Encodes the specified DetectedBreak message. Does not implicitly {@link google.cloud.vision.v1.TextAnnotation.DetectedBreak.verify|verify} messages.
+ * @param message DetectedBreak message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1.TextAnnotation.IDetectedBreak, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified DetectedBreak message, length delimited. Does not implicitly {@link google.cloud.vision.v1.TextAnnotation.DetectedBreak.verify|verify} messages.
+ * @param message DetectedBreak message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1.TextAnnotation.IDetectedBreak, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a DetectedBreak message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns DetectedBreak
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1.TextAnnotation.DetectedBreak;
+
+ /**
+ * Decodes a DetectedBreak message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns DetectedBreak
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1.TextAnnotation.DetectedBreak;
+
+ /**
+ * Verifies a DetectedBreak message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a DetectedBreak message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns DetectedBreak
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1.TextAnnotation.DetectedBreak;
+
+ /**
+ * Creates a plain object from a DetectedBreak message. Also converts values to other types if specified.
+ * @param message DetectedBreak
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1.TextAnnotation.DetectedBreak, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this DetectedBreak to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for DetectedBreak
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace DetectedBreak {
+
+ /** BreakType enum. */
+ enum BreakType {
+ UNKNOWN = 0,
+ SPACE = 1,
+ SURE_SPACE = 2,
+ EOL_SURE_SPACE = 3,
+ HYPHEN = 4,
+ LINE_BREAK = 5
+ }
+ }
+
+ /** Properties of a TextProperty. */
+ interface ITextProperty {
+
+ /** TextProperty detectedLanguages */
+ detectedLanguages?: (google.cloud.vision.v1.TextAnnotation.IDetectedLanguage[]|null);
+
+ /** TextProperty detectedBreak */
+ detectedBreak?: (google.cloud.vision.v1.TextAnnotation.IDetectedBreak|null);
+ }
+
+ /** Represents a TextProperty. */
+ class TextProperty implements ITextProperty {
+
+ /**
+ * Constructs a new TextProperty.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1.TextAnnotation.ITextProperty);
+
+ /** TextProperty detectedLanguages. */
+ public detectedLanguages: google.cloud.vision.v1.TextAnnotation.IDetectedLanguage[];
+
+ /** TextProperty detectedBreak. */
+ public detectedBreak?: (google.cloud.vision.v1.TextAnnotation.IDetectedBreak|null);
+
+ /**
+ * Creates a new TextProperty instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns TextProperty instance
+ */
+ public static create(properties?: google.cloud.vision.v1.TextAnnotation.ITextProperty): google.cloud.vision.v1.TextAnnotation.TextProperty;
+
+ /**
+ * Encodes the specified TextProperty message. Does not implicitly {@link google.cloud.vision.v1.TextAnnotation.TextProperty.verify|verify} messages.
+ * @param message TextProperty message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1.TextAnnotation.ITextProperty, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified TextProperty message, length delimited. Does not implicitly {@link google.cloud.vision.v1.TextAnnotation.TextProperty.verify|verify} messages.
+ * @param message TextProperty message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1.TextAnnotation.ITextProperty, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a TextProperty message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns TextProperty
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1.TextAnnotation.TextProperty;
+
+ /**
+ * Decodes a TextProperty message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns TextProperty
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1.TextAnnotation.TextProperty;
+
+ /**
+ * Verifies a TextProperty message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a TextProperty message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns TextProperty
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1.TextAnnotation.TextProperty;
+
+ /**
+ * Creates a plain object from a TextProperty message. Also converts values to other types if specified.
+ * @param message TextProperty
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1.TextAnnotation.TextProperty, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this TextProperty to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for TextProperty
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+ }
+
+ /** Properties of a Page. */
+ interface IPage {
+
+ /** Page property */
+ property?: (google.cloud.vision.v1.TextAnnotation.ITextProperty|null);
+
+ /** Page width */
+ width?: (number|null);
+
+ /** Page height */
+ height?: (number|null);
+
+ /** Page blocks */
+ blocks?: (google.cloud.vision.v1.IBlock[]|null);
+
+ /** Page confidence */
+ confidence?: (number|null);
+ }
+
+ /** Represents a Page. */
+ class Page implements IPage {
+
+ /**
+ * Constructs a new Page.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1.IPage);
+
+ /** Page property. */
+ public property?: (google.cloud.vision.v1.TextAnnotation.ITextProperty|null);
+
+ /** Page width. */
+ public width: number;
+
+ /** Page height. */
+ public height: number;
+
+ /** Page blocks. */
+ public blocks: google.cloud.vision.v1.IBlock[];
+
+ /** Page confidence. */
+ public confidence: number;
+
+ /**
+ * Creates a new Page instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Page instance
+ */
+ public static create(properties?: google.cloud.vision.v1.IPage): google.cloud.vision.v1.Page;
+
+ /**
+ * Encodes the specified Page message. Does not implicitly {@link google.cloud.vision.v1.Page.verify|verify} messages.
+ * @param message Page message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1.IPage, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Page message, length delimited. Does not implicitly {@link google.cloud.vision.v1.Page.verify|verify} messages.
+ * @param message Page message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1.IPage, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Page message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Page
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1.Page;
+
+ /**
+ * Decodes a Page message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Page
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1.Page;
+
+ /**
+ * Verifies a Page message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a Page message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Page
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1.Page;
+
+ /**
+ * Creates a plain object from a Page message. Also converts values to other types if specified.
+ * @param message Page
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1.Page, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Page to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Page
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a Block. */
+ interface IBlock {
+
+ /** Block property */
+ property?: (google.cloud.vision.v1.TextAnnotation.ITextProperty|null);
+
+ /** Block boundingBox */
+ boundingBox?: (google.cloud.vision.v1.IBoundingPoly|null);
+
+ /** Block paragraphs */
+ paragraphs?: (google.cloud.vision.v1.IParagraph[]|null);
+
+ /** Block blockType */
+ blockType?: (google.cloud.vision.v1.Block.BlockType|keyof typeof google.cloud.vision.v1.Block.BlockType|null);
+
+ /** Block confidence */
+ confidence?: (number|null);
+ }
+
+ /** Represents a Block. */
+ class Block implements IBlock {
+
+ /**
+ * Constructs a new Block.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1.IBlock);
+
+ /** Block property. */
+ public property?: (google.cloud.vision.v1.TextAnnotation.ITextProperty|null);
+
+ /** Block boundingBox. */
+ public boundingBox?: (google.cloud.vision.v1.IBoundingPoly|null);
+
+ /** Block paragraphs. */
+ public paragraphs: google.cloud.vision.v1.IParagraph[];
+
+ /** Block blockType. */
+ public blockType: (google.cloud.vision.v1.Block.BlockType|keyof typeof google.cloud.vision.v1.Block.BlockType);
+
+ /** Block confidence. */
+ public confidence: number;
+
+ /**
+ * Creates a new Block instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Block instance
+ */
+ public static create(properties?: google.cloud.vision.v1.IBlock): google.cloud.vision.v1.Block;
+
+ /**
+ * Encodes the specified Block message. Does not implicitly {@link google.cloud.vision.v1.Block.verify|verify} messages.
+ * @param message Block message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1.IBlock, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Block message, length delimited. Does not implicitly {@link google.cloud.vision.v1.Block.verify|verify} messages.
+ * @param message Block message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1.IBlock, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Block message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Block
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1.Block;
+
+ /**
+ * Decodes a Block message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Block
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1.Block;
+
+ /**
+ * Verifies a Block message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a Block message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Block
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1.Block;
+
+ /**
+ * Creates a plain object from a Block message. Also converts values to other types if specified.
+ * @param message Block
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1.Block, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Block to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Block
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace Block {
+
+ /** BlockType enum. */
+ enum BlockType {
+ UNKNOWN = 0,
+ TEXT = 1,
+ TABLE = 2,
+ PICTURE = 3,
+ RULER = 4,
+ BARCODE = 5
+ }
+ }
+
+ /** Properties of a Paragraph. */
+ interface IParagraph {
+
+ /** Paragraph property */
+ property?: (google.cloud.vision.v1.TextAnnotation.ITextProperty|null);
+
+ /** Paragraph boundingBox */
+ boundingBox?: (google.cloud.vision.v1.IBoundingPoly|null);
+
+ /** Paragraph words */
+ words?: (google.cloud.vision.v1.IWord[]|null);
+
+ /** Paragraph confidence */
+ confidence?: (number|null);
+ }
+
+ /** Represents a Paragraph. */
+ class Paragraph implements IParagraph {
+
+ /**
+ * Constructs a new Paragraph.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1.IParagraph);
+
+ /** Paragraph property. */
+ public property?: (google.cloud.vision.v1.TextAnnotation.ITextProperty|null);
+
+ /** Paragraph boundingBox. */
+ public boundingBox?: (google.cloud.vision.v1.IBoundingPoly|null);
+
+ /** Paragraph words. */
+ public words: google.cloud.vision.v1.IWord[];
+
+ /** Paragraph confidence. */
+ public confidence: number;
+
+ /**
+ * Creates a new Paragraph instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Paragraph instance
+ */
+ public static create(properties?: google.cloud.vision.v1.IParagraph): google.cloud.vision.v1.Paragraph;
+
+ /**
+ * Encodes the specified Paragraph message. Does not implicitly {@link google.cloud.vision.v1.Paragraph.verify|verify} messages.
+ * @param message Paragraph message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1.IParagraph, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Paragraph message, length delimited. Does not implicitly {@link google.cloud.vision.v1.Paragraph.verify|verify} messages.
+ * @param message Paragraph message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1.IParagraph, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Paragraph message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Paragraph
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1.Paragraph;
+
+ /**
+ * Decodes a Paragraph message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Paragraph
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1.Paragraph;
+
+ /**
+ * Verifies a Paragraph message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a Paragraph message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Paragraph
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1.Paragraph;
+
+ /**
+ * Creates a plain object from a Paragraph message. Also converts values to other types if specified.
+ * @param message Paragraph
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1.Paragraph, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Paragraph to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Paragraph
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a Word. */
+ interface IWord {
+
+ /** Word property */
+ property?: (google.cloud.vision.v1.TextAnnotation.ITextProperty|null);
+
+ /** Word boundingBox */
+ boundingBox?: (google.cloud.vision.v1.IBoundingPoly|null);
+
+ /** Word symbols */
+ symbols?: (google.cloud.vision.v1.ISymbol[]|null);
+
+ /** Word confidence */
+ confidence?: (number|null);
+ }
+
+ /** Represents a Word. */
+ class Word implements IWord {
+
+ /**
+ * Constructs a new Word.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1.IWord);
+
+ /** Word property. */
+ public property?: (google.cloud.vision.v1.TextAnnotation.ITextProperty|null);
+
+ /** Word boundingBox. */
+ public boundingBox?: (google.cloud.vision.v1.IBoundingPoly|null);
+
+ /** Word symbols. */
+ public symbols: google.cloud.vision.v1.ISymbol[];
+
+ /** Word confidence. */
+ public confidence: number;
+
+ /**
+ * Creates a new Word instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Word instance
+ */
+ public static create(properties?: google.cloud.vision.v1.IWord): google.cloud.vision.v1.Word;
+
+ /**
+ * Encodes the specified Word message. Does not implicitly {@link google.cloud.vision.v1.Word.verify|verify} messages.
+ * @param message Word message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1.IWord, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Word message, length delimited. Does not implicitly {@link google.cloud.vision.v1.Word.verify|verify} messages.
+ * @param message Word message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1.IWord, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Word message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Word
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1.Word;
+
+ /**
+ * Decodes a Word message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Word
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1.Word;
+
+ /**
+ * Verifies a Word message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a Word message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Word
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1.Word;
+
+ /**
+ * Creates a plain object from a Word message. Also converts values to other types if specified.
+ * @param message Word
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1.Word, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Word to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Word
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a Symbol. */
+ interface ISymbol {
+
+ /** Symbol property */
+ property?: (google.cloud.vision.v1.TextAnnotation.ITextProperty|null);
+
+ /** Symbol boundingBox */
+ boundingBox?: (google.cloud.vision.v1.IBoundingPoly|null);
+
+ /** Symbol text */
+ text?: (string|null);
+
+ /** Symbol confidence */
+ confidence?: (number|null);
+ }
+
+ /** Represents a Symbol. */
+ class Symbol implements ISymbol {
+
+ /**
+ * Constructs a new Symbol.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1.ISymbol);
+
+ /** Symbol property. */
+ public property?: (google.cloud.vision.v1.TextAnnotation.ITextProperty|null);
+
+ /** Symbol boundingBox. */
+ public boundingBox?: (google.cloud.vision.v1.IBoundingPoly|null);
+
+ /** Symbol text. */
+ public text: string;
+
+ /** Symbol confidence. */
+ public confidence: number;
+
+ /**
+ * Creates a new Symbol instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Symbol instance
+ */
+ public static create(properties?: google.cloud.vision.v1.ISymbol): google.cloud.vision.v1.Symbol;
+
+ /**
+ * Encodes the specified Symbol message. Does not implicitly {@link google.cloud.vision.v1.Symbol.verify|verify} messages.
+ * @param message Symbol message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1.ISymbol, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Symbol message, length delimited. Does not implicitly {@link google.cloud.vision.v1.Symbol.verify|verify} messages.
+ * @param message Symbol message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1.ISymbol, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Symbol message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Symbol
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1.Symbol;
+
+ /**
+ * Decodes a Symbol message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Symbol
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1.Symbol;
+
+ /**
+ * Verifies a Symbol message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a Symbol message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Symbol
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1.Symbol;
+
+ /**
+ * Creates a plain object from a Symbol message. Also converts values to other types if specified.
+ * @param message Symbol
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1.Symbol, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Symbol to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Symbol
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a WebDetection. */
+ interface IWebDetection {
+
+ /** WebDetection webEntities */
+ webEntities?: (google.cloud.vision.v1.WebDetection.IWebEntity[]|null);
+
+ /** WebDetection fullMatchingImages */
+ fullMatchingImages?: (google.cloud.vision.v1.WebDetection.IWebImage[]|null);
+
+ /** WebDetection partialMatchingImages */
+ partialMatchingImages?: (google.cloud.vision.v1.WebDetection.IWebImage[]|null);
+
+ /** WebDetection pagesWithMatchingImages */
+ pagesWithMatchingImages?: (google.cloud.vision.v1.WebDetection.IWebPage[]|null);
+
+ /** WebDetection visuallySimilarImages */
+ visuallySimilarImages?: (google.cloud.vision.v1.WebDetection.IWebImage[]|null);
+
+ /** WebDetection bestGuessLabels */
+ bestGuessLabels?: (google.cloud.vision.v1.WebDetection.IWebLabel[]|null);
+ }
+
+ /** Represents a WebDetection. */
+ class WebDetection implements IWebDetection {
+
+ /**
+ * Constructs a new WebDetection.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1.IWebDetection);
+
+ /** WebDetection webEntities. */
+ public webEntities: google.cloud.vision.v1.WebDetection.IWebEntity[];
+
+ /** WebDetection fullMatchingImages. */
+ public fullMatchingImages: google.cloud.vision.v1.WebDetection.IWebImage[];
+
+ /** WebDetection partialMatchingImages. */
+ public partialMatchingImages: google.cloud.vision.v1.WebDetection.IWebImage[];
+
+ /** WebDetection pagesWithMatchingImages. */
+ public pagesWithMatchingImages: google.cloud.vision.v1.WebDetection.IWebPage[];
+
+ /** WebDetection visuallySimilarImages. */
+ public visuallySimilarImages: google.cloud.vision.v1.WebDetection.IWebImage[];
+
+ /** WebDetection bestGuessLabels. */
+ public bestGuessLabels: google.cloud.vision.v1.WebDetection.IWebLabel[];
+
+ /**
+ * Creates a new WebDetection instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns WebDetection instance
+ */
+ public static create(properties?: google.cloud.vision.v1.IWebDetection): google.cloud.vision.v1.WebDetection;
+
+ /**
+ * Encodes the specified WebDetection message. Does not implicitly {@link google.cloud.vision.v1.WebDetection.verify|verify} messages.
+ * @param message WebDetection message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1.IWebDetection, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified WebDetection message, length delimited. Does not implicitly {@link google.cloud.vision.v1.WebDetection.verify|verify} messages.
+ * @param message WebDetection message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1.IWebDetection, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a WebDetection message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns WebDetection
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1.WebDetection;
+
+ /**
+ * Decodes a WebDetection message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns WebDetection
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1.WebDetection;
+
+ /**
+ * Verifies a WebDetection message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a WebDetection message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns WebDetection
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1.WebDetection;
+
+ /**
+ * Creates a plain object from a WebDetection message. Also converts values to other types if specified.
+ * @param message WebDetection
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1.WebDetection, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this WebDetection to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for WebDetection
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace WebDetection {
+
+ /** Properties of a WebEntity. */
+ interface IWebEntity {
+
+ /** WebEntity entityId */
+ entityId?: (string|null);
+
+ /** WebEntity score */
+ score?: (number|null);
+
+ /** WebEntity description */
+ description?: (string|null);
+ }
+
+ /** Represents a WebEntity. */
+ class WebEntity implements IWebEntity {
+
+ /**
+ * Constructs a new WebEntity.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1.WebDetection.IWebEntity);
+
+ /** WebEntity entityId. */
+ public entityId: string;
+
+ /** WebEntity score. */
+ public score: number;
+
+ /** WebEntity description. */
+ public description: string;
+
+ /**
+ * Creates a new WebEntity instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns WebEntity instance
+ */
+ public static create(properties?: google.cloud.vision.v1.WebDetection.IWebEntity): google.cloud.vision.v1.WebDetection.WebEntity;
+
+ /**
+ * Encodes the specified WebEntity message. Does not implicitly {@link google.cloud.vision.v1.WebDetection.WebEntity.verify|verify} messages.
+ * @param message WebEntity message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1.WebDetection.IWebEntity, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified WebEntity message, length delimited. Does not implicitly {@link google.cloud.vision.v1.WebDetection.WebEntity.verify|verify} messages.
+ * @param message WebEntity message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1.WebDetection.IWebEntity, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a WebEntity message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns WebEntity
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1.WebDetection.WebEntity;
+
+ /**
+ * Decodes a WebEntity message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns WebEntity
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1.WebDetection.WebEntity;
+
+ /**
+ * Verifies a WebEntity message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a WebEntity message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns WebEntity
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1.WebDetection.WebEntity;
+
+ /**
+ * Creates a plain object from a WebEntity message. Also converts values to other types if specified.
+ * @param message WebEntity
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1.WebDetection.WebEntity, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this WebEntity to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for WebEntity
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a WebImage. */
+ interface IWebImage {
+
+ /** WebImage url */
+ url?: (string|null);
+
+ /** WebImage score */
+ score?: (number|null);
+ }
+
+ /** Represents a WebImage. */
+ class WebImage implements IWebImage {
+
+ /**
+ * Constructs a new WebImage.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1.WebDetection.IWebImage);
+
+ /** WebImage url. */
+ public url: string;
+
+ /** WebImage score. */
+ public score: number;
+
+ /**
+ * Creates a new WebImage instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns WebImage instance
+ */
+ public static create(properties?: google.cloud.vision.v1.WebDetection.IWebImage): google.cloud.vision.v1.WebDetection.WebImage;
+
+ /**
+ * Encodes the specified WebImage message. Does not implicitly {@link google.cloud.vision.v1.WebDetection.WebImage.verify|verify} messages.
+ * @param message WebImage message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1.WebDetection.IWebImage, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified WebImage message, length delimited. Does not implicitly {@link google.cloud.vision.v1.WebDetection.WebImage.verify|verify} messages.
+ * @param message WebImage message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1.WebDetection.IWebImage, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a WebImage message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns WebImage
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1.WebDetection.WebImage;
+
+ /**
+ * Decodes a WebImage message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns WebImage
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1.WebDetection.WebImage;
+
+ /**
+ * Verifies a WebImage message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a WebImage message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns WebImage
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1.WebDetection.WebImage;
+
+ /**
+ * Creates a plain object from a WebImage message. Also converts values to other types if specified.
+ * @param message WebImage
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1.WebDetection.WebImage, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this WebImage to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for WebImage
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a WebPage. */
+ interface IWebPage {
+
+ /** WebPage url */
+ url?: (string|null);
+
+ /** WebPage score */
+ score?: (number|null);
+
+ /** WebPage pageTitle */
+ pageTitle?: (string|null);
+
+ /** WebPage fullMatchingImages */
+ fullMatchingImages?: (google.cloud.vision.v1.WebDetection.IWebImage[]|null);
+
+ /** WebPage partialMatchingImages */
+ partialMatchingImages?: (google.cloud.vision.v1.WebDetection.IWebImage[]|null);
+ }
+
+ /** Represents a WebPage. */
+ class WebPage implements IWebPage {
+
+ /**
+ * Constructs a new WebPage.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1.WebDetection.IWebPage);
+
+ /** WebPage url. */
+ public url: string;
+
+ /** WebPage score. */
+ public score: number;
+
+ /** WebPage pageTitle. */
+ public pageTitle: string;
+
+ /** WebPage fullMatchingImages. */
+ public fullMatchingImages: google.cloud.vision.v1.WebDetection.IWebImage[];
+
+ /** WebPage partialMatchingImages. */
+ public partialMatchingImages: google.cloud.vision.v1.WebDetection.IWebImage[];
+
+ /**
+ * Creates a new WebPage instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns WebPage instance
+ */
+ public static create(properties?: google.cloud.vision.v1.WebDetection.IWebPage): google.cloud.vision.v1.WebDetection.WebPage;
+
+ /**
+ * Encodes the specified WebPage message. Does not implicitly {@link google.cloud.vision.v1.WebDetection.WebPage.verify|verify} messages.
+ * @param message WebPage message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1.WebDetection.IWebPage, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified WebPage message, length delimited. Does not implicitly {@link google.cloud.vision.v1.WebDetection.WebPage.verify|verify} messages.
+ * @param message WebPage message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1.WebDetection.IWebPage, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a WebPage message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns WebPage
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1.WebDetection.WebPage;
+
+ /**
+ * Decodes a WebPage message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns WebPage
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1.WebDetection.WebPage;
+
+ /**
+ * Verifies a WebPage message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a WebPage message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns WebPage
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1.WebDetection.WebPage;
+
+ /**
+ * Creates a plain object from a WebPage message. Also converts values to other types if specified.
+ * @param message WebPage
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1.WebDetection.WebPage, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this WebPage to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for WebPage
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a WebLabel. */
+ interface IWebLabel {
+
+ /** WebLabel label */
+ label?: (string|null);
+
+ /** WebLabel languageCode */
+ languageCode?: (string|null);
+ }
+
+ /** Represents a WebLabel. */
+ class WebLabel implements IWebLabel {
+
+ /**
+ * Constructs a new WebLabel.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1.WebDetection.IWebLabel);
+
+ /** WebLabel label. */
+ public label: string;
+
+ /** WebLabel languageCode. */
+ public languageCode: string;
+
+ /**
+ * Creates a new WebLabel instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns WebLabel instance
+ */
+ public static create(properties?: google.cloud.vision.v1.WebDetection.IWebLabel): google.cloud.vision.v1.WebDetection.WebLabel;
+
+ /**
+ * Encodes the specified WebLabel message. Does not implicitly {@link google.cloud.vision.v1.WebDetection.WebLabel.verify|verify} messages.
+ * @param message WebLabel message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1.WebDetection.IWebLabel, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified WebLabel message, length delimited. Does not implicitly {@link google.cloud.vision.v1.WebDetection.WebLabel.verify|verify} messages.
+ * @param message WebLabel message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1.WebDetection.IWebLabel, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a WebLabel message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns WebLabel
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1.WebDetection.WebLabel;
+
+ /**
+ * Decodes a WebLabel message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns WebLabel
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1.WebDetection.WebLabel;
+
+ /**
+ * Verifies a WebLabel message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a WebLabel message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns WebLabel
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1.WebDetection.WebLabel;
+
+ /**
+ * Creates a plain object from a WebLabel message. Also converts values to other types if specified.
+ * @param message WebLabel
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1.WebDetection.WebLabel, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this WebLabel to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for WebLabel
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+ }
+ }
+
+ /** Namespace v1p1beta1. */
+ namespace v1p1beta1 {
+
+ /** Properties of a Vertex. */
+ interface IVertex {
+
+ /** Vertex x */
+ x?: (number|null);
+
+ /** Vertex y */
+ y?: (number|null);
+ }
+
+ /** Represents a Vertex. */
+ class Vertex implements IVertex {
+
+ /**
+ * Constructs a new Vertex.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p1beta1.IVertex);
+
+ /** Vertex x. */
+ public x: number;
+
+ /** Vertex y. */
+ public y: number;
+
+ /**
+ * Creates a new Vertex instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Vertex instance
+ */
+ public static create(properties?: google.cloud.vision.v1p1beta1.IVertex): google.cloud.vision.v1p1beta1.Vertex;
+
+ /**
+ * Encodes the specified Vertex message. Does not implicitly {@link google.cloud.vision.v1p1beta1.Vertex.verify|verify} messages.
+ * @param message Vertex message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p1beta1.IVertex, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Vertex message, length delimited. Does not implicitly {@link google.cloud.vision.v1p1beta1.Vertex.verify|verify} messages.
+ * @param message Vertex message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p1beta1.IVertex, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Vertex message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Vertex
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p1beta1.Vertex;
+
+ /**
+ * Decodes a Vertex message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Vertex
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p1beta1.Vertex;
+
+ /**
+ * Verifies a Vertex message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a Vertex message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Vertex
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p1beta1.Vertex;
+
+ /**
+ * Creates a plain object from a Vertex message. Also converts values to other types if specified.
+ * @param message Vertex
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p1beta1.Vertex, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Vertex to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Vertex
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a BoundingPoly. */
+ interface IBoundingPoly {
+
+ /** BoundingPoly vertices */
+ vertices?: (google.cloud.vision.v1p1beta1.IVertex[]|null);
+ }
+
+ /** Represents a BoundingPoly. */
+ class BoundingPoly implements IBoundingPoly {
+
+ /**
+ * Constructs a new BoundingPoly.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p1beta1.IBoundingPoly);
+
+ /** BoundingPoly vertices. */
+ public vertices: google.cloud.vision.v1p1beta1.IVertex[];
+
+ /**
+ * Creates a new BoundingPoly instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns BoundingPoly instance
+ */
+ public static create(properties?: google.cloud.vision.v1p1beta1.IBoundingPoly): google.cloud.vision.v1p1beta1.BoundingPoly;
+
+ /**
+ * Encodes the specified BoundingPoly message. Does not implicitly {@link google.cloud.vision.v1p1beta1.BoundingPoly.verify|verify} messages.
+ * @param message BoundingPoly message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p1beta1.IBoundingPoly, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified BoundingPoly message, length delimited. Does not implicitly {@link google.cloud.vision.v1p1beta1.BoundingPoly.verify|verify} messages.
+ * @param message BoundingPoly message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p1beta1.IBoundingPoly, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a BoundingPoly message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns BoundingPoly
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p1beta1.BoundingPoly;
+
+ /**
+ * Decodes a BoundingPoly message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns BoundingPoly
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p1beta1.BoundingPoly;
+
+ /**
+ * Verifies a BoundingPoly message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a BoundingPoly message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns BoundingPoly
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p1beta1.BoundingPoly;
+
+ /**
+ * Creates a plain object from a BoundingPoly message. Also converts values to other types if specified.
+ * @param message BoundingPoly
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p1beta1.BoundingPoly, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this BoundingPoly to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for BoundingPoly
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a Position. */
+ interface IPosition {
+
+ /** Position x */
+ x?: (number|null);
+
+ /** Position y */
+ y?: (number|null);
+
+ /** Position z */
+ z?: (number|null);
+ }
+
+ /** Represents a Position. */
+ class Position implements IPosition {
+
+ /**
+ * Constructs a new Position.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p1beta1.IPosition);
+
+ /** Position x. */
+ public x: number;
+
+ /** Position y. */
+ public y: number;
+
+ /** Position z. */
+ public z: number;
+
+ /**
+ * Creates a new Position instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Position instance
+ */
+ public static create(properties?: google.cloud.vision.v1p1beta1.IPosition): google.cloud.vision.v1p1beta1.Position;
+
+ /**
+ * Encodes the specified Position message. Does not implicitly {@link google.cloud.vision.v1p1beta1.Position.verify|verify} messages.
+ * @param message Position message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p1beta1.IPosition, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Position message, length delimited. Does not implicitly {@link google.cloud.vision.v1p1beta1.Position.verify|verify} messages.
+ * @param message Position message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p1beta1.IPosition, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Position message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Position
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p1beta1.Position;
+
+ /**
+ * Decodes a Position message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Position
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p1beta1.Position;
+
+ /**
+ * Verifies a Position message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a Position message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Position
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p1beta1.Position;
+
+ /**
+ * Creates a plain object from a Position message. Also converts values to other types if specified.
+ * @param message Position
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p1beta1.Position, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Position to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Position
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Represents an ImageAnnotator */
+ class ImageAnnotator extends $protobuf.rpc.Service {
+
+ /**
+ * Constructs a new ImageAnnotator 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 ImageAnnotator 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): ImageAnnotator;
+
+ /**
+ * Calls BatchAnnotateImages.
+ * @param request BatchAnnotateImagesRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and BatchAnnotateImagesResponse
+ */
+ public batchAnnotateImages(request: google.cloud.vision.v1p1beta1.IBatchAnnotateImagesRequest, callback: google.cloud.vision.v1p1beta1.ImageAnnotator.BatchAnnotateImagesCallback): void;
+
+ /**
+ * Calls BatchAnnotateImages.
+ * @param request BatchAnnotateImagesRequest message or plain object
+ * @returns Promise
+ */
+ public batchAnnotateImages(request: google.cloud.vision.v1p1beta1.IBatchAnnotateImagesRequest): Promise;
+ }
+
+ namespace ImageAnnotator {
+
+ /**
+ * Callback as used by {@link google.cloud.vision.v1p1beta1.ImageAnnotator|batchAnnotateImages}.
+ * @param error Error, if any
+ * @param [response] BatchAnnotateImagesResponse
+ */
+ type BatchAnnotateImagesCallback = (error: (Error|null), response?: google.cloud.vision.v1p1beta1.BatchAnnotateImagesResponse) => void;
+ }
+
+ /** Properties of a Feature. */
+ interface IFeature {
+
+ /** Feature type */
+ type?: (google.cloud.vision.v1p1beta1.Feature.Type|keyof typeof google.cloud.vision.v1p1beta1.Feature.Type|null);
+
+ /** Feature maxResults */
+ maxResults?: (number|null);
+
+ /** Feature model */
+ model?: (string|null);
+ }
+
+ /** Represents a Feature. */
+ class Feature implements IFeature {
+
+ /**
+ * Constructs a new Feature.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p1beta1.IFeature);
+
+ /** Feature type. */
+ public type: (google.cloud.vision.v1p1beta1.Feature.Type|keyof typeof google.cloud.vision.v1p1beta1.Feature.Type);
+
+ /** Feature maxResults. */
+ public maxResults: number;
+
+ /** Feature model. */
+ public model: string;
+
+ /**
+ * Creates a new Feature instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Feature instance
+ */
+ public static create(properties?: google.cloud.vision.v1p1beta1.IFeature): google.cloud.vision.v1p1beta1.Feature;
+
+ /**
+ * Encodes the specified Feature message. Does not implicitly {@link google.cloud.vision.v1p1beta1.Feature.verify|verify} messages.
+ * @param message Feature message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p1beta1.IFeature, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Feature message, length delimited. Does not implicitly {@link google.cloud.vision.v1p1beta1.Feature.verify|verify} messages.
+ * @param message Feature message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p1beta1.IFeature, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Feature message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Feature
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p1beta1.Feature;
+
+ /**
+ * Decodes a Feature message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Feature
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p1beta1.Feature;
+
+ /**
+ * Verifies a Feature message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a Feature message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Feature
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p1beta1.Feature;
+
+ /**
+ * Creates a plain object from a Feature message. Also converts values to other types if specified.
+ * @param message Feature
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p1beta1.Feature, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Feature to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Feature
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace Feature {
+
+ /** Type enum. */
+ enum Type {
+ TYPE_UNSPECIFIED = 0,
+ FACE_DETECTION = 1,
+ LANDMARK_DETECTION = 2,
+ LOGO_DETECTION = 3,
+ LABEL_DETECTION = 4,
+ TEXT_DETECTION = 5,
+ DOCUMENT_TEXT_DETECTION = 11,
+ SAFE_SEARCH_DETECTION = 6,
+ IMAGE_PROPERTIES = 7,
+ CROP_HINTS = 9,
+ WEB_DETECTION = 10
+ }
+ }
+
+ /** Properties of an ImageSource. */
+ interface IImageSource {
+
+ /** ImageSource gcsImageUri */
+ gcsImageUri?: (string|null);
+
+ /** ImageSource imageUri */
+ imageUri?: (string|null);
+ }
+
+ /** Represents an ImageSource. */
+ class ImageSource implements IImageSource {
+
+ /**
+ * Constructs a new ImageSource.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p1beta1.IImageSource);
+
+ /** ImageSource gcsImageUri. */
+ public gcsImageUri: string;
+
+ /** ImageSource imageUri. */
+ public imageUri: string;
+
+ /**
+ * Creates a new ImageSource instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ImageSource instance
+ */
+ public static create(properties?: google.cloud.vision.v1p1beta1.IImageSource): google.cloud.vision.v1p1beta1.ImageSource;
+
+ /**
+ * Encodes the specified ImageSource message. Does not implicitly {@link google.cloud.vision.v1p1beta1.ImageSource.verify|verify} messages.
+ * @param message ImageSource message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p1beta1.IImageSource, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ImageSource message, length delimited. Does not implicitly {@link google.cloud.vision.v1p1beta1.ImageSource.verify|verify} messages.
+ * @param message ImageSource message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p1beta1.IImageSource, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an ImageSource message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ImageSource
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p1beta1.ImageSource;
+
+ /**
+ * Decodes an ImageSource message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ImageSource
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p1beta1.ImageSource;
+
+ /**
+ * Verifies an ImageSource message.
+ * @param message Plain 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 ImageSource message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ImageSource
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p1beta1.ImageSource;
+
+ /**
+ * Creates a plain object from an ImageSource message. Also converts values to other types if specified.
+ * @param message ImageSource
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p1beta1.ImageSource, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ImageSource to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ImageSource
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an Image. */
+ interface IImage {
+
+ /** Image content */
+ content?: (Uint8Array|string|null);
+
+ /** Image source */
+ source?: (google.cloud.vision.v1p1beta1.IImageSource|null);
+ }
+
+ /** Represents an Image. */
+ class Image implements IImage {
+
+ /**
+ * Constructs a new Image.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p1beta1.IImage);
+
+ /** Image content. */
+ public content: (Uint8Array|string);
+
+ /** Image source. */
+ public source?: (google.cloud.vision.v1p1beta1.IImageSource|null);
+
+ /**
+ * Creates a new Image instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Image instance
+ */
+ public static create(properties?: google.cloud.vision.v1p1beta1.IImage): google.cloud.vision.v1p1beta1.Image;
+
+ /**
+ * Encodes the specified Image message. Does not implicitly {@link google.cloud.vision.v1p1beta1.Image.verify|verify} messages.
+ * @param message Image message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p1beta1.IImage, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Image message, length delimited. Does not implicitly {@link google.cloud.vision.v1p1beta1.Image.verify|verify} messages.
+ * @param message Image message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p1beta1.IImage, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an Image message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Image
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p1beta1.Image;
+
+ /**
+ * Decodes an Image message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Image
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p1beta1.Image;
+
+ /**
+ * Verifies an Image message.
+ * @param message Plain 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 Image message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Image
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p1beta1.Image;
+
+ /**
+ * Creates a plain object from an Image message. Also converts values to other types if specified.
+ * @param message Image
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p1beta1.Image, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Image to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Image
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a FaceAnnotation. */
+ interface IFaceAnnotation {
+
+ /** FaceAnnotation boundingPoly */
+ boundingPoly?: (google.cloud.vision.v1p1beta1.IBoundingPoly|null);
+
+ /** FaceAnnotation fdBoundingPoly */
+ fdBoundingPoly?: (google.cloud.vision.v1p1beta1.IBoundingPoly|null);
+
+ /** FaceAnnotation landmarks */
+ landmarks?: (google.cloud.vision.v1p1beta1.FaceAnnotation.ILandmark[]|null);
+
+ /** FaceAnnotation rollAngle */
+ rollAngle?: (number|null);
+
+ /** FaceAnnotation panAngle */
+ panAngle?: (number|null);
+
+ /** FaceAnnotation tiltAngle */
+ tiltAngle?: (number|null);
+
+ /** FaceAnnotation detectionConfidence */
+ detectionConfidence?: (number|null);
+
+ /** FaceAnnotation landmarkingConfidence */
+ landmarkingConfidence?: (number|null);
+
+ /** FaceAnnotation joyLikelihood */
+ joyLikelihood?: (google.cloud.vision.v1p1beta1.Likelihood|keyof typeof google.cloud.vision.v1p1beta1.Likelihood|null);
+
+ /** FaceAnnotation sorrowLikelihood */
+ sorrowLikelihood?: (google.cloud.vision.v1p1beta1.Likelihood|keyof typeof google.cloud.vision.v1p1beta1.Likelihood|null);
+
+ /** FaceAnnotation angerLikelihood */
+ angerLikelihood?: (google.cloud.vision.v1p1beta1.Likelihood|keyof typeof google.cloud.vision.v1p1beta1.Likelihood|null);
+
+ /** FaceAnnotation surpriseLikelihood */
+ surpriseLikelihood?: (google.cloud.vision.v1p1beta1.Likelihood|keyof typeof google.cloud.vision.v1p1beta1.Likelihood|null);
+
+ /** FaceAnnotation underExposedLikelihood */
+ underExposedLikelihood?: (google.cloud.vision.v1p1beta1.Likelihood|keyof typeof google.cloud.vision.v1p1beta1.Likelihood|null);
+
+ /** FaceAnnotation blurredLikelihood */
+ blurredLikelihood?: (google.cloud.vision.v1p1beta1.Likelihood|keyof typeof google.cloud.vision.v1p1beta1.Likelihood|null);
+
+ /** FaceAnnotation headwearLikelihood */
+ headwearLikelihood?: (google.cloud.vision.v1p1beta1.Likelihood|keyof typeof google.cloud.vision.v1p1beta1.Likelihood|null);
+ }
+
+ /** Represents a FaceAnnotation. */
+ class FaceAnnotation implements IFaceAnnotation {
+
+ /**
+ * Constructs a new FaceAnnotation.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p1beta1.IFaceAnnotation);
+
+ /** FaceAnnotation boundingPoly. */
+ public boundingPoly?: (google.cloud.vision.v1p1beta1.IBoundingPoly|null);
+
+ /** FaceAnnotation fdBoundingPoly. */
+ public fdBoundingPoly?: (google.cloud.vision.v1p1beta1.IBoundingPoly|null);
+
+ /** FaceAnnotation landmarks. */
+ public landmarks: google.cloud.vision.v1p1beta1.FaceAnnotation.ILandmark[];
+
+ /** FaceAnnotation rollAngle. */
+ public rollAngle: number;
+
+ /** FaceAnnotation panAngle. */
+ public panAngle: number;
+
+ /** FaceAnnotation tiltAngle. */
+ public tiltAngle: number;
+
+ /** FaceAnnotation detectionConfidence. */
+ public detectionConfidence: number;
+
+ /** FaceAnnotation landmarkingConfidence. */
+ public landmarkingConfidence: number;
+
+ /** FaceAnnotation joyLikelihood. */
+ public joyLikelihood: (google.cloud.vision.v1p1beta1.Likelihood|keyof typeof google.cloud.vision.v1p1beta1.Likelihood);
+
+ /** FaceAnnotation sorrowLikelihood. */
+ public sorrowLikelihood: (google.cloud.vision.v1p1beta1.Likelihood|keyof typeof google.cloud.vision.v1p1beta1.Likelihood);
+
+ /** FaceAnnotation angerLikelihood. */
+ public angerLikelihood: (google.cloud.vision.v1p1beta1.Likelihood|keyof typeof google.cloud.vision.v1p1beta1.Likelihood);
+
+ /** FaceAnnotation surpriseLikelihood. */
+ public surpriseLikelihood: (google.cloud.vision.v1p1beta1.Likelihood|keyof typeof google.cloud.vision.v1p1beta1.Likelihood);
+
+ /** FaceAnnotation underExposedLikelihood. */
+ public underExposedLikelihood: (google.cloud.vision.v1p1beta1.Likelihood|keyof typeof google.cloud.vision.v1p1beta1.Likelihood);
+
+ /** FaceAnnotation blurredLikelihood. */
+ public blurredLikelihood: (google.cloud.vision.v1p1beta1.Likelihood|keyof typeof google.cloud.vision.v1p1beta1.Likelihood);
+
+ /** FaceAnnotation headwearLikelihood. */
+ public headwearLikelihood: (google.cloud.vision.v1p1beta1.Likelihood|keyof typeof google.cloud.vision.v1p1beta1.Likelihood);
+
+ /**
+ * Creates a new FaceAnnotation instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns FaceAnnotation instance
+ */
+ public static create(properties?: google.cloud.vision.v1p1beta1.IFaceAnnotation): google.cloud.vision.v1p1beta1.FaceAnnotation;
+
+ /**
+ * Encodes the specified FaceAnnotation message. Does not implicitly {@link google.cloud.vision.v1p1beta1.FaceAnnotation.verify|verify} messages.
+ * @param message FaceAnnotation message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p1beta1.IFaceAnnotation, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified FaceAnnotation message, length delimited. Does not implicitly {@link google.cloud.vision.v1p1beta1.FaceAnnotation.verify|verify} messages.
+ * @param message FaceAnnotation message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p1beta1.IFaceAnnotation, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a FaceAnnotation message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns FaceAnnotation
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p1beta1.FaceAnnotation;
+
+ /**
+ * Decodes a FaceAnnotation message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns FaceAnnotation
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p1beta1.FaceAnnotation;
+
+ /**
+ * Verifies a FaceAnnotation message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a FaceAnnotation message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns FaceAnnotation
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p1beta1.FaceAnnotation;
+
+ /**
+ * Creates a plain object from a FaceAnnotation message. Also converts values to other types if specified.
+ * @param message FaceAnnotation
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p1beta1.FaceAnnotation, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this FaceAnnotation to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for FaceAnnotation
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace FaceAnnotation {
+
+ /** Properties of a Landmark. */
+ interface ILandmark {
+
+ /** Landmark type */
+ type?: (google.cloud.vision.v1p1beta1.FaceAnnotation.Landmark.Type|keyof typeof google.cloud.vision.v1p1beta1.FaceAnnotation.Landmark.Type|null);
+
+ /** Landmark position */
+ position?: (google.cloud.vision.v1p1beta1.IPosition|null);
+ }
+
+ /** Represents a Landmark. */
+ class Landmark implements ILandmark {
+
+ /**
+ * Constructs a new Landmark.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p1beta1.FaceAnnotation.ILandmark);
+
+ /** Landmark type. */
+ public type: (google.cloud.vision.v1p1beta1.FaceAnnotation.Landmark.Type|keyof typeof google.cloud.vision.v1p1beta1.FaceAnnotation.Landmark.Type);
+
+ /** Landmark position. */
+ public position?: (google.cloud.vision.v1p1beta1.IPosition|null);
+
+ /**
+ * Creates a new Landmark instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Landmark instance
+ */
+ public static create(properties?: google.cloud.vision.v1p1beta1.FaceAnnotation.ILandmark): google.cloud.vision.v1p1beta1.FaceAnnotation.Landmark;
+
+ /**
+ * Encodes the specified Landmark message. Does not implicitly {@link google.cloud.vision.v1p1beta1.FaceAnnotation.Landmark.verify|verify} messages.
+ * @param message Landmark message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p1beta1.FaceAnnotation.ILandmark, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Landmark message, length delimited. Does not implicitly {@link google.cloud.vision.v1p1beta1.FaceAnnotation.Landmark.verify|verify} messages.
+ * @param message Landmark message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p1beta1.FaceAnnotation.ILandmark, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Landmark message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Landmark
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p1beta1.FaceAnnotation.Landmark;
+
+ /**
+ * Decodes a Landmark message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Landmark
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p1beta1.FaceAnnotation.Landmark;
+
+ /**
+ * Verifies a Landmark message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a Landmark message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Landmark
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p1beta1.FaceAnnotation.Landmark;
+
+ /**
+ * Creates a plain object from a Landmark message. Also converts values to other types if specified.
+ * @param message Landmark
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p1beta1.FaceAnnotation.Landmark, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Landmark to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Landmark
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace Landmark {
+
+ /** Type enum. */
+ enum Type {
+ UNKNOWN_LANDMARK = 0,
+ LEFT_EYE = 1,
+ RIGHT_EYE = 2,
+ LEFT_OF_LEFT_EYEBROW = 3,
+ RIGHT_OF_LEFT_EYEBROW = 4,
+ LEFT_OF_RIGHT_EYEBROW = 5,
+ RIGHT_OF_RIGHT_EYEBROW = 6,
+ MIDPOINT_BETWEEN_EYES = 7,
+ NOSE_TIP = 8,
+ UPPER_LIP = 9,
+ LOWER_LIP = 10,
+ MOUTH_LEFT = 11,
+ MOUTH_RIGHT = 12,
+ MOUTH_CENTER = 13,
+ NOSE_BOTTOM_RIGHT = 14,
+ NOSE_BOTTOM_LEFT = 15,
+ NOSE_BOTTOM_CENTER = 16,
+ LEFT_EYE_TOP_BOUNDARY = 17,
+ LEFT_EYE_RIGHT_CORNER = 18,
+ LEFT_EYE_BOTTOM_BOUNDARY = 19,
+ LEFT_EYE_LEFT_CORNER = 20,
+ RIGHT_EYE_TOP_BOUNDARY = 21,
+ RIGHT_EYE_RIGHT_CORNER = 22,
+ RIGHT_EYE_BOTTOM_BOUNDARY = 23,
+ RIGHT_EYE_LEFT_CORNER = 24,
+ LEFT_EYEBROW_UPPER_MIDPOINT = 25,
+ RIGHT_EYEBROW_UPPER_MIDPOINT = 26,
+ LEFT_EAR_TRAGION = 27,
+ RIGHT_EAR_TRAGION = 28,
+ LEFT_EYE_PUPIL = 29,
+ RIGHT_EYE_PUPIL = 30,
+ FOREHEAD_GLABELLA = 31,
+ CHIN_GNATHION = 32,
+ CHIN_LEFT_GONION = 33,
+ CHIN_RIGHT_GONION = 34
+ }
+ }
+ }
+
+ /** Properties of a LocationInfo. */
+ interface ILocationInfo {
+
+ /** LocationInfo latLng */
+ latLng?: (google.type.ILatLng|null);
+ }
+
+ /** Represents a LocationInfo. */
+ class LocationInfo implements ILocationInfo {
+
+ /**
+ * Constructs a new LocationInfo.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p1beta1.ILocationInfo);
+
+ /** LocationInfo latLng. */
+ public latLng?: (google.type.ILatLng|null);
+
+ /**
+ * Creates a new LocationInfo instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns LocationInfo instance
+ */
+ public static create(properties?: google.cloud.vision.v1p1beta1.ILocationInfo): google.cloud.vision.v1p1beta1.LocationInfo;
+
+ /**
+ * Encodes the specified LocationInfo message. Does not implicitly {@link google.cloud.vision.v1p1beta1.LocationInfo.verify|verify} messages.
+ * @param message LocationInfo message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p1beta1.ILocationInfo, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified LocationInfo message, length delimited. Does not implicitly {@link google.cloud.vision.v1p1beta1.LocationInfo.verify|verify} messages.
+ * @param message LocationInfo message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p1beta1.ILocationInfo, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a LocationInfo message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns LocationInfo
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p1beta1.LocationInfo;
+
+ /**
+ * Decodes a LocationInfo message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns LocationInfo
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p1beta1.LocationInfo;
+
+ /**
+ * Verifies a LocationInfo message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a LocationInfo message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns LocationInfo
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p1beta1.LocationInfo;
+
+ /**
+ * Creates a plain object from a LocationInfo message. Also converts values to other types if specified.
+ * @param message LocationInfo
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p1beta1.LocationInfo, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this LocationInfo to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for LocationInfo
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a Property. */
+ interface IProperty {
+
+ /** Property name */
+ name?: (string|null);
+
+ /** Property value */
+ value?: (string|null);
+
+ /** Property uint64Value */
+ uint64Value?: (number|Long|string|null);
+ }
+
+ /** Represents a Property. */
+ class Property implements IProperty {
+
+ /**
+ * Constructs a new Property.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p1beta1.IProperty);
+
+ /** Property name. */
+ public name: string;
+
+ /** Property value. */
+ public value: string;
+
+ /** Property uint64Value. */
+ public uint64Value: (number|Long|string);
+
+ /**
+ * Creates a new Property instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Property instance
+ */
+ public static create(properties?: google.cloud.vision.v1p1beta1.IProperty): google.cloud.vision.v1p1beta1.Property;
+
+ /**
+ * Encodes the specified Property message. Does not implicitly {@link google.cloud.vision.v1p1beta1.Property.verify|verify} messages.
+ * @param message Property message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p1beta1.IProperty, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Property message, length delimited. Does not implicitly {@link google.cloud.vision.v1p1beta1.Property.verify|verify} messages.
+ * @param message Property message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p1beta1.IProperty, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Property message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Property
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p1beta1.Property;
+
+ /**
+ * Decodes a Property message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Property
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p1beta1.Property;
+
+ /**
+ * Verifies a Property message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a Property message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Property
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p1beta1.Property;
+
+ /**
+ * Creates a plain object from a Property message. Also converts values to other types if specified.
+ * @param message Property
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p1beta1.Property, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Property to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Property
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an EntityAnnotation. */
+ interface IEntityAnnotation {
+
+ /** EntityAnnotation mid */
+ mid?: (string|null);
+
+ /** EntityAnnotation locale */
+ locale?: (string|null);
+
+ /** EntityAnnotation description */
+ description?: (string|null);
+
+ /** EntityAnnotation score */
+ score?: (number|null);
+
+ /** EntityAnnotation confidence */
+ confidence?: (number|null);
+
+ /** EntityAnnotation topicality */
+ topicality?: (number|null);
+
+ /** EntityAnnotation boundingPoly */
+ boundingPoly?: (google.cloud.vision.v1p1beta1.IBoundingPoly|null);
+
+ /** EntityAnnotation locations */
+ locations?: (google.cloud.vision.v1p1beta1.ILocationInfo[]|null);
+
+ /** EntityAnnotation properties */
+ properties?: (google.cloud.vision.v1p1beta1.IProperty[]|null);
+ }
+
+ /** Represents an EntityAnnotation. */
+ class EntityAnnotation implements IEntityAnnotation {
+
+ /**
+ * Constructs a new EntityAnnotation.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p1beta1.IEntityAnnotation);
+
+ /** EntityAnnotation mid. */
+ public mid: string;
+
+ /** EntityAnnotation locale. */
+ public locale: string;
+
+ /** EntityAnnotation description. */
+ public description: string;
+
+ /** EntityAnnotation score. */
+ public score: number;
+
+ /** EntityAnnotation confidence. */
+ public confidence: number;
+
+ /** EntityAnnotation topicality. */
+ public topicality: number;
+
+ /** EntityAnnotation boundingPoly. */
+ public boundingPoly?: (google.cloud.vision.v1p1beta1.IBoundingPoly|null);
+
+ /** EntityAnnotation locations. */
+ public locations: google.cloud.vision.v1p1beta1.ILocationInfo[];
+
+ /** EntityAnnotation properties. */
+ public properties: google.cloud.vision.v1p1beta1.IProperty[];
+
+ /**
+ * Creates a new EntityAnnotation instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns EntityAnnotation instance
+ */
+ public static create(properties?: google.cloud.vision.v1p1beta1.IEntityAnnotation): google.cloud.vision.v1p1beta1.EntityAnnotation;
+
+ /**
+ * Encodes the specified EntityAnnotation message. Does not implicitly {@link google.cloud.vision.v1p1beta1.EntityAnnotation.verify|verify} messages.
+ * @param message EntityAnnotation message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p1beta1.IEntityAnnotation, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified EntityAnnotation message, length delimited. Does not implicitly {@link google.cloud.vision.v1p1beta1.EntityAnnotation.verify|verify} messages.
+ * @param message EntityAnnotation message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p1beta1.IEntityAnnotation, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an EntityAnnotation message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns EntityAnnotation
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p1beta1.EntityAnnotation;
+
+ /**
+ * Decodes an EntityAnnotation message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns EntityAnnotation
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p1beta1.EntityAnnotation;
+
+ /**
+ * Verifies an EntityAnnotation message.
+ * @param message Plain 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 EntityAnnotation message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns EntityAnnotation
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p1beta1.EntityAnnotation;
+
+ /**
+ * Creates a plain object from an EntityAnnotation message. Also converts values to other types if specified.
+ * @param message EntityAnnotation
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p1beta1.EntityAnnotation, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this EntityAnnotation to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for EntityAnnotation
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a SafeSearchAnnotation. */
+ interface ISafeSearchAnnotation {
+
+ /** SafeSearchAnnotation adult */
+ adult?: (google.cloud.vision.v1p1beta1.Likelihood|keyof typeof google.cloud.vision.v1p1beta1.Likelihood|null);
+
+ /** SafeSearchAnnotation spoof */
+ spoof?: (google.cloud.vision.v1p1beta1.Likelihood|keyof typeof google.cloud.vision.v1p1beta1.Likelihood|null);
+
+ /** SafeSearchAnnotation medical */
+ medical?: (google.cloud.vision.v1p1beta1.Likelihood|keyof typeof google.cloud.vision.v1p1beta1.Likelihood|null);
+
+ /** SafeSearchAnnotation violence */
+ violence?: (google.cloud.vision.v1p1beta1.Likelihood|keyof typeof google.cloud.vision.v1p1beta1.Likelihood|null);
+
+ /** SafeSearchAnnotation racy */
+ racy?: (google.cloud.vision.v1p1beta1.Likelihood|keyof typeof google.cloud.vision.v1p1beta1.Likelihood|null);
+ }
+
+ /** Represents a SafeSearchAnnotation. */
+ class SafeSearchAnnotation implements ISafeSearchAnnotation {
+
+ /**
+ * Constructs a new SafeSearchAnnotation.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p1beta1.ISafeSearchAnnotation);
+
+ /** SafeSearchAnnotation adult. */
+ public adult: (google.cloud.vision.v1p1beta1.Likelihood|keyof typeof google.cloud.vision.v1p1beta1.Likelihood);
+
+ /** SafeSearchAnnotation spoof. */
+ public spoof: (google.cloud.vision.v1p1beta1.Likelihood|keyof typeof google.cloud.vision.v1p1beta1.Likelihood);
+
+ /** SafeSearchAnnotation medical. */
+ public medical: (google.cloud.vision.v1p1beta1.Likelihood|keyof typeof google.cloud.vision.v1p1beta1.Likelihood);
+
+ /** SafeSearchAnnotation violence. */
+ public violence: (google.cloud.vision.v1p1beta1.Likelihood|keyof typeof google.cloud.vision.v1p1beta1.Likelihood);
+
+ /** SafeSearchAnnotation racy. */
+ public racy: (google.cloud.vision.v1p1beta1.Likelihood|keyof typeof google.cloud.vision.v1p1beta1.Likelihood);
+
+ /**
+ * Creates a new SafeSearchAnnotation instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns SafeSearchAnnotation instance
+ */
+ public static create(properties?: google.cloud.vision.v1p1beta1.ISafeSearchAnnotation): google.cloud.vision.v1p1beta1.SafeSearchAnnotation;
+
+ /**
+ * Encodes the specified SafeSearchAnnotation message. Does not implicitly {@link google.cloud.vision.v1p1beta1.SafeSearchAnnotation.verify|verify} messages.
+ * @param message SafeSearchAnnotation message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p1beta1.ISafeSearchAnnotation, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified SafeSearchAnnotation message, length delimited. Does not implicitly {@link google.cloud.vision.v1p1beta1.SafeSearchAnnotation.verify|verify} messages.
+ * @param message SafeSearchAnnotation message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p1beta1.ISafeSearchAnnotation, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a SafeSearchAnnotation message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns SafeSearchAnnotation
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p1beta1.SafeSearchAnnotation;
+
+ /**
+ * Decodes a SafeSearchAnnotation message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns SafeSearchAnnotation
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p1beta1.SafeSearchAnnotation;
+
+ /**
+ * Verifies a SafeSearchAnnotation message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a SafeSearchAnnotation message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns SafeSearchAnnotation
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p1beta1.SafeSearchAnnotation;
+
+ /**
+ * Creates a plain object from a SafeSearchAnnotation message. Also converts values to other types if specified.
+ * @param message SafeSearchAnnotation
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p1beta1.SafeSearchAnnotation, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this SafeSearchAnnotation to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for SafeSearchAnnotation
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a LatLongRect. */
+ interface ILatLongRect {
+
+ /** LatLongRect minLatLng */
+ minLatLng?: (google.type.ILatLng|null);
+
+ /** LatLongRect maxLatLng */
+ maxLatLng?: (google.type.ILatLng|null);
+ }
+
+ /** Represents a LatLongRect. */
+ class LatLongRect implements ILatLongRect {
+
+ /**
+ * Constructs a new LatLongRect.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p1beta1.ILatLongRect);
+
+ /** LatLongRect minLatLng. */
+ public minLatLng?: (google.type.ILatLng|null);
+
+ /** LatLongRect maxLatLng. */
+ public maxLatLng?: (google.type.ILatLng|null);
+
+ /**
+ * Creates a new LatLongRect instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns LatLongRect instance
+ */
+ public static create(properties?: google.cloud.vision.v1p1beta1.ILatLongRect): google.cloud.vision.v1p1beta1.LatLongRect;
+
+ /**
+ * Encodes the specified LatLongRect message. Does not implicitly {@link google.cloud.vision.v1p1beta1.LatLongRect.verify|verify} messages.
+ * @param message LatLongRect message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p1beta1.ILatLongRect, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified LatLongRect message, length delimited. Does not implicitly {@link google.cloud.vision.v1p1beta1.LatLongRect.verify|verify} messages.
+ * @param message LatLongRect message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p1beta1.ILatLongRect, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a LatLongRect message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns LatLongRect
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p1beta1.LatLongRect;
+
+ /**
+ * Decodes a LatLongRect message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns LatLongRect
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p1beta1.LatLongRect;
+
+ /**
+ * Verifies a LatLongRect message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a LatLongRect message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns LatLongRect
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p1beta1.LatLongRect;
+
+ /**
+ * Creates a plain object from a LatLongRect message. Also converts values to other types if specified.
+ * @param message LatLongRect
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p1beta1.LatLongRect, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this LatLongRect to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for LatLongRect
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ColorInfo. */
+ interface IColorInfo {
+
+ /** ColorInfo color */
+ color?: (google.type.IColor|null);
+
+ /** ColorInfo score */
+ score?: (number|null);
+
+ /** ColorInfo pixelFraction */
+ pixelFraction?: (number|null);
+ }
+
+ /** Represents a ColorInfo. */
+ class ColorInfo implements IColorInfo {
+
+ /**
+ * Constructs a new ColorInfo.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p1beta1.IColorInfo);
+
+ /** ColorInfo color. */
+ public color?: (google.type.IColor|null);
+
+ /** ColorInfo score. */
+ public score: number;
+
+ /** ColorInfo pixelFraction. */
+ public pixelFraction: number;
+
+ /**
+ * Creates a new ColorInfo instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ColorInfo instance
+ */
+ public static create(properties?: google.cloud.vision.v1p1beta1.IColorInfo): google.cloud.vision.v1p1beta1.ColorInfo;
+
+ /**
+ * Encodes the specified ColorInfo message. Does not implicitly {@link google.cloud.vision.v1p1beta1.ColorInfo.verify|verify} messages.
+ * @param message ColorInfo message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p1beta1.IColorInfo, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ColorInfo message, length delimited. Does not implicitly {@link google.cloud.vision.v1p1beta1.ColorInfo.verify|verify} messages.
+ * @param message ColorInfo message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p1beta1.IColorInfo, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ColorInfo message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ColorInfo
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p1beta1.ColorInfo;
+
+ /**
+ * Decodes a ColorInfo message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ColorInfo
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p1beta1.ColorInfo;
+
+ /**
+ * Verifies a ColorInfo message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ColorInfo message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ColorInfo
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p1beta1.ColorInfo;
+
+ /**
+ * Creates a plain object from a ColorInfo message. Also converts values to other types if specified.
+ * @param message ColorInfo
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p1beta1.ColorInfo, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ColorInfo to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ColorInfo
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a DominantColorsAnnotation. */
+ interface IDominantColorsAnnotation {
+
+ /** DominantColorsAnnotation colors */
+ colors?: (google.cloud.vision.v1p1beta1.IColorInfo[]|null);
+ }
+
+ /** Represents a DominantColorsAnnotation. */
+ class DominantColorsAnnotation implements IDominantColorsAnnotation {
+
+ /**
+ * Constructs a new DominantColorsAnnotation.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p1beta1.IDominantColorsAnnotation);
+
+ /** DominantColorsAnnotation colors. */
+ public colors: google.cloud.vision.v1p1beta1.IColorInfo[];
+
+ /**
+ * Creates a new DominantColorsAnnotation instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns DominantColorsAnnotation instance
+ */
+ public static create(properties?: google.cloud.vision.v1p1beta1.IDominantColorsAnnotation): google.cloud.vision.v1p1beta1.DominantColorsAnnotation;
+
+ /**
+ * Encodes the specified DominantColorsAnnotation message. Does not implicitly {@link google.cloud.vision.v1p1beta1.DominantColorsAnnotation.verify|verify} messages.
+ * @param message DominantColorsAnnotation message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p1beta1.IDominantColorsAnnotation, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified DominantColorsAnnotation message, length delimited. Does not implicitly {@link google.cloud.vision.v1p1beta1.DominantColorsAnnotation.verify|verify} messages.
+ * @param message DominantColorsAnnotation message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p1beta1.IDominantColorsAnnotation, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a DominantColorsAnnotation message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns DominantColorsAnnotation
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p1beta1.DominantColorsAnnotation;
+
+ /**
+ * Decodes a DominantColorsAnnotation message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns DominantColorsAnnotation
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p1beta1.DominantColorsAnnotation;
+
+ /**
+ * Verifies a DominantColorsAnnotation message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a DominantColorsAnnotation message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns DominantColorsAnnotation
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p1beta1.DominantColorsAnnotation;
+
+ /**
+ * Creates a plain object from a DominantColorsAnnotation message. Also converts values to other types if specified.
+ * @param message DominantColorsAnnotation
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p1beta1.DominantColorsAnnotation, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this DominantColorsAnnotation to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for DominantColorsAnnotation
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an ImageProperties. */
+ interface IImageProperties {
+
+ /** ImageProperties dominantColors */
+ dominantColors?: (google.cloud.vision.v1p1beta1.IDominantColorsAnnotation|null);
+ }
+
+ /** Represents an ImageProperties. */
+ class ImageProperties implements IImageProperties {
+
+ /**
+ * Constructs a new ImageProperties.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p1beta1.IImageProperties);
+
+ /** ImageProperties dominantColors. */
+ public dominantColors?: (google.cloud.vision.v1p1beta1.IDominantColorsAnnotation|null);
+
+ /**
+ * Creates a new ImageProperties instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ImageProperties instance
+ */
+ public static create(properties?: google.cloud.vision.v1p1beta1.IImageProperties): google.cloud.vision.v1p1beta1.ImageProperties;
+
+ /**
+ * Encodes the specified ImageProperties message. Does not implicitly {@link google.cloud.vision.v1p1beta1.ImageProperties.verify|verify} messages.
+ * @param message ImageProperties message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p1beta1.IImageProperties, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ImageProperties message, length delimited. Does not implicitly {@link google.cloud.vision.v1p1beta1.ImageProperties.verify|verify} messages.
+ * @param message ImageProperties message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p1beta1.IImageProperties, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an ImageProperties message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ImageProperties
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p1beta1.ImageProperties;
+
+ /**
+ * Decodes an ImageProperties message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ImageProperties
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p1beta1.ImageProperties;
+
+ /**
+ * Verifies an ImageProperties message.
+ * @param message Plain 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 ImageProperties message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ImageProperties
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p1beta1.ImageProperties;
+
+ /**
+ * Creates a plain object from an ImageProperties message. Also converts values to other types if specified.
+ * @param message ImageProperties
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p1beta1.ImageProperties, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ImageProperties to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ImageProperties
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a CropHint. */
+ interface ICropHint {
+
+ /** CropHint boundingPoly */
+ boundingPoly?: (google.cloud.vision.v1p1beta1.IBoundingPoly|null);
+
+ /** CropHint confidence */
+ confidence?: (number|null);
+
+ /** CropHint importanceFraction */
+ importanceFraction?: (number|null);
+ }
+
+ /** Represents a CropHint. */
+ class CropHint implements ICropHint {
+
+ /**
+ * Constructs a new CropHint.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p1beta1.ICropHint);
+
+ /** CropHint boundingPoly. */
+ public boundingPoly?: (google.cloud.vision.v1p1beta1.IBoundingPoly|null);
+
+ /** CropHint confidence. */
+ public confidence: number;
+
+ /** CropHint importanceFraction. */
+ public importanceFraction: number;
+
+ /**
+ * Creates a new CropHint instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns CropHint instance
+ */
+ public static create(properties?: google.cloud.vision.v1p1beta1.ICropHint): google.cloud.vision.v1p1beta1.CropHint;
+
+ /**
+ * Encodes the specified CropHint message. Does not implicitly {@link google.cloud.vision.v1p1beta1.CropHint.verify|verify} messages.
+ * @param message CropHint message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p1beta1.ICropHint, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified CropHint message, length delimited. Does not implicitly {@link google.cloud.vision.v1p1beta1.CropHint.verify|verify} messages.
+ * @param message CropHint message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p1beta1.ICropHint, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a CropHint message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns CropHint
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p1beta1.CropHint;
+
+ /**
+ * Decodes a CropHint message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns CropHint
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p1beta1.CropHint;
+
+ /**
+ * Verifies a CropHint message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a CropHint message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns CropHint
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p1beta1.CropHint;
+
+ /**
+ * Creates a plain object from a CropHint message. Also converts values to other types if specified.
+ * @param message CropHint
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p1beta1.CropHint, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this CropHint to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for CropHint
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a CropHintsAnnotation. */
+ interface ICropHintsAnnotation {
+
+ /** CropHintsAnnotation cropHints */
+ cropHints?: (google.cloud.vision.v1p1beta1.ICropHint[]|null);
+ }
+
+ /** Represents a CropHintsAnnotation. */
+ class CropHintsAnnotation implements ICropHintsAnnotation {
+
+ /**
+ * Constructs a new CropHintsAnnotation.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p1beta1.ICropHintsAnnotation);
+
+ /** CropHintsAnnotation cropHints. */
+ public cropHints: google.cloud.vision.v1p1beta1.ICropHint[];
+
+ /**
+ * Creates a new CropHintsAnnotation instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns CropHintsAnnotation instance
+ */
+ public static create(properties?: google.cloud.vision.v1p1beta1.ICropHintsAnnotation): google.cloud.vision.v1p1beta1.CropHintsAnnotation;
+
+ /**
+ * Encodes the specified CropHintsAnnotation message. Does not implicitly {@link google.cloud.vision.v1p1beta1.CropHintsAnnotation.verify|verify} messages.
+ * @param message CropHintsAnnotation message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p1beta1.ICropHintsAnnotation, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified CropHintsAnnotation message, length delimited. Does not implicitly {@link google.cloud.vision.v1p1beta1.CropHintsAnnotation.verify|verify} messages.
+ * @param message CropHintsAnnotation message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p1beta1.ICropHintsAnnotation, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a CropHintsAnnotation message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns CropHintsAnnotation
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p1beta1.CropHintsAnnotation;
+
+ /**
+ * Decodes a CropHintsAnnotation message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns CropHintsAnnotation
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p1beta1.CropHintsAnnotation;
+
+ /**
+ * Verifies a CropHintsAnnotation message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a CropHintsAnnotation message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns CropHintsAnnotation
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p1beta1.CropHintsAnnotation;
+
+ /**
+ * Creates a plain object from a CropHintsAnnotation message. Also converts values to other types if specified.
+ * @param message CropHintsAnnotation
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p1beta1.CropHintsAnnotation, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this CropHintsAnnotation to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for CropHintsAnnotation
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a CropHintsParams. */
+ interface ICropHintsParams {
+
+ /** CropHintsParams aspectRatios */
+ aspectRatios?: (number[]|null);
+ }
+
+ /** Represents a CropHintsParams. */
+ class CropHintsParams implements ICropHintsParams {
+
+ /**
+ * Constructs a new CropHintsParams.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p1beta1.ICropHintsParams);
+
+ /** CropHintsParams aspectRatios. */
+ public aspectRatios: number[];
+
+ /**
+ * Creates a new CropHintsParams instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns CropHintsParams instance
+ */
+ public static create(properties?: google.cloud.vision.v1p1beta1.ICropHintsParams): google.cloud.vision.v1p1beta1.CropHintsParams;
+
+ /**
+ * Encodes the specified CropHintsParams message. Does not implicitly {@link google.cloud.vision.v1p1beta1.CropHintsParams.verify|verify} messages.
+ * @param message CropHintsParams message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p1beta1.ICropHintsParams, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified CropHintsParams message, length delimited. Does not implicitly {@link google.cloud.vision.v1p1beta1.CropHintsParams.verify|verify} messages.
+ * @param message CropHintsParams message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p1beta1.ICropHintsParams, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a CropHintsParams message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns CropHintsParams
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p1beta1.CropHintsParams;
+
+ /**
+ * Decodes a CropHintsParams message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns CropHintsParams
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p1beta1.CropHintsParams;
+
+ /**
+ * Verifies a CropHintsParams message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a CropHintsParams message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns CropHintsParams
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p1beta1.CropHintsParams;
+
+ /**
+ * Creates a plain object from a CropHintsParams message. Also converts values to other types if specified.
+ * @param message CropHintsParams
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p1beta1.CropHintsParams, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this CropHintsParams to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for CropHintsParams
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a WebDetectionParams. */
+ interface IWebDetectionParams {
+
+ /** WebDetectionParams includeGeoResults */
+ includeGeoResults?: (boolean|null);
+ }
+
+ /** Represents a WebDetectionParams. */
+ class WebDetectionParams implements IWebDetectionParams {
+
+ /**
+ * Constructs a new WebDetectionParams.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p1beta1.IWebDetectionParams);
+
+ /** WebDetectionParams includeGeoResults. */
+ public includeGeoResults: boolean;
+
+ /**
+ * Creates a new WebDetectionParams instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns WebDetectionParams instance
+ */
+ public static create(properties?: google.cloud.vision.v1p1beta1.IWebDetectionParams): google.cloud.vision.v1p1beta1.WebDetectionParams;
+
+ /**
+ * Encodes the specified WebDetectionParams message. Does not implicitly {@link google.cloud.vision.v1p1beta1.WebDetectionParams.verify|verify} messages.
+ * @param message WebDetectionParams message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p1beta1.IWebDetectionParams, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified WebDetectionParams message, length delimited. Does not implicitly {@link google.cloud.vision.v1p1beta1.WebDetectionParams.verify|verify} messages.
+ * @param message WebDetectionParams message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p1beta1.IWebDetectionParams, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a WebDetectionParams message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns WebDetectionParams
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p1beta1.WebDetectionParams;
+
+ /**
+ * Decodes a WebDetectionParams message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns WebDetectionParams
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p1beta1.WebDetectionParams;
+
+ /**
+ * Verifies a WebDetectionParams message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a WebDetectionParams message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns WebDetectionParams
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p1beta1.WebDetectionParams;
+
+ /**
+ * Creates a plain object from a WebDetectionParams message. Also converts values to other types if specified.
+ * @param message WebDetectionParams
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p1beta1.WebDetectionParams, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this WebDetectionParams to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for WebDetectionParams
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a TextDetectionParams. */
+ interface ITextDetectionParams {
+
+ /** TextDetectionParams enableTextDetectionConfidenceScore */
+ enableTextDetectionConfidenceScore?: (boolean|null);
+
+ /** TextDetectionParams advancedOcrOptions */
+ advancedOcrOptions?: (string[]|null);
+ }
+
+ /** Represents a TextDetectionParams. */
+ class TextDetectionParams implements ITextDetectionParams {
+
+ /**
+ * Constructs a new TextDetectionParams.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p1beta1.ITextDetectionParams);
+
+ /** TextDetectionParams enableTextDetectionConfidenceScore. */
+ public enableTextDetectionConfidenceScore: boolean;
+
+ /** TextDetectionParams advancedOcrOptions. */
+ public advancedOcrOptions: string[];
+
+ /**
+ * Creates a new TextDetectionParams instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns TextDetectionParams instance
+ */
+ public static create(properties?: google.cloud.vision.v1p1beta1.ITextDetectionParams): google.cloud.vision.v1p1beta1.TextDetectionParams;
+
+ /**
+ * Encodes the specified TextDetectionParams message. Does not implicitly {@link google.cloud.vision.v1p1beta1.TextDetectionParams.verify|verify} messages.
+ * @param message TextDetectionParams message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p1beta1.ITextDetectionParams, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified TextDetectionParams message, length delimited. Does not implicitly {@link google.cloud.vision.v1p1beta1.TextDetectionParams.verify|verify} messages.
+ * @param message TextDetectionParams message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p1beta1.ITextDetectionParams, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a TextDetectionParams message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns TextDetectionParams
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p1beta1.TextDetectionParams;
+
+ /**
+ * Decodes a TextDetectionParams message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns TextDetectionParams
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p1beta1.TextDetectionParams;
+
+ /**
+ * Verifies a TextDetectionParams message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a TextDetectionParams message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns TextDetectionParams
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p1beta1.TextDetectionParams;
+
+ /**
+ * Creates a plain object from a TextDetectionParams message. Also converts values to other types if specified.
+ * @param message TextDetectionParams
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p1beta1.TextDetectionParams, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this TextDetectionParams to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for TextDetectionParams
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an ImageContext. */
+ interface IImageContext {
+
+ /** ImageContext latLongRect */
+ latLongRect?: (google.cloud.vision.v1p1beta1.ILatLongRect|null);
+
+ /** ImageContext languageHints */
+ languageHints?: (string[]|null);
+
+ /** ImageContext cropHintsParams */
+ cropHintsParams?: (google.cloud.vision.v1p1beta1.ICropHintsParams|null);
+
+ /** ImageContext webDetectionParams */
+ webDetectionParams?: (google.cloud.vision.v1p1beta1.IWebDetectionParams|null);
+
+ /** ImageContext textDetectionParams */
+ textDetectionParams?: (google.cloud.vision.v1p1beta1.ITextDetectionParams|null);
+ }
+
+ /** Represents an ImageContext. */
+ class ImageContext implements IImageContext {
+
+ /**
+ * Constructs a new ImageContext.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p1beta1.IImageContext);
+
+ /** ImageContext latLongRect. */
+ public latLongRect?: (google.cloud.vision.v1p1beta1.ILatLongRect|null);
+
+ /** ImageContext languageHints. */
+ public languageHints: string[];
+
+ /** ImageContext cropHintsParams. */
+ public cropHintsParams?: (google.cloud.vision.v1p1beta1.ICropHintsParams|null);
+
+ /** ImageContext webDetectionParams. */
+ public webDetectionParams?: (google.cloud.vision.v1p1beta1.IWebDetectionParams|null);
+
+ /** ImageContext textDetectionParams. */
+ public textDetectionParams?: (google.cloud.vision.v1p1beta1.ITextDetectionParams|null);
+
+ /**
+ * Creates a new ImageContext instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ImageContext instance
+ */
+ public static create(properties?: google.cloud.vision.v1p1beta1.IImageContext): google.cloud.vision.v1p1beta1.ImageContext;
+
+ /**
+ * Encodes the specified ImageContext message. Does not implicitly {@link google.cloud.vision.v1p1beta1.ImageContext.verify|verify} messages.
+ * @param message ImageContext message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p1beta1.IImageContext, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ImageContext message, length delimited. Does not implicitly {@link google.cloud.vision.v1p1beta1.ImageContext.verify|verify} messages.
+ * @param message ImageContext message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p1beta1.IImageContext, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an ImageContext message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ImageContext
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p1beta1.ImageContext;
+
+ /**
+ * Decodes an ImageContext message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ImageContext
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p1beta1.ImageContext;
+
+ /**
+ * Verifies an ImageContext message.
+ * @param message Plain 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 ImageContext message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ImageContext
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p1beta1.ImageContext;
+
+ /**
+ * Creates a plain object from an ImageContext message. Also converts values to other types if specified.
+ * @param message ImageContext
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p1beta1.ImageContext, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ImageContext to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ImageContext
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an AnnotateImageRequest. */
+ interface IAnnotateImageRequest {
+
+ /** AnnotateImageRequest image */
+ image?: (google.cloud.vision.v1p1beta1.IImage|null);
+
+ /** AnnotateImageRequest features */
+ features?: (google.cloud.vision.v1p1beta1.IFeature[]|null);
+
+ /** AnnotateImageRequest imageContext */
+ imageContext?: (google.cloud.vision.v1p1beta1.IImageContext|null);
+ }
+
+ /** Represents an AnnotateImageRequest. */
+ class AnnotateImageRequest implements IAnnotateImageRequest {
+
+ /**
+ * Constructs a new AnnotateImageRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p1beta1.IAnnotateImageRequest);
+
+ /** AnnotateImageRequest image. */
+ public image?: (google.cloud.vision.v1p1beta1.IImage|null);
+
+ /** AnnotateImageRequest features. */
+ public features: google.cloud.vision.v1p1beta1.IFeature[];
+
+ /** AnnotateImageRequest imageContext. */
+ public imageContext?: (google.cloud.vision.v1p1beta1.IImageContext|null);
+
+ /**
+ * Creates a new AnnotateImageRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns AnnotateImageRequest instance
+ */
+ public static create(properties?: google.cloud.vision.v1p1beta1.IAnnotateImageRequest): google.cloud.vision.v1p1beta1.AnnotateImageRequest;
+
+ /**
+ * Encodes the specified AnnotateImageRequest message. Does not implicitly {@link google.cloud.vision.v1p1beta1.AnnotateImageRequest.verify|verify} messages.
+ * @param message AnnotateImageRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p1beta1.IAnnotateImageRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified AnnotateImageRequest message, length delimited. Does not implicitly {@link google.cloud.vision.v1p1beta1.AnnotateImageRequest.verify|verify} messages.
+ * @param message AnnotateImageRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p1beta1.IAnnotateImageRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an AnnotateImageRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns AnnotateImageRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p1beta1.AnnotateImageRequest;
+
+ /**
+ * Decodes an AnnotateImageRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns AnnotateImageRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p1beta1.AnnotateImageRequest;
+
+ /**
+ * Verifies an AnnotateImageRequest message.
+ * @param message Plain 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 AnnotateImageRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns AnnotateImageRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p1beta1.AnnotateImageRequest;
+
+ /**
+ * Creates a plain object from an AnnotateImageRequest message. Also converts values to other types if specified.
+ * @param message AnnotateImageRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p1beta1.AnnotateImageRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this AnnotateImageRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for AnnotateImageRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an AnnotateImageResponse. */
+ interface IAnnotateImageResponse {
+
+ /** AnnotateImageResponse faceAnnotations */
+ faceAnnotations?: (google.cloud.vision.v1p1beta1.IFaceAnnotation[]|null);
+
+ /** AnnotateImageResponse landmarkAnnotations */
+ landmarkAnnotations?: (google.cloud.vision.v1p1beta1.IEntityAnnotation[]|null);
+
+ /** AnnotateImageResponse logoAnnotations */
+ logoAnnotations?: (google.cloud.vision.v1p1beta1.IEntityAnnotation[]|null);
+
+ /** AnnotateImageResponse labelAnnotations */
+ labelAnnotations?: (google.cloud.vision.v1p1beta1.IEntityAnnotation[]|null);
+
+ /** AnnotateImageResponse textAnnotations */
+ textAnnotations?: (google.cloud.vision.v1p1beta1.IEntityAnnotation[]|null);
+
+ /** AnnotateImageResponse fullTextAnnotation */
+ fullTextAnnotation?: (google.cloud.vision.v1p1beta1.ITextAnnotation|null);
+
+ /** AnnotateImageResponse safeSearchAnnotation */
+ safeSearchAnnotation?: (google.cloud.vision.v1p1beta1.ISafeSearchAnnotation|null);
+
+ /** AnnotateImageResponse imagePropertiesAnnotation */
+ imagePropertiesAnnotation?: (google.cloud.vision.v1p1beta1.IImageProperties|null);
+
+ /** AnnotateImageResponse cropHintsAnnotation */
+ cropHintsAnnotation?: (google.cloud.vision.v1p1beta1.ICropHintsAnnotation|null);
+
+ /** AnnotateImageResponse webDetection */
+ webDetection?: (google.cloud.vision.v1p1beta1.IWebDetection|null);
+
+ /** AnnotateImageResponse error */
+ error?: (google.rpc.IStatus|null);
+ }
+
+ /** Represents an AnnotateImageResponse. */
+ class AnnotateImageResponse implements IAnnotateImageResponse {
+
+ /**
+ * Constructs a new AnnotateImageResponse.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p1beta1.IAnnotateImageResponse);
+
+ /** AnnotateImageResponse faceAnnotations. */
+ public faceAnnotations: google.cloud.vision.v1p1beta1.IFaceAnnotation[];
+
+ /** AnnotateImageResponse landmarkAnnotations. */
+ public landmarkAnnotations: google.cloud.vision.v1p1beta1.IEntityAnnotation[];
+
+ /** AnnotateImageResponse logoAnnotations. */
+ public logoAnnotations: google.cloud.vision.v1p1beta1.IEntityAnnotation[];
+
+ /** AnnotateImageResponse labelAnnotations. */
+ public labelAnnotations: google.cloud.vision.v1p1beta1.IEntityAnnotation[];
+
+ /** AnnotateImageResponse textAnnotations. */
+ public textAnnotations: google.cloud.vision.v1p1beta1.IEntityAnnotation[];
+
+ /** AnnotateImageResponse fullTextAnnotation. */
+ public fullTextAnnotation?: (google.cloud.vision.v1p1beta1.ITextAnnotation|null);
+
+ /** AnnotateImageResponse safeSearchAnnotation. */
+ public safeSearchAnnotation?: (google.cloud.vision.v1p1beta1.ISafeSearchAnnotation|null);
+
+ /** AnnotateImageResponse imagePropertiesAnnotation. */
+ public imagePropertiesAnnotation?: (google.cloud.vision.v1p1beta1.IImageProperties|null);
+
+ /** AnnotateImageResponse cropHintsAnnotation. */
+ public cropHintsAnnotation?: (google.cloud.vision.v1p1beta1.ICropHintsAnnotation|null);
+
+ /** AnnotateImageResponse webDetection. */
+ public webDetection?: (google.cloud.vision.v1p1beta1.IWebDetection|null);
+
+ /** AnnotateImageResponse error. */
+ public error?: (google.rpc.IStatus|null);
+
+ /**
+ * Creates a new AnnotateImageResponse instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns AnnotateImageResponse instance
+ */
+ public static create(properties?: google.cloud.vision.v1p1beta1.IAnnotateImageResponse): google.cloud.vision.v1p1beta1.AnnotateImageResponse;
+
+ /**
+ * Encodes the specified AnnotateImageResponse message. Does not implicitly {@link google.cloud.vision.v1p1beta1.AnnotateImageResponse.verify|verify} messages.
+ * @param message AnnotateImageResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p1beta1.IAnnotateImageResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified AnnotateImageResponse message, length delimited. Does not implicitly {@link google.cloud.vision.v1p1beta1.AnnotateImageResponse.verify|verify} messages.
+ * @param message AnnotateImageResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p1beta1.IAnnotateImageResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an AnnotateImageResponse message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns AnnotateImageResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p1beta1.AnnotateImageResponse;
+
+ /**
+ * Decodes an AnnotateImageResponse message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns AnnotateImageResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p1beta1.AnnotateImageResponse;
+
+ /**
+ * Verifies an AnnotateImageResponse message.
+ * @param message Plain 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 AnnotateImageResponse message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns AnnotateImageResponse
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p1beta1.AnnotateImageResponse;
+
+ /**
+ * Creates a plain object from an AnnotateImageResponse message. Also converts values to other types if specified.
+ * @param message AnnotateImageResponse
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p1beta1.AnnotateImageResponse, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this AnnotateImageResponse to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for AnnotateImageResponse
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a BatchAnnotateImagesRequest. */
+ interface IBatchAnnotateImagesRequest {
+
+ /** BatchAnnotateImagesRequest requests */
+ requests?: (google.cloud.vision.v1p1beta1.IAnnotateImageRequest[]|null);
+ }
+
+ /** Represents a BatchAnnotateImagesRequest. */
+ class BatchAnnotateImagesRequest implements IBatchAnnotateImagesRequest {
+
+ /**
+ * Constructs a new BatchAnnotateImagesRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p1beta1.IBatchAnnotateImagesRequest);
+
+ /** BatchAnnotateImagesRequest requests. */
+ public requests: google.cloud.vision.v1p1beta1.IAnnotateImageRequest[];
+
+ /**
+ * Creates a new BatchAnnotateImagesRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns BatchAnnotateImagesRequest instance
+ */
+ public static create(properties?: google.cloud.vision.v1p1beta1.IBatchAnnotateImagesRequest): google.cloud.vision.v1p1beta1.BatchAnnotateImagesRequest;
+
+ /**
+ * Encodes the specified BatchAnnotateImagesRequest message. Does not implicitly {@link google.cloud.vision.v1p1beta1.BatchAnnotateImagesRequest.verify|verify} messages.
+ * @param message BatchAnnotateImagesRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p1beta1.IBatchAnnotateImagesRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified BatchAnnotateImagesRequest message, length delimited. Does not implicitly {@link google.cloud.vision.v1p1beta1.BatchAnnotateImagesRequest.verify|verify} messages.
+ * @param message BatchAnnotateImagesRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p1beta1.IBatchAnnotateImagesRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a BatchAnnotateImagesRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns BatchAnnotateImagesRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p1beta1.BatchAnnotateImagesRequest;
+
+ /**
+ * Decodes a BatchAnnotateImagesRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns BatchAnnotateImagesRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p1beta1.BatchAnnotateImagesRequest;
+
+ /**
+ * Verifies a BatchAnnotateImagesRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a BatchAnnotateImagesRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns BatchAnnotateImagesRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p1beta1.BatchAnnotateImagesRequest;
+
+ /**
+ * Creates a plain object from a BatchAnnotateImagesRequest message. Also converts values to other types if specified.
+ * @param message BatchAnnotateImagesRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p1beta1.BatchAnnotateImagesRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this BatchAnnotateImagesRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for BatchAnnotateImagesRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a BatchAnnotateImagesResponse. */
+ interface IBatchAnnotateImagesResponse {
+
+ /** BatchAnnotateImagesResponse responses */
+ responses?: (google.cloud.vision.v1p1beta1.IAnnotateImageResponse[]|null);
+ }
+
+ /** Represents a BatchAnnotateImagesResponse. */
+ class BatchAnnotateImagesResponse implements IBatchAnnotateImagesResponse {
+
+ /**
+ * Constructs a new BatchAnnotateImagesResponse.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p1beta1.IBatchAnnotateImagesResponse);
+
+ /** BatchAnnotateImagesResponse responses. */
+ public responses: google.cloud.vision.v1p1beta1.IAnnotateImageResponse[];
+
+ /**
+ * Creates a new BatchAnnotateImagesResponse instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns BatchAnnotateImagesResponse instance
+ */
+ public static create(properties?: google.cloud.vision.v1p1beta1.IBatchAnnotateImagesResponse): google.cloud.vision.v1p1beta1.BatchAnnotateImagesResponse;
+
+ /**
+ * Encodes the specified BatchAnnotateImagesResponse message. Does not implicitly {@link google.cloud.vision.v1p1beta1.BatchAnnotateImagesResponse.verify|verify} messages.
+ * @param message BatchAnnotateImagesResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p1beta1.IBatchAnnotateImagesResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified BatchAnnotateImagesResponse message, length delimited. Does not implicitly {@link google.cloud.vision.v1p1beta1.BatchAnnotateImagesResponse.verify|verify} messages.
+ * @param message BatchAnnotateImagesResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p1beta1.IBatchAnnotateImagesResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a BatchAnnotateImagesResponse message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns BatchAnnotateImagesResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p1beta1.BatchAnnotateImagesResponse;
+
+ /**
+ * Decodes a BatchAnnotateImagesResponse message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns BatchAnnotateImagesResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p1beta1.BatchAnnotateImagesResponse;
+
+ /**
+ * Verifies a BatchAnnotateImagesResponse message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a BatchAnnotateImagesResponse message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns BatchAnnotateImagesResponse
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p1beta1.BatchAnnotateImagesResponse;
+
+ /**
+ * Creates a plain object from a BatchAnnotateImagesResponse message. Also converts values to other types if specified.
+ * @param message BatchAnnotateImagesResponse
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p1beta1.BatchAnnotateImagesResponse, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this BatchAnnotateImagesResponse to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for BatchAnnotateImagesResponse
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Likelihood enum. */
+ enum Likelihood {
+ UNKNOWN = 0,
+ VERY_UNLIKELY = 1,
+ UNLIKELY = 2,
+ POSSIBLE = 3,
+ LIKELY = 4,
+ VERY_LIKELY = 5
+ }
+
+ /** Properties of a TextAnnotation. */
+ interface ITextAnnotation {
+
+ /** TextAnnotation pages */
+ pages?: (google.cloud.vision.v1p1beta1.IPage[]|null);
+
+ /** TextAnnotation text */
+ text?: (string|null);
+ }
+
+ /** Represents a TextAnnotation. */
+ class TextAnnotation implements ITextAnnotation {
+
+ /**
+ * Constructs a new TextAnnotation.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p1beta1.ITextAnnotation);
+
+ /** TextAnnotation pages. */
+ public pages: google.cloud.vision.v1p1beta1.IPage[];
+
+ /** TextAnnotation text. */
+ public text: string;
+
+ /**
+ * Creates a new TextAnnotation instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns TextAnnotation instance
+ */
+ public static create(properties?: google.cloud.vision.v1p1beta1.ITextAnnotation): google.cloud.vision.v1p1beta1.TextAnnotation;
+
+ /**
+ * Encodes the specified TextAnnotation message. Does not implicitly {@link google.cloud.vision.v1p1beta1.TextAnnotation.verify|verify} messages.
+ * @param message TextAnnotation message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p1beta1.ITextAnnotation, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified TextAnnotation message, length delimited. Does not implicitly {@link google.cloud.vision.v1p1beta1.TextAnnotation.verify|verify} messages.
+ * @param message TextAnnotation message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p1beta1.ITextAnnotation, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a TextAnnotation message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns TextAnnotation
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p1beta1.TextAnnotation;
+
+ /**
+ * Decodes a TextAnnotation message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns TextAnnotation
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p1beta1.TextAnnotation;
+
+ /**
+ * Verifies a TextAnnotation message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a TextAnnotation message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns TextAnnotation
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p1beta1.TextAnnotation;
+
+ /**
+ * Creates a plain object from a TextAnnotation message. Also converts values to other types if specified.
+ * @param message TextAnnotation
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p1beta1.TextAnnotation, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this TextAnnotation to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for TextAnnotation
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace TextAnnotation {
+
+ /** Properties of a DetectedLanguage. */
+ interface IDetectedLanguage {
+
+ /** DetectedLanguage languageCode */
+ languageCode?: (string|null);
+
+ /** DetectedLanguage confidence */
+ confidence?: (number|null);
+ }
+
+ /** Represents a DetectedLanguage. */
+ class DetectedLanguage implements IDetectedLanguage {
+
+ /**
+ * Constructs a new DetectedLanguage.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p1beta1.TextAnnotation.IDetectedLanguage);
+
+ /** DetectedLanguage languageCode. */
+ public languageCode: string;
+
+ /** DetectedLanguage confidence. */
+ public confidence: number;
+
+ /**
+ * Creates a new DetectedLanguage instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns DetectedLanguage instance
+ */
+ public static create(properties?: google.cloud.vision.v1p1beta1.TextAnnotation.IDetectedLanguage): google.cloud.vision.v1p1beta1.TextAnnotation.DetectedLanguage;
+
+ /**
+ * Encodes the specified DetectedLanguage message. Does not implicitly {@link google.cloud.vision.v1p1beta1.TextAnnotation.DetectedLanguage.verify|verify} messages.
+ * @param message DetectedLanguage message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p1beta1.TextAnnotation.IDetectedLanguage, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified DetectedLanguage message, length delimited. Does not implicitly {@link google.cloud.vision.v1p1beta1.TextAnnotation.DetectedLanguage.verify|verify} messages.
+ * @param message DetectedLanguage message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p1beta1.TextAnnotation.IDetectedLanguage, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a DetectedLanguage message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns DetectedLanguage
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p1beta1.TextAnnotation.DetectedLanguage;
+
+ /**
+ * Decodes a DetectedLanguage message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns DetectedLanguage
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p1beta1.TextAnnotation.DetectedLanguage;
+
+ /**
+ * Verifies a DetectedLanguage message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a DetectedLanguage message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns DetectedLanguage
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p1beta1.TextAnnotation.DetectedLanguage;
+
+ /**
+ * Creates a plain object from a DetectedLanguage message. Also converts values to other types if specified.
+ * @param message DetectedLanguage
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p1beta1.TextAnnotation.DetectedLanguage, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this DetectedLanguage to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for DetectedLanguage
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a DetectedBreak. */
+ interface IDetectedBreak {
+
+ /** DetectedBreak type */
+ type?: (google.cloud.vision.v1p1beta1.TextAnnotation.DetectedBreak.BreakType|keyof typeof google.cloud.vision.v1p1beta1.TextAnnotation.DetectedBreak.BreakType|null);
+
+ /** DetectedBreak isPrefix */
+ isPrefix?: (boolean|null);
+ }
+
+ /** Represents a DetectedBreak. */
+ class DetectedBreak implements IDetectedBreak {
+
+ /**
+ * Constructs a new DetectedBreak.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p1beta1.TextAnnotation.IDetectedBreak);
+
+ /** DetectedBreak type. */
+ public type: (google.cloud.vision.v1p1beta1.TextAnnotation.DetectedBreak.BreakType|keyof typeof google.cloud.vision.v1p1beta1.TextAnnotation.DetectedBreak.BreakType);
+
+ /** DetectedBreak isPrefix. */
+ public isPrefix: boolean;
+
+ /**
+ * Creates a new DetectedBreak instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns DetectedBreak instance
+ */
+ public static create(properties?: google.cloud.vision.v1p1beta1.TextAnnotation.IDetectedBreak): google.cloud.vision.v1p1beta1.TextAnnotation.DetectedBreak;
+
+ /**
+ * Encodes the specified DetectedBreak message. Does not implicitly {@link google.cloud.vision.v1p1beta1.TextAnnotation.DetectedBreak.verify|verify} messages.
+ * @param message DetectedBreak message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p1beta1.TextAnnotation.IDetectedBreak, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified DetectedBreak message, length delimited. Does not implicitly {@link google.cloud.vision.v1p1beta1.TextAnnotation.DetectedBreak.verify|verify} messages.
+ * @param message DetectedBreak message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p1beta1.TextAnnotation.IDetectedBreak, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a DetectedBreak message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns DetectedBreak
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p1beta1.TextAnnotation.DetectedBreak;
+
+ /**
+ * Decodes a DetectedBreak message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns DetectedBreak
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p1beta1.TextAnnotation.DetectedBreak;
+
+ /**
+ * Verifies a DetectedBreak message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a DetectedBreak message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns DetectedBreak
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p1beta1.TextAnnotation.DetectedBreak;
+
+ /**
+ * Creates a plain object from a DetectedBreak message. Also converts values to other types if specified.
+ * @param message DetectedBreak
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p1beta1.TextAnnotation.DetectedBreak, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this DetectedBreak to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for DetectedBreak
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace DetectedBreak {
+
+ /** BreakType enum. */
+ enum BreakType {
+ UNKNOWN = 0,
+ SPACE = 1,
+ SURE_SPACE = 2,
+ EOL_SURE_SPACE = 3,
+ HYPHEN = 4,
+ LINE_BREAK = 5
+ }
+ }
+
+ /** Properties of a TextProperty. */
+ interface ITextProperty {
+
+ /** TextProperty detectedLanguages */
+ detectedLanguages?: (google.cloud.vision.v1p1beta1.TextAnnotation.IDetectedLanguage[]|null);
+
+ /** TextProperty detectedBreak */
+ detectedBreak?: (google.cloud.vision.v1p1beta1.TextAnnotation.IDetectedBreak|null);
+ }
+
+ /** Represents a TextProperty. */
+ class TextProperty implements ITextProperty {
+
+ /**
+ * Constructs a new TextProperty.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p1beta1.TextAnnotation.ITextProperty);
+
+ /** TextProperty detectedLanguages. */
+ public detectedLanguages: google.cloud.vision.v1p1beta1.TextAnnotation.IDetectedLanguage[];
+
+ /** TextProperty detectedBreak. */
+ public detectedBreak?: (google.cloud.vision.v1p1beta1.TextAnnotation.IDetectedBreak|null);
+
+ /**
+ * Creates a new TextProperty instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns TextProperty instance
+ */
+ public static create(properties?: google.cloud.vision.v1p1beta1.TextAnnotation.ITextProperty): google.cloud.vision.v1p1beta1.TextAnnotation.TextProperty;
+
+ /**
+ * Encodes the specified TextProperty message. Does not implicitly {@link google.cloud.vision.v1p1beta1.TextAnnotation.TextProperty.verify|verify} messages.
+ * @param message TextProperty message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p1beta1.TextAnnotation.ITextProperty, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified TextProperty message, length delimited. Does not implicitly {@link google.cloud.vision.v1p1beta1.TextAnnotation.TextProperty.verify|verify} messages.
+ * @param message TextProperty message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p1beta1.TextAnnotation.ITextProperty, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a TextProperty message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns TextProperty
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p1beta1.TextAnnotation.TextProperty;
+
+ /**
+ * Decodes a TextProperty message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns TextProperty
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p1beta1.TextAnnotation.TextProperty;
+
+ /**
+ * Verifies a TextProperty message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a TextProperty message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns TextProperty
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p1beta1.TextAnnotation.TextProperty;
+
+ /**
+ * Creates a plain object from a TextProperty message. Also converts values to other types if specified.
+ * @param message TextProperty
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p1beta1.TextAnnotation.TextProperty, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this TextProperty to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for TextProperty
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+ }
+
+ /** Properties of a Page. */
+ interface IPage {
+
+ /** Page property */
+ property?: (google.cloud.vision.v1p1beta1.TextAnnotation.ITextProperty|null);
+
+ /** Page width */
+ width?: (number|null);
+
+ /** Page height */
+ height?: (number|null);
+
+ /** Page blocks */
+ blocks?: (google.cloud.vision.v1p1beta1.IBlock[]|null);
+
+ /** Page confidence */
+ confidence?: (number|null);
+ }
+
+ /** Represents a Page. */
+ class Page implements IPage {
+
+ /**
+ * Constructs a new Page.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p1beta1.IPage);
+
+ /** Page property. */
+ public property?: (google.cloud.vision.v1p1beta1.TextAnnotation.ITextProperty|null);
+
+ /** Page width. */
+ public width: number;
+
+ /** Page height. */
+ public height: number;
+
+ /** Page blocks. */
+ public blocks: google.cloud.vision.v1p1beta1.IBlock[];
+
+ /** Page confidence. */
+ public confidence: number;
+
+ /**
+ * Creates a new Page instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Page instance
+ */
+ public static create(properties?: google.cloud.vision.v1p1beta1.IPage): google.cloud.vision.v1p1beta1.Page;
+
+ /**
+ * Encodes the specified Page message. Does not implicitly {@link google.cloud.vision.v1p1beta1.Page.verify|verify} messages.
+ * @param message Page message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p1beta1.IPage, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Page message, length delimited. Does not implicitly {@link google.cloud.vision.v1p1beta1.Page.verify|verify} messages.
+ * @param message Page message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p1beta1.IPage, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Page message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Page
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p1beta1.Page;
+
+ /**
+ * Decodes a Page message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Page
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p1beta1.Page;
+
+ /**
+ * Verifies a Page message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a Page message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Page
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p1beta1.Page;
+
+ /**
+ * Creates a plain object from a Page message. Also converts values to other types if specified.
+ * @param message Page
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p1beta1.Page, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Page to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Page
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a Block. */
+ interface IBlock {
+
+ /** Block property */
+ property?: (google.cloud.vision.v1p1beta1.TextAnnotation.ITextProperty|null);
+
+ /** Block boundingBox */
+ boundingBox?: (google.cloud.vision.v1p1beta1.IBoundingPoly|null);
+
+ /** Block paragraphs */
+ paragraphs?: (google.cloud.vision.v1p1beta1.IParagraph[]|null);
+
+ /** Block blockType */
+ blockType?: (google.cloud.vision.v1p1beta1.Block.BlockType|keyof typeof google.cloud.vision.v1p1beta1.Block.BlockType|null);
+
+ /** Block confidence */
+ confidence?: (number|null);
+ }
+
+ /** Represents a Block. */
+ class Block implements IBlock {
+
+ /**
+ * Constructs a new Block.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p1beta1.IBlock);
+
+ /** Block property. */
+ public property?: (google.cloud.vision.v1p1beta1.TextAnnotation.ITextProperty|null);
+
+ /** Block boundingBox. */
+ public boundingBox?: (google.cloud.vision.v1p1beta1.IBoundingPoly|null);
+
+ /** Block paragraphs. */
+ public paragraphs: google.cloud.vision.v1p1beta1.IParagraph[];
+
+ /** Block blockType. */
+ public blockType: (google.cloud.vision.v1p1beta1.Block.BlockType|keyof typeof google.cloud.vision.v1p1beta1.Block.BlockType);
+
+ /** Block confidence. */
+ public confidence: number;
+
+ /**
+ * Creates a new Block instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Block instance
+ */
+ public static create(properties?: google.cloud.vision.v1p1beta1.IBlock): google.cloud.vision.v1p1beta1.Block;
+
+ /**
+ * Encodes the specified Block message. Does not implicitly {@link google.cloud.vision.v1p1beta1.Block.verify|verify} messages.
+ * @param message Block message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p1beta1.IBlock, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Block message, length delimited. Does not implicitly {@link google.cloud.vision.v1p1beta1.Block.verify|verify} messages.
+ * @param message Block message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p1beta1.IBlock, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Block message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Block
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p1beta1.Block;
+
+ /**
+ * Decodes a Block message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Block
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p1beta1.Block;
+
+ /**
+ * Verifies a Block message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a Block message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Block
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p1beta1.Block;
+
+ /**
+ * Creates a plain object from a Block message. Also converts values to other types if specified.
+ * @param message Block
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p1beta1.Block, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Block to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Block
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace Block {
+
+ /** BlockType enum. */
+ enum BlockType {
+ UNKNOWN = 0,
+ TEXT = 1,
+ TABLE = 2,
+ PICTURE = 3,
+ RULER = 4,
+ BARCODE = 5
+ }
+ }
+
+ /** Properties of a Paragraph. */
+ interface IParagraph {
+
+ /** Paragraph property */
+ property?: (google.cloud.vision.v1p1beta1.TextAnnotation.ITextProperty|null);
+
+ /** Paragraph boundingBox */
+ boundingBox?: (google.cloud.vision.v1p1beta1.IBoundingPoly|null);
+
+ /** Paragraph words */
+ words?: (google.cloud.vision.v1p1beta1.IWord[]|null);
+
+ /** Paragraph confidence */
+ confidence?: (number|null);
+ }
+
+ /** Represents a Paragraph. */
+ class Paragraph implements IParagraph {
+
+ /**
+ * Constructs a new Paragraph.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p1beta1.IParagraph);
+
+ /** Paragraph property. */
+ public property?: (google.cloud.vision.v1p1beta1.TextAnnotation.ITextProperty|null);
+
+ /** Paragraph boundingBox. */
+ public boundingBox?: (google.cloud.vision.v1p1beta1.IBoundingPoly|null);
+
+ /** Paragraph words. */
+ public words: google.cloud.vision.v1p1beta1.IWord[];
+
+ /** Paragraph confidence. */
+ public confidence: number;
+
+ /**
+ * Creates a new Paragraph instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Paragraph instance
+ */
+ public static create(properties?: google.cloud.vision.v1p1beta1.IParagraph): google.cloud.vision.v1p1beta1.Paragraph;
+
+ /**
+ * Encodes the specified Paragraph message. Does not implicitly {@link google.cloud.vision.v1p1beta1.Paragraph.verify|verify} messages.
+ * @param message Paragraph message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p1beta1.IParagraph, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Paragraph message, length delimited. Does not implicitly {@link google.cloud.vision.v1p1beta1.Paragraph.verify|verify} messages.
+ * @param message Paragraph message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p1beta1.IParagraph, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Paragraph message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Paragraph
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p1beta1.Paragraph;
+
+ /**
+ * Decodes a Paragraph message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Paragraph
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p1beta1.Paragraph;
+
+ /**
+ * Verifies a Paragraph message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a Paragraph message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Paragraph
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p1beta1.Paragraph;
+
+ /**
+ * Creates a plain object from a Paragraph message. Also converts values to other types if specified.
+ * @param message Paragraph
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p1beta1.Paragraph, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Paragraph to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Paragraph
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a Word. */
+ interface IWord {
+
+ /** Word property */
+ property?: (google.cloud.vision.v1p1beta1.TextAnnotation.ITextProperty|null);
+
+ /** Word boundingBox */
+ boundingBox?: (google.cloud.vision.v1p1beta1.IBoundingPoly|null);
+
+ /** Word symbols */
+ symbols?: (google.cloud.vision.v1p1beta1.ISymbol[]|null);
+
+ /** Word confidence */
+ confidence?: (number|null);
+ }
+
+ /** Represents a Word. */
+ class Word implements IWord {
+
+ /**
+ * Constructs a new Word.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p1beta1.IWord);
+
+ /** Word property. */
+ public property?: (google.cloud.vision.v1p1beta1.TextAnnotation.ITextProperty|null);
+
+ /** Word boundingBox. */
+ public boundingBox?: (google.cloud.vision.v1p1beta1.IBoundingPoly|null);
+
+ /** Word symbols. */
+ public symbols: google.cloud.vision.v1p1beta1.ISymbol[];
+
+ /** Word confidence. */
+ public confidence: number;
+
+ /**
+ * Creates a new Word instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Word instance
+ */
+ public static create(properties?: google.cloud.vision.v1p1beta1.IWord): google.cloud.vision.v1p1beta1.Word;
+
+ /**
+ * Encodes the specified Word message. Does not implicitly {@link google.cloud.vision.v1p1beta1.Word.verify|verify} messages.
+ * @param message Word message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p1beta1.IWord, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Word message, length delimited. Does not implicitly {@link google.cloud.vision.v1p1beta1.Word.verify|verify} messages.
+ * @param message Word message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p1beta1.IWord, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Word message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Word
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p1beta1.Word;
+
+ /**
+ * Decodes a Word message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Word
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p1beta1.Word;
+
+ /**
+ * Verifies a Word message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a Word message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Word
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p1beta1.Word;
+
+ /**
+ * Creates a plain object from a Word message. Also converts values to other types if specified.
+ * @param message Word
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p1beta1.Word, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Word to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Word
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a Symbol. */
+ interface ISymbol {
+
+ /** Symbol property */
+ property?: (google.cloud.vision.v1p1beta1.TextAnnotation.ITextProperty|null);
+
+ /** Symbol boundingBox */
+ boundingBox?: (google.cloud.vision.v1p1beta1.IBoundingPoly|null);
+
+ /** Symbol text */
+ text?: (string|null);
+
+ /** Symbol confidence */
+ confidence?: (number|null);
+ }
+
+ /** Represents a Symbol. */
+ class Symbol implements ISymbol {
+
+ /**
+ * Constructs a new Symbol.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p1beta1.ISymbol);
+
+ /** Symbol property. */
+ public property?: (google.cloud.vision.v1p1beta1.TextAnnotation.ITextProperty|null);
+
+ /** Symbol boundingBox. */
+ public boundingBox?: (google.cloud.vision.v1p1beta1.IBoundingPoly|null);
+
+ /** Symbol text. */
+ public text: string;
+
+ /** Symbol confidence. */
+ public confidence: number;
+
+ /**
+ * Creates a new Symbol instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Symbol instance
+ */
+ public static create(properties?: google.cloud.vision.v1p1beta1.ISymbol): google.cloud.vision.v1p1beta1.Symbol;
+
+ /**
+ * Encodes the specified Symbol message. Does not implicitly {@link google.cloud.vision.v1p1beta1.Symbol.verify|verify} messages.
+ * @param message Symbol message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p1beta1.ISymbol, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Symbol message, length delimited. Does not implicitly {@link google.cloud.vision.v1p1beta1.Symbol.verify|verify} messages.
+ * @param message Symbol message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p1beta1.ISymbol, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Symbol message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Symbol
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p1beta1.Symbol;
+
+ /**
+ * Decodes a Symbol message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Symbol
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p1beta1.Symbol;
+
+ /**
+ * Verifies a Symbol message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a Symbol message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Symbol
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p1beta1.Symbol;
+
+ /**
+ * Creates a plain object from a Symbol message. Also converts values to other types if specified.
+ * @param message Symbol
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p1beta1.Symbol, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Symbol to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Symbol
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a WebDetection. */
+ interface IWebDetection {
+
+ /** WebDetection webEntities */
+ webEntities?: (google.cloud.vision.v1p1beta1.WebDetection.IWebEntity[]|null);
+
+ /** WebDetection fullMatchingImages */
+ fullMatchingImages?: (google.cloud.vision.v1p1beta1.WebDetection.IWebImage[]|null);
+
+ /** WebDetection partialMatchingImages */
+ partialMatchingImages?: (google.cloud.vision.v1p1beta1.WebDetection.IWebImage[]|null);
+
+ /** WebDetection pagesWithMatchingImages */
+ pagesWithMatchingImages?: (google.cloud.vision.v1p1beta1.WebDetection.IWebPage[]|null);
+
+ /** WebDetection visuallySimilarImages */
+ visuallySimilarImages?: (google.cloud.vision.v1p1beta1.WebDetection.IWebImage[]|null);
+
+ /** WebDetection bestGuessLabels */
+ bestGuessLabels?: (google.cloud.vision.v1p1beta1.WebDetection.IWebLabel[]|null);
+ }
+
+ /** Represents a WebDetection. */
+ class WebDetection implements IWebDetection {
+
+ /**
+ * Constructs a new WebDetection.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p1beta1.IWebDetection);
+
+ /** WebDetection webEntities. */
+ public webEntities: google.cloud.vision.v1p1beta1.WebDetection.IWebEntity[];
+
+ /** WebDetection fullMatchingImages. */
+ public fullMatchingImages: google.cloud.vision.v1p1beta1.WebDetection.IWebImage[];
+
+ /** WebDetection partialMatchingImages. */
+ public partialMatchingImages: google.cloud.vision.v1p1beta1.WebDetection.IWebImage[];
+
+ /** WebDetection pagesWithMatchingImages. */
+ public pagesWithMatchingImages: google.cloud.vision.v1p1beta1.WebDetection.IWebPage[];
+
+ /** WebDetection visuallySimilarImages. */
+ public visuallySimilarImages: google.cloud.vision.v1p1beta1.WebDetection.IWebImage[];
+
+ /** WebDetection bestGuessLabels. */
+ public bestGuessLabels: google.cloud.vision.v1p1beta1.WebDetection.IWebLabel[];
+
+ /**
+ * Creates a new WebDetection instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns WebDetection instance
+ */
+ public static create(properties?: google.cloud.vision.v1p1beta1.IWebDetection): google.cloud.vision.v1p1beta1.WebDetection;
+
+ /**
+ * Encodes the specified WebDetection message. Does not implicitly {@link google.cloud.vision.v1p1beta1.WebDetection.verify|verify} messages.
+ * @param message WebDetection message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p1beta1.IWebDetection, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified WebDetection message, length delimited. Does not implicitly {@link google.cloud.vision.v1p1beta1.WebDetection.verify|verify} messages.
+ * @param message WebDetection message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p1beta1.IWebDetection, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a WebDetection message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns WebDetection
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p1beta1.WebDetection;
+
+ /**
+ * Decodes a WebDetection message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns WebDetection
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p1beta1.WebDetection;
+
+ /**
+ * Verifies a WebDetection message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a WebDetection message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns WebDetection
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p1beta1.WebDetection;
+
+ /**
+ * Creates a plain object from a WebDetection message. Also converts values to other types if specified.
+ * @param message WebDetection
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p1beta1.WebDetection, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this WebDetection to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for WebDetection
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace WebDetection {
+
+ /** Properties of a WebEntity. */
+ interface IWebEntity {
+
+ /** WebEntity entityId */
+ entityId?: (string|null);
+
+ /** WebEntity score */
+ score?: (number|null);
+
+ /** WebEntity description */
+ description?: (string|null);
+ }
+
+ /** Represents a WebEntity. */
+ class WebEntity implements IWebEntity {
+
+ /**
+ * Constructs a new WebEntity.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p1beta1.WebDetection.IWebEntity);
+
+ /** WebEntity entityId. */
+ public entityId: string;
+
+ /** WebEntity score. */
+ public score: number;
+
+ /** WebEntity description. */
+ public description: string;
+
+ /**
+ * Creates a new WebEntity instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns WebEntity instance
+ */
+ public static create(properties?: google.cloud.vision.v1p1beta1.WebDetection.IWebEntity): google.cloud.vision.v1p1beta1.WebDetection.WebEntity;
+
+ /**
+ * Encodes the specified WebEntity message. Does not implicitly {@link google.cloud.vision.v1p1beta1.WebDetection.WebEntity.verify|verify} messages.
+ * @param message WebEntity message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p1beta1.WebDetection.IWebEntity, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified WebEntity message, length delimited. Does not implicitly {@link google.cloud.vision.v1p1beta1.WebDetection.WebEntity.verify|verify} messages.
+ * @param message WebEntity message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p1beta1.WebDetection.IWebEntity, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a WebEntity message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns WebEntity
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p1beta1.WebDetection.WebEntity;
+
+ /**
+ * Decodes a WebEntity message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns WebEntity
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p1beta1.WebDetection.WebEntity;
+
+ /**
+ * Verifies a WebEntity message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a WebEntity message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns WebEntity
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p1beta1.WebDetection.WebEntity;
+
+ /**
+ * Creates a plain object from a WebEntity message. Also converts values to other types if specified.
+ * @param message WebEntity
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p1beta1.WebDetection.WebEntity, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this WebEntity to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for WebEntity
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a WebImage. */
+ interface IWebImage {
+
+ /** WebImage url */
+ url?: (string|null);
+
+ /** WebImage score */
+ score?: (number|null);
+ }
+
+ /** Represents a WebImage. */
+ class WebImage implements IWebImage {
+
+ /**
+ * Constructs a new WebImage.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p1beta1.WebDetection.IWebImage);
+
+ /** WebImage url. */
+ public url: string;
+
+ /** WebImage score. */
+ public score: number;
+
+ /**
+ * Creates a new WebImage instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns WebImage instance
+ */
+ public static create(properties?: google.cloud.vision.v1p1beta1.WebDetection.IWebImage): google.cloud.vision.v1p1beta1.WebDetection.WebImage;
+
+ /**
+ * Encodes the specified WebImage message. Does not implicitly {@link google.cloud.vision.v1p1beta1.WebDetection.WebImage.verify|verify} messages.
+ * @param message WebImage message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p1beta1.WebDetection.IWebImage, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified WebImage message, length delimited. Does not implicitly {@link google.cloud.vision.v1p1beta1.WebDetection.WebImage.verify|verify} messages.
+ * @param message WebImage message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p1beta1.WebDetection.IWebImage, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a WebImage message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns WebImage
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p1beta1.WebDetection.WebImage;
+
+ /**
+ * Decodes a WebImage message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns WebImage
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p1beta1.WebDetection.WebImage;
+
+ /**
+ * Verifies a WebImage message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a WebImage message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns WebImage
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p1beta1.WebDetection.WebImage;
+
+ /**
+ * Creates a plain object from a WebImage message. Also converts values to other types if specified.
+ * @param message WebImage
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p1beta1.WebDetection.WebImage, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this WebImage to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for WebImage
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a WebPage. */
+ interface IWebPage {
+
+ /** WebPage url */
+ url?: (string|null);
+
+ /** WebPage score */
+ score?: (number|null);
+
+ /** WebPage pageTitle */
+ pageTitle?: (string|null);
+
+ /** WebPage fullMatchingImages */
+ fullMatchingImages?: (google.cloud.vision.v1p1beta1.WebDetection.IWebImage[]|null);
+
+ /** WebPage partialMatchingImages */
+ partialMatchingImages?: (google.cloud.vision.v1p1beta1.WebDetection.IWebImage[]|null);
+ }
+
+ /** Represents a WebPage. */
+ class WebPage implements IWebPage {
+
+ /**
+ * Constructs a new WebPage.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p1beta1.WebDetection.IWebPage);
+
+ /** WebPage url. */
+ public url: string;
+
+ /** WebPage score. */
+ public score: number;
+
+ /** WebPage pageTitle. */
+ public pageTitle: string;
+
+ /** WebPage fullMatchingImages. */
+ public fullMatchingImages: google.cloud.vision.v1p1beta1.WebDetection.IWebImage[];
+
+ /** WebPage partialMatchingImages. */
+ public partialMatchingImages: google.cloud.vision.v1p1beta1.WebDetection.IWebImage[];
+
+ /**
+ * Creates a new WebPage instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns WebPage instance
+ */
+ public static create(properties?: google.cloud.vision.v1p1beta1.WebDetection.IWebPage): google.cloud.vision.v1p1beta1.WebDetection.WebPage;
+
+ /**
+ * Encodes the specified WebPage message. Does not implicitly {@link google.cloud.vision.v1p1beta1.WebDetection.WebPage.verify|verify} messages.
+ * @param message WebPage message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p1beta1.WebDetection.IWebPage, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified WebPage message, length delimited. Does not implicitly {@link google.cloud.vision.v1p1beta1.WebDetection.WebPage.verify|verify} messages.
+ * @param message WebPage message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p1beta1.WebDetection.IWebPage, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a WebPage message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns WebPage
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p1beta1.WebDetection.WebPage;
+
+ /**
+ * Decodes a WebPage message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns WebPage
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p1beta1.WebDetection.WebPage;
+
+ /**
+ * Verifies a WebPage message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a WebPage message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns WebPage
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p1beta1.WebDetection.WebPage;
+
+ /**
+ * Creates a plain object from a WebPage message. Also converts values to other types if specified.
+ * @param message WebPage
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p1beta1.WebDetection.WebPage, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this WebPage to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for WebPage
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a WebLabel. */
+ interface IWebLabel {
+
+ /** WebLabel label */
+ label?: (string|null);
+
+ /** WebLabel languageCode */
+ languageCode?: (string|null);
+ }
+
+ /** Represents a WebLabel. */
+ class WebLabel implements IWebLabel {
+
+ /**
+ * Constructs a new WebLabel.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p1beta1.WebDetection.IWebLabel);
+
+ /** WebLabel label. */
+ public label: string;
+
+ /** WebLabel languageCode. */
+ public languageCode: string;
+
+ /**
+ * Creates a new WebLabel instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns WebLabel instance
+ */
+ public static create(properties?: google.cloud.vision.v1p1beta1.WebDetection.IWebLabel): google.cloud.vision.v1p1beta1.WebDetection.WebLabel;
+
+ /**
+ * Encodes the specified WebLabel message. Does not implicitly {@link google.cloud.vision.v1p1beta1.WebDetection.WebLabel.verify|verify} messages.
+ * @param message WebLabel message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p1beta1.WebDetection.IWebLabel, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified WebLabel message, length delimited. Does not implicitly {@link google.cloud.vision.v1p1beta1.WebDetection.WebLabel.verify|verify} messages.
+ * @param message WebLabel message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p1beta1.WebDetection.IWebLabel, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a WebLabel message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns WebLabel
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p1beta1.WebDetection.WebLabel;
+
+ /**
+ * Decodes a WebLabel message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns WebLabel
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p1beta1.WebDetection.WebLabel;
+
+ /**
+ * Verifies a WebLabel message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a WebLabel message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns WebLabel
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p1beta1.WebDetection.WebLabel;
+
+ /**
+ * Creates a plain object from a WebLabel message. Also converts values to other types if specified.
+ * @param message WebLabel
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p1beta1.WebDetection.WebLabel, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this WebLabel to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for WebLabel
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+ }
+ }
+
+ /** Namespace v1p2beta1. */
+ namespace v1p2beta1 {
+
+ /** Properties of a Vertex. */
+ interface IVertex {
+
+ /** Vertex x */
+ x?: (number|null);
+
+ /** Vertex y */
+ y?: (number|null);
+ }
+
+ /** Represents a Vertex. */
+ class Vertex implements IVertex {
+
+ /**
+ * Constructs a new Vertex.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p2beta1.IVertex);
+
+ /** Vertex x. */
+ public x: number;
+
+ /** Vertex y. */
+ public y: number;
+
+ /**
+ * Creates a new Vertex instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Vertex instance
+ */
+ public static create(properties?: google.cloud.vision.v1p2beta1.IVertex): google.cloud.vision.v1p2beta1.Vertex;
+
+ /**
+ * Encodes the specified Vertex message. Does not implicitly {@link google.cloud.vision.v1p2beta1.Vertex.verify|verify} messages.
+ * @param message Vertex message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p2beta1.IVertex, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Vertex message, length delimited. Does not implicitly {@link google.cloud.vision.v1p2beta1.Vertex.verify|verify} messages.
+ * @param message Vertex message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p2beta1.IVertex, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Vertex message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Vertex
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p2beta1.Vertex;
+
+ /**
+ * Decodes a Vertex message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Vertex
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p2beta1.Vertex;
+
+ /**
+ * Verifies a Vertex message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a Vertex message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Vertex
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p2beta1.Vertex;
+
+ /**
+ * Creates a plain object from a Vertex message. Also converts values to other types if specified.
+ * @param message Vertex
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p2beta1.Vertex, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Vertex to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Vertex
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a NormalizedVertex. */
+ interface INormalizedVertex {
+
+ /** NormalizedVertex x */
+ x?: (number|null);
+
+ /** NormalizedVertex y */
+ y?: (number|null);
+ }
+
+ /** Represents a NormalizedVertex. */
+ class NormalizedVertex implements INormalizedVertex {
+
+ /**
+ * Constructs a new NormalizedVertex.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p2beta1.INormalizedVertex);
+
+ /** NormalizedVertex x. */
+ public x: number;
+
+ /** NormalizedVertex y. */
+ public y: number;
+
+ /**
+ * Creates a new NormalizedVertex instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns NormalizedVertex instance
+ */
+ public static create(properties?: google.cloud.vision.v1p2beta1.INormalizedVertex): google.cloud.vision.v1p2beta1.NormalizedVertex;
+
+ /**
+ * Encodes the specified NormalizedVertex message. Does not implicitly {@link google.cloud.vision.v1p2beta1.NormalizedVertex.verify|verify} messages.
+ * @param message NormalizedVertex message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p2beta1.INormalizedVertex, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified NormalizedVertex message, length delimited. Does not implicitly {@link google.cloud.vision.v1p2beta1.NormalizedVertex.verify|verify} messages.
+ * @param message NormalizedVertex message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p2beta1.INormalizedVertex, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a NormalizedVertex message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns NormalizedVertex
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p2beta1.NormalizedVertex;
+
+ /**
+ * Decodes a NormalizedVertex message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns NormalizedVertex
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p2beta1.NormalizedVertex;
+
+ /**
+ * Verifies a NormalizedVertex message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a NormalizedVertex message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns NormalizedVertex
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p2beta1.NormalizedVertex;
+
+ /**
+ * Creates a plain object from a NormalizedVertex message. Also converts values to other types if specified.
+ * @param message NormalizedVertex
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p2beta1.NormalizedVertex, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this NormalizedVertex to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for NormalizedVertex
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a BoundingPoly. */
+ interface IBoundingPoly {
+
+ /** BoundingPoly vertices */
+ vertices?: (google.cloud.vision.v1p2beta1.IVertex[]|null);
+
+ /** BoundingPoly normalizedVertices */
+ normalizedVertices?: (google.cloud.vision.v1p2beta1.INormalizedVertex[]|null);
+ }
+
+ /** Represents a BoundingPoly. */
+ class BoundingPoly implements IBoundingPoly {
+
+ /**
+ * Constructs a new BoundingPoly.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p2beta1.IBoundingPoly);
+
+ /** BoundingPoly vertices. */
+ public vertices: google.cloud.vision.v1p2beta1.IVertex[];
+
+ /** BoundingPoly normalizedVertices. */
+ public normalizedVertices: google.cloud.vision.v1p2beta1.INormalizedVertex[];
+
+ /**
+ * Creates a new BoundingPoly instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns BoundingPoly instance
+ */
+ public static create(properties?: google.cloud.vision.v1p2beta1.IBoundingPoly): google.cloud.vision.v1p2beta1.BoundingPoly;
+
+ /**
+ * Encodes the specified BoundingPoly message. Does not implicitly {@link google.cloud.vision.v1p2beta1.BoundingPoly.verify|verify} messages.
+ * @param message BoundingPoly message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p2beta1.IBoundingPoly, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified BoundingPoly message, length delimited. Does not implicitly {@link google.cloud.vision.v1p2beta1.BoundingPoly.verify|verify} messages.
+ * @param message BoundingPoly message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p2beta1.IBoundingPoly, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a BoundingPoly message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns BoundingPoly
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p2beta1.BoundingPoly;
+
+ /**
+ * Decodes a BoundingPoly message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns BoundingPoly
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p2beta1.BoundingPoly;
+
+ /**
+ * Verifies a BoundingPoly message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a BoundingPoly message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns BoundingPoly
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p2beta1.BoundingPoly;
+
+ /**
+ * Creates a plain object from a BoundingPoly message. Also converts values to other types if specified.
+ * @param message BoundingPoly
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p2beta1.BoundingPoly, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this BoundingPoly to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for BoundingPoly
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a Position. */
+ interface IPosition {
+
+ /** Position x */
+ x?: (number|null);
+
+ /** Position y */
+ y?: (number|null);
+
+ /** Position z */
+ z?: (number|null);
+ }
+
+ /** Represents a Position. */
+ class Position implements IPosition {
+
+ /**
+ * Constructs a new Position.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p2beta1.IPosition);
+
+ /** Position x. */
+ public x: number;
+
+ /** Position y. */
+ public y: number;
+
+ /** Position z. */
+ public z: number;
+
+ /**
+ * Creates a new Position instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Position instance
+ */
+ public static create(properties?: google.cloud.vision.v1p2beta1.IPosition): google.cloud.vision.v1p2beta1.Position;
+
+ /**
+ * Encodes the specified Position message. Does not implicitly {@link google.cloud.vision.v1p2beta1.Position.verify|verify} messages.
+ * @param message Position message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p2beta1.IPosition, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Position message, length delimited. Does not implicitly {@link google.cloud.vision.v1p2beta1.Position.verify|verify} messages.
+ * @param message Position message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p2beta1.IPosition, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Position message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Position
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p2beta1.Position;
+
+ /**
+ * Decodes a Position message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Position
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p2beta1.Position;
+
+ /**
+ * Verifies a Position message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a Position message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Position
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p2beta1.Position;
+
+ /**
+ * Creates a plain object from a Position message. Also converts values to other types if specified.
+ * @param message Position
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p2beta1.Position, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Position to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Position
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Represents an ImageAnnotator */
+ class ImageAnnotator extends $protobuf.rpc.Service {
+
+ /**
+ * Constructs a new ImageAnnotator 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 ImageAnnotator 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): ImageAnnotator;
+
+ /**
+ * Calls BatchAnnotateImages.
+ * @param request BatchAnnotateImagesRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and BatchAnnotateImagesResponse
+ */
+ public batchAnnotateImages(request: google.cloud.vision.v1p2beta1.IBatchAnnotateImagesRequest, callback: google.cloud.vision.v1p2beta1.ImageAnnotator.BatchAnnotateImagesCallback): void;
+
+ /**
+ * Calls BatchAnnotateImages.
+ * @param request BatchAnnotateImagesRequest message or plain object
+ * @returns Promise
+ */
+ public batchAnnotateImages(request: google.cloud.vision.v1p2beta1.IBatchAnnotateImagesRequest): Promise;
+
+ /**
+ * Calls AsyncBatchAnnotateFiles.
+ * @param request AsyncBatchAnnotateFilesRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Operation
+ */
+ public asyncBatchAnnotateFiles(request: google.cloud.vision.v1p2beta1.IAsyncBatchAnnotateFilesRequest, callback: google.cloud.vision.v1p2beta1.ImageAnnotator.AsyncBatchAnnotateFilesCallback): void;
+
+ /**
+ * Calls AsyncBatchAnnotateFiles.
+ * @param request AsyncBatchAnnotateFilesRequest message or plain object
+ * @returns Promise
+ */
+ public asyncBatchAnnotateFiles(request: google.cloud.vision.v1p2beta1.IAsyncBatchAnnotateFilesRequest): Promise;
+ }
+
+ namespace ImageAnnotator {
+
+ /**
+ * Callback as used by {@link google.cloud.vision.v1p2beta1.ImageAnnotator|batchAnnotateImages}.
+ * @param error Error, if any
+ * @param [response] BatchAnnotateImagesResponse
+ */
+ type BatchAnnotateImagesCallback = (error: (Error|null), response?: google.cloud.vision.v1p2beta1.BatchAnnotateImagesResponse) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.vision.v1p2beta1.ImageAnnotator|asyncBatchAnnotateFiles}.
+ * @param error Error, if any
+ * @param [response] Operation
+ */
+ type AsyncBatchAnnotateFilesCallback = (error: (Error|null), response?: google.longrunning.Operation) => void;
+ }
+
+ /** Properties of a Feature. */
+ interface IFeature {
+
+ /** Feature type */
+ type?: (google.cloud.vision.v1p2beta1.Feature.Type|keyof typeof google.cloud.vision.v1p2beta1.Feature.Type|null);
+
+ /** Feature maxResults */
+ maxResults?: (number|null);
+
+ /** Feature model */
+ model?: (string|null);
+ }
+
+ /** Represents a Feature. */
+ class Feature implements IFeature {
+
+ /**
+ * Constructs a new Feature.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p2beta1.IFeature);
+
+ /** Feature type. */
+ public type: (google.cloud.vision.v1p2beta1.Feature.Type|keyof typeof google.cloud.vision.v1p2beta1.Feature.Type);
+
+ /** Feature maxResults. */
+ public maxResults: number;
+
+ /** Feature model. */
+ public model: string;
+
+ /**
+ * Creates a new Feature instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Feature instance
+ */
+ public static create(properties?: google.cloud.vision.v1p2beta1.IFeature): google.cloud.vision.v1p2beta1.Feature;
+
+ /**
+ * Encodes the specified Feature message. Does not implicitly {@link google.cloud.vision.v1p2beta1.Feature.verify|verify} messages.
+ * @param message Feature message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p2beta1.IFeature, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Feature message, length delimited. Does not implicitly {@link google.cloud.vision.v1p2beta1.Feature.verify|verify} messages.
+ * @param message Feature message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p2beta1.IFeature, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Feature message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Feature
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p2beta1.Feature;
+
+ /**
+ * Decodes a Feature message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Feature
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p2beta1.Feature;
+
+ /**
+ * Verifies a Feature message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a Feature message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Feature
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p2beta1.Feature;
+
+ /**
+ * Creates a plain object from a Feature message. Also converts values to other types if specified.
+ * @param message Feature
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p2beta1.Feature, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Feature to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Feature
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace Feature {
+
+ /** Type enum. */
+ enum Type {
+ TYPE_UNSPECIFIED = 0,
+ FACE_DETECTION = 1,
+ LANDMARK_DETECTION = 2,
+ LOGO_DETECTION = 3,
+ LABEL_DETECTION = 4,
+ TEXT_DETECTION = 5,
+ DOCUMENT_TEXT_DETECTION = 11,
+ SAFE_SEARCH_DETECTION = 6,
+ IMAGE_PROPERTIES = 7,
+ CROP_HINTS = 9,
+ WEB_DETECTION = 10
+ }
+ }
+
+ /** Properties of an ImageSource. */
+ interface IImageSource {
+
+ /** ImageSource gcsImageUri */
+ gcsImageUri?: (string|null);
+
+ /** ImageSource imageUri */
+ imageUri?: (string|null);
+ }
+
+ /** Represents an ImageSource. */
+ class ImageSource implements IImageSource {
+
+ /**
+ * Constructs a new ImageSource.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p2beta1.IImageSource);
+
+ /** ImageSource gcsImageUri. */
+ public gcsImageUri: string;
+
+ /** ImageSource imageUri. */
+ public imageUri: string;
+
+ /**
+ * Creates a new ImageSource instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ImageSource instance
+ */
+ public static create(properties?: google.cloud.vision.v1p2beta1.IImageSource): google.cloud.vision.v1p2beta1.ImageSource;
+
+ /**
+ * Encodes the specified ImageSource message. Does not implicitly {@link google.cloud.vision.v1p2beta1.ImageSource.verify|verify} messages.
+ * @param message ImageSource message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p2beta1.IImageSource, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ImageSource message, length delimited. Does not implicitly {@link google.cloud.vision.v1p2beta1.ImageSource.verify|verify} messages.
+ * @param message ImageSource message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p2beta1.IImageSource, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an ImageSource message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ImageSource
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p2beta1.ImageSource;
+
+ /**
+ * Decodes an ImageSource message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ImageSource
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p2beta1.ImageSource;
+
+ /**
+ * Verifies an ImageSource message.
+ * @param message Plain 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 ImageSource message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ImageSource
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p2beta1.ImageSource;
+
+ /**
+ * Creates a plain object from an ImageSource message. Also converts values to other types if specified.
+ * @param message ImageSource
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p2beta1.ImageSource, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ImageSource to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ImageSource
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an Image. */
+ interface IImage {
+
+ /** Image content */
+ content?: (Uint8Array|string|null);
+
+ /** Image source */
+ source?: (google.cloud.vision.v1p2beta1.IImageSource|null);
+ }
+
+ /** Represents an Image. */
+ class Image implements IImage {
+
+ /**
+ * Constructs a new Image.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p2beta1.IImage);
+
+ /** Image content. */
+ public content: (Uint8Array|string);
+
+ /** Image source. */
+ public source?: (google.cloud.vision.v1p2beta1.IImageSource|null);
+
+ /**
+ * Creates a new Image instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Image instance
+ */
+ public static create(properties?: google.cloud.vision.v1p2beta1.IImage): google.cloud.vision.v1p2beta1.Image;
+
+ /**
+ * Encodes the specified Image message. Does not implicitly {@link google.cloud.vision.v1p2beta1.Image.verify|verify} messages.
+ * @param message Image message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p2beta1.IImage, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Image message, length delimited. Does not implicitly {@link google.cloud.vision.v1p2beta1.Image.verify|verify} messages.
+ * @param message Image message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p2beta1.IImage, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an Image message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Image
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p2beta1.Image;
+
+ /**
+ * Decodes an Image message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Image
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p2beta1.Image;
+
+ /**
+ * Verifies an Image message.
+ * @param message Plain 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 Image message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Image
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p2beta1.Image;
+
+ /**
+ * Creates a plain object from an Image message. Also converts values to other types if specified.
+ * @param message Image
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p2beta1.Image, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Image to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Image
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a FaceAnnotation. */
+ interface IFaceAnnotation {
+
+ /** FaceAnnotation boundingPoly */
+ boundingPoly?: (google.cloud.vision.v1p2beta1.IBoundingPoly|null);
+
+ /** FaceAnnotation fdBoundingPoly */
+ fdBoundingPoly?: (google.cloud.vision.v1p2beta1.IBoundingPoly|null);
+
+ /** FaceAnnotation landmarks */
+ landmarks?: (google.cloud.vision.v1p2beta1.FaceAnnotation.ILandmark[]|null);
+
+ /** FaceAnnotation rollAngle */
+ rollAngle?: (number|null);
+
+ /** FaceAnnotation panAngle */
+ panAngle?: (number|null);
+
+ /** FaceAnnotation tiltAngle */
+ tiltAngle?: (number|null);
+
+ /** FaceAnnotation detectionConfidence */
+ detectionConfidence?: (number|null);
+
+ /** FaceAnnotation landmarkingConfidence */
+ landmarkingConfidence?: (number|null);
+
+ /** FaceAnnotation joyLikelihood */
+ joyLikelihood?: (google.cloud.vision.v1p2beta1.Likelihood|keyof typeof google.cloud.vision.v1p2beta1.Likelihood|null);
+
+ /** FaceAnnotation sorrowLikelihood */
+ sorrowLikelihood?: (google.cloud.vision.v1p2beta1.Likelihood|keyof typeof google.cloud.vision.v1p2beta1.Likelihood|null);
+
+ /** FaceAnnotation angerLikelihood */
+ angerLikelihood?: (google.cloud.vision.v1p2beta1.Likelihood|keyof typeof google.cloud.vision.v1p2beta1.Likelihood|null);
+
+ /** FaceAnnotation surpriseLikelihood */
+ surpriseLikelihood?: (google.cloud.vision.v1p2beta1.Likelihood|keyof typeof google.cloud.vision.v1p2beta1.Likelihood|null);
+
+ /** FaceAnnotation underExposedLikelihood */
+ underExposedLikelihood?: (google.cloud.vision.v1p2beta1.Likelihood|keyof typeof google.cloud.vision.v1p2beta1.Likelihood|null);
+
+ /** FaceAnnotation blurredLikelihood */
+ blurredLikelihood?: (google.cloud.vision.v1p2beta1.Likelihood|keyof typeof google.cloud.vision.v1p2beta1.Likelihood|null);
+
+ /** FaceAnnotation headwearLikelihood */
+ headwearLikelihood?: (google.cloud.vision.v1p2beta1.Likelihood|keyof typeof google.cloud.vision.v1p2beta1.Likelihood|null);
+ }
+
+ /** Represents a FaceAnnotation. */
+ class FaceAnnotation implements IFaceAnnotation {
+
+ /**
+ * Constructs a new FaceAnnotation.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p2beta1.IFaceAnnotation);
+
+ /** FaceAnnotation boundingPoly. */
+ public boundingPoly?: (google.cloud.vision.v1p2beta1.IBoundingPoly|null);
+
+ /** FaceAnnotation fdBoundingPoly. */
+ public fdBoundingPoly?: (google.cloud.vision.v1p2beta1.IBoundingPoly|null);
+
+ /** FaceAnnotation landmarks. */
+ public landmarks: google.cloud.vision.v1p2beta1.FaceAnnotation.ILandmark[];
+
+ /** FaceAnnotation rollAngle. */
+ public rollAngle: number;
+
+ /** FaceAnnotation panAngle. */
+ public panAngle: number;
+
+ /** FaceAnnotation tiltAngle. */
+ public tiltAngle: number;
+
+ /** FaceAnnotation detectionConfidence. */
+ public detectionConfidence: number;
+
+ /** FaceAnnotation landmarkingConfidence. */
+ public landmarkingConfidence: number;
+
+ /** FaceAnnotation joyLikelihood. */
+ public joyLikelihood: (google.cloud.vision.v1p2beta1.Likelihood|keyof typeof google.cloud.vision.v1p2beta1.Likelihood);
+
+ /** FaceAnnotation sorrowLikelihood. */
+ public sorrowLikelihood: (google.cloud.vision.v1p2beta1.Likelihood|keyof typeof google.cloud.vision.v1p2beta1.Likelihood);
+
+ /** FaceAnnotation angerLikelihood. */
+ public angerLikelihood: (google.cloud.vision.v1p2beta1.Likelihood|keyof typeof google.cloud.vision.v1p2beta1.Likelihood);
+
+ /** FaceAnnotation surpriseLikelihood. */
+ public surpriseLikelihood: (google.cloud.vision.v1p2beta1.Likelihood|keyof typeof google.cloud.vision.v1p2beta1.Likelihood);
+
+ /** FaceAnnotation underExposedLikelihood. */
+ public underExposedLikelihood: (google.cloud.vision.v1p2beta1.Likelihood|keyof typeof google.cloud.vision.v1p2beta1.Likelihood);
+
+ /** FaceAnnotation blurredLikelihood. */
+ public blurredLikelihood: (google.cloud.vision.v1p2beta1.Likelihood|keyof typeof google.cloud.vision.v1p2beta1.Likelihood);
+
+ /** FaceAnnotation headwearLikelihood. */
+ public headwearLikelihood: (google.cloud.vision.v1p2beta1.Likelihood|keyof typeof google.cloud.vision.v1p2beta1.Likelihood);
+
+ /**
+ * Creates a new FaceAnnotation instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns FaceAnnotation instance
+ */
+ public static create(properties?: google.cloud.vision.v1p2beta1.IFaceAnnotation): google.cloud.vision.v1p2beta1.FaceAnnotation;
+
+ /**
+ * Encodes the specified FaceAnnotation message. Does not implicitly {@link google.cloud.vision.v1p2beta1.FaceAnnotation.verify|verify} messages.
+ * @param message FaceAnnotation message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p2beta1.IFaceAnnotation, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified FaceAnnotation message, length delimited. Does not implicitly {@link google.cloud.vision.v1p2beta1.FaceAnnotation.verify|verify} messages.
+ * @param message FaceAnnotation message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p2beta1.IFaceAnnotation, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a FaceAnnotation message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns FaceAnnotation
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p2beta1.FaceAnnotation;
+
+ /**
+ * Decodes a FaceAnnotation message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns FaceAnnotation
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p2beta1.FaceAnnotation;
+
+ /**
+ * Verifies a FaceAnnotation message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a FaceAnnotation message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns FaceAnnotation
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p2beta1.FaceAnnotation;
+
+ /**
+ * Creates a plain object from a FaceAnnotation message. Also converts values to other types if specified.
+ * @param message FaceAnnotation
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p2beta1.FaceAnnotation, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this FaceAnnotation to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for FaceAnnotation
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace FaceAnnotation {
+
+ /** Properties of a Landmark. */
+ interface ILandmark {
+
+ /** Landmark type */
+ type?: (google.cloud.vision.v1p2beta1.FaceAnnotation.Landmark.Type|keyof typeof google.cloud.vision.v1p2beta1.FaceAnnotation.Landmark.Type|null);
+
+ /** Landmark position */
+ position?: (google.cloud.vision.v1p2beta1.IPosition|null);
+ }
+
+ /** Represents a Landmark. */
+ class Landmark implements ILandmark {
+
+ /**
+ * Constructs a new Landmark.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p2beta1.FaceAnnotation.ILandmark);
+
+ /** Landmark type. */
+ public type: (google.cloud.vision.v1p2beta1.FaceAnnotation.Landmark.Type|keyof typeof google.cloud.vision.v1p2beta1.FaceAnnotation.Landmark.Type);
+
+ /** Landmark position. */
+ public position?: (google.cloud.vision.v1p2beta1.IPosition|null);
+
+ /**
+ * Creates a new Landmark instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Landmark instance
+ */
+ public static create(properties?: google.cloud.vision.v1p2beta1.FaceAnnotation.ILandmark): google.cloud.vision.v1p2beta1.FaceAnnotation.Landmark;
+
+ /**
+ * Encodes the specified Landmark message. Does not implicitly {@link google.cloud.vision.v1p2beta1.FaceAnnotation.Landmark.verify|verify} messages.
+ * @param message Landmark message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p2beta1.FaceAnnotation.ILandmark, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Landmark message, length delimited. Does not implicitly {@link google.cloud.vision.v1p2beta1.FaceAnnotation.Landmark.verify|verify} messages.
+ * @param message Landmark message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p2beta1.FaceAnnotation.ILandmark, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Landmark message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Landmark
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p2beta1.FaceAnnotation.Landmark;
+
+ /**
+ * Decodes a Landmark message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Landmark
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p2beta1.FaceAnnotation.Landmark;
+
+ /**
+ * Verifies a Landmark message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a Landmark message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Landmark
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p2beta1.FaceAnnotation.Landmark;
+
+ /**
+ * Creates a plain object from a Landmark message. Also converts values to other types if specified.
+ * @param message Landmark
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p2beta1.FaceAnnotation.Landmark, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Landmark to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Landmark
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace Landmark {
+
+ /** Type enum. */
+ enum Type {
+ UNKNOWN_LANDMARK = 0,
+ LEFT_EYE = 1,
+ RIGHT_EYE = 2,
+ LEFT_OF_LEFT_EYEBROW = 3,
+ RIGHT_OF_LEFT_EYEBROW = 4,
+ LEFT_OF_RIGHT_EYEBROW = 5,
+ RIGHT_OF_RIGHT_EYEBROW = 6,
+ MIDPOINT_BETWEEN_EYES = 7,
+ NOSE_TIP = 8,
+ UPPER_LIP = 9,
+ LOWER_LIP = 10,
+ MOUTH_LEFT = 11,
+ MOUTH_RIGHT = 12,
+ MOUTH_CENTER = 13,
+ NOSE_BOTTOM_RIGHT = 14,
+ NOSE_BOTTOM_LEFT = 15,
+ NOSE_BOTTOM_CENTER = 16,
+ LEFT_EYE_TOP_BOUNDARY = 17,
+ LEFT_EYE_RIGHT_CORNER = 18,
+ LEFT_EYE_BOTTOM_BOUNDARY = 19,
+ LEFT_EYE_LEFT_CORNER = 20,
+ RIGHT_EYE_TOP_BOUNDARY = 21,
+ RIGHT_EYE_RIGHT_CORNER = 22,
+ RIGHT_EYE_BOTTOM_BOUNDARY = 23,
+ RIGHT_EYE_LEFT_CORNER = 24,
+ LEFT_EYEBROW_UPPER_MIDPOINT = 25,
+ RIGHT_EYEBROW_UPPER_MIDPOINT = 26,
+ LEFT_EAR_TRAGION = 27,
+ RIGHT_EAR_TRAGION = 28,
+ LEFT_EYE_PUPIL = 29,
+ RIGHT_EYE_PUPIL = 30,
+ FOREHEAD_GLABELLA = 31,
+ CHIN_GNATHION = 32,
+ CHIN_LEFT_GONION = 33,
+ CHIN_RIGHT_GONION = 34
+ }
+ }
+ }
+
+ /** Properties of a LocationInfo. */
+ interface ILocationInfo {
+
+ /** LocationInfo latLng */
+ latLng?: (google.type.ILatLng|null);
+ }
+
+ /** Represents a LocationInfo. */
+ class LocationInfo implements ILocationInfo {
+
+ /**
+ * Constructs a new LocationInfo.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p2beta1.ILocationInfo);
+
+ /** LocationInfo latLng. */
+ public latLng?: (google.type.ILatLng|null);
+
+ /**
+ * Creates a new LocationInfo instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns LocationInfo instance
+ */
+ public static create(properties?: google.cloud.vision.v1p2beta1.ILocationInfo): google.cloud.vision.v1p2beta1.LocationInfo;
+
+ /**
+ * Encodes the specified LocationInfo message. Does not implicitly {@link google.cloud.vision.v1p2beta1.LocationInfo.verify|verify} messages.
+ * @param message LocationInfo message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p2beta1.ILocationInfo, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified LocationInfo message, length delimited. Does not implicitly {@link google.cloud.vision.v1p2beta1.LocationInfo.verify|verify} messages.
+ * @param message LocationInfo message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p2beta1.ILocationInfo, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a LocationInfo message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns LocationInfo
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p2beta1.LocationInfo;
+
+ /**
+ * Decodes a LocationInfo message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns LocationInfo
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p2beta1.LocationInfo;
+
+ /**
+ * Verifies a LocationInfo message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a LocationInfo message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns LocationInfo
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p2beta1.LocationInfo;
+
+ /**
+ * Creates a plain object from a LocationInfo message. Also converts values to other types if specified.
+ * @param message LocationInfo
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p2beta1.LocationInfo, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this LocationInfo to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for LocationInfo
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a Property. */
+ interface IProperty {
+
+ /** Property name */
+ name?: (string|null);
+
+ /** Property value */
+ value?: (string|null);
+
+ /** Property uint64Value */
+ uint64Value?: (number|Long|string|null);
+ }
+
+ /** Represents a Property. */
+ class Property implements IProperty {
+
+ /**
+ * Constructs a new Property.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p2beta1.IProperty);
+
+ /** Property name. */
+ public name: string;
+
+ /** Property value. */
+ public value: string;
+
+ /** Property uint64Value. */
+ public uint64Value: (number|Long|string);
+
+ /**
+ * Creates a new Property instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Property instance
+ */
+ public static create(properties?: google.cloud.vision.v1p2beta1.IProperty): google.cloud.vision.v1p2beta1.Property;
+
+ /**
+ * Encodes the specified Property message. Does not implicitly {@link google.cloud.vision.v1p2beta1.Property.verify|verify} messages.
+ * @param message Property message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p2beta1.IProperty, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Property message, length delimited. Does not implicitly {@link google.cloud.vision.v1p2beta1.Property.verify|verify} messages.
+ * @param message Property message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p2beta1.IProperty, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Property message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Property
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p2beta1.Property;
+
+ /**
+ * Decodes a Property message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Property
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p2beta1.Property;
+
+ /**
+ * Verifies a Property message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a Property message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Property
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p2beta1.Property;
+
+ /**
+ * Creates a plain object from a Property message. Also converts values to other types if specified.
+ * @param message Property
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p2beta1.Property, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Property to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Property
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an EntityAnnotation. */
+ interface IEntityAnnotation {
+
+ /** EntityAnnotation mid */
+ mid?: (string|null);
+
+ /** EntityAnnotation locale */
+ locale?: (string|null);
+
+ /** EntityAnnotation description */
+ description?: (string|null);
+
+ /** EntityAnnotation score */
+ score?: (number|null);
+
+ /** EntityAnnotation confidence */
+ confidence?: (number|null);
+
+ /** EntityAnnotation topicality */
+ topicality?: (number|null);
+
+ /** EntityAnnotation boundingPoly */
+ boundingPoly?: (google.cloud.vision.v1p2beta1.IBoundingPoly|null);
+
+ /** EntityAnnotation locations */
+ locations?: (google.cloud.vision.v1p2beta1.ILocationInfo[]|null);
+
+ /** EntityAnnotation properties */
+ properties?: (google.cloud.vision.v1p2beta1.IProperty[]|null);
+ }
+
+ /** Represents an EntityAnnotation. */
+ class EntityAnnotation implements IEntityAnnotation {
+
+ /**
+ * Constructs a new EntityAnnotation.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p2beta1.IEntityAnnotation);
+
+ /** EntityAnnotation mid. */
+ public mid: string;
+
+ /** EntityAnnotation locale. */
+ public locale: string;
+
+ /** EntityAnnotation description. */
+ public description: string;
+
+ /** EntityAnnotation score. */
+ public score: number;
+
+ /** EntityAnnotation confidence. */
+ public confidence: number;
+
+ /** EntityAnnotation topicality. */
+ public topicality: number;
+
+ /** EntityAnnotation boundingPoly. */
+ public boundingPoly?: (google.cloud.vision.v1p2beta1.IBoundingPoly|null);
+
+ /** EntityAnnotation locations. */
+ public locations: google.cloud.vision.v1p2beta1.ILocationInfo[];
+
+ /** EntityAnnotation properties. */
+ public properties: google.cloud.vision.v1p2beta1.IProperty[];
+
+ /**
+ * Creates a new EntityAnnotation instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns EntityAnnotation instance
+ */
+ public static create(properties?: google.cloud.vision.v1p2beta1.IEntityAnnotation): google.cloud.vision.v1p2beta1.EntityAnnotation;
+
+ /**
+ * Encodes the specified EntityAnnotation message. Does not implicitly {@link google.cloud.vision.v1p2beta1.EntityAnnotation.verify|verify} messages.
+ * @param message EntityAnnotation message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p2beta1.IEntityAnnotation, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified EntityAnnotation message, length delimited. Does not implicitly {@link google.cloud.vision.v1p2beta1.EntityAnnotation.verify|verify} messages.
+ * @param message EntityAnnotation message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p2beta1.IEntityAnnotation, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an EntityAnnotation message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns EntityAnnotation
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p2beta1.EntityAnnotation;
+
+ /**
+ * Decodes an EntityAnnotation message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns EntityAnnotation
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p2beta1.EntityAnnotation;
+
+ /**
+ * Verifies an EntityAnnotation message.
+ * @param message Plain 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 EntityAnnotation message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns EntityAnnotation
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p2beta1.EntityAnnotation;
+
+ /**
+ * Creates a plain object from an EntityAnnotation message. Also converts values to other types if specified.
+ * @param message EntityAnnotation
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p2beta1.EntityAnnotation, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this EntityAnnotation to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for EntityAnnotation
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a SafeSearchAnnotation. */
+ interface ISafeSearchAnnotation {
+
+ /** SafeSearchAnnotation adult */
+ adult?: (google.cloud.vision.v1p2beta1.Likelihood|keyof typeof google.cloud.vision.v1p2beta1.Likelihood|null);
+
+ /** SafeSearchAnnotation spoof */
+ spoof?: (google.cloud.vision.v1p2beta1.Likelihood|keyof typeof google.cloud.vision.v1p2beta1.Likelihood|null);
+
+ /** SafeSearchAnnotation medical */
+ medical?: (google.cloud.vision.v1p2beta1.Likelihood|keyof typeof google.cloud.vision.v1p2beta1.Likelihood|null);
+
+ /** SafeSearchAnnotation violence */
+ violence?: (google.cloud.vision.v1p2beta1.Likelihood|keyof typeof google.cloud.vision.v1p2beta1.Likelihood|null);
+
+ /** SafeSearchAnnotation racy */
+ racy?: (google.cloud.vision.v1p2beta1.Likelihood|keyof typeof google.cloud.vision.v1p2beta1.Likelihood|null);
+ }
+
+ /** Represents a SafeSearchAnnotation. */
+ class SafeSearchAnnotation implements ISafeSearchAnnotation {
+
+ /**
+ * Constructs a new SafeSearchAnnotation.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p2beta1.ISafeSearchAnnotation);
+
+ /** SafeSearchAnnotation adult. */
+ public adult: (google.cloud.vision.v1p2beta1.Likelihood|keyof typeof google.cloud.vision.v1p2beta1.Likelihood);
+
+ /** SafeSearchAnnotation spoof. */
+ public spoof: (google.cloud.vision.v1p2beta1.Likelihood|keyof typeof google.cloud.vision.v1p2beta1.Likelihood);
+
+ /** SafeSearchAnnotation medical. */
+ public medical: (google.cloud.vision.v1p2beta1.Likelihood|keyof typeof google.cloud.vision.v1p2beta1.Likelihood);
+
+ /** SafeSearchAnnotation violence. */
+ public violence: (google.cloud.vision.v1p2beta1.Likelihood|keyof typeof google.cloud.vision.v1p2beta1.Likelihood);
+
+ /** SafeSearchAnnotation racy. */
+ public racy: (google.cloud.vision.v1p2beta1.Likelihood|keyof typeof google.cloud.vision.v1p2beta1.Likelihood);
+
+ /**
+ * Creates a new SafeSearchAnnotation instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns SafeSearchAnnotation instance
+ */
+ public static create(properties?: google.cloud.vision.v1p2beta1.ISafeSearchAnnotation): google.cloud.vision.v1p2beta1.SafeSearchAnnotation;
+
+ /**
+ * Encodes the specified SafeSearchAnnotation message. Does not implicitly {@link google.cloud.vision.v1p2beta1.SafeSearchAnnotation.verify|verify} messages.
+ * @param message SafeSearchAnnotation message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p2beta1.ISafeSearchAnnotation, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified SafeSearchAnnotation message, length delimited. Does not implicitly {@link google.cloud.vision.v1p2beta1.SafeSearchAnnotation.verify|verify} messages.
+ * @param message SafeSearchAnnotation message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p2beta1.ISafeSearchAnnotation, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a SafeSearchAnnotation message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns SafeSearchAnnotation
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p2beta1.SafeSearchAnnotation;
+
+ /**
+ * Decodes a SafeSearchAnnotation message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns SafeSearchAnnotation
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p2beta1.SafeSearchAnnotation;
+
+ /**
+ * Verifies a SafeSearchAnnotation message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a SafeSearchAnnotation message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns SafeSearchAnnotation
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p2beta1.SafeSearchAnnotation;
+
+ /**
+ * Creates a plain object from a SafeSearchAnnotation message. Also converts values to other types if specified.
+ * @param message SafeSearchAnnotation
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p2beta1.SafeSearchAnnotation, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this SafeSearchAnnotation to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for SafeSearchAnnotation
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a LatLongRect. */
+ interface ILatLongRect {
+
+ /** LatLongRect minLatLng */
+ minLatLng?: (google.type.ILatLng|null);
+
+ /** LatLongRect maxLatLng */
+ maxLatLng?: (google.type.ILatLng|null);
+ }
+
+ /** Represents a LatLongRect. */
+ class LatLongRect implements ILatLongRect {
+
+ /**
+ * Constructs a new LatLongRect.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p2beta1.ILatLongRect);
+
+ /** LatLongRect minLatLng. */
+ public minLatLng?: (google.type.ILatLng|null);
+
+ /** LatLongRect maxLatLng. */
+ public maxLatLng?: (google.type.ILatLng|null);
+
+ /**
+ * Creates a new LatLongRect instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns LatLongRect instance
+ */
+ public static create(properties?: google.cloud.vision.v1p2beta1.ILatLongRect): google.cloud.vision.v1p2beta1.LatLongRect;
+
+ /**
+ * Encodes the specified LatLongRect message. Does not implicitly {@link google.cloud.vision.v1p2beta1.LatLongRect.verify|verify} messages.
+ * @param message LatLongRect message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p2beta1.ILatLongRect, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified LatLongRect message, length delimited. Does not implicitly {@link google.cloud.vision.v1p2beta1.LatLongRect.verify|verify} messages.
+ * @param message LatLongRect message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p2beta1.ILatLongRect, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a LatLongRect message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns LatLongRect
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p2beta1.LatLongRect;
+
+ /**
+ * Decodes a LatLongRect message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns LatLongRect
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p2beta1.LatLongRect;
+
+ /**
+ * Verifies a LatLongRect message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a LatLongRect message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns LatLongRect
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p2beta1.LatLongRect;
+
+ /**
+ * Creates a plain object from a LatLongRect message. Also converts values to other types if specified.
+ * @param message LatLongRect
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p2beta1.LatLongRect, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this LatLongRect to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for LatLongRect
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ColorInfo. */
+ interface IColorInfo {
+
+ /** ColorInfo color */
+ color?: (google.type.IColor|null);
+
+ /** ColorInfo score */
+ score?: (number|null);
+
+ /** ColorInfo pixelFraction */
+ pixelFraction?: (number|null);
+ }
+
+ /** Represents a ColorInfo. */
+ class ColorInfo implements IColorInfo {
+
+ /**
+ * Constructs a new ColorInfo.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p2beta1.IColorInfo);
+
+ /** ColorInfo color. */
+ public color?: (google.type.IColor|null);
+
+ /** ColorInfo score. */
+ public score: number;
+
+ /** ColorInfo pixelFraction. */
+ public pixelFraction: number;
+
+ /**
+ * Creates a new ColorInfo instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ColorInfo instance
+ */
+ public static create(properties?: google.cloud.vision.v1p2beta1.IColorInfo): google.cloud.vision.v1p2beta1.ColorInfo;
+
+ /**
+ * Encodes the specified ColorInfo message. Does not implicitly {@link google.cloud.vision.v1p2beta1.ColorInfo.verify|verify} messages.
+ * @param message ColorInfo message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p2beta1.IColorInfo, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ColorInfo message, length delimited. Does not implicitly {@link google.cloud.vision.v1p2beta1.ColorInfo.verify|verify} messages.
+ * @param message ColorInfo message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p2beta1.IColorInfo, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ColorInfo message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ColorInfo
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p2beta1.ColorInfo;
+
+ /**
+ * Decodes a ColorInfo message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ColorInfo
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p2beta1.ColorInfo;
+
+ /**
+ * Verifies a ColorInfo message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ColorInfo message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ColorInfo
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p2beta1.ColorInfo;
+
+ /**
+ * Creates a plain object from a ColorInfo message. Also converts values to other types if specified.
+ * @param message ColorInfo
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p2beta1.ColorInfo, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ColorInfo to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ColorInfo
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a DominantColorsAnnotation. */
+ interface IDominantColorsAnnotation {
+
+ /** DominantColorsAnnotation colors */
+ colors?: (google.cloud.vision.v1p2beta1.IColorInfo[]|null);
+ }
+
+ /** Represents a DominantColorsAnnotation. */
+ class DominantColorsAnnotation implements IDominantColorsAnnotation {
+
+ /**
+ * Constructs a new DominantColorsAnnotation.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p2beta1.IDominantColorsAnnotation);
+
+ /** DominantColorsAnnotation colors. */
+ public colors: google.cloud.vision.v1p2beta1.IColorInfo[];
+
+ /**
+ * Creates a new DominantColorsAnnotation instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns DominantColorsAnnotation instance
+ */
+ public static create(properties?: google.cloud.vision.v1p2beta1.IDominantColorsAnnotation): google.cloud.vision.v1p2beta1.DominantColorsAnnotation;
+
+ /**
+ * Encodes the specified DominantColorsAnnotation message. Does not implicitly {@link google.cloud.vision.v1p2beta1.DominantColorsAnnotation.verify|verify} messages.
+ * @param message DominantColorsAnnotation message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p2beta1.IDominantColorsAnnotation, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified DominantColorsAnnotation message, length delimited. Does not implicitly {@link google.cloud.vision.v1p2beta1.DominantColorsAnnotation.verify|verify} messages.
+ * @param message DominantColorsAnnotation message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p2beta1.IDominantColorsAnnotation, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a DominantColorsAnnotation message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns DominantColorsAnnotation
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p2beta1.DominantColorsAnnotation;
+
+ /**
+ * Decodes a DominantColorsAnnotation message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns DominantColorsAnnotation
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p2beta1.DominantColorsAnnotation;
+
+ /**
+ * Verifies a DominantColorsAnnotation message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a DominantColorsAnnotation message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns DominantColorsAnnotation
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p2beta1.DominantColorsAnnotation;
+
+ /**
+ * Creates a plain object from a DominantColorsAnnotation message. Also converts values to other types if specified.
+ * @param message DominantColorsAnnotation
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p2beta1.DominantColorsAnnotation, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this DominantColorsAnnotation to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for DominantColorsAnnotation
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an ImageProperties. */
+ interface IImageProperties {
+
+ /** ImageProperties dominantColors */
+ dominantColors?: (google.cloud.vision.v1p2beta1.IDominantColorsAnnotation|null);
+ }
+
+ /** Represents an ImageProperties. */
+ class ImageProperties implements IImageProperties {
+
+ /**
+ * Constructs a new ImageProperties.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p2beta1.IImageProperties);
+
+ /** ImageProperties dominantColors. */
+ public dominantColors?: (google.cloud.vision.v1p2beta1.IDominantColorsAnnotation|null);
+
+ /**
+ * Creates a new ImageProperties instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ImageProperties instance
+ */
+ public static create(properties?: google.cloud.vision.v1p2beta1.IImageProperties): google.cloud.vision.v1p2beta1.ImageProperties;
+
+ /**
+ * Encodes the specified ImageProperties message. Does not implicitly {@link google.cloud.vision.v1p2beta1.ImageProperties.verify|verify} messages.
+ * @param message ImageProperties message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p2beta1.IImageProperties, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ImageProperties message, length delimited. Does not implicitly {@link google.cloud.vision.v1p2beta1.ImageProperties.verify|verify} messages.
+ * @param message ImageProperties message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p2beta1.IImageProperties, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an ImageProperties message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ImageProperties
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p2beta1.ImageProperties;
+
+ /**
+ * Decodes an ImageProperties message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ImageProperties
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p2beta1.ImageProperties;
+
+ /**
+ * Verifies an ImageProperties message.
+ * @param message Plain 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 ImageProperties message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ImageProperties
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p2beta1.ImageProperties;
+
+ /**
+ * Creates a plain object from an ImageProperties message. Also converts values to other types if specified.
+ * @param message ImageProperties
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p2beta1.ImageProperties, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ImageProperties to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ImageProperties
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a CropHint. */
+ interface ICropHint {
+
+ /** CropHint boundingPoly */
+ boundingPoly?: (google.cloud.vision.v1p2beta1.IBoundingPoly|null);
+
+ /** CropHint confidence */
+ confidence?: (number|null);
+
+ /** CropHint importanceFraction */
+ importanceFraction?: (number|null);
+ }
+
+ /** Represents a CropHint. */
+ class CropHint implements ICropHint {
+
+ /**
+ * Constructs a new CropHint.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p2beta1.ICropHint);
+
+ /** CropHint boundingPoly. */
+ public boundingPoly?: (google.cloud.vision.v1p2beta1.IBoundingPoly|null);
+
+ /** CropHint confidence. */
+ public confidence: number;
+
+ /** CropHint importanceFraction. */
+ public importanceFraction: number;
+
+ /**
+ * Creates a new CropHint instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns CropHint instance
+ */
+ public static create(properties?: google.cloud.vision.v1p2beta1.ICropHint): google.cloud.vision.v1p2beta1.CropHint;
+
+ /**
+ * Encodes the specified CropHint message. Does not implicitly {@link google.cloud.vision.v1p2beta1.CropHint.verify|verify} messages.
+ * @param message CropHint message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p2beta1.ICropHint, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified CropHint message, length delimited. Does not implicitly {@link google.cloud.vision.v1p2beta1.CropHint.verify|verify} messages.
+ * @param message CropHint message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p2beta1.ICropHint, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a CropHint message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns CropHint
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p2beta1.CropHint;
+
+ /**
+ * Decodes a CropHint message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns CropHint
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p2beta1.CropHint;
+
+ /**
+ * Verifies a CropHint message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a CropHint message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns CropHint
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p2beta1.CropHint;
+
+ /**
+ * Creates a plain object from a CropHint message. Also converts values to other types if specified.
+ * @param message CropHint
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p2beta1.CropHint, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this CropHint to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for CropHint
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a CropHintsAnnotation. */
+ interface ICropHintsAnnotation {
+
+ /** CropHintsAnnotation cropHints */
+ cropHints?: (google.cloud.vision.v1p2beta1.ICropHint[]|null);
+ }
+
+ /** Represents a CropHintsAnnotation. */
+ class CropHintsAnnotation implements ICropHintsAnnotation {
+
+ /**
+ * Constructs a new CropHintsAnnotation.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p2beta1.ICropHintsAnnotation);
+
+ /** CropHintsAnnotation cropHints. */
+ public cropHints: google.cloud.vision.v1p2beta1.ICropHint[];
+
+ /**
+ * Creates a new CropHintsAnnotation instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns CropHintsAnnotation instance
+ */
+ public static create(properties?: google.cloud.vision.v1p2beta1.ICropHintsAnnotation): google.cloud.vision.v1p2beta1.CropHintsAnnotation;
+
+ /**
+ * Encodes the specified CropHintsAnnotation message. Does not implicitly {@link google.cloud.vision.v1p2beta1.CropHintsAnnotation.verify|verify} messages.
+ * @param message CropHintsAnnotation message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p2beta1.ICropHintsAnnotation, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified CropHintsAnnotation message, length delimited. Does not implicitly {@link google.cloud.vision.v1p2beta1.CropHintsAnnotation.verify|verify} messages.
+ * @param message CropHintsAnnotation message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p2beta1.ICropHintsAnnotation, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a CropHintsAnnotation message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns CropHintsAnnotation
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p2beta1.CropHintsAnnotation;
+
+ /**
+ * Decodes a CropHintsAnnotation message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns CropHintsAnnotation
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p2beta1.CropHintsAnnotation;
+
+ /**
+ * Verifies a CropHintsAnnotation message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a CropHintsAnnotation message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns CropHintsAnnotation
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p2beta1.CropHintsAnnotation;
+
+ /**
+ * Creates a plain object from a CropHintsAnnotation message. Also converts values to other types if specified.
+ * @param message CropHintsAnnotation
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p2beta1.CropHintsAnnotation, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this CropHintsAnnotation to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for CropHintsAnnotation
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a CropHintsParams. */
+ interface ICropHintsParams {
+
+ /** CropHintsParams aspectRatios */
+ aspectRatios?: (number[]|null);
+ }
+
+ /** Represents a CropHintsParams. */
+ class CropHintsParams implements ICropHintsParams {
+
+ /**
+ * Constructs a new CropHintsParams.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p2beta1.ICropHintsParams);
+
+ /** CropHintsParams aspectRatios. */
+ public aspectRatios: number[];
+
+ /**
+ * Creates a new CropHintsParams instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns CropHintsParams instance
+ */
+ public static create(properties?: google.cloud.vision.v1p2beta1.ICropHintsParams): google.cloud.vision.v1p2beta1.CropHintsParams;
+
+ /**
+ * Encodes the specified CropHintsParams message. Does not implicitly {@link google.cloud.vision.v1p2beta1.CropHintsParams.verify|verify} messages.
+ * @param message CropHintsParams message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p2beta1.ICropHintsParams, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified CropHintsParams message, length delimited. Does not implicitly {@link google.cloud.vision.v1p2beta1.CropHintsParams.verify|verify} messages.
+ * @param message CropHintsParams message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p2beta1.ICropHintsParams, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a CropHintsParams message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns CropHintsParams
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p2beta1.CropHintsParams;
+
+ /**
+ * Decodes a CropHintsParams message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns CropHintsParams
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p2beta1.CropHintsParams;
+
+ /**
+ * Verifies a CropHintsParams message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a CropHintsParams message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns CropHintsParams
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p2beta1.CropHintsParams;
+
+ /**
+ * Creates a plain object from a CropHintsParams message. Also converts values to other types if specified.
+ * @param message CropHintsParams
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p2beta1.CropHintsParams, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this CropHintsParams to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for CropHintsParams
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a WebDetectionParams. */
+ interface IWebDetectionParams {
+
+ /** WebDetectionParams includeGeoResults */
+ includeGeoResults?: (boolean|null);
+ }
+
+ /** Represents a WebDetectionParams. */
+ class WebDetectionParams implements IWebDetectionParams {
+
+ /**
+ * Constructs a new WebDetectionParams.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p2beta1.IWebDetectionParams);
+
+ /** WebDetectionParams includeGeoResults. */
+ public includeGeoResults: boolean;
+
+ /**
+ * Creates a new WebDetectionParams instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns WebDetectionParams instance
+ */
+ public static create(properties?: google.cloud.vision.v1p2beta1.IWebDetectionParams): google.cloud.vision.v1p2beta1.WebDetectionParams;
+
+ /**
+ * Encodes the specified WebDetectionParams message. Does not implicitly {@link google.cloud.vision.v1p2beta1.WebDetectionParams.verify|verify} messages.
+ * @param message WebDetectionParams message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p2beta1.IWebDetectionParams, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified WebDetectionParams message, length delimited. Does not implicitly {@link google.cloud.vision.v1p2beta1.WebDetectionParams.verify|verify} messages.
+ * @param message WebDetectionParams message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p2beta1.IWebDetectionParams, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a WebDetectionParams message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns WebDetectionParams
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p2beta1.WebDetectionParams;
+
+ /**
+ * Decodes a WebDetectionParams message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns WebDetectionParams
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p2beta1.WebDetectionParams;
+
+ /**
+ * Verifies a WebDetectionParams message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a WebDetectionParams message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns WebDetectionParams
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p2beta1.WebDetectionParams;
+
+ /**
+ * Creates a plain object from a WebDetectionParams message. Also converts values to other types if specified.
+ * @param message WebDetectionParams
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p2beta1.WebDetectionParams, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this WebDetectionParams to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for WebDetectionParams
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a TextDetectionParams. */
+ interface ITextDetectionParams {
+
+ /** TextDetectionParams enableTextDetectionConfidenceScore */
+ enableTextDetectionConfidenceScore?: (boolean|null);
+
+ /** TextDetectionParams advancedOcrOptions */
+ advancedOcrOptions?: (string[]|null);
+ }
+
+ /** Represents a TextDetectionParams. */
+ class TextDetectionParams implements ITextDetectionParams {
+
+ /**
+ * Constructs a new TextDetectionParams.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p2beta1.ITextDetectionParams);
+
+ /** TextDetectionParams enableTextDetectionConfidenceScore. */
+ public enableTextDetectionConfidenceScore: boolean;
+
+ /** TextDetectionParams advancedOcrOptions. */
+ public advancedOcrOptions: string[];
+
+ /**
+ * Creates a new TextDetectionParams instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns TextDetectionParams instance
+ */
+ public static create(properties?: google.cloud.vision.v1p2beta1.ITextDetectionParams): google.cloud.vision.v1p2beta1.TextDetectionParams;
+
+ /**
+ * Encodes the specified TextDetectionParams message. Does not implicitly {@link google.cloud.vision.v1p2beta1.TextDetectionParams.verify|verify} messages.
+ * @param message TextDetectionParams message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p2beta1.ITextDetectionParams, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified TextDetectionParams message, length delimited. Does not implicitly {@link google.cloud.vision.v1p2beta1.TextDetectionParams.verify|verify} messages.
+ * @param message TextDetectionParams message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p2beta1.ITextDetectionParams, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a TextDetectionParams message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns TextDetectionParams
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p2beta1.TextDetectionParams;
+
+ /**
+ * Decodes a TextDetectionParams message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns TextDetectionParams
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p2beta1.TextDetectionParams;
+
+ /**
+ * Verifies a TextDetectionParams message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a TextDetectionParams message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns TextDetectionParams
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p2beta1.TextDetectionParams;
+
+ /**
+ * Creates a plain object from a TextDetectionParams message. Also converts values to other types if specified.
+ * @param message TextDetectionParams
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p2beta1.TextDetectionParams, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this TextDetectionParams to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for TextDetectionParams
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an ImageContext. */
+ interface IImageContext {
+
+ /** ImageContext latLongRect */
+ latLongRect?: (google.cloud.vision.v1p2beta1.ILatLongRect|null);
+
+ /** ImageContext languageHints */
+ languageHints?: (string[]|null);
+
+ /** ImageContext cropHintsParams */
+ cropHintsParams?: (google.cloud.vision.v1p2beta1.ICropHintsParams|null);
+
+ /** ImageContext webDetectionParams */
+ webDetectionParams?: (google.cloud.vision.v1p2beta1.IWebDetectionParams|null);
+
+ /** ImageContext textDetectionParams */
+ textDetectionParams?: (google.cloud.vision.v1p2beta1.ITextDetectionParams|null);
+ }
+
+ /** Represents an ImageContext. */
+ class ImageContext implements IImageContext {
+
+ /**
+ * Constructs a new ImageContext.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p2beta1.IImageContext);
+
+ /** ImageContext latLongRect. */
+ public latLongRect?: (google.cloud.vision.v1p2beta1.ILatLongRect|null);
+
+ /** ImageContext languageHints. */
+ public languageHints: string[];
+
+ /** ImageContext cropHintsParams. */
+ public cropHintsParams?: (google.cloud.vision.v1p2beta1.ICropHintsParams|null);
+
+ /** ImageContext webDetectionParams. */
+ public webDetectionParams?: (google.cloud.vision.v1p2beta1.IWebDetectionParams|null);
+
+ /** ImageContext textDetectionParams. */
+ public textDetectionParams?: (google.cloud.vision.v1p2beta1.ITextDetectionParams|null);
+
+ /**
+ * Creates a new ImageContext instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ImageContext instance
+ */
+ public static create(properties?: google.cloud.vision.v1p2beta1.IImageContext): google.cloud.vision.v1p2beta1.ImageContext;
+
+ /**
+ * Encodes the specified ImageContext message. Does not implicitly {@link google.cloud.vision.v1p2beta1.ImageContext.verify|verify} messages.
+ * @param message ImageContext message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p2beta1.IImageContext, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ImageContext message, length delimited. Does not implicitly {@link google.cloud.vision.v1p2beta1.ImageContext.verify|verify} messages.
+ * @param message ImageContext message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p2beta1.IImageContext, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an ImageContext message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ImageContext
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p2beta1.ImageContext;
+
+ /**
+ * Decodes an ImageContext message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ImageContext
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p2beta1.ImageContext;
+
+ /**
+ * Verifies an ImageContext message.
+ * @param message Plain 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 ImageContext message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ImageContext
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p2beta1.ImageContext;
+
+ /**
+ * Creates a plain object from an ImageContext message. Also converts values to other types if specified.
+ * @param message ImageContext
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p2beta1.ImageContext, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ImageContext to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ImageContext
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an AnnotateImageRequest. */
+ interface IAnnotateImageRequest {
+
+ /** AnnotateImageRequest image */
+ image?: (google.cloud.vision.v1p2beta1.IImage|null);
+
+ /** AnnotateImageRequest features */
+ features?: (google.cloud.vision.v1p2beta1.IFeature[]|null);
+
+ /** AnnotateImageRequest imageContext */
+ imageContext?: (google.cloud.vision.v1p2beta1.IImageContext|null);
+ }
+
+ /** Represents an AnnotateImageRequest. */
+ class AnnotateImageRequest implements IAnnotateImageRequest {
+
+ /**
+ * Constructs a new AnnotateImageRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p2beta1.IAnnotateImageRequest);
+
+ /** AnnotateImageRequest image. */
+ public image?: (google.cloud.vision.v1p2beta1.IImage|null);
+
+ /** AnnotateImageRequest features. */
+ public features: google.cloud.vision.v1p2beta1.IFeature[];
+
+ /** AnnotateImageRequest imageContext. */
+ public imageContext?: (google.cloud.vision.v1p2beta1.IImageContext|null);
+
+ /**
+ * Creates a new AnnotateImageRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns AnnotateImageRequest instance
+ */
+ public static create(properties?: google.cloud.vision.v1p2beta1.IAnnotateImageRequest): google.cloud.vision.v1p2beta1.AnnotateImageRequest;
+
+ /**
+ * Encodes the specified AnnotateImageRequest message. Does not implicitly {@link google.cloud.vision.v1p2beta1.AnnotateImageRequest.verify|verify} messages.
+ * @param message AnnotateImageRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p2beta1.IAnnotateImageRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified AnnotateImageRequest message, length delimited. Does not implicitly {@link google.cloud.vision.v1p2beta1.AnnotateImageRequest.verify|verify} messages.
+ * @param message AnnotateImageRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p2beta1.IAnnotateImageRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an AnnotateImageRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns AnnotateImageRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p2beta1.AnnotateImageRequest;
+
+ /**
+ * Decodes an AnnotateImageRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns AnnotateImageRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p2beta1.AnnotateImageRequest;
+
+ /**
+ * Verifies an AnnotateImageRequest message.
+ * @param message Plain 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 AnnotateImageRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns AnnotateImageRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p2beta1.AnnotateImageRequest;
+
+ /**
+ * Creates a plain object from an AnnotateImageRequest message. Also converts values to other types if specified.
+ * @param message AnnotateImageRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p2beta1.AnnotateImageRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this AnnotateImageRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for AnnotateImageRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an ImageAnnotationContext. */
+ interface IImageAnnotationContext {
+
+ /** ImageAnnotationContext uri */
+ uri?: (string|null);
+
+ /** ImageAnnotationContext pageNumber */
+ pageNumber?: (number|null);
+ }
+
+ /** Represents an ImageAnnotationContext. */
+ class ImageAnnotationContext implements IImageAnnotationContext {
+
+ /**
+ * Constructs a new ImageAnnotationContext.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p2beta1.IImageAnnotationContext);
+
+ /** ImageAnnotationContext uri. */
+ public uri: string;
+
+ /** ImageAnnotationContext pageNumber. */
+ public pageNumber: number;
+
+ /**
+ * Creates a new ImageAnnotationContext instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ImageAnnotationContext instance
+ */
+ public static create(properties?: google.cloud.vision.v1p2beta1.IImageAnnotationContext): google.cloud.vision.v1p2beta1.ImageAnnotationContext;
+
+ /**
+ * Encodes the specified ImageAnnotationContext message. Does not implicitly {@link google.cloud.vision.v1p2beta1.ImageAnnotationContext.verify|verify} messages.
+ * @param message ImageAnnotationContext message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p2beta1.IImageAnnotationContext, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ImageAnnotationContext message, length delimited. Does not implicitly {@link google.cloud.vision.v1p2beta1.ImageAnnotationContext.verify|verify} messages.
+ * @param message ImageAnnotationContext message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p2beta1.IImageAnnotationContext, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an ImageAnnotationContext message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ImageAnnotationContext
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p2beta1.ImageAnnotationContext;
+
+ /**
+ * Decodes an ImageAnnotationContext message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ImageAnnotationContext
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p2beta1.ImageAnnotationContext;
+
+ /**
+ * Verifies an ImageAnnotationContext message.
+ * @param message Plain 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 ImageAnnotationContext message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ImageAnnotationContext
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p2beta1.ImageAnnotationContext;
+
+ /**
+ * Creates a plain object from an ImageAnnotationContext message. Also converts values to other types if specified.
+ * @param message ImageAnnotationContext
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p2beta1.ImageAnnotationContext, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ImageAnnotationContext to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ImageAnnotationContext
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an AnnotateImageResponse. */
+ interface IAnnotateImageResponse {
+
+ /** AnnotateImageResponse faceAnnotations */
+ faceAnnotations?: (google.cloud.vision.v1p2beta1.IFaceAnnotation[]|null);
+
+ /** AnnotateImageResponse landmarkAnnotations */
+ landmarkAnnotations?: (google.cloud.vision.v1p2beta1.IEntityAnnotation[]|null);
+
+ /** AnnotateImageResponse logoAnnotations */
+ logoAnnotations?: (google.cloud.vision.v1p2beta1.IEntityAnnotation[]|null);
+
+ /** AnnotateImageResponse labelAnnotations */
+ labelAnnotations?: (google.cloud.vision.v1p2beta1.IEntityAnnotation[]|null);
+
+ /** AnnotateImageResponse textAnnotations */
+ textAnnotations?: (google.cloud.vision.v1p2beta1.IEntityAnnotation[]|null);
+
+ /** AnnotateImageResponse fullTextAnnotation */
+ fullTextAnnotation?: (google.cloud.vision.v1p2beta1.ITextAnnotation|null);
+
+ /** AnnotateImageResponse safeSearchAnnotation */
+ safeSearchAnnotation?: (google.cloud.vision.v1p2beta1.ISafeSearchAnnotation|null);
+
+ /** AnnotateImageResponse imagePropertiesAnnotation */
+ imagePropertiesAnnotation?: (google.cloud.vision.v1p2beta1.IImageProperties|null);
+
+ /** AnnotateImageResponse cropHintsAnnotation */
+ cropHintsAnnotation?: (google.cloud.vision.v1p2beta1.ICropHintsAnnotation|null);
+
+ /** AnnotateImageResponse webDetection */
+ webDetection?: (google.cloud.vision.v1p2beta1.IWebDetection|null);
+
+ /** AnnotateImageResponse error */
+ error?: (google.rpc.IStatus|null);
+
+ /** AnnotateImageResponse context */
+ context?: (google.cloud.vision.v1p2beta1.IImageAnnotationContext|null);
+ }
+
+ /** Represents an AnnotateImageResponse. */
+ class AnnotateImageResponse implements IAnnotateImageResponse {
+
+ /**
+ * Constructs a new AnnotateImageResponse.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p2beta1.IAnnotateImageResponse);
+
+ /** AnnotateImageResponse faceAnnotations. */
+ public faceAnnotations: google.cloud.vision.v1p2beta1.IFaceAnnotation[];
+
+ /** AnnotateImageResponse landmarkAnnotations. */
+ public landmarkAnnotations: google.cloud.vision.v1p2beta1.IEntityAnnotation[];
+
+ /** AnnotateImageResponse logoAnnotations. */
+ public logoAnnotations: google.cloud.vision.v1p2beta1.IEntityAnnotation[];
+
+ /** AnnotateImageResponse labelAnnotations. */
+ public labelAnnotations: google.cloud.vision.v1p2beta1.IEntityAnnotation[];
+
+ /** AnnotateImageResponse textAnnotations. */
+ public textAnnotations: google.cloud.vision.v1p2beta1.IEntityAnnotation[];
+
+ /** AnnotateImageResponse fullTextAnnotation. */
+ public fullTextAnnotation?: (google.cloud.vision.v1p2beta1.ITextAnnotation|null);
+
+ /** AnnotateImageResponse safeSearchAnnotation. */
+ public safeSearchAnnotation?: (google.cloud.vision.v1p2beta1.ISafeSearchAnnotation|null);
+
+ /** AnnotateImageResponse imagePropertiesAnnotation. */
+ public imagePropertiesAnnotation?: (google.cloud.vision.v1p2beta1.IImageProperties|null);
+
+ /** AnnotateImageResponse cropHintsAnnotation. */
+ public cropHintsAnnotation?: (google.cloud.vision.v1p2beta1.ICropHintsAnnotation|null);
+
+ /** AnnotateImageResponse webDetection. */
+ public webDetection?: (google.cloud.vision.v1p2beta1.IWebDetection|null);
+
+ /** AnnotateImageResponse error. */
+ public error?: (google.rpc.IStatus|null);
+
+ /** AnnotateImageResponse context. */
+ public context?: (google.cloud.vision.v1p2beta1.IImageAnnotationContext|null);
+
+ /**
+ * Creates a new AnnotateImageResponse instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns AnnotateImageResponse instance
+ */
+ public static create(properties?: google.cloud.vision.v1p2beta1.IAnnotateImageResponse): google.cloud.vision.v1p2beta1.AnnotateImageResponse;
+
+ /**
+ * Encodes the specified AnnotateImageResponse message. Does not implicitly {@link google.cloud.vision.v1p2beta1.AnnotateImageResponse.verify|verify} messages.
+ * @param message AnnotateImageResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p2beta1.IAnnotateImageResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified AnnotateImageResponse message, length delimited. Does not implicitly {@link google.cloud.vision.v1p2beta1.AnnotateImageResponse.verify|verify} messages.
+ * @param message AnnotateImageResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p2beta1.IAnnotateImageResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an AnnotateImageResponse message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns AnnotateImageResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p2beta1.AnnotateImageResponse;
+
+ /**
+ * Decodes an AnnotateImageResponse message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns AnnotateImageResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p2beta1.AnnotateImageResponse;
+
+ /**
+ * Verifies an AnnotateImageResponse message.
+ * @param message Plain 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 AnnotateImageResponse message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns AnnotateImageResponse
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p2beta1.AnnotateImageResponse;
+
+ /**
+ * Creates a plain object from an AnnotateImageResponse message. Also converts values to other types if specified.
+ * @param message AnnotateImageResponse
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p2beta1.AnnotateImageResponse, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this AnnotateImageResponse to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for AnnotateImageResponse
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an AnnotateFileResponse. */
+ interface IAnnotateFileResponse {
+
+ /** AnnotateFileResponse inputConfig */
+ inputConfig?: (google.cloud.vision.v1p2beta1.IInputConfig|null);
+
+ /** AnnotateFileResponse responses */
+ responses?: (google.cloud.vision.v1p2beta1.IAnnotateImageResponse[]|null);
+ }
+
+ /** Represents an AnnotateFileResponse. */
+ class AnnotateFileResponse implements IAnnotateFileResponse {
+
+ /**
+ * Constructs a new AnnotateFileResponse.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p2beta1.IAnnotateFileResponse);
+
+ /** AnnotateFileResponse inputConfig. */
+ public inputConfig?: (google.cloud.vision.v1p2beta1.IInputConfig|null);
+
+ /** AnnotateFileResponse responses. */
+ public responses: google.cloud.vision.v1p2beta1.IAnnotateImageResponse[];
+
+ /**
+ * Creates a new AnnotateFileResponse instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns AnnotateFileResponse instance
+ */
+ public static create(properties?: google.cloud.vision.v1p2beta1.IAnnotateFileResponse): google.cloud.vision.v1p2beta1.AnnotateFileResponse;
+
+ /**
+ * Encodes the specified AnnotateFileResponse message. Does not implicitly {@link google.cloud.vision.v1p2beta1.AnnotateFileResponse.verify|verify} messages.
+ * @param message AnnotateFileResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p2beta1.IAnnotateFileResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified AnnotateFileResponse message, length delimited. Does not implicitly {@link google.cloud.vision.v1p2beta1.AnnotateFileResponse.verify|verify} messages.
+ * @param message AnnotateFileResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p2beta1.IAnnotateFileResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an AnnotateFileResponse message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns AnnotateFileResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p2beta1.AnnotateFileResponse;
+
+ /**
+ * Decodes an AnnotateFileResponse message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns AnnotateFileResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p2beta1.AnnotateFileResponse;
+
+ /**
+ * Verifies an AnnotateFileResponse message.
+ * @param message Plain 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 AnnotateFileResponse message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns AnnotateFileResponse
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p2beta1.AnnotateFileResponse;
+
+ /**
+ * Creates a plain object from an AnnotateFileResponse message. Also converts values to other types if specified.
+ * @param message AnnotateFileResponse
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p2beta1.AnnotateFileResponse, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this AnnotateFileResponse to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for AnnotateFileResponse
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a BatchAnnotateImagesRequest. */
+ interface IBatchAnnotateImagesRequest {
+
+ /** BatchAnnotateImagesRequest requests */
+ requests?: (google.cloud.vision.v1p2beta1.IAnnotateImageRequest[]|null);
+ }
+
+ /** Represents a BatchAnnotateImagesRequest. */
+ class BatchAnnotateImagesRequest implements IBatchAnnotateImagesRequest {
+
+ /**
+ * Constructs a new BatchAnnotateImagesRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p2beta1.IBatchAnnotateImagesRequest);
+
+ /** BatchAnnotateImagesRequest requests. */
+ public requests: google.cloud.vision.v1p2beta1.IAnnotateImageRequest[];
+
+ /**
+ * Creates a new BatchAnnotateImagesRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns BatchAnnotateImagesRequest instance
+ */
+ public static create(properties?: google.cloud.vision.v1p2beta1.IBatchAnnotateImagesRequest): google.cloud.vision.v1p2beta1.BatchAnnotateImagesRequest;
+
+ /**
+ * Encodes the specified BatchAnnotateImagesRequest message. Does not implicitly {@link google.cloud.vision.v1p2beta1.BatchAnnotateImagesRequest.verify|verify} messages.
+ * @param message BatchAnnotateImagesRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p2beta1.IBatchAnnotateImagesRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified BatchAnnotateImagesRequest message, length delimited. Does not implicitly {@link google.cloud.vision.v1p2beta1.BatchAnnotateImagesRequest.verify|verify} messages.
+ * @param message BatchAnnotateImagesRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p2beta1.IBatchAnnotateImagesRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a BatchAnnotateImagesRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns BatchAnnotateImagesRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p2beta1.BatchAnnotateImagesRequest;
+
+ /**
+ * Decodes a BatchAnnotateImagesRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns BatchAnnotateImagesRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p2beta1.BatchAnnotateImagesRequest;
+
+ /**
+ * Verifies a BatchAnnotateImagesRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a BatchAnnotateImagesRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns BatchAnnotateImagesRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p2beta1.BatchAnnotateImagesRequest;
+
+ /**
+ * Creates a plain object from a BatchAnnotateImagesRequest message. Also converts values to other types if specified.
+ * @param message BatchAnnotateImagesRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p2beta1.BatchAnnotateImagesRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this BatchAnnotateImagesRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for BatchAnnotateImagesRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a BatchAnnotateImagesResponse. */
+ interface IBatchAnnotateImagesResponse {
+
+ /** BatchAnnotateImagesResponse responses */
+ responses?: (google.cloud.vision.v1p2beta1.IAnnotateImageResponse[]|null);
+ }
+
+ /** Represents a BatchAnnotateImagesResponse. */
+ class BatchAnnotateImagesResponse implements IBatchAnnotateImagesResponse {
+
+ /**
+ * Constructs a new BatchAnnotateImagesResponse.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p2beta1.IBatchAnnotateImagesResponse);
+
+ /** BatchAnnotateImagesResponse responses. */
+ public responses: google.cloud.vision.v1p2beta1.IAnnotateImageResponse[];
+
+ /**
+ * Creates a new BatchAnnotateImagesResponse instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns BatchAnnotateImagesResponse instance
+ */
+ public static create(properties?: google.cloud.vision.v1p2beta1.IBatchAnnotateImagesResponse): google.cloud.vision.v1p2beta1.BatchAnnotateImagesResponse;
+
+ /**
+ * Encodes the specified BatchAnnotateImagesResponse message. Does not implicitly {@link google.cloud.vision.v1p2beta1.BatchAnnotateImagesResponse.verify|verify} messages.
+ * @param message BatchAnnotateImagesResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p2beta1.IBatchAnnotateImagesResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified BatchAnnotateImagesResponse message, length delimited. Does not implicitly {@link google.cloud.vision.v1p2beta1.BatchAnnotateImagesResponse.verify|verify} messages.
+ * @param message BatchAnnotateImagesResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p2beta1.IBatchAnnotateImagesResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a BatchAnnotateImagesResponse message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns BatchAnnotateImagesResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p2beta1.BatchAnnotateImagesResponse;
+
+ /**
+ * Decodes a BatchAnnotateImagesResponse message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns BatchAnnotateImagesResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p2beta1.BatchAnnotateImagesResponse;
+
+ /**
+ * Verifies a BatchAnnotateImagesResponse message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a BatchAnnotateImagesResponse message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns BatchAnnotateImagesResponse
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p2beta1.BatchAnnotateImagesResponse;
+
+ /**
+ * Creates a plain object from a BatchAnnotateImagesResponse message. Also converts values to other types if specified.
+ * @param message BatchAnnotateImagesResponse
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p2beta1.BatchAnnotateImagesResponse, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this BatchAnnotateImagesResponse to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for BatchAnnotateImagesResponse
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an AsyncAnnotateFileRequest. */
+ interface IAsyncAnnotateFileRequest {
+
+ /** AsyncAnnotateFileRequest inputConfig */
+ inputConfig?: (google.cloud.vision.v1p2beta1.IInputConfig|null);
+
+ /** AsyncAnnotateFileRequest features */
+ features?: (google.cloud.vision.v1p2beta1.IFeature[]|null);
+
+ /** AsyncAnnotateFileRequest imageContext */
+ imageContext?: (google.cloud.vision.v1p2beta1.IImageContext|null);
+
+ /** AsyncAnnotateFileRequest outputConfig */
+ outputConfig?: (google.cloud.vision.v1p2beta1.IOutputConfig|null);
+ }
+
+ /** Represents an AsyncAnnotateFileRequest. */
+ class AsyncAnnotateFileRequest implements IAsyncAnnotateFileRequest {
+
+ /**
+ * Constructs a new AsyncAnnotateFileRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p2beta1.IAsyncAnnotateFileRequest);
+
+ /** AsyncAnnotateFileRequest inputConfig. */
+ public inputConfig?: (google.cloud.vision.v1p2beta1.IInputConfig|null);
+
+ /** AsyncAnnotateFileRequest features. */
+ public features: google.cloud.vision.v1p2beta1.IFeature[];
+
+ /** AsyncAnnotateFileRequest imageContext. */
+ public imageContext?: (google.cloud.vision.v1p2beta1.IImageContext|null);
+
+ /** AsyncAnnotateFileRequest outputConfig. */
+ public outputConfig?: (google.cloud.vision.v1p2beta1.IOutputConfig|null);
+
+ /**
+ * Creates a new AsyncAnnotateFileRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns AsyncAnnotateFileRequest instance
+ */
+ public static create(properties?: google.cloud.vision.v1p2beta1.IAsyncAnnotateFileRequest): google.cloud.vision.v1p2beta1.AsyncAnnotateFileRequest;
+
+ /**
+ * Encodes the specified AsyncAnnotateFileRequest message. Does not implicitly {@link google.cloud.vision.v1p2beta1.AsyncAnnotateFileRequest.verify|verify} messages.
+ * @param message AsyncAnnotateFileRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p2beta1.IAsyncAnnotateFileRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified AsyncAnnotateFileRequest message, length delimited. Does not implicitly {@link google.cloud.vision.v1p2beta1.AsyncAnnotateFileRequest.verify|verify} messages.
+ * @param message AsyncAnnotateFileRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p2beta1.IAsyncAnnotateFileRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an AsyncAnnotateFileRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns AsyncAnnotateFileRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p2beta1.AsyncAnnotateFileRequest;
+
+ /**
+ * Decodes an AsyncAnnotateFileRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns AsyncAnnotateFileRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p2beta1.AsyncAnnotateFileRequest;
+
+ /**
+ * Verifies an AsyncAnnotateFileRequest message.
+ * @param message Plain 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 AsyncAnnotateFileRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns AsyncAnnotateFileRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p2beta1.AsyncAnnotateFileRequest;
+
+ /**
+ * Creates a plain object from an AsyncAnnotateFileRequest message. Also converts values to other types if specified.
+ * @param message AsyncAnnotateFileRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p2beta1.AsyncAnnotateFileRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this AsyncAnnotateFileRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for AsyncAnnotateFileRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an AsyncAnnotateFileResponse. */
+ interface IAsyncAnnotateFileResponse {
+
+ /** AsyncAnnotateFileResponse outputConfig */
+ outputConfig?: (google.cloud.vision.v1p2beta1.IOutputConfig|null);
+ }
+
+ /** Represents an AsyncAnnotateFileResponse. */
+ class AsyncAnnotateFileResponse implements IAsyncAnnotateFileResponse {
+
+ /**
+ * Constructs a new AsyncAnnotateFileResponse.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p2beta1.IAsyncAnnotateFileResponse);
+
+ /** AsyncAnnotateFileResponse outputConfig. */
+ public outputConfig?: (google.cloud.vision.v1p2beta1.IOutputConfig|null);
+
+ /**
+ * Creates a new AsyncAnnotateFileResponse instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns AsyncAnnotateFileResponse instance
+ */
+ public static create(properties?: google.cloud.vision.v1p2beta1.IAsyncAnnotateFileResponse): google.cloud.vision.v1p2beta1.AsyncAnnotateFileResponse;
+
+ /**
+ * Encodes the specified AsyncAnnotateFileResponse message. Does not implicitly {@link google.cloud.vision.v1p2beta1.AsyncAnnotateFileResponse.verify|verify} messages.
+ * @param message AsyncAnnotateFileResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p2beta1.IAsyncAnnotateFileResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified AsyncAnnotateFileResponse message, length delimited. Does not implicitly {@link google.cloud.vision.v1p2beta1.AsyncAnnotateFileResponse.verify|verify} messages.
+ * @param message AsyncAnnotateFileResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p2beta1.IAsyncAnnotateFileResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an AsyncAnnotateFileResponse message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns AsyncAnnotateFileResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p2beta1.AsyncAnnotateFileResponse;
+
+ /**
+ * Decodes an AsyncAnnotateFileResponse message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns AsyncAnnotateFileResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p2beta1.AsyncAnnotateFileResponse;
+
+ /**
+ * Verifies an AsyncAnnotateFileResponse message.
+ * @param message Plain 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 AsyncAnnotateFileResponse message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns AsyncAnnotateFileResponse
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p2beta1.AsyncAnnotateFileResponse;
+
+ /**
+ * Creates a plain object from an AsyncAnnotateFileResponse message. Also converts values to other types if specified.
+ * @param message AsyncAnnotateFileResponse
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p2beta1.AsyncAnnotateFileResponse, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this AsyncAnnotateFileResponse to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for AsyncAnnotateFileResponse
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an AsyncBatchAnnotateFilesRequest. */
+ interface IAsyncBatchAnnotateFilesRequest {
+
+ /** AsyncBatchAnnotateFilesRequest requests */
+ requests?: (google.cloud.vision.v1p2beta1.IAsyncAnnotateFileRequest[]|null);
+ }
+
+ /** Represents an AsyncBatchAnnotateFilesRequest. */
+ class AsyncBatchAnnotateFilesRequest implements IAsyncBatchAnnotateFilesRequest {
+
+ /**
+ * Constructs a new AsyncBatchAnnotateFilesRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p2beta1.IAsyncBatchAnnotateFilesRequest);
+
+ /** AsyncBatchAnnotateFilesRequest requests. */
+ public requests: google.cloud.vision.v1p2beta1.IAsyncAnnotateFileRequest[];
+
+ /**
+ * Creates a new AsyncBatchAnnotateFilesRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns AsyncBatchAnnotateFilesRequest instance
+ */
+ public static create(properties?: google.cloud.vision.v1p2beta1.IAsyncBatchAnnotateFilesRequest): google.cloud.vision.v1p2beta1.AsyncBatchAnnotateFilesRequest;
+
+ /**
+ * Encodes the specified AsyncBatchAnnotateFilesRequest message. Does not implicitly {@link google.cloud.vision.v1p2beta1.AsyncBatchAnnotateFilesRequest.verify|verify} messages.
+ * @param message AsyncBatchAnnotateFilesRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p2beta1.IAsyncBatchAnnotateFilesRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified AsyncBatchAnnotateFilesRequest message, length delimited. Does not implicitly {@link google.cloud.vision.v1p2beta1.AsyncBatchAnnotateFilesRequest.verify|verify} messages.
+ * @param message AsyncBatchAnnotateFilesRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p2beta1.IAsyncBatchAnnotateFilesRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an AsyncBatchAnnotateFilesRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns AsyncBatchAnnotateFilesRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p2beta1.AsyncBatchAnnotateFilesRequest;
+
+ /**
+ * Decodes an AsyncBatchAnnotateFilesRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns AsyncBatchAnnotateFilesRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p2beta1.AsyncBatchAnnotateFilesRequest;
+
+ /**
+ * Verifies an AsyncBatchAnnotateFilesRequest message.
+ * @param message Plain 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 AsyncBatchAnnotateFilesRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns AsyncBatchAnnotateFilesRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p2beta1.AsyncBatchAnnotateFilesRequest;
+
+ /**
+ * Creates a plain object from an AsyncBatchAnnotateFilesRequest message. Also converts values to other types if specified.
+ * @param message AsyncBatchAnnotateFilesRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p2beta1.AsyncBatchAnnotateFilesRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this AsyncBatchAnnotateFilesRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for AsyncBatchAnnotateFilesRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an AsyncBatchAnnotateFilesResponse. */
+ interface IAsyncBatchAnnotateFilesResponse {
+
+ /** AsyncBatchAnnotateFilesResponse responses */
+ responses?: (google.cloud.vision.v1p2beta1.IAsyncAnnotateFileResponse[]|null);
+ }
+
+ /** Represents an AsyncBatchAnnotateFilesResponse. */
+ class AsyncBatchAnnotateFilesResponse implements IAsyncBatchAnnotateFilesResponse {
+
+ /**
+ * Constructs a new AsyncBatchAnnotateFilesResponse.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p2beta1.IAsyncBatchAnnotateFilesResponse);
+
+ /** AsyncBatchAnnotateFilesResponse responses. */
+ public responses: google.cloud.vision.v1p2beta1.IAsyncAnnotateFileResponse[];
+
+ /**
+ * Creates a new AsyncBatchAnnotateFilesResponse instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns AsyncBatchAnnotateFilesResponse instance
+ */
+ public static create(properties?: google.cloud.vision.v1p2beta1.IAsyncBatchAnnotateFilesResponse): google.cloud.vision.v1p2beta1.AsyncBatchAnnotateFilesResponse;
+
+ /**
+ * Encodes the specified AsyncBatchAnnotateFilesResponse message. Does not implicitly {@link google.cloud.vision.v1p2beta1.AsyncBatchAnnotateFilesResponse.verify|verify} messages.
+ * @param message AsyncBatchAnnotateFilesResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p2beta1.IAsyncBatchAnnotateFilesResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified AsyncBatchAnnotateFilesResponse message, length delimited. Does not implicitly {@link google.cloud.vision.v1p2beta1.AsyncBatchAnnotateFilesResponse.verify|verify} messages.
+ * @param message AsyncBatchAnnotateFilesResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p2beta1.IAsyncBatchAnnotateFilesResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an AsyncBatchAnnotateFilesResponse message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns AsyncBatchAnnotateFilesResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p2beta1.AsyncBatchAnnotateFilesResponse;
+
+ /**
+ * Decodes an AsyncBatchAnnotateFilesResponse message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns AsyncBatchAnnotateFilesResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p2beta1.AsyncBatchAnnotateFilesResponse;
+
+ /**
+ * Verifies an AsyncBatchAnnotateFilesResponse message.
+ * @param message Plain 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 AsyncBatchAnnotateFilesResponse message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns AsyncBatchAnnotateFilesResponse
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p2beta1.AsyncBatchAnnotateFilesResponse;
+
+ /**
+ * Creates a plain object from an AsyncBatchAnnotateFilesResponse message. Also converts values to other types if specified.
+ * @param message AsyncBatchAnnotateFilesResponse
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p2beta1.AsyncBatchAnnotateFilesResponse, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this AsyncBatchAnnotateFilesResponse to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for AsyncBatchAnnotateFilesResponse
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an InputConfig. */
+ interface IInputConfig {
+
+ /** InputConfig gcsSource */
+ gcsSource?: (google.cloud.vision.v1p2beta1.IGcsSource|null);
+
+ /** InputConfig mimeType */
+ mimeType?: (string|null);
+ }
+
+ /** Represents an InputConfig. */
+ class InputConfig implements IInputConfig {
+
+ /**
+ * Constructs a new InputConfig.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p2beta1.IInputConfig);
+
+ /** InputConfig gcsSource. */
+ public gcsSource?: (google.cloud.vision.v1p2beta1.IGcsSource|null);
+
+ /** InputConfig mimeType. */
+ public mimeType: string;
+
+ /**
+ * Creates a new InputConfig instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns InputConfig instance
+ */
+ public static create(properties?: google.cloud.vision.v1p2beta1.IInputConfig): google.cloud.vision.v1p2beta1.InputConfig;
+
+ /**
+ * Encodes the specified InputConfig message. Does not implicitly {@link google.cloud.vision.v1p2beta1.InputConfig.verify|verify} messages.
+ * @param message InputConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p2beta1.IInputConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified InputConfig message, length delimited. Does not implicitly {@link google.cloud.vision.v1p2beta1.InputConfig.verify|verify} messages.
+ * @param message InputConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p2beta1.IInputConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an InputConfig message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns InputConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p2beta1.InputConfig;
+
+ /**
+ * Decodes an InputConfig message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns InputConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p2beta1.InputConfig;
+
+ /**
+ * Verifies an InputConfig message.
+ * @param message Plain 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 InputConfig message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns InputConfig
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p2beta1.InputConfig;
+
+ /**
+ * Creates a plain object from an InputConfig message. Also converts values to other types if specified.
+ * @param message InputConfig
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p2beta1.InputConfig, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this InputConfig to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for InputConfig
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an OutputConfig. */
+ interface IOutputConfig {
+
+ /** OutputConfig gcsDestination */
+ gcsDestination?: (google.cloud.vision.v1p2beta1.IGcsDestination|null);
+
+ /** OutputConfig batchSize */
+ batchSize?: (number|null);
+ }
+
+ /** Represents an OutputConfig. */
+ class OutputConfig implements IOutputConfig {
+
+ /**
+ * Constructs a new OutputConfig.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p2beta1.IOutputConfig);
+
+ /** OutputConfig gcsDestination. */
+ public gcsDestination?: (google.cloud.vision.v1p2beta1.IGcsDestination|null);
+
+ /** OutputConfig batchSize. */
+ public batchSize: number;
+
+ /**
+ * Creates a new OutputConfig instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns OutputConfig instance
+ */
+ public static create(properties?: google.cloud.vision.v1p2beta1.IOutputConfig): google.cloud.vision.v1p2beta1.OutputConfig;
+
+ /**
+ * Encodes the specified OutputConfig message. Does not implicitly {@link google.cloud.vision.v1p2beta1.OutputConfig.verify|verify} messages.
+ * @param message OutputConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p2beta1.IOutputConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified OutputConfig message, length delimited. Does not implicitly {@link google.cloud.vision.v1p2beta1.OutputConfig.verify|verify} messages.
+ * @param message OutputConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p2beta1.IOutputConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an OutputConfig message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns OutputConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p2beta1.OutputConfig;
+
+ /**
+ * Decodes an OutputConfig message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns OutputConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p2beta1.OutputConfig;
+
+ /**
+ * Verifies an OutputConfig message.
+ * @param message Plain 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 OutputConfig message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns OutputConfig
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p2beta1.OutputConfig;
+
+ /**
+ * Creates a plain object from an OutputConfig message. Also converts values to other types if specified.
+ * @param message OutputConfig
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p2beta1.OutputConfig, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this OutputConfig to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for OutputConfig
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a GcsSource. */
+ interface IGcsSource {
+
+ /** GcsSource uri */
+ uri?: (string|null);
+ }
+
+ /** Represents a GcsSource. */
+ class GcsSource implements IGcsSource {
+
+ /**
+ * Constructs a new GcsSource.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p2beta1.IGcsSource);
+
+ /** GcsSource uri. */
+ public uri: string;
+
+ /**
+ * Creates a new GcsSource instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns GcsSource instance
+ */
+ public static create(properties?: google.cloud.vision.v1p2beta1.IGcsSource): google.cloud.vision.v1p2beta1.GcsSource;
+
+ /**
+ * Encodes the specified GcsSource message. Does not implicitly {@link google.cloud.vision.v1p2beta1.GcsSource.verify|verify} messages.
+ * @param message GcsSource message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p2beta1.IGcsSource, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified GcsSource message, length delimited. Does not implicitly {@link google.cloud.vision.v1p2beta1.GcsSource.verify|verify} messages.
+ * @param message GcsSource message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p2beta1.IGcsSource, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a GcsSource message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns GcsSource
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p2beta1.GcsSource;
+
+ /**
+ * Decodes a GcsSource message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns GcsSource
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p2beta1.GcsSource;
+
+ /**
+ * Verifies a GcsSource message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a GcsSource message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns GcsSource
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p2beta1.GcsSource;
+
+ /**
+ * Creates a plain object from a GcsSource message. Also converts values to other types if specified.
+ * @param message GcsSource
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p2beta1.GcsSource, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this GcsSource to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for GcsSource
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a GcsDestination. */
+ interface IGcsDestination {
+
+ /** GcsDestination uri */
+ uri?: (string|null);
+ }
+
+ /** Represents a GcsDestination. */
+ class GcsDestination implements IGcsDestination {
+
+ /**
+ * Constructs a new GcsDestination.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p2beta1.IGcsDestination);
+
+ /** GcsDestination uri. */
+ public uri: string;
+
+ /**
+ * Creates a new GcsDestination instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns GcsDestination instance
+ */
+ public static create(properties?: google.cloud.vision.v1p2beta1.IGcsDestination): google.cloud.vision.v1p2beta1.GcsDestination;
+
+ /**
+ * Encodes the specified GcsDestination message. Does not implicitly {@link google.cloud.vision.v1p2beta1.GcsDestination.verify|verify} messages.
+ * @param message GcsDestination message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p2beta1.IGcsDestination, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified GcsDestination message, length delimited. Does not implicitly {@link google.cloud.vision.v1p2beta1.GcsDestination.verify|verify} messages.
+ * @param message GcsDestination message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p2beta1.IGcsDestination, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a GcsDestination message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns GcsDestination
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p2beta1.GcsDestination;
+
+ /**
+ * Decodes a GcsDestination message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns GcsDestination
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p2beta1.GcsDestination;
+
+ /**
+ * Verifies a GcsDestination message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a GcsDestination message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns GcsDestination
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p2beta1.GcsDestination;
+
+ /**
+ * Creates a plain object from a GcsDestination message. Also converts values to other types if specified.
+ * @param message GcsDestination
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p2beta1.GcsDestination, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this GcsDestination to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for GcsDestination
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an OperationMetadata. */
+ interface IOperationMetadata {
+
+ /** OperationMetadata state */
+ state?: (google.cloud.vision.v1p2beta1.OperationMetadata.State|keyof typeof google.cloud.vision.v1p2beta1.OperationMetadata.State|null);
+
+ /** OperationMetadata createTime */
+ createTime?: (google.protobuf.ITimestamp|null);
+
+ /** OperationMetadata updateTime */
+ updateTime?: (google.protobuf.ITimestamp|null);
+ }
+
+ /** Represents an OperationMetadata. */
+ class OperationMetadata implements IOperationMetadata {
+
+ /**
+ * Constructs a new OperationMetadata.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p2beta1.IOperationMetadata);
+
+ /** OperationMetadata state. */
+ public state: (google.cloud.vision.v1p2beta1.OperationMetadata.State|keyof typeof google.cloud.vision.v1p2beta1.OperationMetadata.State);
+
+ /** OperationMetadata createTime. */
+ public createTime?: (google.protobuf.ITimestamp|null);
+
+ /** OperationMetadata updateTime. */
+ public updateTime?: (google.protobuf.ITimestamp|null);
+
+ /**
+ * Creates a new OperationMetadata instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns OperationMetadata instance
+ */
+ public static create(properties?: google.cloud.vision.v1p2beta1.IOperationMetadata): google.cloud.vision.v1p2beta1.OperationMetadata;
+
+ /**
+ * Encodes the specified OperationMetadata message. Does not implicitly {@link google.cloud.vision.v1p2beta1.OperationMetadata.verify|verify} messages.
+ * @param message OperationMetadata message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p2beta1.IOperationMetadata, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified OperationMetadata message, length delimited. Does not implicitly {@link google.cloud.vision.v1p2beta1.OperationMetadata.verify|verify} messages.
+ * @param message OperationMetadata message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p2beta1.IOperationMetadata, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an OperationMetadata message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns OperationMetadata
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p2beta1.OperationMetadata;
+
+ /**
+ * Decodes an OperationMetadata message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns OperationMetadata
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p2beta1.OperationMetadata;
+
+ /**
+ * Verifies an OperationMetadata message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates an OperationMetadata message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns OperationMetadata
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p2beta1.OperationMetadata;
+
+ /**
+ * Creates a plain object from an OperationMetadata message. Also converts values to other types if specified.
+ * @param message OperationMetadata
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p2beta1.OperationMetadata, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this OperationMetadata to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for OperationMetadata
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace OperationMetadata {
+
+ /** State enum. */
+ enum State {
+ STATE_UNSPECIFIED = 0,
+ CREATED = 1,
+ RUNNING = 2,
+ DONE = 3,
+ CANCELLED = 4
+ }
+ }
+
+ /** Likelihood enum. */
+ enum Likelihood {
+ UNKNOWN = 0,
+ VERY_UNLIKELY = 1,
+ UNLIKELY = 2,
+ POSSIBLE = 3,
+ LIKELY = 4,
+ VERY_LIKELY = 5
+ }
+
+ /** Properties of a TextAnnotation. */
+ interface ITextAnnotation {
+
+ /** TextAnnotation pages */
+ pages?: (google.cloud.vision.v1p2beta1.IPage[]|null);
+
+ /** TextAnnotation text */
+ text?: (string|null);
+ }
+
+ /** Represents a TextAnnotation. */
+ class TextAnnotation implements ITextAnnotation {
+
+ /**
+ * Constructs a new TextAnnotation.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p2beta1.ITextAnnotation);
+
+ /** TextAnnotation pages. */
+ public pages: google.cloud.vision.v1p2beta1.IPage[];
+
+ /** TextAnnotation text. */
+ public text: string;
+
+ /**
+ * Creates a new TextAnnotation instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns TextAnnotation instance
+ */
+ public static create(properties?: google.cloud.vision.v1p2beta1.ITextAnnotation): google.cloud.vision.v1p2beta1.TextAnnotation;
+
+ /**
+ * Encodes the specified TextAnnotation message. Does not implicitly {@link google.cloud.vision.v1p2beta1.TextAnnotation.verify|verify} messages.
+ * @param message TextAnnotation message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p2beta1.ITextAnnotation, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified TextAnnotation message, length delimited. Does not implicitly {@link google.cloud.vision.v1p2beta1.TextAnnotation.verify|verify} messages.
+ * @param message TextAnnotation message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p2beta1.ITextAnnotation, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a TextAnnotation message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns TextAnnotation
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p2beta1.TextAnnotation;
+
+ /**
+ * Decodes a TextAnnotation message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns TextAnnotation
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p2beta1.TextAnnotation;
+
+ /**
+ * Verifies a TextAnnotation message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a TextAnnotation message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns TextAnnotation
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p2beta1.TextAnnotation;
+
+ /**
+ * Creates a plain object from a TextAnnotation message. Also converts values to other types if specified.
+ * @param message TextAnnotation
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p2beta1.TextAnnotation, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this TextAnnotation to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for TextAnnotation
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace TextAnnotation {
+
+ /** Properties of a DetectedLanguage. */
+ interface IDetectedLanguage {
+
+ /** DetectedLanguage languageCode */
+ languageCode?: (string|null);
+
+ /** DetectedLanguage confidence */
+ confidence?: (number|null);
+ }
+
+ /** Represents a DetectedLanguage. */
+ class DetectedLanguage implements IDetectedLanguage {
+
+ /**
+ * Constructs a new DetectedLanguage.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p2beta1.TextAnnotation.IDetectedLanguage);
+
+ /** DetectedLanguage languageCode. */
+ public languageCode: string;
+
+ /** DetectedLanguage confidence. */
+ public confidence: number;
+
+ /**
+ * Creates a new DetectedLanguage instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns DetectedLanguage instance
+ */
+ public static create(properties?: google.cloud.vision.v1p2beta1.TextAnnotation.IDetectedLanguage): google.cloud.vision.v1p2beta1.TextAnnotation.DetectedLanguage;
+
+ /**
+ * Encodes the specified DetectedLanguage message. Does not implicitly {@link google.cloud.vision.v1p2beta1.TextAnnotation.DetectedLanguage.verify|verify} messages.
+ * @param message DetectedLanguage message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p2beta1.TextAnnotation.IDetectedLanguage, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified DetectedLanguage message, length delimited. Does not implicitly {@link google.cloud.vision.v1p2beta1.TextAnnotation.DetectedLanguage.verify|verify} messages.
+ * @param message DetectedLanguage message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p2beta1.TextAnnotation.IDetectedLanguage, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a DetectedLanguage message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns DetectedLanguage
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p2beta1.TextAnnotation.DetectedLanguage;
+
+ /**
+ * Decodes a DetectedLanguage message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns DetectedLanguage
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p2beta1.TextAnnotation.DetectedLanguage;
+
+ /**
+ * Verifies a DetectedLanguage message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a DetectedLanguage message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns DetectedLanguage
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p2beta1.TextAnnotation.DetectedLanguage;
+
+ /**
+ * Creates a plain object from a DetectedLanguage message. Also converts values to other types if specified.
+ * @param message DetectedLanguage
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p2beta1.TextAnnotation.DetectedLanguage, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this DetectedLanguage to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for DetectedLanguage
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a DetectedBreak. */
+ interface IDetectedBreak {
+
+ /** DetectedBreak type */
+ type?: (google.cloud.vision.v1p2beta1.TextAnnotation.DetectedBreak.BreakType|keyof typeof google.cloud.vision.v1p2beta1.TextAnnotation.DetectedBreak.BreakType|null);
+
+ /** DetectedBreak isPrefix */
+ isPrefix?: (boolean|null);
+ }
+
+ /** Represents a DetectedBreak. */
+ class DetectedBreak implements IDetectedBreak {
+
+ /**
+ * Constructs a new DetectedBreak.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p2beta1.TextAnnotation.IDetectedBreak);
+
+ /** DetectedBreak type. */
+ public type: (google.cloud.vision.v1p2beta1.TextAnnotation.DetectedBreak.BreakType|keyof typeof google.cloud.vision.v1p2beta1.TextAnnotation.DetectedBreak.BreakType);
+
+ /** DetectedBreak isPrefix. */
+ public isPrefix: boolean;
+
+ /**
+ * Creates a new DetectedBreak instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns DetectedBreak instance
+ */
+ public static create(properties?: google.cloud.vision.v1p2beta1.TextAnnotation.IDetectedBreak): google.cloud.vision.v1p2beta1.TextAnnotation.DetectedBreak;
+
+ /**
+ * Encodes the specified DetectedBreak message. Does not implicitly {@link google.cloud.vision.v1p2beta1.TextAnnotation.DetectedBreak.verify|verify} messages.
+ * @param message DetectedBreak message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p2beta1.TextAnnotation.IDetectedBreak, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified DetectedBreak message, length delimited. Does not implicitly {@link google.cloud.vision.v1p2beta1.TextAnnotation.DetectedBreak.verify|verify} messages.
+ * @param message DetectedBreak message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p2beta1.TextAnnotation.IDetectedBreak, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a DetectedBreak message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns DetectedBreak
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p2beta1.TextAnnotation.DetectedBreak;
+
+ /**
+ * Decodes a DetectedBreak message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns DetectedBreak
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p2beta1.TextAnnotation.DetectedBreak;
+
+ /**
+ * Verifies a DetectedBreak message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a DetectedBreak message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns DetectedBreak
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p2beta1.TextAnnotation.DetectedBreak;
+
+ /**
+ * Creates a plain object from a DetectedBreak message. Also converts values to other types if specified.
+ * @param message DetectedBreak
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p2beta1.TextAnnotation.DetectedBreak, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this DetectedBreak to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for DetectedBreak
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace DetectedBreak {
+
+ /** BreakType enum. */
+ enum BreakType {
+ UNKNOWN = 0,
+ SPACE = 1,
+ SURE_SPACE = 2,
+ EOL_SURE_SPACE = 3,
+ HYPHEN = 4,
+ LINE_BREAK = 5
+ }
+ }
+
+ /** Properties of a TextProperty. */
+ interface ITextProperty {
+
+ /** TextProperty detectedLanguages */
+ detectedLanguages?: (google.cloud.vision.v1p2beta1.TextAnnotation.IDetectedLanguage[]|null);
+
+ /** TextProperty detectedBreak */
+ detectedBreak?: (google.cloud.vision.v1p2beta1.TextAnnotation.IDetectedBreak|null);
+ }
+
+ /** Represents a TextProperty. */
+ class TextProperty implements ITextProperty {
+
+ /**
+ * Constructs a new TextProperty.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p2beta1.TextAnnotation.ITextProperty);
+
+ /** TextProperty detectedLanguages. */
+ public detectedLanguages: google.cloud.vision.v1p2beta1.TextAnnotation.IDetectedLanguage[];
+
+ /** TextProperty detectedBreak. */
+ public detectedBreak?: (google.cloud.vision.v1p2beta1.TextAnnotation.IDetectedBreak|null);
+
+ /**
+ * Creates a new TextProperty instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns TextProperty instance
+ */
+ public static create(properties?: google.cloud.vision.v1p2beta1.TextAnnotation.ITextProperty): google.cloud.vision.v1p2beta1.TextAnnotation.TextProperty;
+
+ /**
+ * Encodes the specified TextProperty message. Does not implicitly {@link google.cloud.vision.v1p2beta1.TextAnnotation.TextProperty.verify|verify} messages.
+ * @param message TextProperty message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p2beta1.TextAnnotation.ITextProperty, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified TextProperty message, length delimited. Does not implicitly {@link google.cloud.vision.v1p2beta1.TextAnnotation.TextProperty.verify|verify} messages.
+ * @param message TextProperty message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p2beta1.TextAnnotation.ITextProperty, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a TextProperty message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns TextProperty
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p2beta1.TextAnnotation.TextProperty;
+
+ /**
+ * Decodes a TextProperty message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns TextProperty
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p2beta1.TextAnnotation.TextProperty;
+
+ /**
+ * Verifies a TextProperty message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a TextProperty message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns TextProperty
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p2beta1.TextAnnotation.TextProperty;
+
+ /**
+ * Creates a plain object from a TextProperty message. Also converts values to other types if specified.
+ * @param message TextProperty
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p2beta1.TextAnnotation.TextProperty, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this TextProperty to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for TextProperty
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+ }
+
+ /** Properties of a Page. */
+ interface IPage {
+
+ /** Page property */
+ property?: (google.cloud.vision.v1p2beta1.TextAnnotation.ITextProperty|null);
+
+ /** Page width */
+ width?: (number|null);
+
+ /** Page height */
+ height?: (number|null);
+
+ /** Page blocks */
+ blocks?: (google.cloud.vision.v1p2beta1.IBlock[]|null);
+
+ /** Page confidence */
+ confidence?: (number|null);
+ }
+
+ /** Represents a Page. */
+ class Page implements IPage {
+
+ /**
+ * Constructs a new Page.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p2beta1.IPage);
+
+ /** Page property. */
+ public property?: (google.cloud.vision.v1p2beta1.TextAnnotation.ITextProperty|null);
+
+ /** Page width. */
+ public width: number;
+
+ /** Page height. */
+ public height: number;
+
+ /** Page blocks. */
+ public blocks: google.cloud.vision.v1p2beta1.IBlock[];
+
+ /** Page confidence. */
+ public confidence: number;
+
+ /**
+ * Creates a new Page instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Page instance
+ */
+ public static create(properties?: google.cloud.vision.v1p2beta1.IPage): google.cloud.vision.v1p2beta1.Page;
+
+ /**
+ * Encodes the specified Page message. Does not implicitly {@link google.cloud.vision.v1p2beta1.Page.verify|verify} messages.
+ * @param message Page message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p2beta1.IPage, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Page message, length delimited. Does not implicitly {@link google.cloud.vision.v1p2beta1.Page.verify|verify} messages.
+ * @param message Page message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p2beta1.IPage, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Page message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Page
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p2beta1.Page;
+
+ /**
+ * Decodes a Page message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Page
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p2beta1.Page;
+
+ /**
+ * Verifies a Page message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a Page message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Page
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p2beta1.Page;
+
+ /**
+ * Creates a plain object from a Page message. Also converts values to other types if specified.
+ * @param message Page
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p2beta1.Page, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Page to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Page
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a Block. */
+ interface IBlock {
+
+ /** Block property */
+ property?: (google.cloud.vision.v1p2beta1.TextAnnotation.ITextProperty|null);
+
+ /** Block boundingBox */
+ boundingBox?: (google.cloud.vision.v1p2beta1.IBoundingPoly|null);
+
+ /** Block paragraphs */
+ paragraphs?: (google.cloud.vision.v1p2beta1.IParagraph[]|null);
+
+ /** Block blockType */
+ blockType?: (google.cloud.vision.v1p2beta1.Block.BlockType|keyof typeof google.cloud.vision.v1p2beta1.Block.BlockType|null);
+
+ /** Block confidence */
+ confidence?: (number|null);
+ }
+
+ /** Represents a Block. */
+ class Block implements IBlock {
+
+ /**
+ * Constructs a new Block.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p2beta1.IBlock);
+
+ /** Block property. */
+ public property?: (google.cloud.vision.v1p2beta1.TextAnnotation.ITextProperty|null);
+
+ /** Block boundingBox. */
+ public boundingBox?: (google.cloud.vision.v1p2beta1.IBoundingPoly|null);
+
+ /** Block paragraphs. */
+ public paragraphs: google.cloud.vision.v1p2beta1.IParagraph[];
+
+ /** Block blockType. */
+ public blockType: (google.cloud.vision.v1p2beta1.Block.BlockType|keyof typeof google.cloud.vision.v1p2beta1.Block.BlockType);
+
+ /** Block confidence. */
+ public confidence: number;
+
+ /**
+ * Creates a new Block instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Block instance
+ */
+ public static create(properties?: google.cloud.vision.v1p2beta1.IBlock): google.cloud.vision.v1p2beta1.Block;
+
+ /**
+ * Encodes the specified Block message. Does not implicitly {@link google.cloud.vision.v1p2beta1.Block.verify|verify} messages.
+ * @param message Block message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p2beta1.IBlock, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Block message, length delimited. Does not implicitly {@link google.cloud.vision.v1p2beta1.Block.verify|verify} messages.
+ * @param message Block message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p2beta1.IBlock, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Block message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Block
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p2beta1.Block;
+
+ /**
+ * Decodes a Block message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Block
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p2beta1.Block;
+
+ /**
+ * Verifies a Block message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a Block message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Block
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p2beta1.Block;
+
+ /**
+ * Creates a plain object from a Block message. Also converts values to other types if specified.
+ * @param message Block
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p2beta1.Block, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Block to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Block
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace Block {
+
+ /** BlockType enum. */
+ enum BlockType {
+ UNKNOWN = 0,
+ TEXT = 1,
+ TABLE = 2,
+ PICTURE = 3,
+ RULER = 4,
+ BARCODE = 5
+ }
+ }
+
+ /** Properties of a Paragraph. */
+ interface IParagraph {
+
+ /** Paragraph property */
+ property?: (google.cloud.vision.v1p2beta1.TextAnnotation.ITextProperty|null);
+
+ /** Paragraph boundingBox */
+ boundingBox?: (google.cloud.vision.v1p2beta1.IBoundingPoly|null);
+
+ /** Paragraph words */
+ words?: (google.cloud.vision.v1p2beta1.IWord[]|null);
+
+ /** Paragraph confidence */
+ confidence?: (number|null);
+ }
+
+ /** Represents a Paragraph. */
+ class Paragraph implements IParagraph {
+
+ /**
+ * Constructs a new Paragraph.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p2beta1.IParagraph);
+
+ /** Paragraph property. */
+ public property?: (google.cloud.vision.v1p2beta1.TextAnnotation.ITextProperty|null);
+
+ /** Paragraph boundingBox. */
+ public boundingBox?: (google.cloud.vision.v1p2beta1.IBoundingPoly|null);
+
+ /** Paragraph words. */
+ public words: google.cloud.vision.v1p2beta1.IWord[];
+
+ /** Paragraph confidence. */
+ public confidence: number;
+
+ /**
+ * Creates a new Paragraph instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Paragraph instance
+ */
+ public static create(properties?: google.cloud.vision.v1p2beta1.IParagraph): google.cloud.vision.v1p2beta1.Paragraph;
+
+ /**
+ * Encodes the specified Paragraph message. Does not implicitly {@link google.cloud.vision.v1p2beta1.Paragraph.verify|verify} messages.
+ * @param message Paragraph message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p2beta1.IParagraph, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Paragraph message, length delimited. Does not implicitly {@link google.cloud.vision.v1p2beta1.Paragraph.verify|verify} messages.
+ * @param message Paragraph message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p2beta1.IParagraph, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Paragraph message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Paragraph
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p2beta1.Paragraph;
+
+ /**
+ * Decodes a Paragraph message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Paragraph
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p2beta1.Paragraph;
+
+ /**
+ * Verifies a Paragraph message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a Paragraph message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Paragraph
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p2beta1.Paragraph;
+
+ /**
+ * Creates a plain object from a Paragraph message. Also converts values to other types if specified.
+ * @param message Paragraph
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p2beta1.Paragraph, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Paragraph to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Paragraph
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a Word. */
+ interface IWord {
+
+ /** Word property */
+ property?: (google.cloud.vision.v1p2beta1.TextAnnotation.ITextProperty|null);
+
+ /** Word boundingBox */
+ boundingBox?: (google.cloud.vision.v1p2beta1.IBoundingPoly|null);
+
+ /** Word symbols */
+ symbols?: (google.cloud.vision.v1p2beta1.ISymbol[]|null);
+
+ /** Word confidence */
+ confidence?: (number|null);
+ }
+
+ /** Represents a Word. */
+ class Word implements IWord {
+
+ /**
+ * Constructs a new Word.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p2beta1.IWord);
+
+ /** Word property. */
+ public property?: (google.cloud.vision.v1p2beta1.TextAnnotation.ITextProperty|null);
+
+ /** Word boundingBox. */
+ public boundingBox?: (google.cloud.vision.v1p2beta1.IBoundingPoly|null);
+
+ /** Word symbols. */
+ public symbols: google.cloud.vision.v1p2beta1.ISymbol[];
+
+ /** Word confidence. */
+ public confidence: number;
+
+ /**
+ * Creates a new Word instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Word instance
+ */
+ public static create(properties?: google.cloud.vision.v1p2beta1.IWord): google.cloud.vision.v1p2beta1.Word;
+
+ /**
+ * Encodes the specified Word message. Does not implicitly {@link google.cloud.vision.v1p2beta1.Word.verify|verify} messages.
+ * @param message Word message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p2beta1.IWord, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Word message, length delimited. Does not implicitly {@link google.cloud.vision.v1p2beta1.Word.verify|verify} messages.
+ * @param message Word message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p2beta1.IWord, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Word message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Word
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p2beta1.Word;
+
+ /**
+ * Decodes a Word message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Word
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p2beta1.Word;
+
+ /**
+ * Verifies a Word message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a Word message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Word
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p2beta1.Word;
+
+ /**
+ * Creates a plain object from a Word message. Also converts values to other types if specified.
+ * @param message Word
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p2beta1.Word, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Word to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Word
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a Symbol. */
+ interface ISymbol {
+
+ /** Symbol property */
+ property?: (google.cloud.vision.v1p2beta1.TextAnnotation.ITextProperty|null);
+
+ /** Symbol boundingBox */
+ boundingBox?: (google.cloud.vision.v1p2beta1.IBoundingPoly|null);
+
+ /** Symbol text */
+ text?: (string|null);
+
+ /** Symbol confidence */
+ confidence?: (number|null);
+ }
+
+ /** Represents a Symbol. */
+ class Symbol implements ISymbol {
+
+ /**
+ * Constructs a new Symbol.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p2beta1.ISymbol);
+
+ /** Symbol property. */
+ public property?: (google.cloud.vision.v1p2beta1.TextAnnotation.ITextProperty|null);
+
+ /** Symbol boundingBox. */
+ public boundingBox?: (google.cloud.vision.v1p2beta1.IBoundingPoly|null);
+
+ /** Symbol text. */
+ public text: string;
+
+ /** Symbol confidence. */
+ public confidence: number;
+
+ /**
+ * Creates a new Symbol instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Symbol instance
+ */
+ public static create(properties?: google.cloud.vision.v1p2beta1.ISymbol): google.cloud.vision.v1p2beta1.Symbol;
+
+ /**
+ * Encodes the specified Symbol message. Does not implicitly {@link google.cloud.vision.v1p2beta1.Symbol.verify|verify} messages.
+ * @param message Symbol message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p2beta1.ISymbol, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Symbol message, length delimited. Does not implicitly {@link google.cloud.vision.v1p2beta1.Symbol.verify|verify} messages.
+ * @param message Symbol message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p2beta1.ISymbol, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Symbol message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Symbol
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p2beta1.Symbol;
+
+ /**
+ * Decodes a Symbol message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Symbol
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p2beta1.Symbol;
+
+ /**
+ * Verifies a Symbol message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a Symbol message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Symbol
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p2beta1.Symbol;
+
+ /**
+ * Creates a plain object from a Symbol message. Also converts values to other types if specified.
+ * @param message Symbol
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p2beta1.Symbol, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Symbol to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Symbol
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a WebDetection. */
+ interface IWebDetection {
+
+ /** WebDetection webEntities */
+ webEntities?: (google.cloud.vision.v1p2beta1.WebDetection.IWebEntity[]|null);
+
+ /** WebDetection fullMatchingImages */
+ fullMatchingImages?: (google.cloud.vision.v1p2beta1.WebDetection.IWebImage[]|null);
+
+ /** WebDetection partialMatchingImages */
+ partialMatchingImages?: (google.cloud.vision.v1p2beta1.WebDetection.IWebImage[]|null);
+
+ /** WebDetection pagesWithMatchingImages */
+ pagesWithMatchingImages?: (google.cloud.vision.v1p2beta1.WebDetection.IWebPage[]|null);
+
+ /** WebDetection visuallySimilarImages */
+ visuallySimilarImages?: (google.cloud.vision.v1p2beta1.WebDetection.IWebImage[]|null);
+
+ /** WebDetection bestGuessLabels */
+ bestGuessLabels?: (google.cloud.vision.v1p2beta1.WebDetection.IWebLabel[]|null);
+ }
+
+ /** Represents a WebDetection. */
+ class WebDetection implements IWebDetection {
+
+ /**
+ * Constructs a new WebDetection.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p2beta1.IWebDetection);
+
+ /** WebDetection webEntities. */
+ public webEntities: google.cloud.vision.v1p2beta1.WebDetection.IWebEntity[];
+
+ /** WebDetection fullMatchingImages. */
+ public fullMatchingImages: google.cloud.vision.v1p2beta1.WebDetection.IWebImage[];
+
+ /** WebDetection partialMatchingImages. */
+ public partialMatchingImages: google.cloud.vision.v1p2beta1.WebDetection.IWebImage[];
+
+ /** WebDetection pagesWithMatchingImages. */
+ public pagesWithMatchingImages: google.cloud.vision.v1p2beta1.WebDetection.IWebPage[];
+
+ /** WebDetection visuallySimilarImages. */
+ public visuallySimilarImages: google.cloud.vision.v1p2beta1.WebDetection.IWebImage[];
+
+ /** WebDetection bestGuessLabels. */
+ public bestGuessLabels: google.cloud.vision.v1p2beta1.WebDetection.IWebLabel[];
+
+ /**
+ * Creates a new WebDetection instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns WebDetection instance
+ */
+ public static create(properties?: google.cloud.vision.v1p2beta1.IWebDetection): google.cloud.vision.v1p2beta1.WebDetection;
+
+ /**
+ * Encodes the specified WebDetection message. Does not implicitly {@link google.cloud.vision.v1p2beta1.WebDetection.verify|verify} messages.
+ * @param message WebDetection message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p2beta1.IWebDetection, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified WebDetection message, length delimited. Does not implicitly {@link google.cloud.vision.v1p2beta1.WebDetection.verify|verify} messages.
+ * @param message WebDetection message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p2beta1.IWebDetection, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a WebDetection message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns WebDetection
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p2beta1.WebDetection;
+
+ /**
+ * Decodes a WebDetection message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns WebDetection
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p2beta1.WebDetection;
+
+ /**
+ * Verifies a WebDetection message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a WebDetection message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns WebDetection
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p2beta1.WebDetection;
+
+ /**
+ * Creates a plain object from a WebDetection message. Also converts values to other types if specified.
+ * @param message WebDetection
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p2beta1.WebDetection, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this WebDetection to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for WebDetection
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace WebDetection {
+
+ /** Properties of a WebEntity. */
+ interface IWebEntity {
+
+ /** WebEntity entityId */
+ entityId?: (string|null);
+
+ /** WebEntity score */
+ score?: (number|null);
+
+ /** WebEntity description */
+ description?: (string|null);
+ }
+
+ /** Represents a WebEntity. */
+ class WebEntity implements IWebEntity {
+
+ /**
+ * Constructs a new WebEntity.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p2beta1.WebDetection.IWebEntity);
+
+ /** WebEntity entityId. */
+ public entityId: string;
+
+ /** WebEntity score. */
+ public score: number;
+
+ /** WebEntity description. */
+ public description: string;
+
+ /**
+ * Creates a new WebEntity instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns WebEntity instance
+ */
+ public static create(properties?: google.cloud.vision.v1p2beta1.WebDetection.IWebEntity): google.cloud.vision.v1p2beta1.WebDetection.WebEntity;
+
+ /**
+ * Encodes the specified WebEntity message. Does not implicitly {@link google.cloud.vision.v1p2beta1.WebDetection.WebEntity.verify|verify} messages.
+ * @param message WebEntity message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p2beta1.WebDetection.IWebEntity, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified WebEntity message, length delimited. Does not implicitly {@link google.cloud.vision.v1p2beta1.WebDetection.WebEntity.verify|verify} messages.
+ * @param message WebEntity message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p2beta1.WebDetection.IWebEntity, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a WebEntity message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns WebEntity
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p2beta1.WebDetection.WebEntity;
+
+ /**
+ * Decodes a WebEntity message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns WebEntity
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p2beta1.WebDetection.WebEntity;
+
+ /**
+ * Verifies a WebEntity message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a WebEntity message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns WebEntity
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p2beta1.WebDetection.WebEntity;
+
+ /**
+ * Creates a plain object from a WebEntity message. Also converts values to other types if specified.
+ * @param message WebEntity
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p2beta1.WebDetection.WebEntity, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this WebEntity to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for WebEntity
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a WebImage. */
+ interface IWebImage {
+
+ /** WebImage url */
+ url?: (string|null);
+
+ /** WebImage score */
+ score?: (number|null);
+ }
+
+ /** Represents a WebImage. */
+ class WebImage implements IWebImage {
+
+ /**
+ * Constructs a new WebImage.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p2beta1.WebDetection.IWebImage);
+
+ /** WebImage url. */
+ public url: string;
+
+ /** WebImage score. */
+ public score: number;
+
+ /**
+ * Creates a new WebImage instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns WebImage instance
+ */
+ public static create(properties?: google.cloud.vision.v1p2beta1.WebDetection.IWebImage): google.cloud.vision.v1p2beta1.WebDetection.WebImage;
+
+ /**
+ * Encodes the specified WebImage message. Does not implicitly {@link google.cloud.vision.v1p2beta1.WebDetection.WebImage.verify|verify} messages.
+ * @param message WebImage message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p2beta1.WebDetection.IWebImage, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified WebImage message, length delimited. Does not implicitly {@link google.cloud.vision.v1p2beta1.WebDetection.WebImage.verify|verify} messages.
+ * @param message WebImage message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p2beta1.WebDetection.IWebImage, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a WebImage message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns WebImage
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p2beta1.WebDetection.WebImage;
+
+ /**
+ * Decodes a WebImage message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns WebImage
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p2beta1.WebDetection.WebImage;
+
+ /**
+ * Verifies a WebImage message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a WebImage message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns WebImage
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p2beta1.WebDetection.WebImage;
+
+ /**
+ * Creates a plain object from a WebImage message. Also converts values to other types if specified.
+ * @param message WebImage
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p2beta1.WebDetection.WebImage, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this WebImage to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for WebImage
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a WebPage. */
+ interface IWebPage {
+
+ /** WebPage url */
+ url?: (string|null);
+
+ /** WebPage score */
+ score?: (number|null);
+
+ /** WebPage pageTitle */
+ pageTitle?: (string|null);
+
+ /** WebPage fullMatchingImages */
+ fullMatchingImages?: (google.cloud.vision.v1p2beta1.WebDetection.IWebImage[]|null);
+
+ /** WebPage partialMatchingImages */
+ partialMatchingImages?: (google.cloud.vision.v1p2beta1.WebDetection.IWebImage[]|null);
+ }
+
+ /** Represents a WebPage. */
+ class WebPage implements IWebPage {
+
+ /**
+ * Constructs a new WebPage.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p2beta1.WebDetection.IWebPage);
+
+ /** WebPage url. */
+ public url: string;
+
+ /** WebPage score. */
+ public score: number;
+
+ /** WebPage pageTitle. */
+ public pageTitle: string;
+
+ /** WebPage fullMatchingImages. */
+ public fullMatchingImages: google.cloud.vision.v1p2beta1.WebDetection.IWebImage[];
+
+ /** WebPage partialMatchingImages. */
+ public partialMatchingImages: google.cloud.vision.v1p2beta1.WebDetection.IWebImage[];
+
+ /**
+ * Creates a new WebPage instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns WebPage instance
+ */
+ public static create(properties?: google.cloud.vision.v1p2beta1.WebDetection.IWebPage): google.cloud.vision.v1p2beta1.WebDetection.WebPage;
+
+ /**
+ * Encodes the specified WebPage message. Does not implicitly {@link google.cloud.vision.v1p2beta1.WebDetection.WebPage.verify|verify} messages.
+ * @param message WebPage message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p2beta1.WebDetection.IWebPage, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified WebPage message, length delimited. Does not implicitly {@link google.cloud.vision.v1p2beta1.WebDetection.WebPage.verify|verify} messages.
+ * @param message WebPage message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p2beta1.WebDetection.IWebPage, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a WebPage message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns WebPage
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p2beta1.WebDetection.WebPage;
+
+ /**
+ * Decodes a WebPage message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns WebPage
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p2beta1.WebDetection.WebPage;
+
+ /**
+ * Verifies a WebPage message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a WebPage message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns WebPage
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p2beta1.WebDetection.WebPage;
+
+ /**
+ * Creates a plain object from a WebPage message. Also converts values to other types if specified.
+ * @param message WebPage
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p2beta1.WebDetection.WebPage, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this WebPage to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for WebPage
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a WebLabel. */
+ interface IWebLabel {
+
+ /** WebLabel label */
+ label?: (string|null);
+
+ /** WebLabel languageCode */
+ languageCode?: (string|null);
+ }
+
+ /** Represents a WebLabel. */
+ class WebLabel implements IWebLabel {
+
+ /**
+ * Constructs a new WebLabel.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p2beta1.WebDetection.IWebLabel);
+
+ /** WebLabel label. */
+ public label: string;
+
+ /** WebLabel languageCode. */
+ public languageCode: string;
+
+ /**
+ * Creates a new WebLabel instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns WebLabel instance
+ */
+ public static create(properties?: google.cloud.vision.v1p2beta1.WebDetection.IWebLabel): google.cloud.vision.v1p2beta1.WebDetection.WebLabel;
+
+ /**
+ * Encodes the specified WebLabel message. Does not implicitly {@link google.cloud.vision.v1p2beta1.WebDetection.WebLabel.verify|verify} messages.
+ * @param message WebLabel message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p2beta1.WebDetection.IWebLabel, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified WebLabel message, length delimited. Does not implicitly {@link google.cloud.vision.v1p2beta1.WebDetection.WebLabel.verify|verify} messages.
+ * @param message WebLabel message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p2beta1.WebDetection.IWebLabel, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a WebLabel message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns WebLabel
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p2beta1.WebDetection.WebLabel;
+
+ /**
+ * Decodes a WebLabel message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns WebLabel
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p2beta1.WebDetection.WebLabel;
+
+ /**
+ * Verifies a WebLabel message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a WebLabel message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns WebLabel
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p2beta1.WebDetection.WebLabel;
+
+ /**
+ * Creates a plain object from a WebLabel message. Also converts values to other types if specified.
+ * @param message WebLabel
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p2beta1.WebDetection.WebLabel, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this WebLabel to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for WebLabel
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+ }
+ }
+
+ /** Namespace v1p3beta1. */
+ namespace v1p3beta1 {
+
+ /** Properties of a Vertex. */
+ interface IVertex {
+
+ /** Vertex x */
+ x?: (number|null);
+
+ /** Vertex y */
+ y?: (number|null);
+ }
+
+ /** Represents a Vertex. */
+ class Vertex implements IVertex {
+
+ /**
+ * Constructs a new Vertex.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p3beta1.IVertex);
+
+ /** Vertex x. */
+ public x: number;
+
+ /** Vertex y. */
+ public y: number;
+
+ /**
+ * Creates a new Vertex instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Vertex instance
+ */
+ public static create(properties?: google.cloud.vision.v1p3beta1.IVertex): google.cloud.vision.v1p3beta1.Vertex;
+
+ /**
+ * Encodes the specified Vertex message. Does not implicitly {@link google.cloud.vision.v1p3beta1.Vertex.verify|verify} messages.
+ * @param message Vertex message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p3beta1.IVertex, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Vertex message, length delimited. Does not implicitly {@link google.cloud.vision.v1p3beta1.Vertex.verify|verify} messages.
+ * @param message Vertex message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p3beta1.IVertex, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Vertex message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Vertex
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p3beta1.Vertex;
+
+ /**
+ * Decodes a Vertex message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Vertex
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p3beta1.Vertex;
+
+ /**
+ * Verifies a Vertex message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a Vertex message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Vertex
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p3beta1.Vertex;
+
+ /**
+ * Creates a plain object from a Vertex message. Also converts values to other types if specified.
+ * @param message Vertex
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p3beta1.Vertex, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Vertex to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Vertex
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a NormalizedVertex. */
+ interface INormalizedVertex {
+
+ /** NormalizedVertex x */
+ x?: (number|null);
+
+ /** NormalizedVertex y */
+ y?: (number|null);
+ }
+
+ /** Represents a NormalizedVertex. */
+ class NormalizedVertex implements INormalizedVertex {
+
+ /**
+ * Constructs a new NormalizedVertex.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p3beta1.INormalizedVertex);
+
+ /** NormalizedVertex x. */
+ public x: number;
+
+ /** NormalizedVertex y. */
+ public y: number;
+
+ /**
+ * Creates a new NormalizedVertex instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns NormalizedVertex instance
+ */
+ public static create(properties?: google.cloud.vision.v1p3beta1.INormalizedVertex): google.cloud.vision.v1p3beta1.NormalizedVertex;
+
+ /**
+ * Encodes the specified NormalizedVertex message. Does not implicitly {@link google.cloud.vision.v1p3beta1.NormalizedVertex.verify|verify} messages.
+ * @param message NormalizedVertex message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p3beta1.INormalizedVertex, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified NormalizedVertex message, length delimited. Does not implicitly {@link google.cloud.vision.v1p3beta1.NormalizedVertex.verify|verify} messages.
+ * @param message NormalizedVertex message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p3beta1.INormalizedVertex, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a NormalizedVertex message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns NormalizedVertex
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p3beta1.NormalizedVertex;
+
+ /**
+ * Decodes a NormalizedVertex message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns NormalizedVertex
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p3beta1.NormalizedVertex;
+
+ /**
+ * Verifies a NormalizedVertex message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a NormalizedVertex message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns NormalizedVertex
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p3beta1.NormalizedVertex;
+
+ /**
+ * Creates a plain object from a NormalizedVertex message. Also converts values to other types if specified.
+ * @param message NormalizedVertex
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p3beta1.NormalizedVertex, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this NormalizedVertex to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for NormalizedVertex
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a BoundingPoly. */
+ interface IBoundingPoly {
+
+ /** BoundingPoly vertices */
+ vertices?: (google.cloud.vision.v1p3beta1.IVertex[]|null);
+
+ /** BoundingPoly normalizedVertices */
+ normalizedVertices?: (google.cloud.vision.v1p3beta1.INormalizedVertex[]|null);
+ }
+
+ /** Represents a BoundingPoly. */
+ class BoundingPoly implements IBoundingPoly {
+
+ /**
+ * Constructs a new BoundingPoly.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p3beta1.IBoundingPoly);
+
+ /** BoundingPoly vertices. */
+ public vertices: google.cloud.vision.v1p3beta1.IVertex[];
+
+ /** BoundingPoly normalizedVertices. */
+ public normalizedVertices: google.cloud.vision.v1p3beta1.INormalizedVertex[];
+
+ /**
+ * Creates a new BoundingPoly instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns BoundingPoly instance
+ */
+ public static create(properties?: google.cloud.vision.v1p3beta1.IBoundingPoly): google.cloud.vision.v1p3beta1.BoundingPoly;
+
+ /**
+ * Encodes the specified BoundingPoly message. Does not implicitly {@link google.cloud.vision.v1p3beta1.BoundingPoly.verify|verify} messages.
+ * @param message BoundingPoly message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p3beta1.IBoundingPoly, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified BoundingPoly message, length delimited. Does not implicitly {@link google.cloud.vision.v1p3beta1.BoundingPoly.verify|verify} messages.
+ * @param message BoundingPoly message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p3beta1.IBoundingPoly, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a BoundingPoly message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns BoundingPoly
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p3beta1.BoundingPoly;
+
+ /**
+ * Decodes a BoundingPoly message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns BoundingPoly
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p3beta1.BoundingPoly;
+
+ /**
+ * Verifies a BoundingPoly message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a BoundingPoly message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns BoundingPoly
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p3beta1.BoundingPoly;
+
+ /**
+ * Creates a plain object from a BoundingPoly message. Also converts values to other types if specified.
+ * @param message BoundingPoly
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p3beta1.BoundingPoly, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this BoundingPoly to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for BoundingPoly
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a Position. */
+ interface IPosition {
+
+ /** Position x */
+ x?: (number|null);
+
+ /** Position y */
+ y?: (number|null);
+
+ /** Position z */
+ z?: (number|null);
+ }
+
+ /** Represents a Position. */
+ class Position implements IPosition {
+
+ /**
+ * Constructs a new Position.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p3beta1.IPosition);
+
+ /** Position x. */
+ public x: number;
+
+ /** Position y. */
+ public y: number;
+
+ /** Position z. */
+ public z: number;
+
+ /**
+ * Creates a new Position instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Position instance
+ */
+ public static create(properties?: google.cloud.vision.v1p3beta1.IPosition): google.cloud.vision.v1p3beta1.Position;
+
+ /**
+ * Encodes the specified Position message. Does not implicitly {@link google.cloud.vision.v1p3beta1.Position.verify|verify} messages.
+ * @param message Position message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p3beta1.IPosition, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Position message, length delimited. Does not implicitly {@link google.cloud.vision.v1p3beta1.Position.verify|verify} messages.
+ * @param message Position message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p3beta1.IPosition, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Position message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Position
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p3beta1.Position;
+
+ /**
+ * Decodes a Position message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Position
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p3beta1.Position;
+
+ /**
+ * Verifies a Position message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a Position message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Position
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p3beta1.Position;
+
+ /**
+ * Creates a plain object from a Position message. Also converts values to other types if specified.
+ * @param message Position
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p3beta1.Position, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Position to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Position
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Represents an ImageAnnotator */
+ class ImageAnnotator extends $protobuf.rpc.Service {
+
+ /**
+ * Constructs a new ImageAnnotator 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 ImageAnnotator 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): ImageAnnotator;
+
+ /**
+ * Calls BatchAnnotateImages.
+ * @param request BatchAnnotateImagesRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and BatchAnnotateImagesResponse
+ */
+ public batchAnnotateImages(request: google.cloud.vision.v1p3beta1.IBatchAnnotateImagesRequest, callback: google.cloud.vision.v1p3beta1.ImageAnnotator.BatchAnnotateImagesCallback): void;
+
+ /**
+ * Calls BatchAnnotateImages.
+ * @param request BatchAnnotateImagesRequest message or plain object
+ * @returns Promise
+ */
+ public batchAnnotateImages(request: google.cloud.vision.v1p3beta1.IBatchAnnotateImagesRequest): Promise;
+
+ /**
+ * Calls AsyncBatchAnnotateFiles.
+ * @param request AsyncBatchAnnotateFilesRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Operation
+ */
+ public asyncBatchAnnotateFiles(request: google.cloud.vision.v1p3beta1.IAsyncBatchAnnotateFilesRequest, callback: google.cloud.vision.v1p3beta1.ImageAnnotator.AsyncBatchAnnotateFilesCallback): void;
+
+ /**
+ * Calls AsyncBatchAnnotateFiles.
+ * @param request AsyncBatchAnnotateFilesRequest message or plain object
+ * @returns Promise
+ */
+ public asyncBatchAnnotateFiles(request: google.cloud.vision.v1p3beta1.IAsyncBatchAnnotateFilesRequest): Promise;
+ }
+
+ namespace ImageAnnotator {
+
+ /**
+ * Callback as used by {@link google.cloud.vision.v1p3beta1.ImageAnnotator|batchAnnotateImages}.
+ * @param error Error, if any
+ * @param [response] BatchAnnotateImagesResponse
+ */
+ type BatchAnnotateImagesCallback = (error: (Error|null), response?: google.cloud.vision.v1p3beta1.BatchAnnotateImagesResponse) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.vision.v1p3beta1.ImageAnnotator|asyncBatchAnnotateFiles}.
+ * @param error Error, if any
+ * @param [response] Operation
+ */
+ type AsyncBatchAnnotateFilesCallback = (error: (Error|null), response?: google.longrunning.Operation) => void;
+ }
+
+ /** Properties of a Feature. */
+ interface IFeature {
+
+ /** Feature type */
+ type?: (google.cloud.vision.v1p3beta1.Feature.Type|keyof typeof google.cloud.vision.v1p3beta1.Feature.Type|null);
+
+ /** Feature maxResults */
+ maxResults?: (number|null);
+
+ /** Feature model */
+ model?: (string|null);
+ }
+
+ /** Represents a Feature. */
+ class Feature implements IFeature {
+
+ /**
+ * Constructs a new Feature.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p3beta1.IFeature);
+
+ /** Feature type. */
+ public type: (google.cloud.vision.v1p3beta1.Feature.Type|keyof typeof google.cloud.vision.v1p3beta1.Feature.Type);
+
+ /** Feature maxResults. */
+ public maxResults: number;
+
+ /** Feature model. */
+ public model: string;
+
+ /**
+ * Creates a new Feature instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Feature instance
+ */
+ public static create(properties?: google.cloud.vision.v1p3beta1.IFeature): google.cloud.vision.v1p3beta1.Feature;
+
+ /**
+ * Encodes the specified Feature message. Does not implicitly {@link google.cloud.vision.v1p3beta1.Feature.verify|verify} messages.
+ * @param message Feature message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p3beta1.IFeature, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Feature message, length delimited. Does not implicitly {@link google.cloud.vision.v1p3beta1.Feature.verify|verify} messages.
+ * @param message Feature message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p3beta1.IFeature, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Feature message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Feature
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p3beta1.Feature;
+
+ /**
+ * Decodes a Feature message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Feature
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p3beta1.Feature;
+
+ /**
+ * Verifies a Feature message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a Feature message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Feature
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p3beta1.Feature;
+
+ /**
+ * Creates a plain object from a Feature message. Also converts values to other types if specified.
+ * @param message Feature
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p3beta1.Feature, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Feature to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Feature
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace Feature {
+
+ /** Type enum. */
+ enum Type {
+ TYPE_UNSPECIFIED = 0,
+ FACE_DETECTION = 1,
+ LANDMARK_DETECTION = 2,
+ LOGO_DETECTION = 3,
+ LABEL_DETECTION = 4,
+ TEXT_DETECTION = 5,
+ DOCUMENT_TEXT_DETECTION = 11,
+ SAFE_SEARCH_DETECTION = 6,
+ IMAGE_PROPERTIES = 7,
+ CROP_HINTS = 9,
+ WEB_DETECTION = 10,
+ PRODUCT_SEARCH = 12,
+ OBJECT_LOCALIZATION = 19
+ }
+ }
+
+ /** Properties of an ImageSource. */
+ interface IImageSource {
+
+ /** ImageSource gcsImageUri */
+ gcsImageUri?: (string|null);
+
+ /** ImageSource imageUri */
+ imageUri?: (string|null);
+ }
+
+ /** Represents an ImageSource. */
+ class ImageSource implements IImageSource {
+
+ /**
+ * Constructs a new ImageSource.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p3beta1.IImageSource);
+
+ /** ImageSource gcsImageUri. */
+ public gcsImageUri: string;
+
+ /** ImageSource imageUri. */
+ public imageUri: string;
+
+ /**
+ * Creates a new ImageSource instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ImageSource instance
+ */
+ public static create(properties?: google.cloud.vision.v1p3beta1.IImageSource): google.cloud.vision.v1p3beta1.ImageSource;
+
+ /**
+ * Encodes the specified ImageSource message. Does not implicitly {@link google.cloud.vision.v1p3beta1.ImageSource.verify|verify} messages.
+ * @param message ImageSource message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p3beta1.IImageSource, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ImageSource message, length delimited. Does not implicitly {@link google.cloud.vision.v1p3beta1.ImageSource.verify|verify} messages.
+ * @param message ImageSource message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p3beta1.IImageSource, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an ImageSource message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ImageSource
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p3beta1.ImageSource;
+
+ /**
+ * Decodes an ImageSource message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ImageSource
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p3beta1.ImageSource;
+
+ /**
+ * Verifies an ImageSource message.
+ * @param message Plain 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 ImageSource message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ImageSource
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p3beta1.ImageSource;
+
+ /**
+ * Creates a plain object from an ImageSource message. Also converts values to other types if specified.
+ * @param message ImageSource
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p3beta1.ImageSource, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ImageSource to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ImageSource
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an Image. */
+ interface IImage {
+
+ /** Image content */
+ content?: (Uint8Array|string|null);
+
+ /** Image source */
+ source?: (google.cloud.vision.v1p3beta1.IImageSource|null);
+ }
+
+ /** Represents an Image. */
+ class Image implements IImage {
+
+ /**
+ * Constructs a new Image.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p3beta1.IImage);
+
+ /** Image content. */
+ public content: (Uint8Array|string);
+
+ /** Image source. */
+ public source?: (google.cloud.vision.v1p3beta1.IImageSource|null);
+
+ /**
+ * Creates a new Image instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Image instance
+ */
+ public static create(properties?: google.cloud.vision.v1p3beta1.IImage): google.cloud.vision.v1p3beta1.Image;
+
+ /**
+ * Encodes the specified Image message. Does not implicitly {@link google.cloud.vision.v1p3beta1.Image.verify|verify} messages.
+ * @param message Image message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p3beta1.IImage, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Image message, length delimited. Does not implicitly {@link google.cloud.vision.v1p3beta1.Image.verify|verify} messages.
+ * @param message Image message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p3beta1.IImage, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an Image message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Image
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p3beta1.Image;
+
+ /**
+ * Decodes an Image message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Image
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p3beta1.Image;
+
+ /**
+ * Verifies an Image message.
+ * @param message Plain 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 Image message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Image
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p3beta1.Image;
+
+ /**
+ * Creates a plain object from an Image message. Also converts values to other types if specified.
+ * @param message Image
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p3beta1.Image, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Image to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Image
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a FaceAnnotation. */
+ interface IFaceAnnotation {
+
+ /** FaceAnnotation boundingPoly */
+ boundingPoly?: (google.cloud.vision.v1p3beta1.IBoundingPoly|null);
+
+ /** FaceAnnotation fdBoundingPoly */
+ fdBoundingPoly?: (google.cloud.vision.v1p3beta1.IBoundingPoly|null);
+
+ /** FaceAnnotation landmarks */
+ landmarks?: (google.cloud.vision.v1p3beta1.FaceAnnotation.ILandmark[]|null);
+
+ /** FaceAnnotation rollAngle */
+ rollAngle?: (number|null);
+
+ /** FaceAnnotation panAngle */
+ panAngle?: (number|null);
+
+ /** FaceAnnotation tiltAngle */
+ tiltAngle?: (number|null);
+
+ /** FaceAnnotation detectionConfidence */
+ detectionConfidence?: (number|null);
+
+ /** FaceAnnotation landmarkingConfidence */
+ landmarkingConfidence?: (number|null);
+
+ /** FaceAnnotation joyLikelihood */
+ joyLikelihood?: (google.cloud.vision.v1p3beta1.Likelihood|keyof typeof google.cloud.vision.v1p3beta1.Likelihood|null);
+
+ /** FaceAnnotation sorrowLikelihood */
+ sorrowLikelihood?: (google.cloud.vision.v1p3beta1.Likelihood|keyof typeof google.cloud.vision.v1p3beta1.Likelihood|null);
+
+ /** FaceAnnotation angerLikelihood */
+ angerLikelihood?: (google.cloud.vision.v1p3beta1.Likelihood|keyof typeof google.cloud.vision.v1p3beta1.Likelihood|null);
+
+ /** FaceAnnotation surpriseLikelihood */
+ surpriseLikelihood?: (google.cloud.vision.v1p3beta1.Likelihood|keyof typeof google.cloud.vision.v1p3beta1.Likelihood|null);
+
+ /** FaceAnnotation underExposedLikelihood */
+ underExposedLikelihood?: (google.cloud.vision.v1p3beta1.Likelihood|keyof typeof google.cloud.vision.v1p3beta1.Likelihood|null);
+
+ /** FaceAnnotation blurredLikelihood */
+ blurredLikelihood?: (google.cloud.vision.v1p3beta1.Likelihood|keyof typeof google.cloud.vision.v1p3beta1.Likelihood|null);
+
+ /** FaceAnnotation headwearLikelihood */
+ headwearLikelihood?: (google.cloud.vision.v1p3beta1.Likelihood|keyof typeof google.cloud.vision.v1p3beta1.Likelihood|null);
+ }
+
+ /** Represents a FaceAnnotation. */
+ class FaceAnnotation implements IFaceAnnotation {
+
+ /**
+ * Constructs a new FaceAnnotation.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p3beta1.IFaceAnnotation);
+
+ /** FaceAnnotation boundingPoly. */
+ public boundingPoly?: (google.cloud.vision.v1p3beta1.IBoundingPoly|null);
+
+ /** FaceAnnotation fdBoundingPoly. */
+ public fdBoundingPoly?: (google.cloud.vision.v1p3beta1.IBoundingPoly|null);
+
+ /** FaceAnnotation landmarks. */
+ public landmarks: google.cloud.vision.v1p3beta1.FaceAnnotation.ILandmark[];
+
+ /** FaceAnnotation rollAngle. */
+ public rollAngle: number;
+
+ /** FaceAnnotation panAngle. */
+ public panAngle: number;
+
+ /** FaceAnnotation tiltAngle. */
+ public tiltAngle: number;
+
+ /** FaceAnnotation detectionConfidence. */
+ public detectionConfidence: number;
+
+ /** FaceAnnotation landmarkingConfidence. */
+ public landmarkingConfidence: number;
+
+ /** FaceAnnotation joyLikelihood. */
+ public joyLikelihood: (google.cloud.vision.v1p3beta1.Likelihood|keyof typeof google.cloud.vision.v1p3beta1.Likelihood);
+
+ /** FaceAnnotation sorrowLikelihood. */
+ public sorrowLikelihood: (google.cloud.vision.v1p3beta1.Likelihood|keyof typeof google.cloud.vision.v1p3beta1.Likelihood);
+
+ /** FaceAnnotation angerLikelihood. */
+ public angerLikelihood: (google.cloud.vision.v1p3beta1.Likelihood|keyof typeof google.cloud.vision.v1p3beta1.Likelihood);
+
+ /** FaceAnnotation surpriseLikelihood. */
+ public surpriseLikelihood: (google.cloud.vision.v1p3beta1.Likelihood|keyof typeof google.cloud.vision.v1p3beta1.Likelihood);
+
+ /** FaceAnnotation underExposedLikelihood. */
+ public underExposedLikelihood: (google.cloud.vision.v1p3beta1.Likelihood|keyof typeof google.cloud.vision.v1p3beta1.Likelihood);
+
+ /** FaceAnnotation blurredLikelihood. */
+ public blurredLikelihood: (google.cloud.vision.v1p3beta1.Likelihood|keyof typeof google.cloud.vision.v1p3beta1.Likelihood);
+
+ /** FaceAnnotation headwearLikelihood. */
+ public headwearLikelihood: (google.cloud.vision.v1p3beta1.Likelihood|keyof typeof google.cloud.vision.v1p3beta1.Likelihood);
+
+ /**
+ * Creates a new FaceAnnotation instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns FaceAnnotation instance
+ */
+ public static create(properties?: google.cloud.vision.v1p3beta1.IFaceAnnotation): google.cloud.vision.v1p3beta1.FaceAnnotation;
+
+ /**
+ * Encodes the specified FaceAnnotation message. Does not implicitly {@link google.cloud.vision.v1p3beta1.FaceAnnotation.verify|verify} messages.
+ * @param message FaceAnnotation message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p3beta1.IFaceAnnotation, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified FaceAnnotation message, length delimited. Does not implicitly {@link google.cloud.vision.v1p3beta1.FaceAnnotation.verify|verify} messages.
+ * @param message FaceAnnotation message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p3beta1.IFaceAnnotation, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a FaceAnnotation message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns FaceAnnotation
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p3beta1.FaceAnnotation;
+
+ /**
+ * Decodes a FaceAnnotation message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns FaceAnnotation
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p3beta1.FaceAnnotation;
+
+ /**
+ * Verifies a FaceAnnotation message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a FaceAnnotation message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns FaceAnnotation
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p3beta1.FaceAnnotation;
+
+ /**
+ * Creates a plain object from a FaceAnnotation message. Also converts values to other types if specified.
+ * @param message FaceAnnotation
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p3beta1.FaceAnnotation, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this FaceAnnotation to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for FaceAnnotation
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace FaceAnnotation {
+
+ /** Properties of a Landmark. */
+ interface ILandmark {
+
+ /** Landmark type */
+ type?: (google.cloud.vision.v1p3beta1.FaceAnnotation.Landmark.Type|keyof typeof google.cloud.vision.v1p3beta1.FaceAnnotation.Landmark.Type|null);
+
+ /** Landmark position */
+ position?: (google.cloud.vision.v1p3beta1.IPosition|null);
+ }
+
+ /** Represents a Landmark. */
+ class Landmark implements ILandmark {
+
+ /**
+ * Constructs a new Landmark.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p3beta1.FaceAnnotation.ILandmark);
+
+ /** Landmark type. */
+ public type: (google.cloud.vision.v1p3beta1.FaceAnnotation.Landmark.Type|keyof typeof google.cloud.vision.v1p3beta1.FaceAnnotation.Landmark.Type);
+
+ /** Landmark position. */
+ public position?: (google.cloud.vision.v1p3beta1.IPosition|null);
+
+ /**
+ * Creates a new Landmark instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Landmark instance
+ */
+ public static create(properties?: google.cloud.vision.v1p3beta1.FaceAnnotation.ILandmark): google.cloud.vision.v1p3beta1.FaceAnnotation.Landmark;
+
+ /**
+ * Encodes the specified Landmark message. Does not implicitly {@link google.cloud.vision.v1p3beta1.FaceAnnotation.Landmark.verify|verify} messages.
+ * @param message Landmark message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p3beta1.FaceAnnotation.ILandmark, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Landmark message, length delimited. Does not implicitly {@link google.cloud.vision.v1p3beta1.FaceAnnotation.Landmark.verify|verify} messages.
+ * @param message Landmark message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p3beta1.FaceAnnotation.ILandmark, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Landmark message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Landmark
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p3beta1.FaceAnnotation.Landmark;
+
+ /**
+ * Decodes a Landmark message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Landmark
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p3beta1.FaceAnnotation.Landmark;
+
+ /**
+ * Verifies a Landmark message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a Landmark message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Landmark
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p3beta1.FaceAnnotation.Landmark;
+
+ /**
+ * Creates a plain object from a Landmark message. Also converts values to other types if specified.
+ * @param message Landmark
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p3beta1.FaceAnnotation.Landmark, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Landmark to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Landmark
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace Landmark {
+
+ /** Type enum. */
+ enum Type {
+ UNKNOWN_LANDMARK = 0,
+ LEFT_EYE = 1,
+ RIGHT_EYE = 2,
+ LEFT_OF_LEFT_EYEBROW = 3,
+ RIGHT_OF_LEFT_EYEBROW = 4,
+ LEFT_OF_RIGHT_EYEBROW = 5,
+ RIGHT_OF_RIGHT_EYEBROW = 6,
+ MIDPOINT_BETWEEN_EYES = 7,
+ NOSE_TIP = 8,
+ UPPER_LIP = 9,
+ LOWER_LIP = 10,
+ MOUTH_LEFT = 11,
+ MOUTH_RIGHT = 12,
+ MOUTH_CENTER = 13,
+ NOSE_BOTTOM_RIGHT = 14,
+ NOSE_BOTTOM_LEFT = 15,
+ NOSE_BOTTOM_CENTER = 16,
+ LEFT_EYE_TOP_BOUNDARY = 17,
+ LEFT_EYE_RIGHT_CORNER = 18,
+ LEFT_EYE_BOTTOM_BOUNDARY = 19,
+ LEFT_EYE_LEFT_CORNER = 20,
+ RIGHT_EYE_TOP_BOUNDARY = 21,
+ RIGHT_EYE_RIGHT_CORNER = 22,
+ RIGHT_EYE_BOTTOM_BOUNDARY = 23,
+ RIGHT_EYE_LEFT_CORNER = 24,
+ LEFT_EYEBROW_UPPER_MIDPOINT = 25,
+ RIGHT_EYEBROW_UPPER_MIDPOINT = 26,
+ LEFT_EAR_TRAGION = 27,
+ RIGHT_EAR_TRAGION = 28,
+ LEFT_EYE_PUPIL = 29,
+ RIGHT_EYE_PUPIL = 30,
+ FOREHEAD_GLABELLA = 31,
+ CHIN_GNATHION = 32,
+ CHIN_LEFT_GONION = 33,
+ CHIN_RIGHT_GONION = 34
+ }
+ }
+ }
+
+ /** Properties of a LocationInfo. */
+ interface ILocationInfo {
+
+ /** LocationInfo latLng */
+ latLng?: (google.type.ILatLng|null);
+ }
+
+ /** Represents a LocationInfo. */
+ class LocationInfo implements ILocationInfo {
+
+ /**
+ * Constructs a new LocationInfo.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p3beta1.ILocationInfo);
+
+ /** LocationInfo latLng. */
+ public latLng?: (google.type.ILatLng|null);
+
+ /**
+ * Creates a new LocationInfo instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns LocationInfo instance
+ */
+ public static create(properties?: google.cloud.vision.v1p3beta1.ILocationInfo): google.cloud.vision.v1p3beta1.LocationInfo;
+
+ /**
+ * Encodes the specified LocationInfo message. Does not implicitly {@link google.cloud.vision.v1p3beta1.LocationInfo.verify|verify} messages.
+ * @param message LocationInfo message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p3beta1.ILocationInfo, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified LocationInfo message, length delimited. Does not implicitly {@link google.cloud.vision.v1p3beta1.LocationInfo.verify|verify} messages.
+ * @param message LocationInfo message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p3beta1.ILocationInfo, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a LocationInfo message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns LocationInfo
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p3beta1.LocationInfo;
+
+ /**
+ * Decodes a LocationInfo message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns LocationInfo
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p3beta1.LocationInfo;
+
+ /**
+ * Verifies a LocationInfo message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a LocationInfo message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns LocationInfo
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p3beta1.LocationInfo;
+
+ /**
+ * Creates a plain object from a LocationInfo message. Also converts values to other types if specified.
+ * @param message LocationInfo
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p3beta1.LocationInfo, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this LocationInfo to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for LocationInfo
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a Property. */
+ interface IProperty {
+
+ /** Property name */
+ name?: (string|null);
+
+ /** Property value */
+ value?: (string|null);
+
+ /** Property uint64Value */
+ uint64Value?: (number|Long|string|null);
+ }
+
+ /** Represents a Property. */
+ class Property implements IProperty {
+
+ /**
+ * Constructs a new Property.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p3beta1.IProperty);
+
+ /** Property name. */
+ public name: string;
+
+ /** Property value. */
+ public value: string;
+
+ /** Property uint64Value. */
+ public uint64Value: (number|Long|string);
+
+ /**
+ * Creates a new Property instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Property instance
+ */
+ public static create(properties?: google.cloud.vision.v1p3beta1.IProperty): google.cloud.vision.v1p3beta1.Property;
+
+ /**
+ * Encodes the specified Property message. Does not implicitly {@link google.cloud.vision.v1p3beta1.Property.verify|verify} messages.
+ * @param message Property message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p3beta1.IProperty, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Property message, length delimited. Does not implicitly {@link google.cloud.vision.v1p3beta1.Property.verify|verify} messages.
+ * @param message Property message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p3beta1.IProperty, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Property message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Property
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p3beta1.Property;
+
+ /**
+ * Decodes a Property message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Property
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p3beta1.Property;
+
+ /**
+ * Verifies a Property message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a Property message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Property
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p3beta1.Property;
+
+ /**
+ * Creates a plain object from a Property message. Also converts values to other types if specified.
+ * @param message Property
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p3beta1.Property, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Property to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Property
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an EntityAnnotation. */
+ interface IEntityAnnotation {
+
+ /** EntityAnnotation mid */
+ mid?: (string|null);
+
+ /** EntityAnnotation locale */
+ locale?: (string|null);
+
+ /** EntityAnnotation description */
+ description?: (string|null);
+
+ /** EntityAnnotation score */
+ score?: (number|null);
+
+ /** EntityAnnotation confidence */
+ confidence?: (number|null);
+
+ /** EntityAnnotation topicality */
+ topicality?: (number|null);
+
+ /** EntityAnnotation boundingPoly */
+ boundingPoly?: (google.cloud.vision.v1p3beta1.IBoundingPoly|null);
+
+ /** EntityAnnotation locations */
+ locations?: (google.cloud.vision.v1p3beta1.ILocationInfo[]|null);
+
+ /** EntityAnnotation properties */
+ properties?: (google.cloud.vision.v1p3beta1.IProperty[]|null);
+ }
+
+ /** Represents an EntityAnnotation. */
+ class EntityAnnotation implements IEntityAnnotation {
+
+ /**
+ * Constructs a new EntityAnnotation.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p3beta1.IEntityAnnotation);
+
+ /** EntityAnnotation mid. */
+ public mid: string;
+
+ /** EntityAnnotation locale. */
+ public locale: string;
+
+ /** EntityAnnotation description. */
+ public description: string;
+
+ /** EntityAnnotation score. */
+ public score: number;
+
+ /** EntityAnnotation confidence. */
+ public confidence: number;
+
+ /** EntityAnnotation topicality. */
+ public topicality: number;
+
+ /** EntityAnnotation boundingPoly. */
+ public boundingPoly?: (google.cloud.vision.v1p3beta1.IBoundingPoly|null);
+
+ /** EntityAnnotation locations. */
+ public locations: google.cloud.vision.v1p3beta1.ILocationInfo[];
+
+ /** EntityAnnotation properties. */
+ public properties: google.cloud.vision.v1p3beta1.IProperty[];
+
+ /**
+ * Creates a new EntityAnnotation instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns EntityAnnotation instance
+ */
+ public static create(properties?: google.cloud.vision.v1p3beta1.IEntityAnnotation): google.cloud.vision.v1p3beta1.EntityAnnotation;
+
+ /**
+ * Encodes the specified EntityAnnotation message. Does not implicitly {@link google.cloud.vision.v1p3beta1.EntityAnnotation.verify|verify} messages.
+ * @param message EntityAnnotation message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p3beta1.IEntityAnnotation, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified EntityAnnotation message, length delimited. Does not implicitly {@link google.cloud.vision.v1p3beta1.EntityAnnotation.verify|verify} messages.
+ * @param message EntityAnnotation message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p3beta1.IEntityAnnotation, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an EntityAnnotation message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns EntityAnnotation
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p3beta1.EntityAnnotation;
+
+ /**
+ * Decodes an EntityAnnotation message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns EntityAnnotation
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p3beta1.EntityAnnotation;
+
+ /**
+ * Verifies an EntityAnnotation message.
+ * @param message Plain 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 EntityAnnotation message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns EntityAnnotation
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p3beta1.EntityAnnotation;
+
+ /**
+ * Creates a plain object from an EntityAnnotation message. Also converts values to other types if specified.
+ * @param message EntityAnnotation
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p3beta1.EntityAnnotation, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this EntityAnnotation to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for EntityAnnotation
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a LocalizedObjectAnnotation. */
+ interface ILocalizedObjectAnnotation {
+
+ /** LocalizedObjectAnnotation mid */
+ mid?: (string|null);
+
+ /** LocalizedObjectAnnotation languageCode */
+ languageCode?: (string|null);
+
+ /** LocalizedObjectAnnotation name */
+ name?: (string|null);
+
+ /** LocalizedObjectAnnotation score */
+ score?: (number|null);
+
+ /** LocalizedObjectAnnotation boundingPoly */
+ boundingPoly?: (google.cloud.vision.v1p3beta1.IBoundingPoly|null);
+ }
+
+ /** Represents a LocalizedObjectAnnotation. */
+ class LocalizedObjectAnnotation implements ILocalizedObjectAnnotation {
+
+ /**
+ * Constructs a new LocalizedObjectAnnotation.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p3beta1.ILocalizedObjectAnnotation);
+
+ /** LocalizedObjectAnnotation mid. */
+ public mid: string;
+
+ /** LocalizedObjectAnnotation languageCode. */
+ public languageCode: string;
+
+ /** LocalizedObjectAnnotation name. */
+ public name: string;
+
+ /** LocalizedObjectAnnotation score. */
+ public score: number;
+
+ /** LocalizedObjectAnnotation boundingPoly. */
+ public boundingPoly?: (google.cloud.vision.v1p3beta1.IBoundingPoly|null);
+
+ /**
+ * Creates a new LocalizedObjectAnnotation instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns LocalizedObjectAnnotation instance
+ */
+ public static create(properties?: google.cloud.vision.v1p3beta1.ILocalizedObjectAnnotation): google.cloud.vision.v1p3beta1.LocalizedObjectAnnotation;
+
+ /**
+ * Encodes the specified LocalizedObjectAnnotation message. Does not implicitly {@link google.cloud.vision.v1p3beta1.LocalizedObjectAnnotation.verify|verify} messages.
+ * @param message LocalizedObjectAnnotation message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p3beta1.ILocalizedObjectAnnotation, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified LocalizedObjectAnnotation message, length delimited. Does not implicitly {@link google.cloud.vision.v1p3beta1.LocalizedObjectAnnotation.verify|verify} messages.
+ * @param message LocalizedObjectAnnotation message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p3beta1.ILocalizedObjectAnnotation, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a LocalizedObjectAnnotation message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns LocalizedObjectAnnotation
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p3beta1.LocalizedObjectAnnotation;
+
+ /**
+ * Decodes a LocalizedObjectAnnotation message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns LocalizedObjectAnnotation
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p3beta1.LocalizedObjectAnnotation;
+
+ /**
+ * Verifies a LocalizedObjectAnnotation message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a LocalizedObjectAnnotation message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns LocalizedObjectAnnotation
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p3beta1.LocalizedObjectAnnotation;
+
+ /**
+ * Creates a plain object from a LocalizedObjectAnnotation message. Also converts values to other types if specified.
+ * @param message LocalizedObjectAnnotation
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p3beta1.LocalizedObjectAnnotation, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this LocalizedObjectAnnotation to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for LocalizedObjectAnnotation
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a SafeSearchAnnotation. */
+ interface ISafeSearchAnnotation {
+
+ /** SafeSearchAnnotation adult */
+ adult?: (google.cloud.vision.v1p3beta1.Likelihood|keyof typeof google.cloud.vision.v1p3beta1.Likelihood|null);
+
+ /** SafeSearchAnnotation spoof */
+ spoof?: (google.cloud.vision.v1p3beta1.Likelihood|keyof typeof google.cloud.vision.v1p3beta1.Likelihood|null);
+
+ /** SafeSearchAnnotation medical */
+ medical?: (google.cloud.vision.v1p3beta1.Likelihood|keyof typeof google.cloud.vision.v1p3beta1.Likelihood|null);
+
+ /** SafeSearchAnnotation violence */
+ violence?: (google.cloud.vision.v1p3beta1.Likelihood|keyof typeof google.cloud.vision.v1p3beta1.Likelihood|null);
+
+ /** SafeSearchAnnotation racy */
+ racy?: (google.cloud.vision.v1p3beta1.Likelihood|keyof typeof google.cloud.vision.v1p3beta1.Likelihood|null);
+ }
+
+ /** Represents a SafeSearchAnnotation. */
+ class SafeSearchAnnotation implements ISafeSearchAnnotation {
+
+ /**
+ * Constructs a new SafeSearchAnnotation.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p3beta1.ISafeSearchAnnotation);
+
+ /** SafeSearchAnnotation adult. */
+ public adult: (google.cloud.vision.v1p3beta1.Likelihood|keyof typeof google.cloud.vision.v1p3beta1.Likelihood);
+
+ /** SafeSearchAnnotation spoof. */
+ public spoof: (google.cloud.vision.v1p3beta1.Likelihood|keyof typeof google.cloud.vision.v1p3beta1.Likelihood);
+
+ /** SafeSearchAnnotation medical. */
+ public medical: (google.cloud.vision.v1p3beta1.Likelihood|keyof typeof google.cloud.vision.v1p3beta1.Likelihood);
+
+ /** SafeSearchAnnotation violence. */
+ public violence: (google.cloud.vision.v1p3beta1.Likelihood|keyof typeof google.cloud.vision.v1p3beta1.Likelihood);
+
+ /** SafeSearchAnnotation racy. */
+ public racy: (google.cloud.vision.v1p3beta1.Likelihood|keyof typeof google.cloud.vision.v1p3beta1.Likelihood);
+
+ /**
+ * Creates a new SafeSearchAnnotation instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns SafeSearchAnnotation instance
+ */
+ public static create(properties?: google.cloud.vision.v1p3beta1.ISafeSearchAnnotation): google.cloud.vision.v1p3beta1.SafeSearchAnnotation;
+
+ /**
+ * Encodes the specified SafeSearchAnnotation message. Does not implicitly {@link google.cloud.vision.v1p3beta1.SafeSearchAnnotation.verify|verify} messages.
+ * @param message SafeSearchAnnotation message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p3beta1.ISafeSearchAnnotation, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified SafeSearchAnnotation message, length delimited. Does not implicitly {@link google.cloud.vision.v1p3beta1.SafeSearchAnnotation.verify|verify} messages.
+ * @param message SafeSearchAnnotation message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p3beta1.ISafeSearchAnnotation, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a SafeSearchAnnotation message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns SafeSearchAnnotation
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p3beta1.SafeSearchAnnotation;
+
+ /**
+ * Decodes a SafeSearchAnnotation message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns SafeSearchAnnotation
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p3beta1.SafeSearchAnnotation;
+
+ /**
+ * Verifies a SafeSearchAnnotation message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a SafeSearchAnnotation message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns SafeSearchAnnotation
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p3beta1.SafeSearchAnnotation;
+
+ /**
+ * Creates a plain object from a SafeSearchAnnotation message. Also converts values to other types if specified.
+ * @param message SafeSearchAnnotation
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p3beta1.SafeSearchAnnotation, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this SafeSearchAnnotation to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for SafeSearchAnnotation
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a LatLongRect. */
+ interface ILatLongRect {
+
+ /** LatLongRect minLatLng */
+ minLatLng?: (google.type.ILatLng|null);
+
+ /** LatLongRect maxLatLng */
+ maxLatLng?: (google.type.ILatLng|null);
+ }
+
+ /** Represents a LatLongRect. */
+ class LatLongRect implements ILatLongRect {
+
+ /**
+ * Constructs a new LatLongRect.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p3beta1.ILatLongRect);
+
+ /** LatLongRect minLatLng. */
+ public minLatLng?: (google.type.ILatLng|null);
+
+ /** LatLongRect maxLatLng. */
+ public maxLatLng?: (google.type.ILatLng|null);
+
+ /**
+ * Creates a new LatLongRect instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns LatLongRect instance
+ */
+ public static create(properties?: google.cloud.vision.v1p3beta1.ILatLongRect): google.cloud.vision.v1p3beta1.LatLongRect;
+
+ /**
+ * Encodes the specified LatLongRect message. Does not implicitly {@link google.cloud.vision.v1p3beta1.LatLongRect.verify|verify} messages.
+ * @param message LatLongRect message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p3beta1.ILatLongRect, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified LatLongRect message, length delimited. Does not implicitly {@link google.cloud.vision.v1p3beta1.LatLongRect.verify|verify} messages.
+ * @param message LatLongRect message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p3beta1.ILatLongRect, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a LatLongRect message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns LatLongRect
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p3beta1.LatLongRect;
+
+ /**
+ * Decodes a LatLongRect message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns LatLongRect
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p3beta1.LatLongRect;
+
+ /**
+ * Verifies a LatLongRect message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a LatLongRect message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns LatLongRect
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p3beta1.LatLongRect;
+
+ /**
+ * Creates a plain object from a LatLongRect message. Also converts values to other types if specified.
+ * @param message LatLongRect
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p3beta1.LatLongRect, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this LatLongRect to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for LatLongRect
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ColorInfo. */
+ interface IColorInfo {
+
+ /** ColorInfo color */
+ color?: (google.type.IColor|null);
+
+ /** ColorInfo score */
+ score?: (number|null);
+
+ /** ColorInfo pixelFraction */
+ pixelFraction?: (number|null);
+ }
+
+ /** Represents a ColorInfo. */
+ class ColorInfo implements IColorInfo {
+
+ /**
+ * Constructs a new ColorInfo.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p3beta1.IColorInfo);
+
+ /** ColorInfo color. */
+ public color?: (google.type.IColor|null);
+
+ /** ColorInfo score. */
+ public score: number;
+
+ /** ColorInfo pixelFraction. */
+ public pixelFraction: number;
+
+ /**
+ * Creates a new ColorInfo instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ColorInfo instance
+ */
+ public static create(properties?: google.cloud.vision.v1p3beta1.IColorInfo): google.cloud.vision.v1p3beta1.ColorInfo;
+
+ /**
+ * Encodes the specified ColorInfo message. Does not implicitly {@link google.cloud.vision.v1p3beta1.ColorInfo.verify|verify} messages.
+ * @param message ColorInfo message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p3beta1.IColorInfo, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ColorInfo message, length delimited. Does not implicitly {@link google.cloud.vision.v1p3beta1.ColorInfo.verify|verify} messages.
+ * @param message ColorInfo message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p3beta1.IColorInfo, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ColorInfo message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ColorInfo
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p3beta1.ColorInfo;
+
+ /**
+ * Decodes a ColorInfo message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ColorInfo
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p3beta1.ColorInfo;
+
+ /**
+ * Verifies a ColorInfo message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ColorInfo message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ColorInfo
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p3beta1.ColorInfo;
+
+ /**
+ * Creates a plain object from a ColorInfo message. Also converts values to other types if specified.
+ * @param message ColorInfo
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p3beta1.ColorInfo, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ColorInfo to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ColorInfo
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a DominantColorsAnnotation. */
+ interface IDominantColorsAnnotation {
+
+ /** DominantColorsAnnotation colors */
+ colors?: (google.cloud.vision.v1p3beta1.IColorInfo[]|null);
+ }
+
+ /** Represents a DominantColorsAnnotation. */
+ class DominantColorsAnnotation implements IDominantColorsAnnotation {
+
+ /**
+ * Constructs a new DominantColorsAnnotation.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p3beta1.IDominantColorsAnnotation);
+
+ /** DominantColorsAnnotation colors. */
+ public colors: google.cloud.vision.v1p3beta1.IColorInfo[];
+
+ /**
+ * Creates a new DominantColorsAnnotation instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns DominantColorsAnnotation instance
+ */
+ public static create(properties?: google.cloud.vision.v1p3beta1.IDominantColorsAnnotation): google.cloud.vision.v1p3beta1.DominantColorsAnnotation;
+
+ /**
+ * Encodes the specified DominantColorsAnnotation message. Does not implicitly {@link google.cloud.vision.v1p3beta1.DominantColorsAnnotation.verify|verify} messages.
+ * @param message DominantColorsAnnotation message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p3beta1.IDominantColorsAnnotation, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified DominantColorsAnnotation message, length delimited. Does not implicitly {@link google.cloud.vision.v1p3beta1.DominantColorsAnnotation.verify|verify} messages.
+ * @param message DominantColorsAnnotation message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p3beta1.IDominantColorsAnnotation, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a DominantColorsAnnotation message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns DominantColorsAnnotation
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p3beta1.DominantColorsAnnotation;
+
+ /**
+ * Decodes a DominantColorsAnnotation message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns DominantColorsAnnotation
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p3beta1.DominantColorsAnnotation;
+
+ /**
+ * Verifies a DominantColorsAnnotation message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a DominantColorsAnnotation message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns DominantColorsAnnotation
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p3beta1.DominantColorsAnnotation;
+
+ /**
+ * Creates a plain object from a DominantColorsAnnotation message. Also converts values to other types if specified.
+ * @param message DominantColorsAnnotation
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p3beta1.DominantColorsAnnotation, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this DominantColorsAnnotation to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for DominantColorsAnnotation
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an ImageProperties. */
+ interface IImageProperties {
+
+ /** ImageProperties dominantColors */
+ dominantColors?: (google.cloud.vision.v1p3beta1.IDominantColorsAnnotation|null);
+ }
+
+ /** Represents an ImageProperties. */
+ class ImageProperties implements IImageProperties {
+
+ /**
+ * Constructs a new ImageProperties.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p3beta1.IImageProperties);
+
+ /** ImageProperties dominantColors. */
+ public dominantColors?: (google.cloud.vision.v1p3beta1.IDominantColorsAnnotation|null);
+
+ /**
+ * Creates a new ImageProperties instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ImageProperties instance
+ */
+ public static create(properties?: google.cloud.vision.v1p3beta1.IImageProperties): google.cloud.vision.v1p3beta1.ImageProperties;
+
+ /**
+ * Encodes the specified ImageProperties message. Does not implicitly {@link google.cloud.vision.v1p3beta1.ImageProperties.verify|verify} messages.
+ * @param message ImageProperties message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p3beta1.IImageProperties, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ImageProperties message, length delimited. Does not implicitly {@link google.cloud.vision.v1p3beta1.ImageProperties.verify|verify} messages.
+ * @param message ImageProperties message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p3beta1.IImageProperties, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an ImageProperties message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ImageProperties
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p3beta1.ImageProperties;
+
+ /**
+ * Decodes an ImageProperties message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ImageProperties
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p3beta1.ImageProperties;
+
+ /**
+ * Verifies an ImageProperties message.
+ * @param message Plain 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 ImageProperties message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ImageProperties
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p3beta1.ImageProperties;
+
+ /**
+ * Creates a plain object from an ImageProperties message. Also converts values to other types if specified.
+ * @param message ImageProperties
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p3beta1.ImageProperties, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ImageProperties to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ImageProperties
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a CropHint. */
+ interface ICropHint {
+
+ /** CropHint boundingPoly */
+ boundingPoly?: (google.cloud.vision.v1p3beta1.IBoundingPoly|null);
+
+ /** CropHint confidence */
+ confidence?: (number|null);
+
+ /** CropHint importanceFraction */
+ importanceFraction?: (number|null);
+ }
+
+ /** Represents a CropHint. */
+ class CropHint implements ICropHint {
+
+ /**
+ * Constructs a new CropHint.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p3beta1.ICropHint);
+
+ /** CropHint boundingPoly. */
+ public boundingPoly?: (google.cloud.vision.v1p3beta1.IBoundingPoly|null);
+
+ /** CropHint confidence. */
+ public confidence: number;
+
+ /** CropHint importanceFraction. */
+ public importanceFraction: number;
+
+ /**
+ * Creates a new CropHint instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns CropHint instance
+ */
+ public static create(properties?: google.cloud.vision.v1p3beta1.ICropHint): google.cloud.vision.v1p3beta1.CropHint;
+
+ /**
+ * Encodes the specified CropHint message. Does not implicitly {@link google.cloud.vision.v1p3beta1.CropHint.verify|verify} messages.
+ * @param message CropHint message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p3beta1.ICropHint, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified CropHint message, length delimited. Does not implicitly {@link google.cloud.vision.v1p3beta1.CropHint.verify|verify} messages.
+ * @param message CropHint message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p3beta1.ICropHint, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a CropHint message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns CropHint
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p3beta1.CropHint;
+
+ /**
+ * Decodes a CropHint message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns CropHint
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p3beta1.CropHint;
+
+ /**
+ * Verifies a CropHint message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a CropHint message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns CropHint
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p3beta1.CropHint;
+
+ /**
+ * Creates a plain object from a CropHint message. Also converts values to other types if specified.
+ * @param message CropHint
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p3beta1.CropHint, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this CropHint to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for CropHint
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a CropHintsAnnotation. */
+ interface ICropHintsAnnotation {
+
+ /** CropHintsAnnotation cropHints */
+ cropHints?: (google.cloud.vision.v1p3beta1.ICropHint[]|null);
+ }
+
+ /** Represents a CropHintsAnnotation. */
+ class CropHintsAnnotation implements ICropHintsAnnotation {
+
+ /**
+ * Constructs a new CropHintsAnnotation.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p3beta1.ICropHintsAnnotation);
+
+ /** CropHintsAnnotation cropHints. */
+ public cropHints: google.cloud.vision.v1p3beta1.ICropHint[];
+
+ /**
+ * Creates a new CropHintsAnnotation instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns CropHintsAnnotation instance
+ */
+ public static create(properties?: google.cloud.vision.v1p3beta1.ICropHintsAnnotation): google.cloud.vision.v1p3beta1.CropHintsAnnotation;
+
+ /**
+ * Encodes the specified CropHintsAnnotation message. Does not implicitly {@link google.cloud.vision.v1p3beta1.CropHintsAnnotation.verify|verify} messages.
+ * @param message CropHintsAnnotation message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p3beta1.ICropHintsAnnotation, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified CropHintsAnnotation message, length delimited. Does not implicitly {@link google.cloud.vision.v1p3beta1.CropHintsAnnotation.verify|verify} messages.
+ * @param message CropHintsAnnotation message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p3beta1.ICropHintsAnnotation, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a CropHintsAnnotation message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns CropHintsAnnotation
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p3beta1.CropHintsAnnotation;
+
+ /**
+ * Decodes a CropHintsAnnotation message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns CropHintsAnnotation
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p3beta1.CropHintsAnnotation;
+
+ /**
+ * Verifies a CropHintsAnnotation message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a CropHintsAnnotation message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns CropHintsAnnotation
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p3beta1.CropHintsAnnotation;
+
+ /**
+ * Creates a plain object from a CropHintsAnnotation message. Also converts values to other types if specified.
+ * @param message CropHintsAnnotation
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p3beta1.CropHintsAnnotation, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this CropHintsAnnotation to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for CropHintsAnnotation
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a CropHintsParams. */
+ interface ICropHintsParams {
+
+ /** CropHintsParams aspectRatios */
+ aspectRatios?: (number[]|null);
+ }
+
+ /** Represents a CropHintsParams. */
+ class CropHintsParams implements ICropHintsParams {
+
+ /**
+ * Constructs a new CropHintsParams.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p3beta1.ICropHintsParams);
+
+ /** CropHintsParams aspectRatios. */
+ public aspectRatios: number[];
+
+ /**
+ * Creates a new CropHintsParams instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns CropHintsParams instance
+ */
+ public static create(properties?: google.cloud.vision.v1p3beta1.ICropHintsParams): google.cloud.vision.v1p3beta1.CropHintsParams;
+
+ /**
+ * Encodes the specified CropHintsParams message. Does not implicitly {@link google.cloud.vision.v1p3beta1.CropHintsParams.verify|verify} messages.
+ * @param message CropHintsParams message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p3beta1.ICropHintsParams, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified CropHintsParams message, length delimited. Does not implicitly {@link google.cloud.vision.v1p3beta1.CropHintsParams.verify|verify} messages.
+ * @param message CropHintsParams message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p3beta1.ICropHintsParams, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a CropHintsParams message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns CropHintsParams
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p3beta1.CropHintsParams;
+
+ /**
+ * Decodes a CropHintsParams message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns CropHintsParams
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p3beta1.CropHintsParams;
+
+ /**
+ * Verifies a CropHintsParams message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a CropHintsParams message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns CropHintsParams
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p3beta1.CropHintsParams;
+
+ /**
+ * Creates a plain object from a CropHintsParams message. Also converts values to other types if specified.
+ * @param message CropHintsParams
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p3beta1.CropHintsParams, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this CropHintsParams to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for CropHintsParams
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a WebDetectionParams. */
+ interface IWebDetectionParams {
+
+ /** WebDetectionParams includeGeoResults */
+ includeGeoResults?: (boolean|null);
+ }
+
+ /** Represents a WebDetectionParams. */
+ class WebDetectionParams implements IWebDetectionParams {
+
+ /**
+ * Constructs a new WebDetectionParams.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p3beta1.IWebDetectionParams);
+
+ /** WebDetectionParams includeGeoResults. */
+ public includeGeoResults: boolean;
+
+ /**
+ * Creates a new WebDetectionParams instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns WebDetectionParams instance
+ */
+ public static create(properties?: google.cloud.vision.v1p3beta1.IWebDetectionParams): google.cloud.vision.v1p3beta1.WebDetectionParams;
+
+ /**
+ * Encodes the specified WebDetectionParams message. Does not implicitly {@link google.cloud.vision.v1p3beta1.WebDetectionParams.verify|verify} messages.
+ * @param message WebDetectionParams message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p3beta1.IWebDetectionParams, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified WebDetectionParams message, length delimited. Does not implicitly {@link google.cloud.vision.v1p3beta1.WebDetectionParams.verify|verify} messages.
+ * @param message WebDetectionParams message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p3beta1.IWebDetectionParams, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a WebDetectionParams message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns WebDetectionParams
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p3beta1.WebDetectionParams;
+
+ /**
+ * Decodes a WebDetectionParams message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns WebDetectionParams
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p3beta1.WebDetectionParams;
+
+ /**
+ * Verifies a WebDetectionParams message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a WebDetectionParams message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns WebDetectionParams
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p3beta1.WebDetectionParams;
+
+ /**
+ * Creates a plain object from a WebDetectionParams message. Also converts values to other types if specified.
+ * @param message WebDetectionParams
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p3beta1.WebDetectionParams, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this WebDetectionParams to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for WebDetectionParams
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a TextDetectionParams. */
+ interface ITextDetectionParams {
+
+ /** TextDetectionParams enableTextDetectionConfidenceScore */
+ enableTextDetectionConfidenceScore?: (boolean|null);
+
+ /** TextDetectionParams advancedOcrOptions */
+ advancedOcrOptions?: (string[]|null);
+ }
+
+ /** Represents a TextDetectionParams. */
+ class TextDetectionParams implements ITextDetectionParams {
+
+ /**
+ * Constructs a new TextDetectionParams.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p3beta1.ITextDetectionParams);
+
+ /** TextDetectionParams enableTextDetectionConfidenceScore. */
+ public enableTextDetectionConfidenceScore: boolean;
+
+ /** TextDetectionParams advancedOcrOptions. */
+ public advancedOcrOptions: string[];
+
+ /**
+ * Creates a new TextDetectionParams instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns TextDetectionParams instance
+ */
+ public static create(properties?: google.cloud.vision.v1p3beta1.ITextDetectionParams): google.cloud.vision.v1p3beta1.TextDetectionParams;
+
+ /**
+ * Encodes the specified TextDetectionParams message. Does not implicitly {@link google.cloud.vision.v1p3beta1.TextDetectionParams.verify|verify} messages.
+ * @param message TextDetectionParams message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p3beta1.ITextDetectionParams, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified TextDetectionParams message, length delimited. Does not implicitly {@link google.cloud.vision.v1p3beta1.TextDetectionParams.verify|verify} messages.
+ * @param message TextDetectionParams message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p3beta1.ITextDetectionParams, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a TextDetectionParams message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns TextDetectionParams
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p3beta1.TextDetectionParams;
+
+ /**
+ * Decodes a TextDetectionParams message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns TextDetectionParams
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p3beta1.TextDetectionParams;
+
+ /**
+ * Verifies a TextDetectionParams message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a TextDetectionParams message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns TextDetectionParams
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p3beta1.TextDetectionParams;
+
+ /**
+ * Creates a plain object from a TextDetectionParams message. Also converts values to other types if specified.
+ * @param message TextDetectionParams
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p3beta1.TextDetectionParams, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this TextDetectionParams to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for TextDetectionParams
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an ImageContext. */
+ interface IImageContext {
+
+ /** ImageContext latLongRect */
+ latLongRect?: (google.cloud.vision.v1p3beta1.ILatLongRect|null);
+
+ /** ImageContext languageHints */
+ languageHints?: (string[]|null);
+
+ /** ImageContext cropHintsParams */
+ cropHintsParams?: (google.cloud.vision.v1p3beta1.ICropHintsParams|null);
+
+ /** ImageContext productSearchParams */
+ productSearchParams?: (google.cloud.vision.v1p3beta1.IProductSearchParams|null);
+
+ /** ImageContext webDetectionParams */
+ webDetectionParams?: (google.cloud.vision.v1p3beta1.IWebDetectionParams|null);
+
+ /** ImageContext textDetectionParams */
+ textDetectionParams?: (google.cloud.vision.v1p3beta1.ITextDetectionParams|null);
+ }
+
+ /** Represents an ImageContext. */
+ class ImageContext implements IImageContext {
+
+ /**
+ * Constructs a new ImageContext.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p3beta1.IImageContext);
+
+ /** ImageContext latLongRect. */
+ public latLongRect?: (google.cloud.vision.v1p3beta1.ILatLongRect|null);
+
+ /** ImageContext languageHints. */
+ public languageHints: string[];
+
+ /** ImageContext cropHintsParams. */
+ public cropHintsParams?: (google.cloud.vision.v1p3beta1.ICropHintsParams|null);
+
+ /** ImageContext productSearchParams. */
+ public productSearchParams?: (google.cloud.vision.v1p3beta1.IProductSearchParams|null);
+
+ /** ImageContext webDetectionParams. */
+ public webDetectionParams?: (google.cloud.vision.v1p3beta1.IWebDetectionParams|null);
+
+ /** ImageContext textDetectionParams. */
+ public textDetectionParams?: (google.cloud.vision.v1p3beta1.ITextDetectionParams|null);
+
+ /**
+ * Creates a new ImageContext instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ImageContext instance
+ */
+ public static create(properties?: google.cloud.vision.v1p3beta1.IImageContext): google.cloud.vision.v1p3beta1.ImageContext;
+
+ /**
+ * Encodes the specified ImageContext message. Does not implicitly {@link google.cloud.vision.v1p3beta1.ImageContext.verify|verify} messages.
+ * @param message ImageContext message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p3beta1.IImageContext, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ImageContext message, length delimited. Does not implicitly {@link google.cloud.vision.v1p3beta1.ImageContext.verify|verify} messages.
+ * @param message ImageContext message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p3beta1.IImageContext, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an ImageContext message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ImageContext
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p3beta1.ImageContext;
+
+ /**
+ * Decodes an ImageContext message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ImageContext
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p3beta1.ImageContext;
+
+ /**
+ * Verifies an ImageContext message.
+ * @param message Plain 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 ImageContext message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ImageContext
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p3beta1.ImageContext;
+
+ /**
+ * Creates a plain object from an ImageContext message. Also converts values to other types if specified.
+ * @param message ImageContext
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p3beta1.ImageContext, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ImageContext to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ImageContext
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an AnnotateImageRequest. */
+ interface IAnnotateImageRequest {
+
+ /** AnnotateImageRequest image */
+ image?: (google.cloud.vision.v1p3beta1.IImage|null);
+
+ /** AnnotateImageRequest features */
+ features?: (google.cloud.vision.v1p3beta1.IFeature[]|null);
+
+ /** AnnotateImageRequest imageContext */
+ imageContext?: (google.cloud.vision.v1p3beta1.IImageContext|null);
+ }
+
+ /** Represents an AnnotateImageRequest. */
+ class AnnotateImageRequest implements IAnnotateImageRequest {
+
+ /**
+ * Constructs a new AnnotateImageRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p3beta1.IAnnotateImageRequest);
+
+ /** AnnotateImageRequest image. */
+ public image?: (google.cloud.vision.v1p3beta1.IImage|null);
+
+ /** AnnotateImageRequest features. */
+ public features: google.cloud.vision.v1p3beta1.IFeature[];
+
+ /** AnnotateImageRequest imageContext. */
+ public imageContext?: (google.cloud.vision.v1p3beta1.IImageContext|null);
+
+ /**
+ * Creates a new AnnotateImageRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns AnnotateImageRequest instance
+ */
+ public static create(properties?: google.cloud.vision.v1p3beta1.IAnnotateImageRequest): google.cloud.vision.v1p3beta1.AnnotateImageRequest;
+
+ /**
+ * Encodes the specified AnnotateImageRequest message. Does not implicitly {@link google.cloud.vision.v1p3beta1.AnnotateImageRequest.verify|verify} messages.
+ * @param message AnnotateImageRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p3beta1.IAnnotateImageRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified AnnotateImageRequest message, length delimited. Does not implicitly {@link google.cloud.vision.v1p3beta1.AnnotateImageRequest.verify|verify} messages.
+ * @param message AnnotateImageRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p3beta1.IAnnotateImageRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an AnnotateImageRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns AnnotateImageRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p3beta1.AnnotateImageRequest;
+
+ /**
+ * Decodes an AnnotateImageRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns AnnotateImageRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p3beta1.AnnotateImageRequest;
+
+ /**
+ * Verifies an AnnotateImageRequest message.
+ * @param message Plain 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 AnnotateImageRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns AnnotateImageRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p3beta1.AnnotateImageRequest;
+
+ /**
+ * Creates a plain object from an AnnotateImageRequest message. Also converts values to other types if specified.
+ * @param message AnnotateImageRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p3beta1.AnnotateImageRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this AnnotateImageRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for AnnotateImageRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an ImageAnnotationContext. */
+ interface IImageAnnotationContext {
+
+ /** ImageAnnotationContext uri */
+ uri?: (string|null);
+
+ /** ImageAnnotationContext pageNumber */
+ pageNumber?: (number|null);
+ }
+
+ /** Represents an ImageAnnotationContext. */
+ class ImageAnnotationContext implements IImageAnnotationContext {
+
+ /**
+ * Constructs a new ImageAnnotationContext.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p3beta1.IImageAnnotationContext);
+
+ /** ImageAnnotationContext uri. */
+ public uri: string;
+
+ /** ImageAnnotationContext pageNumber. */
+ public pageNumber: number;
+
+ /**
+ * Creates a new ImageAnnotationContext instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ImageAnnotationContext instance
+ */
+ public static create(properties?: google.cloud.vision.v1p3beta1.IImageAnnotationContext): google.cloud.vision.v1p3beta1.ImageAnnotationContext;
+
+ /**
+ * Encodes the specified ImageAnnotationContext message. Does not implicitly {@link google.cloud.vision.v1p3beta1.ImageAnnotationContext.verify|verify} messages.
+ * @param message ImageAnnotationContext message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p3beta1.IImageAnnotationContext, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ImageAnnotationContext message, length delimited. Does not implicitly {@link google.cloud.vision.v1p3beta1.ImageAnnotationContext.verify|verify} messages.
+ * @param message ImageAnnotationContext message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p3beta1.IImageAnnotationContext, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an ImageAnnotationContext message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ImageAnnotationContext
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p3beta1.ImageAnnotationContext;
+
+ /**
+ * Decodes an ImageAnnotationContext message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ImageAnnotationContext
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p3beta1.ImageAnnotationContext;
+
+ /**
+ * Verifies an ImageAnnotationContext message.
+ * @param message Plain 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 ImageAnnotationContext message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ImageAnnotationContext
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p3beta1.ImageAnnotationContext;
+
+ /**
+ * Creates a plain object from an ImageAnnotationContext message. Also converts values to other types if specified.
+ * @param message ImageAnnotationContext
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p3beta1.ImageAnnotationContext, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ImageAnnotationContext to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ImageAnnotationContext
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an AnnotateImageResponse. */
+ interface IAnnotateImageResponse {
+
+ /** AnnotateImageResponse faceAnnotations */
+ faceAnnotations?: (google.cloud.vision.v1p3beta1.IFaceAnnotation[]|null);
+
+ /** AnnotateImageResponse landmarkAnnotations */
+ landmarkAnnotations?: (google.cloud.vision.v1p3beta1.IEntityAnnotation[]|null);
+
+ /** AnnotateImageResponse logoAnnotations */
+ logoAnnotations?: (google.cloud.vision.v1p3beta1.IEntityAnnotation[]|null);
+
+ /** AnnotateImageResponse labelAnnotations */
+ labelAnnotations?: (google.cloud.vision.v1p3beta1.IEntityAnnotation[]|null);
+
+ /** AnnotateImageResponse localizedObjectAnnotations */
+ localizedObjectAnnotations?: (google.cloud.vision.v1p3beta1.ILocalizedObjectAnnotation[]|null);
+
+ /** AnnotateImageResponse textAnnotations */
+ textAnnotations?: (google.cloud.vision.v1p3beta1.IEntityAnnotation[]|null);
+
+ /** AnnotateImageResponse fullTextAnnotation */
+ fullTextAnnotation?: (google.cloud.vision.v1p3beta1.ITextAnnotation|null);
+
+ /** AnnotateImageResponse safeSearchAnnotation */
+ safeSearchAnnotation?: (google.cloud.vision.v1p3beta1.ISafeSearchAnnotation|null);
+
+ /** AnnotateImageResponse imagePropertiesAnnotation */
+ imagePropertiesAnnotation?: (google.cloud.vision.v1p3beta1.IImageProperties|null);
+
+ /** AnnotateImageResponse cropHintsAnnotation */
+ cropHintsAnnotation?: (google.cloud.vision.v1p3beta1.ICropHintsAnnotation|null);
+
+ /** AnnotateImageResponse webDetection */
+ webDetection?: (google.cloud.vision.v1p3beta1.IWebDetection|null);
+
+ /** AnnotateImageResponse productSearchResults */
+ productSearchResults?: (google.cloud.vision.v1p3beta1.IProductSearchResults|null);
+
+ /** AnnotateImageResponse error */
+ error?: (google.rpc.IStatus|null);
+
+ /** AnnotateImageResponse context */
+ context?: (google.cloud.vision.v1p3beta1.IImageAnnotationContext|null);
+ }
+
+ /** Represents an AnnotateImageResponse. */
+ class AnnotateImageResponse implements IAnnotateImageResponse {
+
+ /**
+ * Constructs a new AnnotateImageResponse.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p3beta1.IAnnotateImageResponse);
+
+ /** AnnotateImageResponse faceAnnotations. */
+ public faceAnnotations: google.cloud.vision.v1p3beta1.IFaceAnnotation[];
+
+ /** AnnotateImageResponse landmarkAnnotations. */
+ public landmarkAnnotations: google.cloud.vision.v1p3beta1.IEntityAnnotation[];
+
+ /** AnnotateImageResponse logoAnnotations. */
+ public logoAnnotations: google.cloud.vision.v1p3beta1.IEntityAnnotation[];
+
+ /** AnnotateImageResponse labelAnnotations. */
+ public labelAnnotations: google.cloud.vision.v1p3beta1.IEntityAnnotation[];
+
+ /** AnnotateImageResponse localizedObjectAnnotations. */
+ public localizedObjectAnnotations: google.cloud.vision.v1p3beta1.ILocalizedObjectAnnotation[];
+
+ /** AnnotateImageResponse textAnnotations. */
+ public textAnnotations: google.cloud.vision.v1p3beta1.IEntityAnnotation[];
+
+ /** AnnotateImageResponse fullTextAnnotation. */
+ public fullTextAnnotation?: (google.cloud.vision.v1p3beta1.ITextAnnotation|null);
+
+ /** AnnotateImageResponse safeSearchAnnotation. */
+ public safeSearchAnnotation?: (google.cloud.vision.v1p3beta1.ISafeSearchAnnotation|null);
+
+ /** AnnotateImageResponse imagePropertiesAnnotation. */
+ public imagePropertiesAnnotation?: (google.cloud.vision.v1p3beta1.IImageProperties|null);
+
+ /** AnnotateImageResponse cropHintsAnnotation. */
+ public cropHintsAnnotation?: (google.cloud.vision.v1p3beta1.ICropHintsAnnotation|null);
+
+ /** AnnotateImageResponse webDetection. */
+ public webDetection?: (google.cloud.vision.v1p3beta1.IWebDetection|null);
+
+ /** AnnotateImageResponse productSearchResults. */
+ public productSearchResults?: (google.cloud.vision.v1p3beta1.IProductSearchResults|null);
+
+ /** AnnotateImageResponse error. */
+ public error?: (google.rpc.IStatus|null);
+
+ /** AnnotateImageResponse context. */
+ public context?: (google.cloud.vision.v1p3beta1.IImageAnnotationContext|null);
+
+ /**
+ * Creates a new AnnotateImageResponse instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns AnnotateImageResponse instance
+ */
+ public static create(properties?: google.cloud.vision.v1p3beta1.IAnnotateImageResponse): google.cloud.vision.v1p3beta1.AnnotateImageResponse;
+
+ /**
+ * Encodes the specified AnnotateImageResponse message. Does not implicitly {@link google.cloud.vision.v1p3beta1.AnnotateImageResponse.verify|verify} messages.
+ * @param message AnnotateImageResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p3beta1.IAnnotateImageResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified AnnotateImageResponse message, length delimited. Does not implicitly {@link google.cloud.vision.v1p3beta1.AnnotateImageResponse.verify|verify} messages.
+ * @param message AnnotateImageResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p3beta1.IAnnotateImageResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an AnnotateImageResponse message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns AnnotateImageResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p3beta1.AnnotateImageResponse;
+
+ /**
+ * Decodes an AnnotateImageResponse message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns AnnotateImageResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p3beta1.AnnotateImageResponse;
+
+ /**
+ * Verifies an AnnotateImageResponse message.
+ * @param message Plain 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 AnnotateImageResponse message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns AnnotateImageResponse
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p3beta1.AnnotateImageResponse;
+
+ /**
+ * Creates a plain object from an AnnotateImageResponse message. Also converts values to other types if specified.
+ * @param message AnnotateImageResponse
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p3beta1.AnnotateImageResponse, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this AnnotateImageResponse to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for AnnotateImageResponse
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an AnnotateFileResponse. */
+ interface IAnnotateFileResponse {
+
+ /** AnnotateFileResponse inputConfig */
+ inputConfig?: (google.cloud.vision.v1p3beta1.IInputConfig|null);
+
+ /** AnnotateFileResponse responses */
+ responses?: (google.cloud.vision.v1p3beta1.IAnnotateImageResponse[]|null);
+ }
+
+ /** Represents an AnnotateFileResponse. */
+ class AnnotateFileResponse implements IAnnotateFileResponse {
+
+ /**
+ * Constructs a new AnnotateFileResponse.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p3beta1.IAnnotateFileResponse);
+
+ /** AnnotateFileResponse inputConfig. */
+ public inputConfig?: (google.cloud.vision.v1p3beta1.IInputConfig|null);
+
+ /** AnnotateFileResponse responses. */
+ public responses: google.cloud.vision.v1p3beta1.IAnnotateImageResponse[];
+
+ /**
+ * Creates a new AnnotateFileResponse instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns AnnotateFileResponse instance
+ */
+ public static create(properties?: google.cloud.vision.v1p3beta1.IAnnotateFileResponse): google.cloud.vision.v1p3beta1.AnnotateFileResponse;
+
+ /**
+ * Encodes the specified AnnotateFileResponse message. Does not implicitly {@link google.cloud.vision.v1p3beta1.AnnotateFileResponse.verify|verify} messages.
+ * @param message AnnotateFileResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p3beta1.IAnnotateFileResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified AnnotateFileResponse message, length delimited. Does not implicitly {@link google.cloud.vision.v1p3beta1.AnnotateFileResponse.verify|verify} messages.
+ * @param message AnnotateFileResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p3beta1.IAnnotateFileResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an AnnotateFileResponse message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns AnnotateFileResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p3beta1.AnnotateFileResponse;
+
+ /**
+ * Decodes an AnnotateFileResponse message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns AnnotateFileResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p3beta1.AnnotateFileResponse;
+
+ /**
+ * Verifies an AnnotateFileResponse message.
+ * @param message Plain 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 AnnotateFileResponse message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns AnnotateFileResponse
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p3beta1.AnnotateFileResponse;
+
+ /**
+ * Creates a plain object from an AnnotateFileResponse message. Also converts values to other types if specified.
+ * @param message AnnotateFileResponse
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p3beta1.AnnotateFileResponse, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this AnnotateFileResponse to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for AnnotateFileResponse
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a BatchAnnotateImagesRequest. */
+ interface IBatchAnnotateImagesRequest {
+
+ /** BatchAnnotateImagesRequest requests */
+ requests?: (google.cloud.vision.v1p3beta1.IAnnotateImageRequest[]|null);
+ }
+
+ /** Represents a BatchAnnotateImagesRequest. */
+ class BatchAnnotateImagesRequest implements IBatchAnnotateImagesRequest {
+
+ /**
+ * Constructs a new BatchAnnotateImagesRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p3beta1.IBatchAnnotateImagesRequest);
+
+ /** BatchAnnotateImagesRequest requests. */
+ public requests: google.cloud.vision.v1p3beta1.IAnnotateImageRequest[];
+
+ /**
+ * Creates a new BatchAnnotateImagesRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns BatchAnnotateImagesRequest instance
+ */
+ public static create(properties?: google.cloud.vision.v1p3beta1.IBatchAnnotateImagesRequest): google.cloud.vision.v1p3beta1.BatchAnnotateImagesRequest;
+
+ /**
+ * Encodes the specified BatchAnnotateImagesRequest message. Does not implicitly {@link google.cloud.vision.v1p3beta1.BatchAnnotateImagesRequest.verify|verify} messages.
+ * @param message BatchAnnotateImagesRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p3beta1.IBatchAnnotateImagesRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified BatchAnnotateImagesRequest message, length delimited. Does not implicitly {@link google.cloud.vision.v1p3beta1.BatchAnnotateImagesRequest.verify|verify} messages.
+ * @param message BatchAnnotateImagesRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p3beta1.IBatchAnnotateImagesRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a BatchAnnotateImagesRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns BatchAnnotateImagesRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p3beta1.BatchAnnotateImagesRequest;
+
+ /**
+ * Decodes a BatchAnnotateImagesRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns BatchAnnotateImagesRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p3beta1.BatchAnnotateImagesRequest;
+
+ /**
+ * Verifies a BatchAnnotateImagesRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a BatchAnnotateImagesRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns BatchAnnotateImagesRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p3beta1.BatchAnnotateImagesRequest;
+
+ /**
+ * Creates a plain object from a BatchAnnotateImagesRequest message. Also converts values to other types if specified.
+ * @param message BatchAnnotateImagesRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p3beta1.BatchAnnotateImagesRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this BatchAnnotateImagesRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for BatchAnnotateImagesRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a BatchAnnotateImagesResponse. */
+ interface IBatchAnnotateImagesResponse {
+
+ /** BatchAnnotateImagesResponse responses */
+ responses?: (google.cloud.vision.v1p3beta1.IAnnotateImageResponse[]|null);
+ }
+
+ /** Represents a BatchAnnotateImagesResponse. */
+ class BatchAnnotateImagesResponse implements IBatchAnnotateImagesResponse {
+
+ /**
+ * Constructs a new BatchAnnotateImagesResponse.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p3beta1.IBatchAnnotateImagesResponse);
+
+ /** BatchAnnotateImagesResponse responses. */
+ public responses: google.cloud.vision.v1p3beta1.IAnnotateImageResponse[];
+
+ /**
+ * Creates a new BatchAnnotateImagesResponse instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns BatchAnnotateImagesResponse instance
+ */
+ public static create(properties?: google.cloud.vision.v1p3beta1.IBatchAnnotateImagesResponse): google.cloud.vision.v1p3beta1.BatchAnnotateImagesResponse;
+
+ /**
+ * Encodes the specified BatchAnnotateImagesResponse message. Does not implicitly {@link google.cloud.vision.v1p3beta1.BatchAnnotateImagesResponse.verify|verify} messages.
+ * @param message BatchAnnotateImagesResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p3beta1.IBatchAnnotateImagesResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified BatchAnnotateImagesResponse message, length delimited. Does not implicitly {@link google.cloud.vision.v1p3beta1.BatchAnnotateImagesResponse.verify|verify} messages.
+ * @param message BatchAnnotateImagesResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p3beta1.IBatchAnnotateImagesResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a BatchAnnotateImagesResponse message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns BatchAnnotateImagesResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p3beta1.BatchAnnotateImagesResponse;
+
+ /**
+ * Decodes a BatchAnnotateImagesResponse message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns BatchAnnotateImagesResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p3beta1.BatchAnnotateImagesResponse;
+
+ /**
+ * Verifies a BatchAnnotateImagesResponse message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a BatchAnnotateImagesResponse message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns BatchAnnotateImagesResponse
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p3beta1.BatchAnnotateImagesResponse;
+
+ /**
+ * Creates a plain object from a BatchAnnotateImagesResponse message. Also converts values to other types if specified.
+ * @param message BatchAnnotateImagesResponse
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p3beta1.BatchAnnotateImagesResponse, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this BatchAnnotateImagesResponse to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for BatchAnnotateImagesResponse
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an AsyncAnnotateFileRequest. */
+ interface IAsyncAnnotateFileRequest {
+
+ /** AsyncAnnotateFileRequest inputConfig */
+ inputConfig?: (google.cloud.vision.v1p3beta1.IInputConfig|null);
+
+ /** AsyncAnnotateFileRequest features */
+ features?: (google.cloud.vision.v1p3beta1.IFeature[]|null);
+
+ /** AsyncAnnotateFileRequest imageContext */
+ imageContext?: (google.cloud.vision.v1p3beta1.IImageContext|null);
+
+ /** AsyncAnnotateFileRequest outputConfig */
+ outputConfig?: (google.cloud.vision.v1p3beta1.IOutputConfig|null);
+ }
+
+ /** Represents an AsyncAnnotateFileRequest. */
+ class AsyncAnnotateFileRequest implements IAsyncAnnotateFileRequest {
+
+ /**
+ * Constructs a new AsyncAnnotateFileRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p3beta1.IAsyncAnnotateFileRequest);
+
+ /** AsyncAnnotateFileRequest inputConfig. */
+ public inputConfig?: (google.cloud.vision.v1p3beta1.IInputConfig|null);
+
+ /** AsyncAnnotateFileRequest features. */
+ public features: google.cloud.vision.v1p3beta1.IFeature[];
+
+ /** AsyncAnnotateFileRequest imageContext. */
+ public imageContext?: (google.cloud.vision.v1p3beta1.IImageContext|null);
+
+ /** AsyncAnnotateFileRequest outputConfig. */
+ public outputConfig?: (google.cloud.vision.v1p3beta1.IOutputConfig|null);
+
+ /**
+ * Creates a new AsyncAnnotateFileRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns AsyncAnnotateFileRequest instance
+ */
+ public static create(properties?: google.cloud.vision.v1p3beta1.IAsyncAnnotateFileRequest): google.cloud.vision.v1p3beta1.AsyncAnnotateFileRequest;
+
+ /**
+ * Encodes the specified AsyncAnnotateFileRequest message. Does not implicitly {@link google.cloud.vision.v1p3beta1.AsyncAnnotateFileRequest.verify|verify} messages.
+ * @param message AsyncAnnotateFileRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p3beta1.IAsyncAnnotateFileRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified AsyncAnnotateFileRequest message, length delimited. Does not implicitly {@link google.cloud.vision.v1p3beta1.AsyncAnnotateFileRequest.verify|verify} messages.
+ * @param message AsyncAnnotateFileRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p3beta1.IAsyncAnnotateFileRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an AsyncAnnotateFileRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns AsyncAnnotateFileRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p3beta1.AsyncAnnotateFileRequest;
+
+ /**
+ * Decodes an AsyncAnnotateFileRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns AsyncAnnotateFileRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p3beta1.AsyncAnnotateFileRequest;
+
+ /**
+ * Verifies an AsyncAnnotateFileRequest message.
+ * @param message Plain 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 AsyncAnnotateFileRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns AsyncAnnotateFileRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p3beta1.AsyncAnnotateFileRequest;
+
+ /**
+ * Creates a plain object from an AsyncAnnotateFileRequest message. Also converts values to other types if specified.
+ * @param message AsyncAnnotateFileRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p3beta1.AsyncAnnotateFileRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this AsyncAnnotateFileRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for AsyncAnnotateFileRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an AsyncAnnotateFileResponse. */
+ interface IAsyncAnnotateFileResponse {
+
+ /** AsyncAnnotateFileResponse outputConfig */
+ outputConfig?: (google.cloud.vision.v1p3beta1.IOutputConfig|null);
+ }
+
+ /** Represents an AsyncAnnotateFileResponse. */
+ class AsyncAnnotateFileResponse implements IAsyncAnnotateFileResponse {
+
+ /**
+ * Constructs a new AsyncAnnotateFileResponse.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p3beta1.IAsyncAnnotateFileResponse);
+
+ /** AsyncAnnotateFileResponse outputConfig. */
+ public outputConfig?: (google.cloud.vision.v1p3beta1.IOutputConfig|null);
+
+ /**
+ * Creates a new AsyncAnnotateFileResponse instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns AsyncAnnotateFileResponse instance
+ */
+ public static create(properties?: google.cloud.vision.v1p3beta1.IAsyncAnnotateFileResponse): google.cloud.vision.v1p3beta1.AsyncAnnotateFileResponse;
+
+ /**
+ * Encodes the specified AsyncAnnotateFileResponse message. Does not implicitly {@link google.cloud.vision.v1p3beta1.AsyncAnnotateFileResponse.verify|verify} messages.
+ * @param message AsyncAnnotateFileResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p3beta1.IAsyncAnnotateFileResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified AsyncAnnotateFileResponse message, length delimited. Does not implicitly {@link google.cloud.vision.v1p3beta1.AsyncAnnotateFileResponse.verify|verify} messages.
+ * @param message AsyncAnnotateFileResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p3beta1.IAsyncAnnotateFileResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an AsyncAnnotateFileResponse message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns AsyncAnnotateFileResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p3beta1.AsyncAnnotateFileResponse;
+
+ /**
+ * Decodes an AsyncAnnotateFileResponse message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns AsyncAnnotateFileResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p3beta1.AsyncAnnotateFileResponse;
+
+ /**
+ * Verifies an AsyncAnnotateFileResponse message.
+ * @param message Plain 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 AsyncAnnotateFileResponse message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns AsyncAnnotateFileResponse
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p3beta1.AsyncAnnotateFileResponse;
+
+ /**
+ * Creates a plain object from an AsyncAnnotateFileResponse message. Also converts values to other types if specified.
+ * @param message AsyncAnnotateFileResponse
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p3beta1.AsyncAnnotateFileResponse, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this AsyncAnnotateFileResponse to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for AsyncAnnotateFileResponse
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an AsyncBatchAnnotateFilesRequest. */
+ interface IAsyncBatchAnnotateFilesRequest {
+
+ /** AsyncBatchAnnotateFilesRequest requests */
+ requests?: (google.cloud.vision.v1p3beta1.IAsyncAnnotateFileRequest[]|null);
+ }
+
+ /** Represents an AsyncBatchAnnotateFilesRequest. */
+ class AsyncBatchAnnotateFilesRequest implements IAsyncBatchAnnotateFilesRequest {
+
+ /**
+ * Constructs a new AsyncBatchAnnotateFilesRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p3beta1.IAsyncBatchAnnotateFilesRequest);
+
+ /** AsyncBatchAnnotateFilesRequest requests. */
+ public requests: google.cloud.vision.v1p3beta1.IAsyncAnnotateFileRequest[];
+
+ /**
+ * Creates a new AsyncBatchAnnotateFilesRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns AsyncBatchAnnotateFilesRequest instance
+ */
+ public static create(properties?: google.cloud.vision.v1p3beta1.IAsyncBatchAnnotateFilesRequest): google.cloud.vision.v1p3beta1.AsyncBatchAnnotateFilesRequest;
+
+ /**
+ * Encodes the specified AsyncBatchAnnotateFilesRequest message. Does not implicitly {@link google.cloud.vision.v1p3beta1.AsyncBatchAnnotateFilesRequest.verify|verify} messages.
+ * @param message AsyncBatchAnnotateFilesRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p3beta1.IAsyncBatchAnnotateFilesRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified AsyncBatchAnnotateFilesRequest message, length delimited. Does not implicitly {@link google.cloud.vision.v1p3beta1.AsyncBatchAnnotateFilesRequest.verify|verify} messages.
+ * @param message AsyncBatchAnnotateFilesRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p3beta1.IAsyncBatchAnnotateFilesRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an AsyncBatchAnnotateFilesRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns AsyncBatchAnnotateFilesRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p3beta1.AsyncBatchAnnotateFilesRequest;
+
+ /**
+ * Decodes an AsyncBatchAnnotateFilesRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns AsyncBatchAnnotateFilesRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p3beta1.AsyncBatchAnnotateFilesRequest;
+
+ /**
+ * Verifies an AsyncBatchAnnotateFilesRequest message.
+ * @param message Plain 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 AsyncBatchAnnotateFilesRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns AsyncBatchAnnotateFilesRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p3beta1.AsyncBatchAnnotateFilesRequest;
+
+ /**
+ * Creates a plain object from an AsyncBatchAnnotateFilesRequest message. Also converts values to other types if specified.
+ * @param message AsyncBatchAnnotateFilesRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p3beta1.AsyncBatchAnnotateFilesRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this AsyncBatchAnnotateFilesRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for AsyncBatchAnnotateFilesRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an AsyncBatchAnnotateFilesResponse. */
+ interface IAsyncBatchAnnotateFilesResponse {
+
+ /** AsyncBatchAnnotateFilesResponse responses */
+ responses?: (google.cloud.vision.v1p3beta1.IAsyncAnnotateFileResponse[]|null);
+ }
+
+ /** Represents an AsyncBatchAnnotateFilesResponse. */
+ class AsyncBatchAnnotateFilesResponse implements IAsyncBatchAnnotateFilesResponse {
+
+ /**
+ * Constructs a new AsyncBatchAnnotateFilesResponse.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p3beta1.IAsyncBatchAnnotateFilesResponse);
+
+ /** AsyncBatchAnnotateFilesResponse responses. */
+ public responses: google.cloud.vision.v1p3beta1.IAsyncAnnotateFileResponse[];
+
+ /**
+ * Creates a new AsyncBatchAnnotateFilesResponse instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns AsyncBatchAnnotateFilesResponse instance
+ */
+ public static create(properties?: google.cloud.vision.v1p3beta1.IAsyncBatchAnnotateFilesResponse): google.cloud.vision.v1p3beta1.AsyncBatchAnnotateFilesResponse;
+
+ /**
+ * Encodes the specified AsyncBatchAnnotateFilesResponse message. Does not implicitly {@link google.cloud.vision.v1p3beta1.AsyncBatchAnnotateFilesResponse.verify|verify} messages.
+ * @param message AsyncBatchAnnotateFilesResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p3beta1.IAsyncBatchAnnotateFilesResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified AsyncBatchAnnotateFilesResponse message, length delimited. Does not implicitly {@link google.cloud.vision.v1p3beta1.AsyncBatchAnnotateFilesResponse.verify|verify} messages.
+ * @param message AsyncBatchAnnotateFilesResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p3beta1.IAsyncBatchAnnotateFilesResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an AsyncBatchAnnotateFilesResponse message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns AsyncBatchAnnotateFilesResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p3beta1.AsyncBatchAnnotateFilesResponse;
+
+ /**
+ * Decodes an AsyncBatchAnnotateFilesResponse message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns AsyncBatchAnnotateFilesResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p3beta1.AsyncBatchAnnotateFilesResponse;
+
+ /**
+ * Verifies an AsyncBatchAnnotateFilesResponse message.
+ * @param message Plain 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 AsyncBatchAnnotateFilesResponse message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns AsyncBatchAnnotateFilesResponse
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p3beta1.AsyncBatchAnnotateFilesResponse;
+
+ /**
+ * Creates a plain object from an AsyncBatchAnnotateFilesResponse message. Also converts values to other types if specified.
+ * @param message AsyncBatchAnnotateFilesResponse
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p3beta1.AsyncBatchAnnotateFilesResponse, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this AsyncBatchAnnotateFilesResponse to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for AsyncBatchAnnotateFilesResponse
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an InputConfig. */
+ interface IInputConfig {
+
+ /** InputConfig gcsSource */
+ gcsSource?: (google.cloud.vision.v1p3beta1.IGcsSource|null);
+
+ /** InputConfig mimeType */
+ mimeType?: (string|null);
+ }
+
+ /** Represents an InputConfig. */
+ class InputConfig implements IInputConfig {
+
+ /**
+ * Constructs a new InputConfig.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p3beta1.IInputConfig);
+
+ /** InputConfig gcsSource. */
+ public gcsSource?: (google.cloud.vision.v1p3beta1.IGcsSource|null);
+
+ /** InputConfig mimeType. */
+ public mimeType: string;
+
+ /**
+ * Creates a new InputConfig instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns InputConfig instance
+ */
+ public static create(properties?: google.cloud.vision.v1p3beta1.IInputConfig): google.cloud.vision.v1p3beta1.InputConfig;
+
+ /**
+ * Encodes the specified InputConfig message. Does not implicitly {@link google.cloud.vision.v1p3beta1.InputConfig.verify|verify} messages.
+ * @param message InputConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p3beta1.IInputConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified InputConfig message, length delimited. Does not implicitly {@link google.cloud.vision.v1p3beta1.InputConfig.verify|verify} messages.
+ * @param message InputConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p3beta1.IInputConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an InputConfig message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns InputConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p3beta1.InputConfig;
+
+ /**
+ * Decodes an InputConfig message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns InputConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p3beta1.InputConfig;
+
+ /**
+ * Verifies an InputConfig message.
+ * @param message Plain 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 InputConfig message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns InputConfig
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p3beta1.InputConfig;
+
+ /**
+ * Creates a plain object from an InputConfig message. Also converts values to other types if specified.
+ * @param message InputConfig
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p3beta1.InputConfig, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this InputConfig to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for InputConfig
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an OutputConfig. */
+ interface IOutputConfig {
+
+ /** OutputConfig gcsDestination */
+ gcsDestination?: (google.cloud.vision.v1p3beta1.IGcsDestination|null);
+
+ /** OutputConfig batchSize */
+ batchSize?: (number|null);
+ }
+
+ /** Represents an OutputConfig. */
+ class OutputConfig implements IOutputConfig {
+
+ /**
+ * Constructs a new OutputConfig.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p3beta1.IOutputConfig);
+
+ /** OutputConfig gcsDestination. */
+ public gcsDestination?: (google.cloud.vision.v1p3beta1.IGcsDestination|null);
+
+ /** OutputConfig batchSize. */
+ public batchSize: number;
+
+ /**
+ * Creates a new OutputConfig instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns OutputConfig instance
+ */
+ public static create(properties?: google.cloud.vision.v1p3beta1.IOutputConfig): google.cloud.vision.v1p3beta1.OutputConfig;
+
+ /**
+ * Encodes the specified OutputConfig message. Does not implicitly {@link google.cloud.vision.v1p3beta1.OutputConfig.verify|verify} messages.
+ * @param message OutputConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p3beta1.IOutputConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified OutputConfig message, length delimited. Does not implicitly {@link google.cloud.vision.v1p3beta1.OutputConfig.verify|verify} messages.
+ * @param message OutputConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p3beta1.IOutputConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an OutputConfig message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns OutputConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p3beta1.OutputConfig;
+
+ /**
+ * Decodes an OutputConfig message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns OutputConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p3beta1.OutputConfig;
+
+ /**
+ * Verifies an OutputConfig message.
+ * @param message Plain 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 OutputConfig message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns OutputConfig
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p3beta1.OutputConfig;
+
+ /**
+ * Creates a plain object from an OutputConfig message. Also converts values to other types if specified.
+ * @param message OutputConfig
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p3beta1.OutputConfig, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this OutputConfig to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for OutputConfig
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a GcsSource. */
+ interface IGcsSource {
+
+ /** GcsSource uri */
+ uri?: (string|null);
+ }
+
+ /** Represents a GcsSource. */
+ class GcsSource implements IGcsSource {
+
+ /**
+ * Constructs a new GcsSource.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p3beta1.IGcsSource);
+
+ /** GcsSource uri. */
+ public uri: string;
+
+ /**
+ * Creates a new GcsSource instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns GcsSource instance
+ */
+ public static create(properties?: google.cloud.vision.v1p3beta1.IGcsSource): google.cloud.vision.v1p3beta1.GcsSource;
+
+ /**
+ * Encodes the specified GcsSource message. Does not implicitly {@link google.cloud.vision.v1p3beta1.GcsSource.verify|verify} messages.
+ * @param message GcsSource message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p3beta1.IGcsSource, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified GcsSource message, length delimited. Does not implicitly {@link google.cloud.vision.v1p3beta1.GcsSource.verify|verify} messages.
+ * @param message GcsSource message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p3beta1.IGcsSource, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a GcsSource message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns GcsSource
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p3beta1.GcsSource;
+
+ /**
+ * Decodes a GcsSource message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns GcsSource
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p3beta1.GcsSource;
+
+ /**
+ * Verifies a GcsSource message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a GcsSource message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns GcsSource
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p3beta1.GcsSource;
+
+ /**
+ * Creates a plain object from a GcsSource message. Also converts values to other types if specified.
+ * @param message GcsSource
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p3beta1.GcsSource, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this GcsSource to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for GcsSource
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a GcsDestination. */
+ interface IGcsDestination {
+
+ /** GcsDestination uri */
+ uri?: (string|null);
+ }
+
+ /** Represents a GcsDestination. */
+ class GcsDestination implements IGcsDestination {
+
+ /**
+ * Constructs a new GcsDestination.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p3beta1.IGcsDestination);
+
+ /** GcsDestination uri. */
+ public uri: string;
+
+ /**
+ * Creates a new GcsDestination instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns GcsDestination instance
+ */
+ public static create(properties?: google.cloud.vision.v1p3beta1.IGcsDestination): google.cloud.vision.v1p3beta1.GcsDestination;
+
+ /**
+ * Encodes the specified GcsDestination message. Does not implicitly {@link google.cloud.vision.v1p3beta1.GcsDestination.verify|verify} messages.
+ * @param message GcsDestination message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p3beta1.IGcsDestination, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified GcsDestination message, length delimited. Does not implicitly {@link google.cloud.vision.v1p3beta1.GcsDestination.verify|verify} messages.
+ * @param message GcsDestination message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p3beta1.IGcsDestination, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a GcsDestination message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns GcsDestination
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p3beta1.GcsDestination;
+
+ /**
+ * Decodes a GcsDestination message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns GcsDestination
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p3beta1.GcsDestination;
+
+ /**
+ * Verifies a GcsDestination message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a GcsDestination message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns GcsDestination
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p3beta1.GcsDestination;
+
+ /**
+ * Creates a plain object from a GcsDestination message. Also converts values to other types if specified.
+ * @param message GcsDestination
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p3beta1.GcsDestination, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this GcsDestination to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for GcsDestination
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Likelihood enum. */
+ enum Likelihood {
+ UNKNOWN = 0,
+ VERY_UNLIKELY = 1,
+ UNLIKELY = 2,
+ POSSIBLE = 3,
+ LIKELY = 4,
+ VERY_LIKELY = 5
+ }
+
+ /** Properties of an OperationMetadata. */
+ interface IOperationMetadata {
+
+ /** OperationMetadata state */
+ state?: (google.cloud.vision.v1p3beta1.OperationMetadata.State|keyof typeof google.cloud.vision.v1p3beta1.OperationMetadata.State|null);
+
+ /** OperationMetadata createTime */
+ createTime?: (google.protobuf.ITimestamp|null);
+
+ /** OperationMetadata updateTime */
+ updateTime?: (google.protobuf.ITimestamp|null);
+ }
+
+ /** Represents an OperationMetadata. */
+ class OperationMetadata implements IOperationMetadata {
+
+ /**
+ * Constructs a new OperationMetadata.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p3beta1.IOperationMetadata);
+
+ /** OperationMetadata state. */
+ public state: (google.cloud.vision.v1p3beta1.OperationMetadata.State|keyof typeof google.cloud.vision.v1p3beta1.OperationMetadata.State);
+
+ /** OperationMetadata createTime. */
+ public createTime?: (google.protobuf.ITimestamp|null);
+
+ /** OperationMetadata updateTime. */
+ public updateTime?: (google.protobuf.ITimestamp|null);
+
+ /**
+ * Creates a new OperationMetadata instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns OperationMetadata instance
+ */
+ public static create(properties?: google.cloud.vision.v1p3beta1.IOperationMetadata): google.cloud.vision.v1p3beta1.OperationMetadata;
+
+ /**
+ * Encodes the specified OperationMetadata message. Does not implicitly {@link google.cloud.vision.v1p3beta1.OperationMetadata.verify|verify} messages.
+ * @param message OperationMetadata message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p3beta1.IOperationMetadata, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified OperationMetadata message, length delimited. Does not implicitly {@link google.cloud.vision.v1p3beta1.OperationMetadata.verify|verify} messages.
+ * @param message OperationMetadata message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p3beta1.IOperationMetadata, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an OperationMetadata message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns OperationMetadata
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p3beta1.OperationMetadata;
+
+ /**
+ * Decodes an OperationMetadata message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns OperationMetadata
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p3beta1.OperationMetadata;
+
+ /**
+ * Verifies an OperationMetadata message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates an OperationMetadata message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns OperationMetadata
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p3beta1.OperationMetadata;
+
+ /**
+ * Creates a plain object from an OperationMetadata message. Also converts values to other types if specified.
+ * @param message OperationMetadata
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p3beta1.OperationMetadata, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this OperationMetadata to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for OperationMetadata
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace OperationMetadata {
+
+ /** State enum. */
+ enum State {
+ STATE_UNSPECIFIED = 0,
+ CREATED = 1,
+ RUNNING = 2,
+ DONE = 3,
+ CANCELLED = 4
+ }
+ }
+
+ /** Properties of a ProductSearchParams. */
+ interface IProductSearchParams {
+
+ /** ProductSearchParams boundingPoly */
+ boundingPoly?: (google.cloud.vision.v1p3beta1.IBoundingPoly|null);
+
+ /** ProductSearchParams productSet */
+ productSet?: (string|null);
+
+ /** ProductSearchParams productCategories */
+ productCategories?: (string[]|null);
+
+ /** ProductSearchParams filter */
+ filter?: (string|null);
+ }
+
+ /** Represents a ProductSearchParams. */
+ class ProductSearchParams implements IProductSearchParams {
+
+ /**
+ * Constructs a new ProductSearchParams.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p3beta1.IProductSearchParams);
+
+ /** ProductSearchParams boundingPoly. */
+ public boundingPoly?: (google.cloud.vision.v1p3beta1.IBoundingPoly|null);
+
+ /** ProductSearchParams productSet. */
+ public productSet: string;
+
+ /** ProductSearchParams productCategories. */
+ public productCategories: string[];
+
+ /** ProductSearchParams filter. */
+ public filter: string;
+
+ /**
+ * Creates a new ProductSearchParams instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ProductSearchParams instance
+ */
+ public static create(properties?: google.cloud.vision.v1p3beta1.IProductSearchParams): google.cloud.vision.v1p3beta1.ProductSearchParams;
+
+ /**
+ * Encodes the specified ProductSearchParams message. Does not implicitly {@link google.cloud.vision.v1p3beta1.ProductSearchParams.verify|verify} messages.
+ * @param message ProductSearchParams message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p3beta1.IProductSearchParams, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ProductSearchParams message, length delimited. Does not implicitly {@link google.cloud.vision.v1p3beta1.ProductSearchParams.verify|verify} messages.
+ * @param message ProductSearchParams message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p3beta1.IProductSearchParams, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ProductSearchParams message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ProductSearchParams
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p3beta1.ProductSearchParams;
+
+ /**
+ * Decodes a ProductSearchParams message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ProductSearchParams
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p3beta1.ProductSearchParams;
+
+ /**
+ * Verifies a ProductSearchParams message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ProductSearchParams message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ProductSearchParams
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p3beta1.ProductSearchParams;
+
+ /**
+ * Creates a plain object from a ProductSearchParams message. Also converts values to other types if specified.
+ * @param message ProductSearchParams
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p3beta1.ProductSearchParams, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ProductSearchParams to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ProductSearchParams
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ProductSearchResults. */
+ interface IProductSearchResults {
+
+ /** ProductSearchResults indexTime */
+ indexTime?: (google.protobuf.ITimestamp|null);
+
+ /** ProductSearchResults results */
+ results?: (google.cloud.vision.v1p3beta1.ProductSearchResults.IResult[]|null);
+
+ /** ProductSearchResults productGroupedResults */
+ productGroupedResults?: (google.cloud.vision.v1p3beta1.ProductSearchResults.IGroupedResult[]|null);
+ }
+
+ /** Represents a ProductSearchResults. */
+ class ProductSearchResults implements IProductSearchResults {
+
+ /**
+ * Constructs a new ProductSearchResults.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p3beta1.IProductSearchResults);
+
+ /** ProductSearchResults indexTime. */
+ public indexTime?: (google.protobuf.ITimestamp|null);
+
+ /** ProductSearchResults results. */
+ public results: google.cloud.vision.v1p3beta1.ProductSearchResults.IResult[];
+
+ /** ProductSearchResults productGroupedResults. */
+ public productGroupedResults: google.cloud.vision.v1p3beta1.ProductSearchResults.IGroupedResult[];
+
+ /**
+ * Creates a new ProductSearchResults instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ProductSearchResults instance
+ */
+ public static create(properties?: google.cloud.vision.v1p3beta1.IProductSearchResults): google.cloud.vision.v1p3beta1.ProductSearchResults;
+
+ /**
+ * Encodes the specified ProductSearchResults message. Does not implicitly {@link google.cloud.vision.v1p3beta1.ProductSearchResults.verify|verify} messages.
+ * @param message ProductSearchResults message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p3beta1.IProductSearchResults, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ProductSearchResults message, length delimited. Does not implicitly {@link google.cloud.vision.v1p3beta1.ProductSearchResults.verify|verify} messages.
+ * @param message ProductSearchResults message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p3beta1.IProductSearchResults, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ProductSearchResults message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ProductSearchResults
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p3beta1.ProductSearchResults;
+
+ /**
+ * Decodes a ProductSearchResults message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ProductSearchResults
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p3beta1.ProductSearchResults;
+
+ /**
+ * Verifies a ProductSearchResults message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ProductSearchResults message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ProductSearchResults
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p3beta1.ProductSearchResults;
+
+ /**
+ * Creates a plain object from a ProductSearchResults message. Also converts values to other types if specified.
+ * @param message ProductSearchResults
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p3beta1.ProductSearchResults, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ProductSearchResults to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ProductSearchResults
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace ProductSearchResults {
+
+ /** Properties of a Result. */
+ interface IResult {
+
+ /** Result product */
+ product?: (google.cloud.vision.v1p3beta1.IProduct|null);
+
+ /** Result score */
+ score?: (number|null);
+
+ /** Result image */
+ image?: (string|null);
+ }
+
+ /** Represents a Result. */
+ class Result implements IResult {
+
+ /**
+ * Constructs a new Result.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p3beta1.ProductSearchResults.IResult);
+
+ /** Result product. */
+ public product?: (google.cloud.vision.v1p3beta1.IProduct|null);
+
+ /** Result score. */
+ public score: number;
+
+ /** Result image. */
+ public image: string;
+
+ /**
+ * Creates a new Result instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Result instance
+ */
+ public static create(properties?: google.cloud.vision.v1p3beta1.ProductSearchResults.IResult): google.cloud.vision.v1p3beta1.ProductSearchResults.Result;
+
+ /**
+ * Encodes the specified Result message. Does not implicitly {@link google.cloud.vision.v1p3beta1.ProductSearchResults.Result.verify|verify} messages.
+ * @param message Result message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p3beta1.ProductSearchResults.IResult, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Result message, length delimited. Does not implicitly {@link google.cloud.vision.v1p3beta1.ProductSearchResults.Result.verify|verify} messages.
+ * @param message Result message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p3beta1.ProductSearchResults.IResult, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Result message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Result
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p3beta1.ProductSearchResults.Result;
+
+ /**
+ * Decodes a Result message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Result
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p3beta1.ProductSearchResults.Result;
+
+ /**
+ * Verifies a Result message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a Result message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Result
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p3beta1.ProductSearchResults.Result;
+
+ /**
+ * Creates a plain object from a Result message. Also converts values to other types if specified.
+ * @param message Result
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p3beta1.ProductSearchResults.Result, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Result to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Result
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an ObjectAnnotation. */
+ interface IObjectAnnotation {
+
+ /** ObjectAnnotation mid */
+ mid?: (string|null);
+
+ /** ObjectAnnotation languageCode */
+ languageCode?: (string|null);
+
+ /** ObjectAnnotation name */
+ name?: (string|null);
+
+ /** ObjectAnnotation score */
+ score?: (number|null);
+ }
+
+ /** Represents an ObjectAnnotation. */
+ class ObjectAnnotation implements IObjectAnnotation {
+
+ /**
+ * Constructs a new ObjectAnnotation.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p3beta1.ProductSearchResults.IObjectAnnotation);
+
+ /** ObjectAnnotation mid. */
+ public mid: string;
+
+ /** ObjectAnnotation languageCode. */
+ public languageCode: string;
+
+ /** ObjectAnnotation name. */
+ public name: string;
+
+ /** ObjectAnnotation score. */
+ public score: number;
+
+ /**
+ * Creates a new ObjectAnnotation instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ObjectAnnotation instance
+ */
+ public static create(properties?: google.cloud.vision.v1p3beta1.ProductSearchResults.IObjectAnnotation): google.cloud.vision.v1p3beta1.ProductSearchResults.ObjectAnnotation;
+
+ /**
+ * Encodes the specified ObjectAnnotation message. Does not implicitly {@link google.cloud.vision.v1p3beta1.ProductSearchResults.ObjectAnnotation.verify|verify} messages.
+ * @param message ObjectAnnotation message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p3beta1.ProductSearchResults.IObjectAnnotation, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ObjectAnnotation message, length delimited. Does not implicitly {@link google.cloud.vision.v1p3beta1.ProductSearchResults.ObjectAnnotation.verify|verify} messages.
+ * @param message ObjectAnnotation message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p3beta1.ProductSearchResults.IObjectAnnotation, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an ObjectAnnotation message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ObjectAnnotation
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p3beta1.ProductSearchResults.ObjectAnnotation;
+
+ /**
+ * Decodes an ObjectAnnotation message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ObjectAnnotation
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p3beta1.ProductSearchResults.ObjectAnnotation;
+
+ /**
+ * Verifies an ObjectAnnotation message.
+ * @param message Plain 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 ObjectAnnotation message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ObjectAnnotation
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p3beta1.ProductSearchResults.ObjectAnnotation;
+
+ /**
+ * Creates a plain object from an ObjectAnnotation message. Also converts values to other types if specified.
+ * @param message ObjectAnnotation
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p3beta1.ProductSearchResults.ObjectAnnotation, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ObjectAnnotation to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ObjectAnnotation
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a GroupedResult. */
+ interface IGroupedResult {
+
+ /** GroupedResult boundingPoly */
+ boundingPoly?: (google.cloud.vision.v1p3beta1.IBoundingPoly|null);
+
+ /** GroupedResult results */
+ results?: (google.cloud.vision.v1p3beta1.ProductSearchResults.IResult[]|null);
+
+ /** GroupedResult objectAnnotations */
+ objectAnnotations?: (google.cloud.vision.v1p3beta1.ProductSearchResults.IObjectAnnotation[]|null);
+ }
+
+ /** Represents a GroupedResult. */
+ class GroupedResult implements IGroupedResult {
+
+ /**
+ * Constructs a new GroupedResult.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p3beta1.ProductSearchResults.IGroupedResult);
+
+ /** GroupedResult boundingPoly. */
+ public boundingPoly?: (google.cloud.vision.v1p3beta1.IBoundingPoly|null);
+
+ /** GroupedResult results. */
+ public results: google.cloud.vision.v1p3beta1.ProductSearchResults.IResult[];
+
+ /** GroupedResult objectAnnotations. */
+ public objectAnnotations: google.cloud.vision.v1p3beta1.ProductSearchResults.IObjectAnnotation[];
+
+ /**
+ * Creates a new GroupedResult instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns GroupedResult instance
+ */
+ public static create(properties?: google.cloud.vision.v1p3beta1.ProductSearchResults.IGroupedResult): google.cloud.vision.v1p3beta1.ProductSearchResults.GroupedResult;
+
+ /**
+ * Encodes the specified GroupedResult message. Does not implicitly {@link google.cloud.vision.v1p3beta1.ProductSearchResults.GroupedResult.verify|verify} messages.
+ * @param message GroupedResult message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p3beta1.ProductSearchResults.IGroupedResult, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified GroupedResult message, length delimited. Does not implicitly {@link google.cloud.vision.v1p3beta1.ProductSearchResults.GroupedResult.verify|verify} messages.
+ * @param message GroupedResult message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p3beta1.ProductSearchResults.IGroupedResult, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a GroupedResult message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns GroupedResult
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p3beta1.ProductSearchResults.GroupedResult;
+
+ /**
+ * Decodes a GroupedResult message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns GroupedResult
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p3beta1.ProductSearchResults.GroupedResult;
+
+ /**
+ * Verifies a GroupedResult message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a GroupedResult message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns GroupedResult
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p3beta1.ProductSearchResults.GroupedResult;
+
+ /**
+ * Creates a plain object from a GroupedResult message. Also converts values to other types if specified.
+ * @param message GroupedResult
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p3beta1.ProductSearchResults.GroupedResult, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this GroupedResult to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for GroupedResult
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+ }
+
+ /** Represents a ProductSearch */
+ class ProductSearch extends $protobuf.rpc.Service {
+
+ /**
+ * Constructs a new ProductSearch 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 ProductSearch 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): ProductSearch;
+
+ /**
+ * Calls CreateProductSet.
+ * @param request CreateProductSetRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and ProductSet
+ */
+ public createProductSet(request: google.cloud.vision.v1p3beta1.ICreateProductSetRequest, callback: google.cloud.vision.v1p3beta1.ProductSearch.CreateProductSetCallback): void;
+
+ /**
+ * Calls CreateProductSet.
+ * @param request CreateProductSetRequest message or plain object
+ * @returns Promise
+ */
+ public createProductSet(request: google.cloud.vision.v1p3beta1.ICreateProductSetRequest): Promise;
+
+ /**
+ * Calls ListProductSets.
+ * @param request ListProductSetsRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and ListProductSetsResponse
+ */
+ public listProductSets(request: google.cloud.vision.v1p3beta1.IListProductSetsRequest, callback: google.cloud.vision.v1p3beta1.ProductSearch.ListProductSetsCallback): void;
+
+ /**
+ * Calls ListProductSets.
+ * @param request ListProductSetsRequest message or plain object
+ * @returns Promise
+ */
+ public listProductSets(request: google.cloud.vision.v1p3beta1.IListProductSetsRequest): Promise;
+
+ /**
+ * Calls GetProductSet.
+ * @param request GetProductSetRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and ProductSet
+ */
+ public getProductSet(request: google.cloud.vision.v1p3beta1.IGetProductSetRequest, callback: google.cloud.vision.v1p3beta1.ProductSearch.GetProductSetCallback): void;
+
+ /**
+ * Calls GetProductSet.
+ * @param request GetProductSetRequest message or plain object
+ * @returns Promise
+ */
+ public getProductSet(request: google.cloud.vision.v1p3beta1.IGetProductSetRequest): Promise;
+
+ /**
+ * Calls UpdateProductSet.
+ * @param request UpdateProductSetRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and ProductSet
+ */
+ public updateProductSet(request: google.cloud.vision.v1p3beta1.IUpdateProductSetRequest, callback: google.cloud.vision.v1p3beta1.ProductSearch.UpdateProductSetCallback): void;
+
+ /**
+ * Calls UpdateProductSet.
+ * @param request UpdateProductSetRequest message or plain object
+ * @returns Promise
+ */
+ public updateProductSet(request: google.cloud.vision.v1p3beta1.IUpdateProductSetRequest): Promise;
+
+ /**
+ * Calls DeleteProductSet.
+ * @param request DeleteProductSetRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Empty
+ */
+ public deleteProductSet(request: google.cloud.vision.v1p3beta1.IDeleteProductSetRequest, callback: google.cloud.vision.v1p3beta1.ProductSearch.DeleteProductSetCallback): void;
+
+ /**
+ * Calls DeleteProductSet.
+ * @param request DeleteProductSetRequest message or plain object
+ * @returns Promise
+ */
+ public deleteProductSet(request: google.cloud.vision.v1p3beta1.IDeleteProductSetRequest): Promise;
+
+ /**
+ * Calls CreateProduct.
+ * @param request CreateProductRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Product
+ */
+ public createProduct(request: google.cloud.vision.v1p3beta1.ICreateProductRequest, callback: google.cloud.vision.v1p3beta1.ProductSearch.CreateProductCallback): void;
+
+ /**
+ * Calls CreateProduct.
+ * @param request CreateProductRequest message or plain object
+ * @returns Promise
+ */
+ public createProduct(request: google.cloud.vision.v1p3beta1.ICreateProductRequest): Promise;
+
+ /**
+ * Calls ListProducts.
+ * @param request ListProductsRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and ListProductsResponse
+ */
+ public listProducts(request: google.cloud.vision.v1p3beta1.IListProductsRequest, callback: google.cloud.vision.v1p3beta1.ProductSearch.ListProductsCallback): void;
+
+ /**
+ * Calls ListProducts.
+ * @param request ListProductsRequest message or plain object
+ * @returns Promise
+ */
+ public listProducts(request: google.cloud.vision.v1p3beta1.IListProductsRequest): Promise;
+
+ /**
+ * Calls GetProduct.
+ * @param request GetProductRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Product
+ */
+ public getProduct(request: google.cloud.vision.v1p3beta1.IGetProductRequest, callback: google.cloud.vision.v1p3beta1.ProductSearch.GetProductCallback): void;
+
+ /**
+ * Calls GetProduct.
+ * @param request GetProductRequest message or plain object
+ * @returns Promise
+ */
+ public getProduct(request: google.cloud.vision.v1p3beta1.IGetProductRequest): Promise;
+
+ /**
+ * Calls UpdateProduct.
+ * @param request UpdateProductRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Product
+ */
+ public updateProduct(request: google.cloud.vision.v1p3beta1.IUpdateProductRequest, callback: google.cloud.vision.v1p3beta1.ProductSearch.UpdateProductCallback): void;
+
+ /**
+ * Calls UpdateProduct.
+ * @param request UpdateProductRequest message or plain object
+ * @returns Promise
+ */
+ public updateProduct(request: google.cloud.vision.v1p3beta1.IUpdateProductRequest): Promise;
+
+ /**
+ * Calls DeleteProduct.
+ * @param request DeleteProductRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Empty
+ */
+ public deleteProduct(request: google.cloud.vision.v1p3beta1.IDeleteProductRequest, callback: google.cloud.vision.v1p3beta1.ProductSearch.DeleteProductCallback): void;
+
+ /**
+ * Calls DeleteProduct.
+ * @param request DeleteProductRequest message or plain object
+ * @returns Promise
+ */
+ public deleteProduct(request: google.cloud.vision.v1p3beta1.IDeleteProductRequest): Promise;
+
+ /**
+ * Calls CreateReferenceImage.
+ * @param request CreateReferenceImageRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and ReferenceImage
+ */
+ public createReferenceImage(request: google.cloud.vision.v1p3beta1.ICreateReferenceImageRequest, callback: google.cloud.vision.v1p3beta1.ProductSearch.CreateReferenceImageCallback): void;
+
+ /**
+ * Calls CreateReferenceImage.
+ * @param request CreateReferenceImageRequest message or plain object
+ * @returns Promise
+ */
+ public createReferenceImage(request: google.cloud.vision.v1p3beta1.ICreateReferenceImageRequest): Promise;
+
+ /**
+ * Calls DeleteReferenceImage.
+ * @param request DeleteReferenceImageRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Empty
+ */
+ public deleteReferenceImage(request: google.cloud.vision.v1p3beta1.IDeleteReferenceImageRequest, callback: google.cloud.vision.v1p3beta1.ProductSearch.DeleteReferenceImageCallback): void;
+
+ /**
+ * Calls DeleteReferenceImage.
+ * @param request DeleteReferenceImageRequest message or plain object
+ * @returns Promise
+ */
+ public deleteReferenceImage(request: google.cloud.vision.v1p3beta1.IDeleteReferenceImageRequest): Promise;
+
+ /**
+ * Calls ListReferenceImages.
+ * @param request ListReferenceImagesRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and ListReferenceImagesResponse
+ */
+ public listReferenceImages(request: google.cloud.vision.v1p3beta1.IListReferenceImagesRequest, callback: google.cloud.vision.v1p3beta1.ProductSearch.ListReferenceImagesCallback): void;
+
+ /**
+ * Calls ListReferenceImages.
+ * @param request ListReferenceImagesRequest message or plain object
+ * @returns Promise
+ */
+ public listReferenceImages(request: google.cloud.vision.v1p3beta1.IListReferenceImagesRequest): Promise;
+
+ /**
+ * Calls GetReferenceImage.
+ * @param request GetReferenceImageRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and ReferenceImage
+ */
+ public getReferenceImage(request: google.cloud.vision.v1p3beta1.IGetReferenceImageRequest, callback: google.cloud.vision.v1p3beta1.ProductSearch.GetReferenceImageCallback): void;
+
+ /**
+ * Calls GetReferenceImage.
+ * @param request GetReferenceImageRequest message or plain object
+ * @returns Promise
+ */
+ public getReferenceImage(request: google.cloud.vision.v1p3beta1.IGetReferenceImageRequest): Promise;
+
+ /**
+ * Calls AddProductToProductSet.
+ * @param request AddProductToProductSetRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Empty
+ */
+ public addProductToProductSet(request: google.cloud.vision.v1p3beta1.IAddProductToProductSetRequest, callback: google.cloud.vision.v1p3beta1.ProductSearch.AddProductToProductSetCallback): void;
+
+ /**
+ * Calls AddProductToProductSet.
+ * @param request AddProductToProductSetRequest message or plain object
+ * @returns Promise
+ */
+ public addProductToProductSet(request: google.cloud.vision.v1p3beta1.IAddProductToProductSetRequest): Promise;
+
+ /**
+ * Calls RemoveProductFromProductSet.
+ * @param request RemoveProductFromProductSetRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Empty
+ */
+ public removeProductFromProductSet(request: google.cloud.vision.v1p3beta1.IRemoveProductFromProductSetRequest, callback: google.cloud.vision.v1p3beta1.ProductSearch.RemoveProductFromProductSetCallback): void;
+
+ /**
+ * Calls RemoveProductFromProductSet.
+ * @param request RemoveProductFromProductSetRequest message or plain object
+ * @returns Promise
+ */
+ public removeProductFromProductSet(request: google.cloud.vision.v1p3beta1.IRemoveProductFromProductSetRequest): Promise;
+
+ /**
+ * Calls ListProductsInProductSet.
+ * @param request ListProductsInProductSetRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and ListProductsInProductSetResponse
+ */
+ public listProductsInProductSet(request: google.cloud.vision.v1p3beta1.IListProductsInProductSetRequest, callback: google.cloud.vision.v1p3beta1.ProductSearch.ListProductsInProductSetCallback): void;
+
+ /**
+ * Calls ListProductsInProductSet.
+ * @param request ListProductsInProductSetRequest message or plain object
+ * @returns Promise
+ */
+ public listProductsInProductSet(request: google.cloud.vision.v1p3beta1.IListProductsInProductSetRequest): Promise;
+
+ /**
+ * Calls ImportProductSets.
+ * @param request ImportProductSetsRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Operation
+ */
+ public importProductSets(request: google.cloud.vision.v1p3beta1.IImportProductSetsRequest, callback: google.cloud.vision.v1p3beta1.ProductSearch.ImportProductSetsCallback): void;
+
+ /**
+ * Calls ImportProductSets.
+ * @param request ImportProductSetsRequest message or plain object
+ * @returns Promise
+ */
+ public importProductSets(request: google.cloud.vision.v1p3beta1.IImportProductSetsRequest): Promise;
+ }
+
+ namespace ProductSearch {
+
+ /**
+ * Callback as used by {@link google.cloud.vision.v1p3beta1.ProductSearch|createProductSet}.
+ * @param error Error, if any
+ * @param [response] ProductSet
+ */
+ type CreateProductSetCallback = (error: (Error|null), response?: google.cloud.vision.v1p3beta1.ProductSet) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.vision.v1p3beta1.ProductSearch|listProductSets}.
+ * @param error Error, if any
+ * @param [response] ListProductSetsResponse
+ */
+ type ListProductSetsCallback = (error: (Error|null), response?: google.cloud.vision.v1p3beta1.ListProductSetsResponse) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.vision.v1p3beta1.ProductSearch|getProductSet}.
+ * @param error Error, if any
+ * @param [response] ProductSet
+ */
+ type GetProductSetCallback = (error: (Error|null), response?: google.cloud.vision.v1p3beta1.ProductSet) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.vision.v1p3beta1.ProductSearch|updateProductSet}.
+ * @param error Error, if any
+ * @param [response] ProductSet
+ */
+ type UpdateProductSetCallback = (error: (Error|null), response?: google.cloud.vision.v1p3beta1.ProductSet) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.vision.v1p3beta1.ProductSearch|deleteProductSet}.
+ * @param error Error, if any
+ * @param [response] Empty
+ */
+ type DeleteProductSetCallback = (error: (Error|null), response?: google.protobuf.Empty) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.vision.v1p3beta1.ProductSearch|createProduct}.
+ * @param error Error, if any
+ * @param [response] Product
+ */
+ type CreateProductCallback = (error: (Error|null), response?: google.cloud.vision.v1p3beta1.Product) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.vision.v1p3beta1.ProductSearch|listProducts}.
+ * @param error Error, if any
+ * @param [response] ListProductsResponse
+ */
+ type ListProductsCallback = (error: (Error|null), response?: google.cloud.vision.v1p3beta1.ListProductsResponse) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.vision.v1p3beta1.ProductSearch|getProduct}.
+ * @param error Error, if any
+ * @param [response] Product
+ */
+ type GetProductCallback = (error: (Error|null), response?: google.cloud.vision.v1p3beta1.Product) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.vision.v1p3beta1.ProductSearch|updateProduct}.
+ * @param error Error, if any
+ * @param [response] Product
+ */
+ type UpdateProductCallback = (error: (Error|null), response?: google.cloud.vision.v1p3beta1.Product) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.vision.v1p3beta1.ProductSearch|deleteProduct}.
+ * @param error Error, if any
+ * @param [response] Empty
+ */
+ type DeleteProductCallback = (error: (Error|null), response?: google.protobuf.Empty) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.vision.v1p3beta1.ProductSearch|createReferenceImage}.
+ * @param error Error, if any
+ * @param [response] ReferenceImage
+ */
+ type CreateReferenceImageCallback = (error: (Error|null), response?: google.cloud.vision.v1p3beta1.ReferenceImage) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.vision.v1p3beta1.ProductSearch|deleteReferenceImage}.
+ * @param error Error, if any
+ * @param [response] Empty
+ */
+ type DeleteReferenceImageCallback = (error: (Error|null), response?: google.protobuf.Empty) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.vision.v1p3beta1.ProductSearch|listReferenceImages}.
+ * @param error Error, if any
+ * @param [response] ListReferenceImagesResponse
+ */
+ type ListReferenceImagesCallback = (error: (Error|null), response?: google.cloud.vision.v1p3beta1.ListReferenceImagesResponse) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.vision.v1p3beta1.ProductSearch|getReferenceImage}.
+ * @param error Error, if any
+ * @param [response] ReferenceImage
+ */
+ type GetReferenceImageCallback = (error: (Error|null), response?: google.cloud.vision.v1p3beta1.ReferenceImage) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.vision.v1p3beta1.ProductSearch|addProductToProductSet}.
+ * @param error Error, if any
+ * @param [response] Empty
+ */
+ type AddProductToProductSetCallback = (error: (Error|null), response?: google.protobuf.Empty) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.vision.v1p3beta1.ProductSearch|removeProductFromProductSet}.
+ * @param error Error, if any
+ * @param [response] Empty
+ */
+ type RemoveProductFromProductSetCallback = (error: (Error|null), response?: google.protobuf.Empty) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.vision.v1p3beta1.ProductSearch|listProductsInProductSet}.
+ * @param error Error, if any
+ * @param [response] ListProductsInProductSetResponse
+ */
+ type ListProductsInProductSetCallback = (error: (Error|null), response?: google.cloud.vision.v1p3beta1.ListProductsInProductSetResponse) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.vision.v1p3beta1.ProductSearch|importProductSets}.
+ * @param error Error, if any
+ * @param [response] Operation
+ */
+ type ImportProductSetsCallback = (error: (Error|null), response?: google.longrunning.Operation) => void;
+ }
+
+ /** Properties of a Product. */
+ interface IProduct {
+
+ /** Product name */
+ name?: (string|null);
+
+ /** Product displayName */
+ displayName?: (string|null);
+
+ /** Product description */
+ description?: (string|null);
+
+ /** Product productCategory */
+ productCategory?: (string|null);
+
+ /** Product productLabels */
+ productLabels?: (google.cloud.vision.v1p3beta1.Product.IKeyValue[]|null);
+ }
+
+ /** Represents a Product. */
+ class Product implements IProduct {
+
+ /**
+ * Constructs a new Product.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p3beta1.IProduct);
+
+ /** Product name. */
+ public name: string;
+
+ /** Product displayName. */
+ public displayName: string;
+
+ /** Product description. */
+ public description: string;
+
+ /** Product productCategory. */
+ public productCategory: string;
+
+ /** Product productLabels. */
+ public productLabels: google.cloud.vision.v1p3beta1.Product.IKeyValue[];
+
+ /**
+ * Creates a new Product instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Product instance
+ */
+ public static create(properties?: google.cloud.vision.v1p3beta1.IProduct): google.cloud.vision.v1p3beta1.Product;
+
+ /**
+ * Encodes the specified Product message. Does not implicitly {@link google.cloud.vision.v1p3beta1.Product.verify|verify} messages.
+ * @param message Product message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p3beta1.IProduct, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Product message, length delimited. Does not implicitly {@link google.cloud.vision.v1p3beta1.Product.verify|verify} messages.
+ * @param message Product message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p3beta1.IProduct, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Product message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Product
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p3beta1.Product;
+
+ /**
+ * Decodes a Product message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Product
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p3beta1.Product;
+
+ /**
+ * Verifies a Product message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a Product message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Product
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p3beta1.Product;
+
+ /**
+ * Creates a plain object from a Product message. Also converts values to other types if specified.
+ * @param message Product
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p3beta1.Product, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Product to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Product
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace Product {
+
+ /** Properties of a KeyValue. */
+ interface IKeyValue {
+
+ /** KeyValue key */
+ key?: (string|null);
+
+ /** KeyValue value */
+ value?: (string|null);
+ }
+
+ /** Represents a KeyValue. */
+ class KeyValue implements IKeyValue {
+
+ /**
+ * Constructs a new KeyValue.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p3beta1.Product.IKeyValue);
+
+ /** KeyValue key. */
+ public key: string;
+
+ /** KeyValue value. */
+ public value: string;
+
+ /**
+ * Creates a new KeyValue instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns KeyValue instance
+ */
+ public static create(properties?: google.cloud.vision.v1p3beta1.Product.IKeyValue): google.cloud.vision.v1p3beta1.Product.KeyValue;
+
+ /**
+ * Encodes the specified KeyValue message. Does not implicitly {@link google.cloud.vision.v1p3beta1.Product.KeyValue.verify|verify} messages.
+ * @param message KeyValue message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p3beta1.Product.IKeyValue, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified KeyValue message, length delimited. Does not implicitly {@link google.cloud.vision.v1p3beta1.Product.KeyValue.verify|verify} messages.
+ * @param message KeyValue message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p3beta1.Product.IKeyValue, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a KeyValue message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns KeyValue
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p3beta1.Product.KeyValue;
+
+ /**
+ * Decodes a KeyValue message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns KeyValue
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p3beta1.Product.KeyValue;
+
+ /**
+ * Verifies a KeyValue message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a KeyValue message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns KeyValue
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p3beta1.Product.KeyValue;
+
+ /**
+ * Creates a plain object from a KeyValue message. Also converts values to other types if specified.
+ * @param message KeyValue
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p3beta1.Product.KeyValue, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this KeyValue to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for KeyValue
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+ }
+
+ /** Properties of a ProductSet. */
+ interface IProductSet {
+
+ /** ProductSet name */
+ name?: (string|null);
+
+ /** ProductSet displayName */
+ displayName?: (string|null);
+
+ /** ProductSet indexTime */
+ indexTime?: (google.protobuf.ITimestamp|null);
+
+ /** ProductSet indexError */
+ indexError?: (google.rpc.IStatus|null);
+ }
+
+ /** Represents a ProductSet. */
+ class ProductSet implements IProductSet {
+
+ /**
+ * Constructs a new ProductSet.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p3beta1.IProductSet);
+
+ /** ProductSet name. */
+ public name: string;
+
+ /** ProductSet displayName. */
+ public displayName: string;
+
+ /** ProductSet indexTime. */
+ public indexTime?: (google.protobuf.ITimestamp|null);
+
+ /** ProductSet indexError. */
+ public indexError?: (google.rpc.IStatus|null);
+
+ /**
+ * Creates a new ProductSet instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ProductSet instance
+ */
+ public static create(properties?: google.cloud.vision.v1p3beta1.IProductSet): google.cloud.vision.v1p3beta1.ProductSet;
+
+ /**
+ * Encodes the specified ProductSet message. Does not implicitly {@link google.cloud.vision.v1p3beta1.ProductSet.verify|verify} messages.
+ * @param message ProductSet message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p3beta1.IProductSet, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ProductSet message, length delimited. Does not implicitly {@link google.cloud.vision.v1p3beta1.ProductSet.verify|verify} messages.
+ * @param message ProductSet message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p3beta1.IProductSet, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ProductSet message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ProductSet
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p3beta1.ProductSet;
+
+ /**
+ * Decodes a ProductSet message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ProductSet
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p3beta1.ProductSet;
+
+ /**
+ * Verifies a ProductSet message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ProductSet message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ProductSet
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p3beta1.ProductSet;
+
+ /**
+ * Creates a plain object from a ProductSet message. Also converts values to other types if specified.
+ * @param message ProductSet
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p3beta1.ProductSet, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ProductSet to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ProductSet
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ReferenceImage. */
+ interface IReferenceImage {
+
+ /** ReferenceImage name */
+ name?: (string|null);
+
+ /** ReferenceImage uri */
+ uri?: (string|null);
+
+ /** ReferenceImage boundingPolys */
+ boundingPolys?: (google.cloud.vision.v1p3beta1.IBoundingPoly[]|null);
+ }
+
+ /** Represents a ReferenceImage. */
+ class ReferenceImage implements IReferenceImage {
+
+ /**
+ * Constructs a new ReferenceImage.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p3beta1.IReferenceImage);
+
+ /** ReferenceImage name. */
+ public name: string;
+
+ /** ReferenceImage uri. */
+ public uri: string;
+
+ /** ReferenceImage boundingPolys. */
+ public boundingPolys: google.cloud.vision.v1p3beta1.IBoundingPoly[];
+
+ /**
+ * Creates a new ReferenceImage instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ReferenceImage instance
+ */
+ public static create(properties?: google.cloud.vision.v1p3beta1.IReferenceImage): google.cloud.vision.v1p3beta1.ReferenceImage;
+
+ /**
+ * Encodes the specified ReferenceImage message. Does not implicitly {@link google.cloud.vision.v1p3beta1.ReferenceImage.verify|verify} messages.
+ * @param message ReferenceImage message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p3beta1.IReferenceImage, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ReferenceImage message, length delimited. Does not implicitly {@link google.cloud.vision.v1p3beta1.ReferenceImage.verify|verify} messages.
+ * @param message ReferenceImage message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p3beta1.IReferenceImage, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ReferenceImage message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ReferenceImage
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p3beta1.ReferenceImage;
+
+ /**
+ * Decodes a ReferenceImage message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ReferenceImage
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p3beta1.ReferenceImage;
+
+ /**
+ * Verifies a ReferenceImage message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ReferenceImage message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ReferenceImage
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p3beta1.ReferenceImage;
+
+ /**
+ * Creates a plain object from a ReferenceImage message. Also converts values to other types if specified.
+ * @param message ReferenceImage
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p3beta1.ReferenceImage, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ReferenceImage to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ReferenceImage
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a CreateProductRequest. */
+ interface ICreateProductRequest {
+
+ /** CreateProductRequest parent */
+ parent?: (string|null);
+
+ /** CreateProductRequest product */
+ product?: (google.cloud.vision.v1p3beta1.IProduct|null);
+
+ /** CreateProductRequest productId */
+ productId?: (string|null);
+ }
+
+ /** Represents a CreateProductRequest. */
+ class CreateProductRequest implements ICreateProductRequest {
+
+ /**
+ * Constructs a new CreateProductRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p3beta1.ICreateProductRequest);
+
+ /** CreateProductRequest parent. */
+ public parent: string;
+
+ /** CreateProductRequest product. */
+ public product?: (google.cloud.vision.v1p3beta1.IProduct|null);
+
+ /** CreateProductRequest productId. */
+ public productId: string;
+
+ /**
+ * Creates a new CreateProductRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns CreateProductRequest instance
+ */
+ public static create(properties?: google.cloud.vision.v1p3beta1.ICreateProductRequest): google.cloud.vision.v1p3beta1.CreateProductRequest;
+
+ /**
+ * Encodes the specified CreateProductRequest message. Does not implicitly {@link google.cloud.vision.v1p3beta1.CreateProductRequest.verify|verify} messages.
+ * @param message CreateProductRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p3beta1.ICreateProductRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified CreateProductRequest message, length delimited. Does not implicitly {@link google.cloud.vision.v1p3beta1.CreateProductRequest.verify|verify} messages.
+ * @param message CreateProductRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p3beta1.ICreateProductRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a CreateProductRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns CreateProductRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p3beta1.CreateProductRequest;
+
+ /**
+ * Decodes a CreateProductRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns CreateProductRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p3beta1.CreateProductRequest;
+
+ /**
+ * Verifies a CreateProductRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a CreateProductRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns CreateProductRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p3beta1.CreateProductRequest;
+
+ /**
+ * Creates a plain object from a CreateProductRequest message. Also converts values to other types if specified.
+ * @param message CreateProductRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p3beta1.CreateProductRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this CreateProductRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for CreateProductRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ListProductsRequest. */
+ interface IListProductsRequest {
+
+ /** ListProductsRequest parent */
+ parent?: (string|null);
+
+ /** ListProductsRequest pageSize */
+ pageSize?: (number|null);
+
+ /** ListProductsRequest pageToken */
+ pageToken?: (string|null);
+ }
+
+ /** Represents a ListProductsRequest. */
+ class ListProductsRequest implements IListProductsRequest {
+
+ /**
+ * Constructs a new ListProductsRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p3beta1.IListProductsRequest);
+
+ /** ListProductsRequest parent. */
+ public parent: string;
+
+ /** ListProductsRequest pageSize. */
+ public pageSize: number;
+
+ /** ListProductsRequest pageToken. */
+ public pageToken: string;
+
+ /**
+ * Creates a new ListProductsRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ListProductsRequest instance
+ */
+ public static create(properties?: google.cloud.vision.v1p3beta1.IListProductsRequest): google.cloud.vision.v1p3beta1.ListProductsRequest;
+
+ /**
+ * Encodes the specified ListProductsRequest message. Does not implicitly {@link google.cloud.vision.v1p3beta1.ListProductsRequest.verify|verify} messages.
+ * @param message ListProductsRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p3beta1.IListProductsRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ListProductsRequest message, length delimited. Does not implicitly {@link google.cloud.vision.v1p3beta1.ListProductsRequest.verify|verify} messages.
+ * @param message ListProductsRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p3beta1.IListProductsRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ListProductsRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ListProductsRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p3beta1.ListProductsRequest;
+
+ /**
+ * Decodes a ListProductsRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ListProductsRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p3beta1.ListProductsRequest;
+
+ /**
+ * Verifies a ListProductsRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ListProductsRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ListProductsRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p3beta1.ListProductsRequest;
+
+ /**
+ * Creates a plain object from a ListProductsRequest message. Also converts values to other types if specified.
+ * @param message ListProductsRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p3beta1.ListProductsRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ListProductsRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ListProductsRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ListProductsResponse. */
+ interface IListProductsResponse {
+
+ /** ListProductsResponse products */
+ products?: (google.cloud.vision.v1p3beta1.IProduct[]|null);
+
+ /** ListProductsResponse nextPageToken */
+ nextPageToken?: (string|null);
+ }
+
+ /** Represents a ListProductsResponse. */
+ class ListProductsResponse implements IListProductsResponse {
+
+ /**
+ * Constructs a new ListProductsResponse.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p3beta1.IListProductsResponse);
+
+ /** ListProductsResponse products. */
+ public products: google.cloud.vision.v1p3beta1.IProduct[];
+
+ /** ListProductsResponse nextPageToken. */
+ public nextPageToken: string;
+
+ /**
+ * Creates a new ListProductsResponse instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ListProductsResponse instance
+ */
+ public static create(properties?: google.cloud.vision.v1p3beta1.IListProductsResponse): google.cloud.vision.v1p3beta1.ListProductsResponse;
+
+ /**
+ * Encodes the specified ListProductsResponse message. Does not implicitly {@link google.cloud.vision.v1p3beta1.ListProductsResponse.verify|verify} messages.
+ * @param message ListProductsResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p3beta1.IListProductsResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ListProductsResponse message, length delimited. Does not implicitly {@link google.cloud.vision.v1p3beta1.ListProductsResponse.verify|verify} messages.
+ * @param message ListProductsResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p3beta1.IListProductsResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ListProductsResponse message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ListProductsResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p3beta1.ListProductsResponse;
+
+ /**
+ * Decodes a ListProductsResponse message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ListProductsResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p3beta1.ListProductsResponse;
+
+ /**
+ * Verifies a ListProductsResponse message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ListProductsResponse message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ListProductsResponse
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p3beta1.ListProductsResponse;
+
+ /**
+ * Creates a plain object from a ListProductsResponse message. Also converts values to other types if specified.
+ * @param message ListProductsResponse
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p3beta1.ListProductsResponse, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ListProductsResponse to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ListProductsResponse
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a GetProductRequest. */
+ interface IGetProductRequest {
+
+ /** GetProductRequest name */
+ name?: (string|null);
+ }
+
+ /** Represents a GetProductRequest. */
+ class GetProductRequest implements IGetProductRequest {
+
+ /**
+ * Constructs a new GetProductRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p3beta1.IGetProductRequest);
+
+ /** GetProductRequest name. */
+ public name: string;
+
+ /**
+ * Creates a new GetProductRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns GetProductRequest instance
+ */
+ public static create(properties?: google.cloud.vision.v1p3beta1.IGetProductRequest): google.cloud.vision.v1p3beta1.GetProductRequest;
+
+ /**
+ * Encodes the specified GetProductRequest message. Does not implicitly {@link google.cloud.vision.v1p3beta1.GetProductRequest.verify|verify} messages.
+ * @param message GetProductRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p3beta1.IGetProductRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified GetProductRequest message, length delimited. Does not implicitly {@link google.cloud.vision.v1p3beta1.GetProductRequest.verify|verify} messages.
+ * @param message GetProductRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p3beta1.IGetProductRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a GetProductRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns GetProductRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p3beta1.GetProductRequest;
+
+ /**
+ * Decodes a GetProductRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns GetProductRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p3beta1.GetProductRequest;
+
+ /**
+ * Verifies a GetProductRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a GetProductRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns GetProductRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p3beta1.GetProductRequest;
+
+ /**
+ * Creates a plain object from a GetProductRequest message. Also converts values to other types if specified.
+ * @param message GetProductRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p3beta1.GetProductRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this GetProductRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for GetProductRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an UpdateProductRequest. */
+ interface IUpdateProductRequest {
+
+ /** UpdateProductRequest product */
+ product?: (google.cloud.vision.v1p3beta1.IProduct|null);
+
+ /** UpdateProductRequest updateMask */
+ updateMask?: (google.protobuf.IFieldMask|null);
+ }
+
+ /** Represents an UpdateProductRequest. */
+ class UpdateProductRequest implements IUpdateProductRequest {
+
+ /**
+ * Constructs a new UpdateProductRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p3beta1.IUpdateProductRequest);
+
+ /** UpdateProductRequest product. */
+ public product?: (google.cloud.vision.v1p3beta1.IProduct|null);
+
+ /** UpdateProductRequest updateMask. */
+ public updateMask?: (google.protobuf.IFieldMask|null);
+
+ /**
+ * Creates a new UpdateProductRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns UpdateProductRequest instance
+ */
+ public static create(properties?: google.cloud.vision.v1p3beta1.IUpdateProductRequest): google.cloud.vision.v1p3beta1.UpdateProductRequest;
+
+ /**
+ * Encodes the specified UpdateProductRequest message. Does not implicitly {@link google.cloud.vision.v1p3beta1.UpdateProductRequest.verify|verify} messages.
+ * @param message UpdateProductRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p3beta1.IUpdateProductRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified UpdateProductRequest message, length delimited. Does not implicitly {@link google.cloud.vision.v1p3beta1.UpdateProductRequest.verify|verify} messages.
+ * @param message UpdateProductRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p3beta1.IUpdateProductRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an UpdateProductRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns UpdateProductRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p3beta1.UpdateProductRequest;
+
+ /**
+ * Decodes an UpdateProductRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns UpdateProductRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p3beta1.UpdateProductRequest;
+
+ /**
+ * Verifies an UpdateProductRequest message.
+ * @param message Plain 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 UpdateProductRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns UpdateProductRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p3beta1.UpdateProductRequest;
+
+ /**
+ * Creates a plain object from an UpdateProductRequest message. Also converts values to other types if specified.
+ * @param message UpdateProductRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p3beta1.UpdateProductRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this UpdateProductRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for UpdateProductRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a DeleteProductRequest. */
+ interface IDeleteProductRequest {
+
+ /** DeleteProductRequest name */
+ name?: (string|null);
+ }
+
+ /** Represents a DeleteProductRequest. */
+ class DeleteProductRequest implements IDeleteProductRequest {
+
+ /**
+ * Constructs a new DeleteProductRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p3beta1.IDeleteProductRequest);
+
+ /** DeleteProductRequest name. */
+ public name: string;
+
+ /**
+ * Creates a new DeleteProductRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns DeleteProductRequest instance
+ */
+ public static create(properties?: google.cloud.vision.v1p3beta1.IDeleteProductRequest): google.cloud.vision.v1p3beta1.DeleteProductRequest;
+
+ /**
+ * Encodes the specified DeleteProductRequest message. Does not implicitly {@link google.cloud.vision.v1p3beta1.DeleteProductRequest.verify|verify} messages.
+ * @param message DeleteProductRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p3beta1.IDeleteProductRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified DeleteProductRequest message, length delimited. Does not implicitly {@link google.cloud.vision.v1p3beta1.DeleteProductRequest.verify|verify} messages.
+ * @param message DeleteProductRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p3beta1.IDeleteProductRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a DeleteProductRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns DeleteProductRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p3beta1.DeleteProductRequest;
+
+ /**
+ * Decodes a DeleteProductRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns DeleteProductRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p3beta1.DeleteProductRequest;
+
+ /**
+ * Verifies a DeleteProductRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a DeleteProductRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns DeleteProductRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p3beta1.DeleteProductRequest;
+
+ /**
+ * Creates a plain object from a DeleteProductRequest message. Also converts values to other types if specified.
+ * @param message DeleteProductRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p3beta1.DeleteProductRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this DeleteProductRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for DeleteProductRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a CreateProductSetRequest. */
+ interface ICreateProductSetRequest {
+
+ /** CreateProductSetRequest parent */
+ parent?: (string|null);
+
+ /** CreateProductSetRequest productSet */
+ productSet?: (google.cloud.vision.v1p3beta1.IProductSet|null);
+
+ /** CreateProductSetRequest productSetId */
+ productSetId?: (string|null);
+ }
+
+ /** Represents a CreateProductSetRequest. */
+ class CreateProductSetRequest implements ICreateProductSetRequest {
+
+ /**
+ * Constructs a new CreateProductSetRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p3beta1.ICreateProductSetRequest);
+
+ /** CreateProductSetRequest parent. */
+ public parent: string;
+
+ /** CreateProductSetRequest productSet. */
+ public productSet?: (google.cloud.vision.v1p3beta1.IProductSet|null);
+
+ /** CreateProductSetRequest productSetId. */
+ public productSetId: string;
+
+ /**
+ * Creates a new CreateProductSetRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns CreateProductSetRequest instance
+ */
+ public static create(properties?: google.cloud.vision.v1p3beta1.ICreateProductSetRequest): google.cloud.vision.v1p3beta1.CreateProductSetRequest;
+
+ /**
+ * Encodes the specified CreateProductSetRequest message. Does not implicitly {@link google.cloud.vision.v1p3beta1.CreateProductSetRequest.verify|verify} messages.
+ * @param message CreateProductSetRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p3beta1.ICreateProductSetRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified CreateProductSetRequest message, length delimited. Does not implicitly {@link google.cloud.vision.v1p3beta1.CreateProductSetRequest.verify|verify} messages.
+ * @param message CreateProductSetRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p3beta1.ICreateProductSetRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a CreateProductSetRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns CreateProductSetRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p3beta1.CreateProductSetRequest;
+
+ /**
+ * Decodes a CreateProductSetRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns CreateProductSetRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p3beta1.CreateProductSetRequest;
+
+ /**
+ * Verifies a CreateProductSetRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a CreateProductSetRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns CreateProductSetRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p3beta1.CreateProductSetRequest;
+
+ /**
+ * Creates a plain object from a CreateProductSetRequest message. Also converts values to other types if specified.
+ * @param message CreateProductSetRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p3beta1.CreateProductSetRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this CreateProductSetRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for CreateProductSetRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ListProductSetsRequest. */
+ interface IListProductSetsRequest {
+
+ /** ListProductSetsRequest parent */
+ parent?: (string|null);
+
+ /** ListProductSetsRequest pageSize */
+ pageSize?: (number|null);
+
+ /** ListProductSetsRequest pageToken */
+ pageToken?: (string|null);
+ }
+
+ /** Represents a ListProductSetsRequest. */
+ class ListProductSetsRequest implements IListProductSetsRequest {
+
+ /**
+ * Constructs a new ListProductSetsRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p3beta1.IListProductSetsRequest);
+
+ /** ListProductSetsRequest parent. */
+ public parent: string;
+
+ /** ListProductSetsRequest pageSize. */
+ public pageSize: number;
+
+ /** ListProductSetsRequest pageToken. */
+ public pageToken: string;
+
+ /**
+ * Creates a new ListProductSetsRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ListProductSetsRequest instance
+ */
+ public static create(properties?: google.cloud.vision.v1p3beta1.IListProductSetsRequest): google.cloud.vision.v1p3beta1.ListProductSetsRequest;
+
+ /**
+ * Encodes the specified ListProductSetsRequest message. Does not implicitly {@link google.cloud.vision.v1p3beta1.ListProductSetsRequest.verify|verify} messages.
+ * @param message ListProductSetsRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p3beta1.IListProductSetsRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ListProductSetsRequest message, length delimited. Does not implicitly {@link google.cloud.vision.v1p3beta1.ListProductSetsRequest.verify|verify} messages.
+ * @param message ListProductSetsRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p3beta1.IListProductSetsRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ListProductSetsRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ListProductSetsRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p3beta1.ListProductSetsRequest;
+
+ /**
+ * Decodes a ListProductSetsRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ListProductSetsRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p3beta1.ListProductSetsRequest;
+
+ /**
+ * Verifies a ListProductSetsRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ListProductSetsRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ListProductSetsRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p3beta1.ListProductSetsRequest;
+
+ /**
+ * Creates a plain object from a ListProductSetsRequest message. Also converts values to other types if specified.
+ * @param message ListProductSetsRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p3beta1.ListProductSetsRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ListProductSetsRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ListProductSetsRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ListProductSetsResponse. */
+ interface IListProductSetsResponse {
+
+ /** ListProductSetsResponse productSets */
+ productSets?: (google.cloud.vision.v1p3beta1.IProductSet[]|null);
+
+ /** ListProductSetsResponse nextPageToken */
+ nextPageToken?: (string|null);
+ }
+
+ /** Represents a ListProductSetsResponse. */
+ class ListProductSetsResponse implements IListProductSetsResponse {
+
+ /**
+ * Constructs a new ListProductSetsResponse.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p3beta1.IListProductSetsResponse);
+
+ /** ListProductSetsResponse productSets. */
+ public productSets: google.cloud.vision.v1p3beta1.IProductSet[];
+
+ /** ListProductSetsResponse nextPageToken. */
+ public nextPageToken: string;
+
+ /**
+ * Creates a new ListProductSetsResponse instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ListProductSetsResponse instance
+ */
+ public static create(properties?: google.cloud.vision.v1p3beta1.IListProductSetsResponse): google.cloud.vision.v1p3beta1.ListProductSetsResponse;
+
+ /**
+ * Encodes the specified ListProductSetsResponse message. Does not implicitly {@link google.cloud.vision.v1p3beta1.ListProductSetsResponse.verify|verify} messages.
+ * @param message ListProductSetsResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p3beta1.IListProductSetsResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ListProductSetsResponse message, length delimited. Does not implicitly {@link google.cloud.vision.v1p3beta1.ListProductSetsResponse.verify|verify} messages.
+ * @param message ListProductSetsResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p3beta1.IListProductSetsResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ListProductSetsResponse message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ListProductSetsResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p3beta1.ListProductSetsResponse;
+
+ /**
+ * Decodes a ListProductSetsResponse message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ListProductSetsResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p3beta1.ListProductSetsResponse;
+
+ /**
+ * Verifies a ListProductSetsResponse message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ListProductSetsResponse message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ListProductSetsResponse
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p3beta1.ListProductSetsResponse;
+
+ /**
+ * Creates a plain object from a ListProductSetsResponse message. Also converts values to other types if specified.
+ * @param message ListProductSetsResponse
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p3beta1.ListProductSetsResponse, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ListProductSetsResponse to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ListProductSetsResponse
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a GetProductSetRequest. */
+ interface IGetProductSetRequest {
+
+ /** GetProductSetRequest name */
+ name?: (string|null);
+ }
+
+ /** Represents a GetProductSetRequest. */
+ class GetProductSetRequest implements IGetProductSetRequest {
+
+ /**
+ * Constructs a new GetProductSetRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p3beta1.IGetProductSetRequest);
+
+ /** GetProductSetRequest name. */
+ public name: string;
+
+ /**
+ * Creates a new GetProductSetRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns GetProductSetRequest instance
+ */
+ public static create(properties?: google.cloud.vision.v1p3beta1.IGetProductSetRequest): google.cloud.vision.v1p3beta1.GetProductSetRequest;
+
+ /**
+ * Encodes the specified GetProductSetRequest message. Does not implicitly {@link google.cloud.vision.v1p3beta1.GetProductSetRequest.verify|verify} messages.
+ * @param message GetProductSetRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p3beta1.IGetProductSetRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified GetProductSetRequest message, length delimited. Does not implicitly {@link google.cloud.vision.v1p3beta1.GetProductSetRequest.verify|verify} messages.
+ * @param message GetProductSetRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p3beta1.IGetProductSetRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a GetProductSetRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns GetProductSetRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p3beta1.GetProductSetRequest;
+
+ /**
+ * Decodes a GetProductSetRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns GetProductSetRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p3beta1.GetProductSetRequest;
+
+ /**
+ * Verifies a GetProductSetRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a GetProductSetRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns GetProductSetRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p3beta1.GetProductSetRequest;
+
+ /**
+ * Creates a plain object from a GetProductSetRequest message. Also converts values to other types if specified.
+ * @param message GetProductSetRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p3beta1.GetProductSetRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this GetProductSetRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for GetProductSetRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an UpdateProductSetRequest. */
+ interface IUpdateProductSetRequest {
+
+ /** UpdateProductSetRequest productSet */
+ productSet?: (google.cloud.vision.v1p3beta1.IProductSet|null);
+
+ /** UpdateProductSetRequest updateMask */
+ updateMask?: (google.protobuf.IFieldMask|null);
+ }
+
+ /** Represents an UpdateProductSetRequest. */
+ class UpdateProductSetRequest implements IUpdateProductSetRequest {
+
+ /**
+ * Constructs a new UpdateProductSetRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p3beta1.IUpdateProductSetRequest);
+
+ /** UpdateProductSetRequest productSet. */
+ public productSet?: (google.cloud.vision.v1p3beta1.IProductSet|null);
+
+ /** UpdateProductSetRequest updateMask. */
+ public updateMask?: (google.protobuf.IFieldMask|null);
+
+ /**
+ * Creates a new UpdateProductSetRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns UpdateProductSetRequest instance
+ */
+ public static create(properties?: google.cloud.vision.v1p3beta1.IUpdateProductSetRequest): google.cloud.vision.v1p3beta1.UpdateProductSetRequest;
+
+ /**
+ * Encodes the specified UpdateProductSetRequest message. Does not implicitly {@link google.cloud.vision.v1p3beta1.UpdateProductSetRequest.verify|verify} messages.
+ * @param message UpdateProductSetRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p3beta1.IUpdateProductSetRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified UpdateProductSetRequest message, length delimited. Does not implicitly {@link google.cloud.vision.v1p3beta1.UpdateProductSetRequest.verify|verify} messages.
+ * @param message UpdateProductSetRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p3beta1.IUpdateProductSetRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an UpdateProductSetRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns UpdateProductSetRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p3beta1.UpdateProductSetRequest;
+
+ /**
+ * Decodes an UpdateProductSetRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns UpdateProductSetRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p3beta1.UpdateProductSetRequest;
+
+ /**
+ * Verifies an UpdateProductSetRequest message.
+ * @param message Plain 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 UpdateProductSetRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns UpdateProductSetRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p3beta1.UpdateProductSetRequest;
+
+ /**
+ * Creates a plain object from an UpdateProductSetRequest message. Also converts values to other types if specified.
+ * @param message UpdateProductSetRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p3beta1.UpdateProductSetRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this UpdateProductSetRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for UpdateProductSetRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a DeleteProductSetRequest. */
+ interface IDeleteProductSetRequest {
+
+ /** DeleteProductSetRequest name */
+ name?: (string|null);
+ }
+
+ /** Represents a DeleteProductSetRequest. */
+ class DeleteProductSetRequest implements IDeleteProductSetRequest {
+
+ /**
+ * Constructs a new DeleteProductSetRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p3beta1.IDeleteProductSetRequest);
+
+ /** DeleteProductSetRequest name. */
+ public name: string;
+
+ /**
+ * Creates a new DeleteProductSetRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns DeleteProductSetRequest instance
+ */
+ public static create(properties?: google.cloud.vision.v1p3beta1.IDeleteProductSetRequest): google.cloud.vision.v1p3beta1.DeleteProductSetRequest;
+
+ /**
+ * Encodes the specified DeleteProductSetRequest message. Does not implicitly {@link google.cloud.vision.v1p3beta1.DeleteProductSetRequest.verify|verify} messages.
+ * @param message DeleteProductSetRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p3beta1.IDeleteProductSetRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified DeleteProductSetRequest message, length delimited. Does not implicitly {@link google.cloud.vision.v1p3beta1.DeleteProductSetRequest.verify|verify} messages.
+ * @param message DeleteProductSetRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p3beta1.IDeleteProductSetRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a DeleteProductSetRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns DeleteProductSetRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p3beta1.DeleteProductSetRequest;
+
+ /**
+ * Decodes a DeleteProductSetRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns DeleteProductSetRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p3beta1.DeleteProductSetRequest;
+
+ /**
+ * Verifies a DeleteProductSetRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a DeleteProductSetRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns DeleteProductSetRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p3beta1.DeleteProductSetRequest;
+
+ /**
+ * Creates a plain object from a DeleteProductSetRequest message. Also converts values to other types if specified.
+ * @param message DeleteProductSetRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p3beta1.DeleteProductSetRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this DeleteProductSetRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for DeleteProductSetRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a CreateReferenceImageRequest. */
+ interface ICreateReferenceImageRequest {
+
+ /** CreateReferenceImageRequest parent */
+ parent?: (string|null);
+
+ /** CreateReferenceImageRequest referenceImage */
+ referenceImage?: (google.cloud.vision.v1p3beta1.IReferenceImage|null);
+
+ /** CreateReferenceImageRequest referenceImageId */
+ referenceImageId?: (string|null);
+ }
+
+ /** Represents a CreateReferenceImageRequest. */
+ class CreateReferenceImageRequest implements ICreateReferenceImageRequest {
+
+ /**
+ * Constructs a new CreateReferenceImageRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p3beta1.ICreateReferenceImageRequest);
+
+ /** CreateReferenceImageRequest parent. */
+ public parent: string;
+
+ /** CreateReferenceImageRequest referenceImage. */
+ public referenceImage?: (google.cloud.vision.v1p3beta1.IReferenceImage|null);
+
+ /** CreateReferenceImageRequest referenceImageId. */
+ public referenceImageId: string;
+
+ /**
+ * Creates a new CreateReferenceImageRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns CreateReferenceImageRequest instance
+ */
+ public static create(properties?: google.cloud.vision.v1p3beta1.ICreateReferenceImageRequest): google.cloud.vision.v1p3beta1.CreateReferenceImageRequest;
+
+ /**
+ * Encodes the specified CreateReferenceImageRequest message. Does not implicitly {@link google.cloud.vision.v1p3beta1.CreateReferenceImageRequest.verify|verify} messages.
+ * @param message CreateReferenceImageRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p3beta1.ICreateReferenceImageRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified CreateReferenceImageRequest message, length delimited. Does not implicitly {@link google.cloud.vision.v1p3beta1.CreateReferenceImageRequest.verify|verify} messages.
+ * @param message CreateReferenceImageRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p3beta1.ICreateReferenceImageRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a CreateReferenceImageRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns CreateReferenceImageRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p3beta1.CreateReferenceImageRequest;
+
+ /**
+ * Decodes a CreateReferenceImageRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns CreateReferenceImageRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p3beta1.CreateReferenceImageRequest;
+
+ /**
+ * Verifies a CreateReferenceImageRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a CreateReferenceImageRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns CreateReferenceImageRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p3beta1.CreateReferenceImageRequest;
+
+ /**
+ * Creates a plain object from a CreateReferenceImageRequest message. Also converts values to other types if specified.
+ * @param message CreateReferenceImageRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p3beta1.CreateReferenceImageRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this CreateReferenceImageRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for CreateReferenceImageRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ListReferenceImagesRequest. */
+ interface IListReferenceImagesRequest {
+
+ /** ListReferenceImagesRequest parent */
+ parent?: (string|null);
+
+ /** ListReferenceImagesRequest pageSize */
+ pageSize?: (number|null);
+
+ /** ListReferenceImagesRequest pageToken */
+ pageToken?: (string|null);
+ }
+
+ /** Represents a ListReferenceImagesRequest. */
+ class ListReferenceImagesRequest implements IListReferenceImagesRequest {
+
+ /**
+ * Constructs a new ListReferenceImagesRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p3beta1.IListReferenceImagesRequest);
+
+ /** ListReferenceImagesRequest parent. */
+ public parent: string;
+
+ /** ListReferenceImagesRequest pageSize. */
+ public pageSize: number;
+
+ /** ListReferenceImagesRequest pageToken. */
+ public pageToken: string;
+
+ /**
+ * Creates a new ListReferenceImagesRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ListReferenceImagesRequest instance
+ */
+ public static create(properties?: google.cloud.vision.v1p3beta1.IListReferenceImagesRequest): google.cloud.vision.v1p3beta1.ListReferenceImagesRequest;
+
+ /**
+ * Encodes the specified ListReferenceImagesRequest message. Does not implicitly {@link google.cloud.vision.v1p3beta1.ListReferenceImagesRequest.verify|verify} messages.
+ * @param message ListReferenceImagesRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p3beta1.IListReferenceImagesRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ListReferenceImagesRequest message, length delimited. Does not implicitly {@link google.cloud.vision.v1p3beta1.ListReferenceImagesRequest.verify|verify} messages.
+ * @param message ListReferenceImagesRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p3beta1.IListReferenceImagesRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ListReferenceImagesRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ListReferenceImagesRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p3beta1.ListReferenceImagesRequest;
+
+ /**
+ * Decodes a ListReferenceImagesRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ListReferenceImagesRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p3beta1.ListReferenceImagesRequest;
+
+ /**
+ * Verifies a ListReferenceImagesRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ListReferenceImagesRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ListReferenceImagesRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p3beta1.ListReferenceImagesRequest;
+
+ /**
+ * Creates a plain object from a ListReferenceImagesRequest message. Also converts values to other types if specified.
+ * @param message ListReferenceImagesRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p3beta1.ListReferenceImagesRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ListReferenceImagesRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ListReferenceImagesRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ListReferenceImagesResponse. */
+ interface IListReferenceImagesResponse {
+
+ /** ListReferenceImagesResponse referenceImages */
+ referenceImages?: (google.cloud.vision.v1p3beta1.IReferenceImage[]|null);
+
+ /** ListReferenceImagesResponse pageSize */
+ pageSize?: (number|null);
+
+ /** ListReferenceImagesResponse nextPageToken */
+ nextPageToken?: (string|null);
+ }
+
+ /** Represents a ListReferenceImagesResponse. */
+ class ListReferenceImagesResponse implements IListReferenceImagesResponse {
+
+ /**
+ * Constructs a new ListReferenceImagesResponse.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p3beta1.IListReferenceImagesResponse);
+
+ /** ListReferenceImagesResponse referenceImages. */
+ public referenceImages: google.cloud.vision.v1p3beta1.IReferenceImage[];
+
+ /** ListReferenceImagesResponse pageSize. */
+ public pageSize: number;
+
+ /** ListReferenceImagesResponse nextPageToken. */
+ public nextPageToken: string;
+
+ /**
+ * Creates a new ListReferenceImagesResponse instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ListReferenceImagesResponse instance
+ */
+ public static create(properties?: google.cloud.vision.v1p3beta1.IListReferenceImagesResponse): google.cloud.vision.v1p3beta1.ListReferenceImagesResponse;
+
+ /**
+ * Encodes the specified ListReferenceImagesResponse message. Does not implicitly {@link google.cloud.vision.v1p3beta1.ListReferenceImagesResponse.verify|verify} messages.
+ * @param message ListReferenceImagesResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p3beta1.IListReferenceImagesResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ListReferenceImagesResponse message, length delimited. Does not implicitly {@link google.cloud.vision.v1p3beta1.ListReferenceImagesResponse.verify|verify} messages.
+ * @param message ListReferenceImagesResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p3beta1.IListReferenceImagesResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ListReferenceImagesResponse message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ListReferenceImagesResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p3beta1.ListReferenceImagesResponse;
+
+ /**
+ * Decodes a ListReferenceImagesResponse message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ListReferenceImagesResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p3beta1.ListReferenceImagesResponse;
+
+ /**
+ * Verifies a ListReferenceImagesResponse message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ListReferenceImagesResponse message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ListReferenceImagesResponse
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p3beta1.ListReferenceImagesResponse;
+
+ /**
+ * Creates a plain object from a ListReferenceImagesResponse message. Also converts values to other types if specified.
+ * @param message ListReferenceImagesResponse
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p3beta1.ListReferenceImagesResponse, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ListReferenceImagesResponse to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ListReferenceImagesResponse
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a GetReferenceImageRequest. */
+ interface IGetReferenceImageRequest {
+
+ /** GetReferenceImageRequest name */
+ name?: (string|null);
+ }
+
+ /** Represents a GetReferenceImageRequest. */
+ class GetReferenceImageRequest implements IGetReferenceImageRequest {
+
+ /**
+ * Constructs a new GetReferenceImageRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p3beta1.IGetReferenceImageRequest);
+
+ /** GetReferenceImageRequest name. */
+ public name: string;
+
+ /**
+ * Creates a new GetReferenceImageRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns GetReferenceImageRequest instance
+ */
+ public static create(properties?: google.cloud.vision.v1p3beta1.IGetReferenceImageRequest): google.cloud.vision.v1p3beta1.GetReferenceImageRequest;
+
+ /**
+ * Encodes the specified GetReferenceImageRequest message. Does not implicitly {@link google.cloud.vision.v1p3beta1.GetReferenceImageRequest.verify|verify} messages.
+ * @param message GetReferenceImageRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p3beta1.IGetReferenceImageRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified GetReferenceImageRequest message, length delimited. Does not implicitly {@link google.cloud.vision.v1p3beta1.GetReferenceImageRequest.verify|verify} messages.
+ * @param message GetReferenceImageRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p3beta1.IGetReferenceImageRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a GetReferenceImageRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns GetReferenceImageRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p3beta1.GetReferenceImageRequest;
+
+ /**
+ * Decodes a GetReferenceImageRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns GetReferenceImageRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p3beta1.GetReferenceImageRequest;
+
+ /**
+ * Verifies a GetReferenceImageRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a GetReferenceImageRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns GetReferenceImageRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p3beta1.GetReferenceImageRequest;
+
+ /**
+ * Creates a plain object from a GetReferenceImageRequest message. Also converts values to other types if specified.
+ * @param message GetReferenceImageRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p3beta1.GetReferenceImageRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this GetReferenceImageRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for GetReferenceImageRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a DeleteReferenceImageRequest. */
+ interface IDeleteReferenceImageRequest {
+
+ /** DeleteReferenceImageRequest name */
+ name?: (string|null);
+ }
+
+ /** Represents a DeleteReferenceImageRequest. */
+ class DeleteReferenceImageRequest implements IDeleteReferenceImageRequest {
+
+ /**
+ * Constructs a new DeleteReferenceImageRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p3beta1.IDeleteReferenceImageRequest);
+
+ /** DeleteReferenceImageRequest name. */
+ public name: string;
+
+ /**
+ * Creates a new DeleteReferenceImageRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns DeleteReferenceImageRequest instance
+ */
+ public static create(properties?: google.cloud.vision.v1p3beta1.IDeleteReferenceImageRequest): google.cloud.vision.v1p3beta1.DeleteReferenceImageRequest;
+
+ /**
+ * Encodes the specified DeleteReferenceImageRequest message. Does not implicitly {@link google.cloud.vision.v1p3beta1.DeleteReferenceImageRequest.verify|verify} messages.
+ * @param message DeleteReferenceImageRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p3beta1.IDeleteReferenceImageRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified DeleteReferenceImageRequest message, length delimited. Does not implicitly {@link google.cloud.vision.v1p3beta1.DeleteReferenceImageRequest.verify|verify} messages.
+ * @param message DeleteReferenceImageRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p3beta1.IDeleteReferenceImageRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a DeleteReferenceImageRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns DeleteReferenceImageRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p3beta1.DeleteReferenceImageRequest;
+
+ /**
+ * Decodes a DeleteReferenceImageRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns DeleteReferenceImageRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p3beta1.DeleteReferenceImageRequest;
+
+ /**
+ * Verifies a DeleteReferenceImageRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a DeleteReferenceImageRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns DeleteReferenceImageRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p3beta1.DeleteReferenceImageRequest;
+
+ /**
+ * Creates a plain object from a DeleteReferenceImageRequest message. Also converts values to other types if specified.
+ * @param message DeleteReferenceImageRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p3beta1.DeleteReferenceImageRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this DeleteReferenceImageRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for DeleteReferenceImageRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an AddProductToProductSetRequest. */
+ interface IAddProductToProductSetRequest {
+
+ /** AddProductToProductSetRequest name */
+ name?: (string|null);
+
+ /** AddProductToProductSetRequest product */
+ product?: (string|null);
+ }
+
+ /** Represents an AddProductToProductSetRequest. */
+ class AddProductToProductSetRequest implements IAddProductToProductSetRequest {
+
+ /**
+ * Constructs a new AddProductToProductSetRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p3beta1.IAddProductToProductSetRequest);
+
+ /** AddProductToProductSetRequest name. */
+ public name: string;
+
+ /** AddProductToProductSetRequest product. */
+ public product: string;
+
+ /**
+ * Creates a new AddProductToProductSetRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns AddProductToProductSetRequest instance
+ */
+ public static create(properties?: google.cloud.vision.v1p3beta1.IAddProductToProductSetRequest): google.cloud.vision.v1p3beta1.AddProductToProductSetRequest;
+
+ /**
+ * Encodes the specified AddProductToProductSetRequest message. Does not implicitly {@link google.cloud.vision.v1p3beta1.AddProductToProductSetRequest.verify|verify} messages.
+ * @param message AddProductToProductSetRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p3beta1.IAddProductToProductSetRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified AddProductToProductSetRequest message, length delimited. Does not implicitly {@link google.cloud.vision.v1p3beta1.AddProductToProductSetRequest.verify|verify} messages.
+ * @param message AddProductToProductSetRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p3beta1.IAddProductToProductSetRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an AddProductToProductSetRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns AddProductToProductSetRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p3beta1.AddProductToProductSetRequest;
+
+ /**
+ * Decodes an AddProductToProductSetRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns AddProductToProductSetRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p3beta1.AddProductToProductSetRequest;
+
+ /**
+ * Verifies an AddProductToProductSetRequest message.
+ * @param message Plain 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 AddProductToProductSetRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns AddProductToProductSetRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p3beta1.AddProductToProductSetRequest;
+
+ /**
+ * Creates a plain object from an AddProductToProductSetRequest message. Also converts values to other types if specified.
+ * @param message AddProductToProductSetRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p3beta1.AddProductToProductSetRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this AddProductToProductSetRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for AddProductToProductSetRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a RemoveProductFromProductSetRequest. */
+ interface IRemoveProductFromProductSetRequest {
+
+ /** RemoveProductFromProductSetRequest name */
+ name?: (string|null);
+
+ /** RemoveProductFromProductSetRequest product */
+ product?: (string|null);
+ }
+
+ /** Represents a RemoveProductFromProductSetRequest. */
+ class RemoveProductFromProductSetRequest implements IRemoveProductFromProductSetRequest {
+
+ /**
+ * Constructs a new RemoveProductFromProductSetRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p3beta1.IRemoveProductFromProductSetRequest);
+
+ /** RemoveProductFromProductSetRequest name. */
+ public name: string;
+
+ /** RemoveProductFromProductSetRequest product. */
+ public product: string;
+
+ /**
+ * Creates a new RemoveProductFromProductSetRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns RemoveProductFromProductSetRequest instance
+ */
+ public static create(properties?: google.cloud.vision.v1p3beta1.IRemoveProductFromProductSetRequest): google.cloud.vision.v1p3beta1.RemoveProductFromProductSetRequest;
+
+ /**
+ * Encodes the specified RemoveProductFromProductSetRequest message. Does not implicitly {@link google.cloud.vision.v1p3beta1.RemoveProductFromProductSetRequest.verify|verify} messages.
+ * @param message RemoveProductFromProductSetRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p3beta1.IRemoveProductFromProductSetRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified RemoveProductFromProductSetRequest message, length delimited. Does not implicitly {@link google.cloud.vision.v1p3beta1.RemoveProductFromProductSetRequest.verify|verify} messages.
+ * @param message RemoveProductFromProductSetRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p3beta1.IRemoveProductFromProductSetRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a RemoveProductFromProductSetRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns RemoveProductFromProductSetRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p3beta1.RemoveProductFromProductSetRequest;
+
+ /**
+ * Decodes a RemoveProductFromProductSetRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns RemoveProductFromProductSetRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p3beta1.RemoveProductFromProductSetRequest;
+
+ /**
+ * Verifies a RemoveProductFromProductSetRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a RemoveProductFromProductSetRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns RemoveProductFromProductSetRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p3beta1.RemoveProductFromProductSetRequest;
+
+ /**
+ * Creates a plain object from a RemoveProductFromProductSetRequest message. Also converts values to other types if specified.
+ * @param message RemoveProductFromProductSetRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p3beta1.RemoveProductFromProductSetRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this RemoveProductFromProductSetRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for RemoveProductFromProductSetRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ListProductsInProductSetRequest. */
+ interface IListProductsInProductSetRequest {
+
+ /** ListProductsInProductSetRequest name */
+ name?: (string|null);
+
+ /** ListProductsInProductSetRequest pageSize */
+ pageSize?: (number|null);
+
+ /** ListProductsInProductSetRequest pageToken */
+ pageToken?: (string|null);
+ }
+
+ /** Represents a ListProductsInProductSetRequest. */
+ class ListProductsInProductSetRequest implements IListProductsInProductSetRequest {
+
+ /**
+ * Constructs a new ListProductsInProductSetRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p3beta1.IListProductsInProductSetRequest);
+
+ /** ListProductsInProductSetRequest name. */
+ public name: string;
+
+ /** ListProductsInProductSetRequest pageSize. */
+ public pageSize: number;
+
+ /** ListProductsInProductSetRequest pageToken. */
+ public pageToken: string;
+
+ /**
+ * Creates a new ListProductsInProductSetRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ListProductsInProductSetRequest instance
+ */
+ public static create(properties?: google.cloud.vision.v1p3beta1.IListProductsInProductSetRequest): google.cloud.vision.v1p3beta1.ListProductsInProductSetRequest;
+
+ /**
+ * Encodes the specified ListProductsInProductSetRequest message. Does not implicitly {@link google.cloud.vision.v1p3beta1.ListProductsInProductSetRequest.verify|verify} messages.
+ * @param message ListProductsInProductSetRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p3beta1.IListProductsInProductSetRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ListProductsInProductSetRequest message, length delimited. Does not implicitly {@link google.cloud.vision.v1p3beta1.ListProductsInProductSetRequest.verify|verify} messages.
+ * @param message ListProductsInProductSetRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p3beta1.IListProductsInProductSetRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ListProductsInProductSetRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ListProductsInProductSetRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p3beta1.ListProductsInProductSetRequest;
+
+ /**
+ * Decodes a ListProductsInProductSetRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ListProductsInProductSetRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p3beta1.ListProductsInProductSetRequest;
+
+ /**
+ * Verifies a ListProductsInProductSetRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ListProductsInProductSetRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ListProductsInProductSetRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p3beta1.ListProductsInProductSetRequest;
+
+ /**
+ * Creates a plain object from a ListProductsInProductSetRequest message. Also converts values to other types if specified.
+ * @param message ListProductsInProductSetRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p3beta1.ListProductsInProductSetRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ListProductsInProductSetRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ListProductsInProductSetRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ListProductsInProductSetResponse. */
+ interface IListProductsInProductSetResponse {
+
+ /** ListProductsInProductSetResponse products */
+ products?: (google.cloud.vision.v1p3beta1.IProduct[]|null);
+
+ /** ListProductsInProductSetResponse nextPageToken */
+ nextPageToken?: (string|null);
+ }
+
+ /** Represents a ListProductsInProductSetResponse. */
+ class ListProductsInProductSetResponse implements IListProductsInProductSetResponse {
+
+ /**
+ * Constructs a new ListProductsInProductSetResponse.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p3beta1.IListProductsInProductSetResponse);
+
+ /** ListProductsInProductSetResponse products. */
+ public products: google.cloud.vision.v1p3beta1.IProduct[];
+
+ /** ListProductsInProductSetResponse nextPageToken. */
+ public nextPageToken: string;
+
+ /**
+ * Creates a new ListProductsInProductSetResponse instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ListProductsInProductSetResponse instance
+ */
+ public static create(properties?: google.cloud.vision.v1p3beta1.IListProductsInProductSetResponse): google.cloud.vision.v1p3beta1.ListProductsInProductSetResponse;
+
+ /**
+ * Encodes the specified ListProductsInProductSetResponse message. Does not implicitly {@link google.cloud.vision.v1p3beta1.ListProductsInProductSetResponse.verify|verify} messages.
+ * @param message ListProductsInProductSetResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p3beta1.IListProductsInProductSetResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ListProductsInProductSetResponse message, length delimited. Does not implicitly {@link google.cloud.vision.v1p3beta1.ListProductsInProductSetResponse.verify|verify} messages.
+ * @param message ListProductsInProductSetResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p3beta1.IListProductsInProductSetResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ListProductsInProductSetResponse message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ListProductsInProductSetResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p3beta1.ListProductsInProductSetResponse;
+
+ /**
+ * Decodes a ListProductsInProductSetResponse message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ListProductsInProductSetResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p3beta1.ListProductsInProductSetResponse;
+
+ /**
+ * Verifies a ListProductsInProductSetResponse message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ListProductsInProductSetResponse message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ListProductsInProductSetResponse
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p3beta1.ListProductsInProductSetResponse;
+
+ /**
+ * Creates a plain object from a ListProductsInProductSetResponse message. Also converts values to other types if specified.
+ * @param message ListProductsInProductSetResponse
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p3beta1.ListProductsInProductSetResponse, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ListProductsInProductSetResponse to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ListProductsInProductSetResponse
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an ImportProductSetsGcsSource. */
+ interface IImportProductSetsGcsSource {
+
+ /** ImportProductSetsGcsSource csvFileUri */
+ csvFileUri?: (string|null);
+ }
+
+ /** Represents an ImportProductSetsGcsSource. */
+ class ImportProductSetsGcsSource implements IImportProductSetsGcsSource {
+
+ /**
+ * Constructs a new ImportProductSetsGcsSource.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p3beta1.IImportProductSetsGcsSource);
+
+ /** ImportProductSetsGcsSource csvFileUri. */
+ public csvFileUri: string;
+
+ /**
+ * Creates a new ImportProductSetsGcsSource instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ImportProductSetsGcsSource instance
+ */
+ public static create(properties?: google.cloud.vision.v1p3beta1.IImportProductSetsGcsSource): google.cloud.vision.v1p3beta1.ImportProductSetsGcsSource;
+
+ /**
+ * Encodes the specified ImportProductSetsGcsSource message. Does not implicitly {@link google.cloud.vision.v1p3beta1.ImportProductSetsGcsSource.verify|verify} messages.
+ * @param message ImportProductSetsGcsSource message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p3beta1.IImportProductSetsGcsSource, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ImportProductSetsGcsSource message, length delimited. Does not implicitly {@link google.cloud.vision.v1p3beta1.ImportProductSetsGcsSource.verify|verify} messages.
+ * @param message ImportProductSetsGcsSource message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p3beta1.IImportProductSetsGcsSource, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an ImportProductSetsGcsSource message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ImportProductSetsGcsSource
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p3beta1.ImportProductSetsGcsSource;
+
+ /**
+ * Decodes an ImportProductSetsGcsSource message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ImportProductSetsGcsSource
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p3beta1.ImportProductSetsGcsSource;
+
+ /**
+ * Verifies an ImportProductSetsGcsSource message.
+ * @param message Plain 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 ImportProductSetsGcsSource message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ImportProductSetsGcsSource
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p3beta1.ImportProductSetsGcsSource;
+
+ /**
+ * Creates a plain object from an ImportProductSetsGcsSource message. Also converts values to other types if specified.
+ * @param message ImportProductSetsGcsSource
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p3beta1.ImportProductSetsGcsSource, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ImportProductSetsGcsSource to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ImportProductSetsGcsSource
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an ImportProductSetsInputConfig. */
+ interface IImportProductSetsInputConfig {
+
+ /** ImportProductSetsInputConfig gcsSource */
+ gcsSource?: (google.cloud.vision.v1p3beta1.IImportProductSetsGcsSource|null);
+ }
+
+ /** Represents an ImportProductSetsInputConfig. */
+ class ImportProductSetsInputConfig implements IImportProductSetsInputConfig {
+
+ /**
+ * Constructs a new ImportProductSetsInputConfig.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p3beta1.IImportProductSetsInputConfig);
+
+ /** ImportProductSetsInputConfig gcsSource. */
+ public gcsSource?: (google.cloud.vision.v1p3beta1.IImportProductSetsGcsSource|null);
+
+ /** ImportProductSetsInputConfig source. */
+ public source?: "gcsSource";
+
+ /**
+ * Creates a new ImportProductSetsInputConfig instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ImportProductSetsInputConfig instance
+ */
+ public static create(properties?: google.cloud.vision.v1p3beta1.IImportProductSetsInputConfig): google.cloud.vision.v1p3beta1.ImportProductSetsInputConfig;
+
+ /**
+ * Encodes the specified ImportProductSetsInputConfig message. Does not implicitly {@link google.cloud.vision.v1p3beta1.ImportProductSetsInputConfig.verify|verify} messages.
+ * @param message ImportProductSetsInputConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p3beta1.IImportProductSetsInputConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ImportProductSetsInputConfig message, length delimited. Does not implicitly {@link google.cloud.vision.v1p3beta1.ImportProductSetsInputConfig.verify|verify} messages.
+ * @param message ImportProductSetsInputConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p3beta1.IImportProductSetsInputConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an ImportProductSetsInputConfig message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ImportProductSetsInputConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p3beta1.ImportProductSetsInputConfig;
+
+ /**
+ * Decodes an ImportProductSetsInputConfig message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ImportProductSetsInputConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p3beta1.ImportProductSetsInputConfig;
+
+ /**
+ * Verifies an ImportProductSetsInputConfig message.
+ * @param message Plain 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 ImportProductSetsInputConfig message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ImportProductSetsInputConfig
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p3beta1.ImportProductSetsInputConfig;
+
+ /**
+ * Creates a plain object from an ImportProductSetsInputConfig message. Also converts values to other types if specified.
+ * @param message ImportProductSetsInputConfig
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p3beta1.ImportProductSetsInputConfig, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ImportProductSetsInputConfig to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ImportProductSetsInputConfig
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an ImportProductSetsRequest. */
+ interface IImportProductSetsRequest {
+
+ /** ImportProductSetsRequest parent */
+ parent?: (string|null);
+
+ /** ImportProductSetsRequest inputConfig */
+ inputConfig?: (google.cloud.vision.v1p3beta1.IImportProductSetsInputConfig|null);
+ }
+
+ /** Represents an ImportProductSetsRequest. */
+ class ImportProductSetsRequest implements IImportProductSetsRequest {
+
+ /**
+ * Constructs a new ImportProductSetsRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p3beta1.IImportProductSetsRequest);
+
+ /** ImportProductSetsRequest parent. */
+ public parent: string;
+
+ /** ImportProductSetsRequest inputConfig. */
+ public inputConfig?: (google.cloud.vision.v1p3beta1.IImportProductSetsInputConfig|null);
+
+ /**
+ * Creates a new ImportProductSetsRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ImportProductSetsRequest instance
+ */
+ public static create(properties?: google.cloud.vision.v1p3beta1.IImportProductSetsRequest): google.cloud.vision.v1p3beta1.ImportProductSetsRequest;
+
+ /**
+ * Encodes the specified ImportProductSetsRequest message. Does not implicitly {@link google.cloud.vision.v1p3beta1.ImportProductSetsRequest.verify|verify} messages.
+ * @param message ImportProductSetsRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p3beta1.IImportProductSetsRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ImportProductSetsRequest message, length delimited. Does not implicitly {@link google.cloud.vision.v1p3beta1.ImportProductSetsRequest.verify|verify} messages.
+ * @param message ImportProductSetsRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p3beta1.IImportProductSetsRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an ImportProductSetsRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ImportProductSetsRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p3beta1.ImportProductSetsRequest;
+
+ /**
+ * Decodes an ImportProductSetsRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ImportProductSetsRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p3beta1.ImportProductSetsRequest;
+
+ /**
+ * Verifies an ImportProductSetsRequest message.
+ * @param message Plain 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 ImportProductSetsRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ImportProductSetsRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p3beta1.ImportProductSetsRequest;
+
+ /**
+ * Creates a plain object from an ImportProductSetsRequest message. Also converts values to other types if specified.
+ * @param message ImportProductSetsRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p3beta1.ImportProductSetsRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ImportProductSetsRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ImportProductSetsRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an ImportProductSetsResponse. */
+ interface IImportProductSetsResponse {
+
+ /** ImportProductSetsResponse referenceImages */
+ referenceImages?: (google.cloud.vision.v1p3beta1.IReferenceImage[]|null);
+
+ /** ImportProductSetsResponse statuses */
+ statuses?: (google.rpc.IStatus[]|null);
+ }
+
+ /** Represents an ImportProductSetsResponse. */
+ class ImportProductSetsResponse implements IImportProductSetsResponse {
+
+ /**
+ * Constructs a new ImportProductSetsResponse.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p3beta1.IImportProductSetsResponse);
+
+ /** ImportProductSetsResponse referenceImages. */
+ public referenceImages: google.cloud.vision.v1p3beta1.IReferenceImage[];
+
+ /** ImportProductSetsResponse statuses. */
+ public statuses: google.rpc.IStatus[];
+
+ /**
+ * Creates a new ImportProductSetsResponse instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ImportProductSetsResponse instance
+ */
+ public static create(properties?: google.cloud.vision.v1p3beta1.IImportProductSetsResponse): google.cloud.vision.v1p3beta1.ImportProductSetsResponse;
+
+ /**
+ * Encodes the specified ImportProductSetsResponse message. Does not implicitly {@link google.cloud.vision.v1p3beta1.ImportProductSetsResponse.verify|verify} messages.
+ * @param message ImportProductSetsResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p3beta1.IImportProductSetsResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ImportProductSetsResponse message, length delimited. Does not implicitly {@link google.cloud.vision.v1p3beta1.ImportProductSetsResponse.verify|verify} messages.
+ * @param message ImportProductSetsResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p3beta1.IImportProductSetsResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an ImportProductSetsResponse message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ImportProductSetsResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p3beta1.ImportProductSetsResponse;
+
+ /**
+ * Decodes an ImportProductSetsResponse message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ImportProductSetsResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p3beta1.ImportProductSetsResponse;
+
+ /**
+ * Verifies an ImportProductSetsResponse message.
+ * @param message Plain 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 ImportProductSetsResponse message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ImportProductSetsResponse
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p3beta1.ImportProductSetsResponse;
+
+ /**
+ * Creates a plain object from an ImportProductSetsResponse message. Also converts values to other types if specified.
+ * @param message ImportProductSetsResponse
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p3beta1.ImportProductSetsResponse, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ImportProductSetsResponse to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ImportProductSetsResponse
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a BatchOperationMetadata. */
+ interface IBatchOperationMetadata {
+
+ /** BatchOperationMetadata state */
+ state?: (google.cloud.vision.v1p3beta1.BatchOperationMetadata.State|keyof typeof google.cloud.vision.v1p3beta1.BatchOperationMetadata.State|null);
+
+ /** BatchOperationMetadata submitTime */
+ submitTime?: (google.protobuf.ITimestamp|null);
+
+ /** BatchOperationMetadata endTime */
+ endTime?: (google.protobuf.ITimestamp|null);
+ }
+
+ /** Represents a BatchOperationMetadata. */
+ class BatchOperationMetadata implements IBatchOperationMetadata {
+
+ /**
+ * Constructs a new BatchOperationMetadata.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p3beta1.IBatchOperationMetadata);
+
+ /** BatchOperationMetadata state. */
+ public state: (google.cloud.vision.v1p3beta1.BatchOperationMetadata.State|keyof typeof google.cloud.vision.v1p3beta1.BatchOperationMetadata.State);
+
+ /** BatchOperationMetadata submitTime. */
+ public submitTime?: (google.protobuf.ITimestamp|null);
+
+ /** BatchOperationMetadata endTime. */
+ public endTime?: (google.protobuf.ITimestamp|null);
+
+ /**
+ * Creates a new BatchOperationMetadata instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns BatchOperationMetadata instance
+ */
+ public static create(properties?: google.cloud.vision.v1p3beta1.IBatchOperationMetadata): google.cloud.vision.v1p3beta1.BatchOperationMetadata;
+
+ /**
+ * Encodes the specified BatchOperationMetadata message. Does not implicitly {@link google.cloud.vision.v1p3beta1.BatchOperationMetadata.verify|verify} messages.
+ * @param message BatchOperationMetadata message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p3beta1.IBatchOperationMetadata, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified BatchOperationMetadata message, length delimited. Does not implicitly {@link google.cloud.vision.v1p3beta1.BatchOperationMetadata.verify|verify} messages.
+ * @param message BatchOperationMetadata message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p3beta1.IBatchOperationMetadata, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a BatchOperationMetadata message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns BatchOperationMetadata
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p3beta1.BatchOperationMetadata;
+
+ /**
+ * Decodes a BatchOperationMetadata message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns BatchOperationMetadata
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p3beta1.BatchOperationMetadata;
+
+ /**
+ * Verifies a BatchOperationMetadata message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a BatchOperationMetadata message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns BatchOperationMetadata
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p3beta1.BatchOperationMetadata;
+
+ /**
+ * Creates a plain object from a BatchOperationMetadata message. Also converts values to other types if specified.
+ * @param message BatchOperationMetadata
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p3beta1.BatchOperationMetadata, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this BatchOperationMetadata to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for BatchOperationMetadata
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace BatchOperationMetadata {
+
+ /** State enum. */
+ enum State {
+ STATE_UNSPECIFIED = 0,
+ PROCESSING = 1,
+ SUCCESSFUL = 2,
+ FAILED = 3,
+ CANCELLED = 4
+ }
+ }
+
+ /** Properties of a TextAnnotation. */
+ interface ITextAnnotation {
+
+ /** TextAnnotation pages */
+ pages?: (google.cloud.vision.v1p3beta1.IPage[]|null);
+
+ /** TextAnnotation text */
+ text?: (string|null);
+ }
+
+ /** Represents a TextAnnotation. */
+ class TextAnnotation implements ITextAnnotation {
+
+ /**
+ * Constructs a new TextAnnotation.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p3beta1.ITextAnnotation);
+
+ /** TextAnnotation pages. */
+ public pages: google.cloud.vision.v1p3beta1.IPage[];
+
+ /** TextAnnotation text. */
+ public text: string;
+
+ /**
+ * Creates a new TextAnnotation instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns TextAnnotation instance
+ */
+ public static create(properties?: google.cloud.vision.v1p3beta1.ITextAnnotation): google.cloud.vision.v1p3beta1.TextAnnotation;
+
+ /**
+ * Encodes the specified TextAnnotation message. Does not implicitly {@link google.cloud.vision.v1p3beta1.TextAnnotation.verify|verify} messages.
+ * @param message TextAnnotation message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p3beta1.ITextAnnotation, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified TextAnnotation message, length delimited. Does not implicitly {@link google.cloud.vision.v1p3beta1.TextAnnotation.verify|verify} messages.
+ * @param message TextAnnotation message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p3beta1.ITextAnnotation, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a TextAnnotation message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns TextAnnotation
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p3beta1.TextAnnotation;
+
+ /**
+ * Decodes a TextAnnotation message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns TextAnnotation
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p3beta1.TextAnnotation;
+
+ /**
+ * Verifies a TextAnnotation message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a TextAnnotation message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns TextAnnotation
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p3beta1.TextAnnotation;
+
+ /**
+ * Creates a plain object from a TextAnnotation message. Also converts values to other types if specified.
+ * @param message TextAnnotation
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p3beta1.TextAnnotation, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this TextAnnotation to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for TextAnnotation
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace TextAnnotation {
+
+ /** Properties of a DetectedLanguage. */
+ interface IDetectedLanguage {
+
+ /** DetectedLanguage languageCode */
+ languageCode?: (string|null);
+
+ /** DetectedLanguage confidence */
+ confidence?: (number|null);
+ }
+
+ /** Represents a DetectedLanguage. */
+ class DetectedLanguage implements IDetectedLanguage {
+
+ /**
+ * Constructs a new DetectedLanguage.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p3beta1.TextAnnotation.IDetectedLanguage);
+
+ /** DetectedLanguage languageCode. */
+ public languageCode: string;
+
+ /** DetectedLanguage confidence. */
+ public confidence: number;
+
+ /**
+ * Creates a new DetectedLanguage instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns DetectedLanguage instance
+ */
+ public static create(properties?: google.cloud.vision.v1p3beta1.TextAnnotation.IDetectedLanguage): google.cloud.vision.v1p3beta1.TextAnnotation.DetectedLanguage;
+
+ /**
+ * Encodes the specified DetectedLanguage message. Does not implicitly {@link google.cloud.vision.v1p3beta1.TextAnnotation.DetectedLanguage.verify|verify} messages.
+ * @param message DetectedLanguage message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p3beta1.TextAnnotation.IDetectedLanguage, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified DetectedLanguage message, length delimited. Does not implicitly {@link google.cloud.vision.v1p3beta1.TextAnnotation.DetectedLanguage.verify|verify} messages.
+ * @param message DetectedLanguage message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p3beta1.TextAnnotation.IDetectedLanguage, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a DetectedLanguage message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns DetectedLanguage
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p3beta1.TextAnnotation.DetectedLanguage;
+
+ /**
+ * Decodes a DetectedLanguage message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns DetectedLanguage
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p3beta1.TextAnnotation.DetectedLanguage;
+
+ /**
+ * Verifies a DetectedLanguage message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a DetectedLanguage message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns DetectedLanguage
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p3beta1.TextAnnotation.DetectedLanguage;
+
+ /**
+ * Creates a plain object from a DetectedLanguage message. Also converts values to other types if specified.
+ * @param message DetectedLanguage
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p3beta1.TextAnnotation.DetectedLanguage, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this DetectedLanguage to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for DetectedLanguage
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a DetectedBreak. */
+ interface IDetectedBreak {
+
+ /** DetectedBreak type */
+ type?: (google.cloud.vision.v1p3beta1.TextAnnotation.DetectedBreak.BreakType|keyof typeof google.cloud.vision.v1p3beta1.TextAnnotation.DetectedBreak.BreakType|null);
+
+ /** DetectedBreak isPrefix */
+ isPrefix?: (boolean|null);
+ }
+
+ /** Represents a DetectedBreak. */
+ class DetectedBreak implements IDetectedBreak {
+
+ /**
+ * Constructs a new DetectedBreak.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p3beta1.TextAnnotation.IDetectedBreak);
+
+ /** DetectedBreak type. */
+ public type: (google.cloud.vision.v1p3beta1.TextAnnotation.DetectedBreak.BreakType|keyof typeof google.cloud.vision.v1p3beta1.TextAnnotation.DetectedBreak.BreakType);
+
+ /** DetectedBreak isPrefix. */
+ public isPrefix: boolean;
+
+ /**
+ * Creates a new DetectedBreak instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns DetectedBreak instance
+ */
+ public static create(properties?: google.cloud.vision.v1p3beta1.TextAnnotation.IDetectedBreak): google.cloud.vision.v1p3beta1.TextAnnotation.DetectedBreak;
+
+ /**
+ * Encodes the specified DetectedBreak message. Does not implicitly {@link google.cloud.vision.v1p3beta1.TextAnnotation.DetectedBreak.verify|verify} messages.
+ * @param message DetectedBreak message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p3beta1.TextAnnotation.IDetectedBreak, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified DetectedBreak message, length delimited. Does not implicitly {@link google.cloud.vision.v1p3beta1.TextAnnotation.DetectedBreak.verify|verify} messages.
+ * @param message DetectedBreak message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p3beta1.TextAnnotation.IDetectedBreak, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a DetectedBreak message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns DetectedBreak
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p3beta1.TextAnnotation.DetectedBreak;
+
+ /**
+ * Decodes a DetectedBreak message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns DetectedBreak
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p3beta1.TextAnnotation.DetectedBreak;
+
+ /**
+ * Verifies a DetectedBreak message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a DetectedBreak message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns DetectedBreak
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p3beta1.TextAnnotation.DetectedBreak;
+
+ /**
+ * Creates a plain object from a DetectedBreak message. Also converts values to other types if specified.
+ * @param message DetectedBreak
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p3beta1.TextAnnotation.DetectedBreak, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this DetectedBreak to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for DetectedBreak
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace DetectedBreak {
+
+ /** BreakType enum. */
+ enum BreakType {
+ UNKNOWN = 0,
+ SPACE = 1,
+ SURE_SPACE = 2,
+ EOL_SURE_SPACE = 3,
+ HYPHEN = 4,
+ LINE_BREAK = 5
+ }
+ }
+
+ /** Properties of a TextProperty. */
+ interface ITextProperty {
+
+ /** TextProperty detectedLanguages */
+ detectedLanguages?: (google.cloud.vision.v1p3beta1.TextAnnotation.IDetectedLanguage[]|null);
+
+ /** TextProperty detectedBreak */
+ detectedBreak?: (google.cloud.vision.v1p3beta1.TextAnnotation.IDetectedBreak|null);
+ }
+
+ /** Represents a TextProperty. */
+ class TextProperty implements ITextProperty {
+
+ /**
+ * Constructs a new TextProperty.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p3beta1.TextAnnotation.ITextProperty);
+
+ /** TextProperty detectedLanguages. */
+ public detectedLanguages: google.cloud.vision.v1p3beta1.TextAnnotation.IDetectedLanguage[];
+
+ /** TextProperty detectedBreak. */
+ public detectedBreak?: (google.cloud.vision.v1p3beta1.TextAnnotation.IDetectedBreak|null);
+
+ /**
+ * Creates a new TextProperty instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns TextProperty instance
+ */
+ public static create(properties?: google.cloud.vision.v1p3beta1.TextAnnotation.ITextProperty): google.cloud.vision.v1p3beta1.TextAnnotation.TextProperty;
+
+ /**
+ * Encodes the specified TextProperty message. Does not implicitly {@link google.cloud.vision.v1p3beta1.TextAnnotation.TextProperty.verify|verify} messages.
+ * @param message TextProperty message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p3beta1.TextAnnotation.ITextProperty, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified TextProperty message, length delimited. Does not implicitly {@link google.cloud.vision.v1p3beta1.TextAnnotation.TextProperty.verify|verify} messages.
+ * @param message TextProperty message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p3beta1.TextAnnotation.ITextProperty, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a TextProperty message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns TextProperty
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p3beta1.TextAnnotation.TextProperty;
+
+ /**
+ * Decodes a TextProperty message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns TextProperty
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p3beta1.TextAnnotation.TextProperty;
+
+ /**
+ * Verifies a TextProperty message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a TextProperty message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns TextProperty
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p3beta1.TextAnnotation.TextProperty;
+
+ /**
+ * Creates a plain object from a TextProperty message. Also converts values to other types if specified.
+ * @param message TextProperty
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p3beta1.TextAnnotation.TextProperty, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this TextProperty to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for TextProperty
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+ }
+
+ /** Properties of a Page. */
+ interface IPage {
+
+ /** Page property */
+ property?: (google.cloud.vision.v1p3beta1.TextAnnotation.ITextProperty|null);
+
+ /** Page width */
+ width?: (number|null);
+
+ /** Page height */
+ height?: (number|null);
+
+ /** Page blocks */
+ blocks?: (google.cloud.vision.v1p3beta1.IBlock[]|null);
+
+ /** Page confidence */
+ confidence?: (number|null);
+ }
+
+ /** Represents a Page. */
+ class Page implements IPage {
+
+ /**
+ * Constructs a new Page.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p3beta1.IPage);
+
+ /** Page property. */
+ public property?: (google.cloud.vision.v1p3beta1.TextAnnotation.ITextProperty|null);
+
+ /** Page width. */
+ public width: number;
+
+ /** Page height. */
+ public height: number;
+
+ /** Page blocks. */
+ public blocks: google.cloud.vision.v1p3beta1.IBlock[];
+
+ /** Page confidence. */
+ public confidence: number;
+
+ /**
+ * Creates a new Page instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Page instance
+ */
+ public static create(properties?: google.cloud.vision.v1p3beta1.IPage): google.cloud.vision.v1p3beta1.Page;
+
+ /**
+ * Encodes the specified Page message. Does not implicitly {@link google.cloud.vision.v1p3beta1.Page.verify|verify} messages.
+ * @param message Page message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p3beta1.IPage, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Page message, length delimited. Does not implicitly {@link google.cloud.vision.v1p3beta1.Page.verify|verify} messages.
+ * @param message Page message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p3beta1.IPage, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Page message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Page
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p3beta1.Page;
+
+ /**
+ * Decodes a Page message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Page
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p3beta1.Page;
+
+ /**
+ * Verifies a Page message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a Page message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Page
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p3beta1.Page;
+
+ /**
+ * Creates a plain object from a Page message. Also converts values to other types if specified.
+ * @param message Page
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p3beta1.Page, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Page to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Page
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a Block. */
+ interface IBlock {
+
+ /** Block property */
+ property?: (google.cloud.vision.v1p3beta1.TextAnnotation.ITextProperty|null);
+
+ /** Block boundingBox */
+ boundingBox?: (google.cloud.vision.v1p3beta1.IBoundingPoly|null);
+
+ /** Block paragraphs */
+ paragraphs?: (google.cloud.vision.v1p3beta1.IParagraph[]|null);
+
+ /** Block blockType */
+ blockType?: (google.cloud.vision.v1p3beta1.Block.BlockType|keyof typeof google.cloud.vision.v1p3beta1.Block.BlockType|null);
+
+ /** Block confidence */
+ confidence?: (number|null);
+ }
+
+ /** Represents a Block. */
+ class Block implements IBlock {
+
+ /**
+ * Constructs a new Block.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p3beta1.IBlock);
+
+ /** Block property. */
+ public property?: (google.cloud.vision.v1p3beta1.TextAnnotation.ITextProperty|null);
+
+ /** Block boundingBox. */
+ public boundingBox?: (google.cloud.vision.v1p3beta1.IBoundingPoly|null);
+
+ /** Block paragraphs. */
+ public paragraphs: google.cloud.vision.v1p3beta1.IParagraph[];
+
+ /** Block blockType. */
+ public blockType: (google.cloud.vision.v1p3beta1.Block.BlockType|keyof typeof google.cloud.vision.v1p3beta1.Block.BlockType);
+
+ /** Block confidence. */
+ public confidence: number;
+
+ /**
+ * Creates a new Block instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Block instance
+ */
+ public static create(properties?: google.cloud.vision.v1p3beta1.IBlock): google.cloud.vision.v1p3beta1.Block;
+
+ /**
+ * Encodes the specified Block message. Does not implicitly {@link google.cloud.vision.v1p3beta1.Block.verify|verify} messages.
+ * @param message Block message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p3beta1.IBlock, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Block message, length delimited. Does not implicitly {@link google.cloud.vision.v1p3beta1.Block.verify|verify} messages.
+ * @param message Block message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p3beta1.IBlock, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Block message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Block
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p3beta1.Block;
+
+ /**
+ * Decodes a Block message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Block
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p3beta1.Block;
+
+ /**
+ * Verifies a Block message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a Block message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Block
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p3beta1.Block;
+
+ /**
+ * Creates a plain object from a Block message. Also converts values to other types if specified.
+ * @param message Block
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p3beta1.Block, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Block to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Block
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace Block {
+
+ /** BlockType enum. */
+ enum BlockType {
+ UNKNOWN = 0,
+ TEXT = 1,
+ TABLE = 2,
+ PICTURE = 3,
+ RULER = 4,
+ BARCODE = 5
+ }
+ }
+
+ /** Properties of a Paragraph. */
+ interface IParagraph {
+
+ /** Paragraph property */
+ property?: (google.cloud.vision.v1p3beta1.TextAnnotation.ITextProperty|null);
+
+ /** Paragraph boundingBox */
+ boundingBox?: (google.cloud.vision.v1p3beta1.IBoundingPoly|null);
+
+ /** Paragraph words */
+ words?: (google.cloud.vision.v1p3beta1.IWord[]|null);
+
+ /** Paragraph confidence */
+ confidence?: (number|null);
+ }
+
+ /** Represents a Paragraph. */
+ class Paragraph implements IParagraph {
+
+ /**
+ * Constructs a new Paragraph.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p3beta1.IParagraph);
+
+ /** Paragraph property. */
+ public property?: (google.cloud.vision.v1p3beta1.TextAnnotation.ITextProperty|null);
+
+ /** Paragraph boundingBox. */
+ public boundingBox?: (google.cloud.vision.v1p3beta1.IBoundingPoly|null);
+
+ /** Paragraph words. */
+ public words: google.cloud.vision.v1p3beta1.IWord[];
+
+ /** Paragraph confidence. */
+ public confidence: number;
+
+ /**
+ * Creates a new Paragraph instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Paragraph instance
+ */
+ public static create(properties?: google.cloud.vision.v1p3beta1.IParagraph): google.cloud.vision.v1p3beta1.Paragraph;
+
+ /**
+ * Encodes the specified Paragraph message. Does not implicitly {@link google.cloud.vision.v1p3beta1.Paragraph.verify|verify} messages.
+ * @param message Paragraph message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p3beta1.IParagraph, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Paragraph message, length delimited. Does not implicitly {@link google.cloud.vision.v1p3beta1.Paragraph.verify|verify} messages.
+ * @param message Paragraph message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p3beta1.IParagraph, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Paragraph message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Paragraph
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p3beta1.Paragraph;
+
+ /**
+ * Decodes a Paragraph message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Paragraph
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p3beta1.Paragraph;
+
+ /**
+ * Verifies a Paragraph message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a Paragraph message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Paragraph
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p3beta1.Paragraph;
+
+ /**
+ * Creates a plain object from a Paragraph message. Also converts values to other types if specified.
+ * @param message Paragraph
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p3beta1.Paragraph, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Paragraph to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Paragraph
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a Word. */
+ interface IWord {
+
+ /** Word property */
+ property?: (google.cloud.vision.v1p3beta1.TextAnnotation.ITextProperty|null);
+
+ /** Word boundingBox */
+ boundingBox?: (google.cloud.vision.v1p3beta1.IBoundingPoly|null);
+
+ /** Word symbols */
+ symbols?: (google.cloud.vision.v1p3beta1.ISymbol[]|null);
+
+ /** Word confidence */
+ confidence?: (number|null);
+ }
+
+ /** Represents a Word. */
+ class Word implements IWord {
+
+ /**
+ * Constructs a new Word.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p3beta1.IWord);
+
+ /** Word property. */
+ public property?: (google.cloud.vision.v1p3beta1.TextAnnotation.ITextProperty|null);
+
+ /** Word boundingBox. */
+ public boundingBox?: (google.cloud.vision.v1p3beta1.IBoundingPoly|null);
+
+ /** Word symbols. */
+ public symbols: google.cloud.vision.v1p3beta1.ISymbol[];
+
+ /** Word confidence. */
+ public confidence: number;
+
+ /**
+ * Creates a new Word instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Word instance
+ */
+ public static create(properties?: google.cloud.vision.v1p3beta1.IWord): google.cloud.vision.v1p3beta1.Word;
+
+ /**
+ * Encodes the specified Word message. Does not implicitly {@link google.cloud.vision.v1p3beta1.Word.verify|verify} messages.
+ * @param message Word message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p3beta1.IWord, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Word message, length delimited. Does not implicitly {@link google.cloud.vision.v1p3beta1.Word.verify|verify} messages.
+ * @param message Word message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p3beta1.IWord, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Word message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Word
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p3beta1.Word;
+
+ /**
+ * Decodes a Word message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Word
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p3beta1.Word;
+
+ /**
+ * Verifies a Word message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a Word message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Word
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p3beta1.Word;
+
+ /**
+ * Creates a plain object from a Word message. Also converts values to other types if specified.
+ * @param message Word
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p3beta1.Word, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Word to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Word
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a Symbol. */
+ interface ISymbol {
+
+ /** Symbol property */
+ property?: (google.cloud.vision.v1p3beta1.TextAnnotation.ITextProperty|null);
+
+ /** Symbol boundingBox */
+ boundingBox?: (google.cloud.vision.v1p3beta1.IBoundingPoly|null);
+
+ /** Symbol text */
+ text?: (string|null);
+
+ /** Symbol confidence */
+ confidence?: (number|null);
+ }
+
+ /** Represents a Symbol. */
+ class Symbol implements ISymbol {
+
+ /**
+ * Constructs a new Symbol.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p3beta1.ISymbol);
+
+ /** Symbol property. */
+ public property?: (google.cloud.vision.v1p3beta1.TextAnnotation.ITextProperty|null);
+
+ /** Symbol boundingBox. */
+ public boundingBox?: (google.cloud.vision.v1p3beta1.IBoundingPoly|null);
+
+ /** Symbol text. */
+ public text: string;
+
+ /** Symbol confidence. */
+ public confidence: number;
+
+ /**
+ * Creates a new Symbol instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Symbol instance
+ */
+ public static create(properties?: google.cloud.vision.v1p3beta1.ISymbol): google.cloud.vision.v1p3beta1.Symbol;
+
+ /**
+ * Encodes the specified Symbol message. Does not implicitly {@link google.cloud.vision.v1p3beta1.Symbol.verify|verify} messages.
+ * @param message Symbol message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p3beta1.ISymbol, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Symbol message, length delimited. Does not implicitly {@link google.cloud.vision.v1p3beta1.Symbol.verify|verify} messages.
+ * @param message Symbol message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p3beta1.ISymbol, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Symbol message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Symbol
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p3beta1.Symbol;
+
+ /**
+ * Decodes a Symbol message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Symbol
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p3beta1.Symbol;
+
+ /**
+ * Verifies a Symbol message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a Symbol message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Symbol
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p3beta1.Symbol;
+
+ /**
+ * Creates a plain object from a Symbol message. Also converts values to other types if specified.
+ * @param message Symbol
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p3beta1.Symbol, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Symbol to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Symbol
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a WebDetection. */
+ interface IWebDetection {
+
+ /** WebDetection webEntities */
+ webEntities?: (google.cloud.vision.v1p3beta1.WebDetection.IWebEntity[]|null);
+
+ /** WebDetection fullMatchingImages */
+ fullMatchingImages?: (google.cloud.vision.v1p3beta1.WebDetection.IWebImage[]|null);
+
+ /** WebDetection partialMatchingImages */
+ partialMatchingImages?: (google.cloud.vision.v1p3beta1.WebDetection.IWebImage[]|null);
+
+ /** WebDetection pagesWithMatchingImages */
+ pagesWithMatchingImages?: (google.cloud.vision.v1p3beta1.WebDetection.IWebPage[]|null);
+
+ /** WebDetection visuallySimilarImages */
+ visuallySimilarImages?: (google.cloud.vision.v1p3beta1.WebDetection.IWebImage[]|null);
+
+ /** WebDetection bestGuessLabels */
+ bestGuessLabels?: (google.cloud.vision.v1p3beta1.WebDetection.IWebLabel[]|null);
+ }
+
+ /** Represents a WebDetection. */
+ class WebDetection implements IWebDetection {
+
+ /**
+ * Constructs a new WebDetection.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p3beta1.IWebDetection);
+
+ /** WebDetection webEntities. */
+ public webEntities: google.cloud.vision.v1p3beta1.WebDetection.IWebEntity[];
+
+ /** WebDetection fullMatchingImages. */
+ public fullMatchingImages: google.cloud.vision.v1p3beta1.WebDetection.IWebImage[];
+
+ /** WebDetection partialMatchingImages. */
+ public partialMatchingImages: google.cloud.vision.v1p3beta1.WebDetection.IWebImage[];
+
+ /** WebDetection pagesWithMatchingImages. */
+ public pagesWithMatchingImages: google.cloud.vision.v1p3beta1.WebDetection.IWebPage[];
+
+ /** WebDetection visuallySimilarImages. */
+ public visuallySimilarImages: google.cloud.vision.v1p3beta1.WebDetection.IWebImage[];
+
+ /** WebDetection bestGuessLabels. */
+ public bestGuessLabels: google.cloud.vision.v1p3beta1.WebDetection.IWebLabel[];
+
+ /**
+ * Creates a new WebDetection instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns WebDetection instance
+ */
+ public static create(properties?: google.cloud.vision.v1p3beta1.IWebDetection): google.cloud.vision.v1p3beta1.WebDetection;
+
+ /**
+ * Encodes the specified WebDetection message. Does not implicitly {@link google.cloud.vision.v1p3beta1.WebDetection.verify|verify} messages.
+ * @param message WebDetection message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p3beta1.IWebDetection, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified WebDetection message, length delimited. Does not implicitly {@link google.cloud.vision.v1p3beta1.WebDetection.verify|verify} messages.
+ * @param message WebDetection message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p3beta1.IWebDetection, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a WebDetection message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns WebDetection
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p3beta1.WebDetection;
+
+ /**
+ * Decodes a WebDetection message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns WebDetection
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p3beta1.WebDetection;
+
+ /**
+ * Verifies a WebDetection message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a WebDetection message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns WebDetection
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p3beta1.WebDetection;
+
+ /**
+ * Creates a plain object from a WebDetection message. Also converts values to other types if specified.
+ * @param message WebDetection
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p3beta1.WebDetection, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this WebDetection to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for WebDetection
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace WebDetection {
+
+ /** Properties of a WebEntity. */
+ interface IWebEntity {
+
+ /** WebEntity entityId */
+ entityId?: (string|null);
+
+ /** WebEntity score */
+ score?: (number|null);
+
+ /** WebEntity description */
+ description?: (string|null);
+ }
+
+ /** Represents a WebEntity. */
+ class WebEntity implements IWebEntity {
+
+ /**
+ * Constructs a new WebEntity.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p3beta1.WebDetection.IWebEntity);
+
+ /** WebEntity entityId. */
+ public entityId: string;
+
+ /** WebEntity score. */
+ public score: number;
+
+ /** WebEntity description. */
+ public description: string;
+
+ /**
+ * Creates a new WebEntity instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns WebEntity instance
+ */
+ public static create(properties?: google.cloud.vision.v1p3beta1.WebDetection.IWebEntity): google.cloud.vision.v1p3beta1.WebDetection.WebEntity;
+
+ /**
+ * Encodes the specified WebEntity message. Does not implicitly {@link google.cloud.vision.v1p3beta1.WebDetection.WebEntity.verify|verify} messages.
+ * @param message WebEntity message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p3beta1.WebDetection.IWebEntity, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified WebEntity message, length delimited. Does not implicitly {@link google.cloud.vision.v1p3beta1.WebDetection.WebEntity.verify|verify} messages.
+ * @param message WebEntity message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p3beta1.WebDetection.IWebEntity, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a WebEntity message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns WebEntity
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p3beta1.WebDetection.WebEntity;
+
+ /**
+ * Decodes a WebEntity message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns WebEntity
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p3beta1.WebDetection.WebEntity;
+
+ /**
+ * Verifies a WebEntity message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a WebEntity message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns WebEntity
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p3beta1.WebDetection.WebEntity;
+
+ /**
+ * Creates a plain object from a WebEntity message. Also converts values to other types if specified.
+ * @param message WebEntity
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p3beta1.WebDetection.WebEntity, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this WebEntity to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for WebEntity
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a WebImage. */
+ interface IWebImage {
+
+ /** WebImage url */
+ url?: (string|null);
+
+ /** WebImage score */
+ score?: (number|null);
+ }
+
+ /** Represents a WebImage. */
+ class WebImage implements IWebImage {
+
+ /**
+ * Constructs a new WebImage.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p3beta1.WebDetection.IWebImage);
+
+ /** WebImage url. */
+ public url: string;
+
+ /** WebImage score. */
+ public score: number;
+
+ /**
+ * Creates a new WebImage instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns WebImage instance
+ */
+ public static create(properties?: google.cloud.vision.v1p3beta1.WebDetection.IWebImage): google.cloud.vision.v1p3beta1.WebDetection.WebImage;
+
+ /**
+ * Encodes the specified WebImage message. Does not implicitly {@link google.cloud.vision.v1p3beta1.WebDetection.WebImage.verify|verify} messages.
+ * @param message WebImage message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p3beta1.WebDetection.IWebImage, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified WebImage message, length delimited. Does not implicitly {@link google.cloud.vision.v1p3beta1.WebDetection.WebImage.verify|verify} messages.
+ * @param message WebImage message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p3beta1.WebDetection.IWebImage, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a WebImage message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns WebImage
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p3beta1.WebDetection.WebImage;
+
+ /**
+ * Decodes a WebImage message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns WebImage
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p3beta1.WebDetection.WebImage;
+
+ /**
+ * Verifies a WebImage message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a WebImage message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns WebImage
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p3beta1.WebDetection.WebImage;
+
+ /**
+ * Creates a plain object from a WebImage message. Also converts values to other types if specified.
+ * @param message WebImage
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p3beta1.WebDetection.WebImage, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this WebImage to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for WebImage
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a WebPage. */
+ interface IWebPage {
+
+ /** WebPage url */
+ url?: (string|null);
+
+ /** WebPage score */
+ score?: (number|null);
+
+ /** WebPage pageTitle */
+ pageTitle?: (string|null);
+
+ /** WebPage fullMatchingImages */
+ fullMatchingImages?: (google.cloud.vision.v1p3beta1.WebDetection.IWebImage[]|null);
+
+ /** WebPage partialMatchingImages */
+ partialMatchingImages?: (google.cloud.vision.v1p3beta1.WebDetection.IWebImage[]|null);
+ }
+
+ /** Represents a WebPage. */
+ class WebPage implements IWebPage {
+
+ /**
+ * Constructs a new WebPage.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p3beta1.WebDetection.IWebPage);
+
+ /** WebPage url. */
+ public url: string;
+
+ /** WebPage score. */
+ public score: number;
+
+ /** WebPage pageTitle. */
+ public pageTitle: string;
+
+ /** WebPage fullMatchingImages. */
+ public fullMatchingImages: google.cloud.vision.v1p3beta1.WebDetection.IWebImage[];
+
+ /** WebPage partialMatchingImages. */
+ public partialMatchingImages: google.cloud.vision.v1p3beta1.WebDetection.IWebImage[];
+
+ /**
+ * Creates a new WebPage instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns WebPage instance
+ */
+ public static create(properties?: google.cloud.vision.v1p3beta1.WebDetection.IWebPage): google.cloud.vision.v1p3beta1.WebDetection.WebPage;
+
+ /**
+ * Encodes the specified WebPage message. Does not implicitly {@link google.cloud.vision.v1p3beta1.WebDetection.WebPage.verify|verify} messages.
+ * @param message WebPage message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p3beta1.WebDetection.IWebPage, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified WebPage message, length delimited. Does not implicitly {@link google.cloud.vision.v1p3beta1.WebDetection.WebPage.verify|verify} messages.
+ * @param message WebPage message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p3beta1.WebDetection.IWebPage, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a WebPage message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns WebPage
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p3beta1.WebDetection.WebPage;
+
+ /**
+ * Decodes a WebPage message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns WebPage
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p3beta1.WebDetection.WebPage;
+
+ /**
+ * Verifies a WebPage message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a WebPage message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns WebPage
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p3beta1.WebDetection.WebPage;
+
+ /**
+ * Creates a plain object from a WebPage message. Also converts values to other types if specified.
+ * @param message WebPage
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p3beta1.WebDetection.WebPage, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this WebPage to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for WebPage
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a WebLabel. */
+ interface IWebLabel {
+
+ /** WebLabel label */
+ label?: (string|null);
+
+ /** WebLabel languageCode */
+ languageCode?: (string|null);
+ }
+
+ /** Represents a WebLabel. */
+ class WebLabel implements IWebLabel {
+
+ /**
+ * Constructs a new WebLabel.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p3beta1.WebDetection.IWebLabel);
+
+ /** WebLabel label. */
+ public label: string;
+
+ /** WebLabel languageCode. */
+ public languageCode: string;
+
+ /**
+ * Creates a new WebLabel instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns WebLabel instance
+ */
+ public static create(properties?: google.cloud.vision.v1p3beta1.WebDetection.IWebLabel): google.cloud.vision.v1p3beta1.WebDetection.WebLabel;
+
+ /**
+ * Encodes the specified WebLabel message. Does not implicitly {@link google.cloud.vision.v1p3beta1.WebDetection.WebLabel.verify|verify} messages.
+ * @param message WebLabel message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p3beta1.WebDetection.IWebLabel, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified WebLabel message, length delimited. Does not implicitly {@link google.cloud.vision.v1p3beta1.WebDetection.WebLabel.verify|verify} messages.
+ * @param message WebLabel message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p3beta1.WebDetection.IWebLabel, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a WebLabel message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns WebLabel
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p3beta1.WebDetection.WebLabel;
+
+ /**
+ * Decodes a WebLabel message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns WebLabel
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p3beta1.WebDetection.WebLabel;
+
+ /**
+ * Verifies a WebLabel message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a WebLabel message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns WebLabel
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p3beta1.WebDetection.WebLabel;
+
+ /**
+ * Creates a plain object from a WebLabel message. Also converts values to other types if specified.
+ * @param message WebLabel
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p3beta1.WebDetection.WebLabel, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this WebLabel to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for WebLabel
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+ }
+ }
+
+ /** Namespace v1p4beta1. */
+ namespace v1p4beta1 {
+
+ /** Properties of a FaceRecognitionParams. */
+ interface IFaceRecognitionParams {
+
+ /** FaceRecognitionParams celebritySet */
+ celebritySet?: (string[]|null);
+ }
+
+ /** Represents a FaceRecognitionParams. */
+ class FaceRecognitionParams implements IFaceRecognitionParams {
+
+ /**
+ * Constructs a new FaceRecognitionParams.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p4beta1.IFaceRecognitionParams);
+
+ /** FaceRecognitionParams celebritySet. */
+ public celebritySet: string[];
+
+ /**
+ * Creates a new FaceRecognitionParams instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns FaceRecognitionParams instance
+ */
+ public static create(properties?: google.cloud.vision.v1p4beta1.IFaceRecognitionParams): google.cloud.vision.v1p4beta1.FaceRecognitionParams;
+
+ /**
+ * Encodes the specified FaceRecognitionParams message. Does not implicitly {@link google.cloud.vision.v1p4beta1.FaceRecognitionParams.verify|verify} messages.
+ * @param message FaceRecognitionParams message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p4beta1.IFaceRecognitionParams, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified FaceRecognitionParams message, length delimited. Does not implicitly {@link google.cloud.vision.v1p4beta1.FaceRecognitionParams.verify|verify} messages.
+ * @param message FaceRecognitionParams message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p4beta1.IFaceRecognitionParams, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a FaceRecognitionParams message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns FaceRecognitionParams
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p4beta1.FaceRecognitionParams;
+
+ /**
+ * Decodes a FaceRecognitionParams message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns FaceRecognitionParams
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p4beta1.FaceRecognitionParams;
+
+ /**
+ * Verifies a FaceRecognitionParams message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a FaceRecognitionParams message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns FaceRecognitionParams
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p4beta1.FaceRecognitionParams;
+
+ /**
+ * Creates a plain object from a FaceRecognitionParams message. Also converts values to other types if specified.
+ * @param message FaceRecognitionParams
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p4beta1.FaceRecognitionParams, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this FaceRecognitionParams to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for FaceRecognitionParams
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a Celebrity. */
+ interface ICelebrity {
+
+ /** Celebrity name */
+ name?: (string|null);
+
+ /** Celebrity displayName */
+ displayName?: (string|null);
+
+ /** Celebrity description */
+ description?: (string|null);
+ }
+
+ /** Represents a Celebrity. */
+ class Celebrity implements ICelebrity {
+
+ /**
+ * Constructs a new Celebrity.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p4beta1.ICelebrity);
+
+ /** Celebrity name. */
+ public name: string;
+
+ /** Celebrity displayName. */
+ public displayName: string;
+
+ /** Celebrity description. */
+ public description: string;
+
+ /**
+ * Creates a new Celebrity instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Celebrity instance
+ */
+ public static create(properties?: google.cloud.vision.v1p4beta1.ICelebrity): google.cloud.vision.v1p4beta1.Celebrity;
+
+ /**
+ * Encodes the specified Celebrity message. Does not implicitly {@link google.cloud.vision.v1p4beta1.Celebrity.verify|verify} messages.
+ * @param message Celebrity message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p4beta1.ICelebrity, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Celebrity message, length delimited. Does not implicitly {@link google.cloud.vision.v1p4beta1.Celebrity.verify|verify} messages.
+ * @param message Celebrity message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p4beta1.ICelebrity, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Celebrity message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Celebrity
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p4beta1.Celebrity;
+
+ /**
+ * Decodes a Celebrity message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Celebrity
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p4beta1.Celebrity;
+
+ /**
+ * Verifies a Celebrity message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a Celebrity message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Celebrity
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p4beta1.Celebrity;
+
+ /**
+ * Creates a plain object from a Celebrity message. Also converts values to other types if specified.
+ * @param message Celebrity
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p4beta1.Celebrity, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Celebrity to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Celebrity
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a FaceRecognitionResult. */
+ interface IFaceRecognitionResult {
+
+ /** FaceRecognitionResult celebrity */
+ celebrity?: (google.cloud.vision.v1p4beta1.ICelebrity|null);
+
+ /** FaceRecognitionResult confidence */
+ confidence?: (number|null);
+ }
+
+ /** Represents a FaceRecognitionResult. */
+ class FaceRecognitionResult implements IFaceRecognitionResult {
+
+ /**
+ * Constructs a new FaceRecognitionResult.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p4beta1.IFaceRecognitionResult);
+
+ /** FaceRecognitionResult celebrity. */
+ public celebrity?: (google.cloud.vision.v1p4beta1.ICelebrity|null);
+
+ /** FaceRecognitionResult confidence. */
+ public confidence: number;
+
+ /**
+ * Creates a new FaceRecognitionResult instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns FaceRecognitionResult instance
+ */
+ public static create(properties?: google.cloud.vision.v1p4beta1.IFaceRecognitionResult): google.cloud.vision.v1p4beta1.FaceRecognitionResult;
+
+ /**
+ * Encodes the specified FaceRecognitionResult message. Does not implicitly {@link google.cloud.vision.v1p4beta1.FaceRecognitionResult.verify|verify} messages.
+ * @param message FaceRecognitionResult message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p4beta1.IFaceRecognitionResult, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified FaceRecognitionResult message, length delimited. Does not implicitly {@link google.cloud.vision.v1p4beta1.FaceRecognitionResult.verify|verify} messages.
+ * @param message FaceRecognitionResult message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p4beta1.IFaceRecognitionResult, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a FaceRecognitionResult message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns FaceRecognitionResult
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p4beta1.FaceRecognitionResult;
+
+ /**
+ * Decodes a FaceRecognitionResult message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns FaceRecognitionResult
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p4beta1.FaceRecognitionResult;
+
+ /**
+ * Verifies a FaceRecognitionResult message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a FaceRecognitionResult message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns FaceRecognitionResult
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p4beta1.FaceRecognitionResult;
+
+ /**
+ * Creates a plain object from a FaceRecognitionResult message. Also converts values to other types if specified.
+ * @param message FaceRecognitionResult
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p4beta1.FaceRecognitionResult, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this FaceRecognitionResult to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for FaceRecognitionResult
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a Vertex. */
+ interface IVertex {
+
+ /** Vertex x */
+ x?: (number|null);
+
+ /** Vertex y */
+ y?: (number|null);
+ }
+
+ /** Represents a Vertex. */
+ class Vertex implements IVertex {
+
+ /**
+ * Constructs a new Vertex.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p4beta1.IVertex);
+
+ /** Vertex x. */
+ public x: number;
+
+ /** Vertex y. */
+ public y: number;
+
+ /**
+ * Creates a new Vertex instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Vertex instance
+ */
+ public static create(properties?: google.cloud.vision.v1p4beta1.IVertex): google.cloud.vision.v1p4beta1.Vertex;
+
+ /**
+ * Encodes the specified Vertex message. Does not implicitly {@link google.cloud.vision.v1p4beta1.Vertex.verify|verify} messages.
+ * @param message Vertex message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p4beta1.IVertex, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Vertex message, length delimited. Does not implicitly {@link google.cloud.vision.v1p4beta1.Vertex.verify|verify} messages.
+ * @param message Vertex message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p4beta1.IVertex, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Vertex message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Vertex
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p4beta1.Vertex;
+
+ /**
+ * Decodes a Vertex message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Vertex
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p4beta1.Vertex;
+
+ /**
+ * Verifies a Vertex message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a Vertex message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Vertex
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p4beta1.Vertex;
+
+ /**
+ * Creates a plain object from a Vertex message. Also converts values to other types if specified.
+ * @param message Vertex
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p4beta1.Vertex, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Vertex to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Vertex
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a NormalizedVertex. */
+ interface INormalizedVertex {
+
+ /** NormalizedVertex x */
+ x?: (number|null);
+
+ /** NormalizedVertex y */
+ y?: (number|null);
+ }
+
+ /** Represents a NormalizedVertex. */
+ class NormalizedVertex implements INormalizedVertex {
+
+ /**
+ * Constructs a new NormalizedVertex.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p4beta1.INormalizedVertex);
+
+ /** NormalizedVertex x. */
+ public x: number;
+
+ /** NormalizedVertex y. */
+ public y: number;
+
+ /**
+ * Creates a new NormalizedVertex instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns NormalizedVertex instance
+ */
+ public static create(properties?: google.cloud.vision.v1p4beta1.INormalizedVertex): google.cloud.vision.v1p4beta1.NormalizedVertex;
+
+ /**
+ * Encodes the specified NormalizedVertex message. Does not implicitly {@link google.cloud.vision.v1p4beta1.NormalizedVertex.verify|verify} messages.
+ * @param message NormalizedVertex message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p4beta1.INormalizedVertex, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified NormalizedVertex message, length delimited. Does not implicitly {@link google.cloud.vision.v1p4beta1.NormalizedVertex.verify|verify} messages.
+ * @param message NormalizedVertex message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p4beta1.INormalizedVertex, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a NormalizedVertex message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns NormalizedVertex
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p4beta1.NormalizedVertex;
+
+ /**
+ * Decodes a NormalizedVertex message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns NormalizedVertex
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p4beta1.NormalizedVertex;
+
+ /**
+ * Verifies a NormalizedVertex message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a NormalizedVertex message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns NormalizedVertex
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p4beta1.NormalizedVertex;
+
+ /**
+ * Creates a plain object from a NormalizedVertex message. Also converts values to other types if specified.
+ * @param message NormalizedVertex
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p4beta1.NormalizedVertex, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this NormalizedVertex to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for NormalizedVertex
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a BoundingPoly. */
+ interface IBoundingPoly {
+
+ /** BoundingPoly vertices */
+ vertices?: (google.cloud.vision.v1p4beta1.IVertex[]|null);
+
+ /** BoundingPoly normalizedVertices */
+ normalizedVertices?: (google.cloud.vision.v1p4beta1.INormalizedVertex[]|null);
+ }
+
+ /** Represents a BoundingPoly. */
+ class BoundingPoly implements IBoundingPoly {
+
+ /**
+ * Constructs a new BoundingPoly.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p4beta1.IBoundingPoly);
+
+ /** BoundingPoly vertices. */
+ public vertices: google.cloud.vision.v1p4beta1.IVertex[];
+
+ /** BoundingPoly normalizedVertices. */
+ public normalizedVertices: google.cloud.vision.v1p4beta1.INormalizedVertex[];
+
+ /**
+ * Creates a new BoundingPoly instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns BoundingPoly instance
+ */
+ public static create(properties?: google.cloud.vision.v1p4beta1.IBoundingPoly): google.cloud.vision.v1p4beta1.BoundingPoly;
+
+ /**
+ * Encodes the specified BoundingPoly message. Does not implicitly {@link google.cloud.vision.v1p4beta1.BoundingPoly.verify|verify} messages.
+ * @param message BoundingPoly message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p4beta1.IBoundingPoly, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified BoundingPoly message, length delimited. Does not implicitly {@link google.cloud.vision.v1p4beta1.BoundingPoly.verify|verify} messages.
+ * @param message BoundingPoly message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p4beta1.IBoundingPoly, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a BoundingPoly message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns BoundingPoly
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p4beta1.BoundingPoly;
+
+ /**
+ * Decodes a BoundingPoly message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns BoundingPoly
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p4beta1.BoundingPoly;
+
+ /**
+ * Verifies a BoundingPoly message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a BoundingPoly message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns BoundingPoly
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p4beta1.BoundingPoly;
+
+ /**
+ * Creates a plain object from a BoundingPoly message. Also converts values to other types if specified.
+ * @param message BoundingPoly
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p4beta1.BoundingPoly, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this BoundingPoly to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for BoundingPoly
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a Position. */
+ interface IPosition {
+
+ /** Position x */
+ x?: (number|null);
+
+ /** Position y */
+ y?: (number|null);
+
+ /** Position z */
+ z?: (number|null);
+ }
+
+ /** Represents a Position. */
+ class Position implements IPosition {
+
+ /**
+ * Constructs a new Position.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p4beta1.IPosition);
+
+ /** Position x. */
+ public x: number;
+
+ /** Position y. */
+ public y: number;
+
+ /** Position z. */
+ public z: number;
+
+ /**
+ * Creates a new Position instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Position instance
+ */
+ public static create(properties?: google.cloud.vision.v1p4beta1.IPosition): google.cloud.vision.v1p4beta1.Position;
+
+ /**
+ * Encodes the specified Position message. Does not implicitly {@link google.cloud.vision.v1p4beta1.Position.verify|verify} messages.
+ * @param message Position message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p4beta1.IPosition, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Position message, length delimited. Does not implicitly {@link google.cloud.vision.v1p4beta1.Position.verify|verify} messages.
+ * @param message Position message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p4beta1.IPosition, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Position message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Position
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p4beta1.Position;
+
+ /**
+ * Decodes a Position message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Position
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p4beta1.Position;
+
+ /**
+ * Verifies a Position message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a Position message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Position
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p4beta1.Position;
+
+ /**
+ * Creates a plain object from a Position message. Also converts values to other types if specified.
+ * @param message Position
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p4beta1.Position, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Position to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Position
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Represents an ImageAnnotator */
+ class ImageAnnotator extends $protobuf.rpc.Service {
+
+ /**
+ * Constructs a new ImageAnnotator 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 ImageAnnotator 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): ImageAnnotator;
+
+ /**
+ * Calls BatchAnnotateImages.
+ * @param request BatchAnnotateImagesRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and BatchAnnotateImagesResponse
+ */
+ public batchAnnotateImages(request: google.cloud.vision.v1p4beta1.IBatchAnnotateImagesRequest, callback: google.cloud.vision.v1p4beta1.ImageAnnotator.BatchAnnotateImagesCallback): void;
+
+ /**
+ * Calls BatchAnnotateImages.
+ * @param request BatchAnnotateImagesRequest message or plain object
+ * @returns Promise
+ */
+ public batchAnnotateImages(request: google.cloud.vision.v1p4beta1.IBatchAnnotateImagesRequest): Promise;
+
+ /**
+ * Calls BatchAnnotateFiles.
+ * @param request BatchAnnotateFilesRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and BatchAnnotateFilesResponse
+ */
+ public batchAnnotateFiles(request: google.cloud.vision.v1p4beta1.IBatchAnnotateFilesRequest, callback: google.cloud.vision.v1p4beta1.ImageAnnotator.BatchAnnotateFilesCallback): void;
+
+ /**
+ * Calls BatchAnnotateFiles.
+ * @param request BatchAnnotateFilesRequest message or plain object
+ * @returns Promise
+ */
+ public batchAnnotateFiles(request: google.cloud.vision.v1p4beta1.IBatchAnnotateFilesRequest): Promise;
+
+ /**
+ * Calls AsyncBatchAnnotateImages.
+ * @param request AsyncBatchAnnotateImagesRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Operation
+ */
+ public asyncBatchAnnotateImages(request: google.cloud.vision.v1p4beta1.IAsyncBatchAnnotateImagesRequest, callback: google.cloud.vision.v1p4beta1.ImageAnnotator.AsyncBatchAnnotateImagesCallback): void;
+
+ /**
+ * Calls AsyncBatchAnnotateImages.
+ * @param request AsyncBatchAnnotateImagesRequest message or plain object
+ * @returns Promise
+ */
+ public asyncBatchAnnotateImages(request: google.cloud.vision.v1p4beta1.IAsyncBatchAnnotateImagesRequest): Promise;
+
+ /**
+ * Calls AsyncBatchAnnotateFiles.
+ * @param request AsyncBatchAnnotateFilesRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Operation
+ */
+ public asyncBatchAnnotateFiles(request: google.cloud.vision.v1p4beta1.IAsyncBatchAnnotateFilesRequest, callback: google.cloud.vision.v1p4beta1.ImageAnnotator.AsyncBatchAnnotateFilesCallback): void;
+
+ /**
+ * Calls AsyncBatchAnnotateFiles.
+ * @param request AsyncBatchAnnotateFilesRequest message or plain object
+ * @returns Promise
+ */
+ public asyncBatchAnnotateFiles(request: google.cloud.vision.v1p4beta1.IAsyncBatchAnnotateFilesRequest): Promise;
+ }
+
+ namespace ImageAnnotator {
+
+ /**
+ * Callback as used by {@link google.cloud.vision.v1p4beta1.ImageAnnotator|batchAnnotateImages}.
+ * @param error Error, if any
+ * @param [response] BatchAnnotateImagesResponse
+ */
+ type BatchAnnotateImagesCallback = (error: (Error|null), response?: google.cloud.vision.v1p4beta1.BatchAnnotateImagesResponse) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.vision.v1p4beta1.ImageAnnotator|batchAnnotateFiles}.
+ * @param error Error, if any
+ * @param [response] BatchAnnotateFilesResponse
+ */
+ type BatchAnnotateFilesCallback = (error: (Error|null), response?: google.cloud.vision.v1p4beta1.BatchAnnotateFilesResponse) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.vision.v1p4beta1.ImageAnnotator|asyncBatchAnnotateImages}.
+ * @param error Error, if any
+ * @param [response] Operation
+ */
+ type AsyncBatchAnnotateImagesCallback = (error: (Error|null), response?: google.longrunning.Operation) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.vision.v1p4beta1.ImageAnnotator|asyncBatchAnnotateFiles}.
+ * @param error Error, if any
+ * @param [response] Operation
+ */
+ type AsyncBatchAnnotateFilesCallback = (error: (Error|null), response?: google.longrunning.Operation) => void;
+ }
+
+ /** Properties of a Feature. */
+ interface IFeature {
+
+ /** Feature type */
+ type?: (google.cloud.vision.v1p4beta1.Feature.Type|keyof typeof google.cloud.vision.v1p4beta1.Feature.Type|null);
+
+ /** Feature maxResults */
+ maxResults?: (number|null);
+
+ /** Feature model */
+ model?: (string|null);
+ }
+
+ /** Represents a Feature. */
+ class Feature implements IFeature {
+
+ /**
+ * Constructs a new Feature.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p4beta1.IFeature);
+
+ /** Feature type. */
+ public type: (google.cloud.vision.v1p4beta1.Feature.Type|keyof typeof google.cloud.vision.v1p4beta1.Feature.Type);
+
+ /** Feature maxResults. */
+ public maxResults: number;
+
+ /** Feature model. */
+ public model: string;
+
+ /**
+ * Creates a new Feature instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Feature instance
+ */
+ public static create(properties?: google.cloud.vision.v1p4beta1.IFeature): google.cloud.vision.v1p4beta1.Feature;
+
+ /**
+ * Encodes the specified Feature message. Does not implicitly {@link google.cloud.vision.v1p4beta1.Feature.verify|verify} messages.
+ * @param message Feature message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p4beta1.IFeature, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Feature message, length delimited. Does not implicitly {@link google.cloud.vision.v1p4beta1.Feature.verify|verify} messages.
+ * @param message Feature message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p4beta1.IFeature, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Feature message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Feature
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p4beta1.Feature;
+
+ /**
+ * Decodes a Feature message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Feature
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p4beta1.Feature;
+
+ /**
+ * Verifies a Feature message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a Feature message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Feature
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p4beta1.Feature;
+
+ /**
+ * Creates a plain object from a Feature message. Also converts values to other types if specified.
+ * @param message Feature
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p4beta1.Feature, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Feature to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Feature
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace Feature {
+
+ /** Type enum. */
+ enum Type {
+ TYPE_UNSPECIFIED = 0,
+ FACE_DETECTION = 1,
+ LANDMARK_DETECTION = 2,
+ LOGO_DETECTION = 3,
+ LABEL_DETECTION = 4,
+ TEXT_DETECTION = 5,
+ DOCUMENT_TEXT_DETECTION = 11,
+ SAFE_SEARCH_DETECTION = 6,
+ IMAGE_PROPERTIES = 7,
+ CROP_HINTS = 9,
+ WEB_DETECTION = 10,
+ PRODUCT_SEARCH = 12,
+ OBJECT_LOCALIZATION = 19
+ }
+ }
+
+ /** Properties of an ImageSource. */
+ interface IImageSource {
+
+ /** ImageSource gcsImageUri */
+ gcsImageUri?: (string|null);
+
+ /** ImageSource imageUri */
+ imageUri?: (string|null);
+ }
+
+ /** Represents an ImageSource. */
+ class ImageSource implements IImageSource {
+
+ /**
+ * Constructs a new ImageSource.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p4beta1.IImageSource);
+
+ /** ImageSource gcsImageUri. */
+ public gcsImageUri: string;
+
+ /** ImageSource imageUri. */
+ public imageUri: string;
+
+ /**
+ * Creates a new ImageSource instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ImageSource instance
+ */
+ public static create(properties?: google.cloud.vision.v1p4beta1.IImageSource): google.cloud.vision.v1p4beta1.ImageSource;
+
+ /**
+ * Encodes the specified ImageSource message. Does not implicitly {@link google.cloud.vision.v1p4beta1.ImageSource.verify|verify} messages.
+ * @param message ImageSource message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p4beta1.IImageSource, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ImageSource message, length delimited. Does not implicitly {@link google.cloud.vision.v1p4beta1.ImageSource.verify|verify} messages.
+ * @param message ImageSource message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p4beta1.IImageSource, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an ImageSource message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ImageSource
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p4beta1.ImageSource;
+
+ /**
+ * Decodes an ImageSource message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ImageSource
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p4beta1.ImageSource;
+
+ /**
+ * Verifies an ImageSource message.
+ * @param message Plain 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 ImageSource message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ImageSource
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p4beta1.ImageSource;
+
+ /**
+ * Creates a plain object from an ImageSource message. Also converts values to other types if specified.
+ * @param message ImageSource
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p4beta1.ImageSource, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ImageSource to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ImageSource
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an Image. */
+ interface IImage {
+
+ /** Image content */
+ content?: (Uint8Array|string|null);
+
+ /** Image source */
+ source?: (google.cloud.vision.v1p4beta1.IImageSource|null);
+ }
+
+ /** Represents an Image. */
+ class Image implements IImage {
+
+ /**
+ * Constructs a new Image.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p4beta1.IImage);
+
+ /** Image content. */
+ public content: (Uint8Array|string);
+
+ /** Image source. */
+ public source?: (google.cloud.vision.v1p4beta1.IImageSource|null);
+
+ /**
+ * Creates a new Image instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Image instance
+ */
+ public static create(properties?: google.cloud.vision.v1p4beta1.IImage): google.cloud.vision.v1p4beta1.Image;
+
+ /**
+ * Encodes the specified Image message. Does not implicitly {@link google.cloud.vision.v1p4beta1.Image.verify|verify} messages.
+ * @param message Image message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p4beta1.IImage, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Image message, length delimited. Does not implicitly {@link google.cloud.vision.v1p4beta1.Image.verify|verify} messages.
+ * @param message Image message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p4beta1.IImage, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an Image message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Image
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p4beta1.Image;
+
+ /**
+ * Decodes an Image message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Image
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p4beta1.Image;
+
+ /**
+ * Verifies an Image message.
+ * @param message Plain 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 Image message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Image
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p4beta1.Image;
+
+ /**
+ * Creates a plain object from an Image message. Also converts values to other types if specified.
+ * @param message Image
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p4beta1.Image, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Image to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Image
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Likelihood enum. */
+ enum Likelihood {
+ UNKNOWN = 0,
+ VERY_UNLIKELY = 1,
+ UNLIKELY = 2,
+ POSSIBLE = 3,
+ LIKELY = 4,
+ VERY_LIKELY = 5
+ }
+
+ /** Properties of a FaceAnnotation. */
+ interface IFaceAnnotation {
+
+ /** FaceAnnotation boundingPoly */
+ boundingPoly?: (google.cloud.vision.v1p4beta1.IBoundingPoly|null);
+
+ /** FaceAnnotation fdBoundingPoly */
+ fdBoundingPoly?: (google.cloud.vision.v1p4beta1.IBoundingPoly|null);
+
+ /** FaceAnnotation landmarks */
+ landmarks?: (google.cloud.vision.v1p4beta1.FaceAnnotation.ILandmark[]|null);
+
+ /** FaceAnnotation rollAngle */
+ rollAngle?: (number|null);
+
+ /** FaceAnnotation panAngle */
+ panAngle?: (number|null);
+
+ /** FaceAnnotation tiltAngle */
+ tiltAngle?: (number|null);
+
+ /** FaceAnnotation detectionConfidence */
+ detectionConfidence?: (number|null);
+
+ /** FaceAnnotation landmarkingConfidence */
+ landmarkingConfidence?: (number|null);
+
+ /** FaceAnnotation joyLikelihood */
+ joyLikelihood?: (google.cloud.vision.v1p4beta1.Likelihood|keyof typeof google.cloud.vision.v1p4beta1.Likelihood|null);
+
+ /** FaceAnnotation sorrowLikelihood */
+ sorrowLikelihood?: (google.cloud.vision.v1p4beta1.Likelihood|keyof typeof google.cloud.vision.v1p4beta1.Likelihood|null);
+
+ /** FaceAnnotation angerLikelihood */
+ angerLikelihood?: (google.cloud.vision.v1p4beta1.Likelihood|keyof typeof google.cloud.vision.v1p4beta1.Likelihood|null);
+
+ /** FaceAnnotation surpriseLikelihood */
+ surpriseLikelihood?: (google.cloud.vision.v1p4beta1.Likelihood|keyof typeof google.cloud.vision.v1p4beta1.Likelihood|null);
+
+ /** FaceAnnotation underExposedLikelihood */
+ underExposedLikelihood?: (google.cloud.vision.v1p4beta1.Likelihood|keyof typeof google.cloud.vision.v1p4beta1.Likelihood|null);
+
+ /** FaceAnnotation blurredLikelihood */
+ blurredLikelihood?: (google.cloud.vision.v1p4beta1.Likelihood|keyof typeof google.cloud.vision.v1p4beta1.Likelihood|null);
+
+ /** FaceAnnotation headwearLikelihood */
+ headwearLikelihood?: (google.cloud.vision.v1p4beta1.Likelihood|keyof typeof google.cloud.vision.v1p4beta1.Likelihood|null);
+
+ /** FaceAnnotation recognitionResult */
+ recognitionResult?: (google.cloud.vision.v1p4beta1.IFaceRecognitionResult[]|null);
+ }
+
+ /** Represents a FaceAnnotation. */
+ class FaceAnnotation implements IFaceAnnotation {
+
+ /**
+ * Constructs a new FaceAnnotation.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p4beta1.IFaceAnnotation);
+
+ /** FaceAnnotation boundingPoly. */
+ public boundingPoly?: (google.cloud.vision.v1p4beta1.IBoundingPoly|null);
+
+ /** FaceAnnotation fdBoundingPoly. */
+ public fdBoundingPoly?: (google.cloud.vision.v1p4beta1.IBoundingPoly|null);
+
+ /** FaceAnnotation landmarks. */
+ public landmarks: google.cloud.vision.v1p4beta1.FaceAnnotation.ILandmark[];
+
+ /** FaceAnnotation rollAngle. */
+ public rollAngle: number;
+
+ /** FaceAnnotation panAngle. */
+ public panAngle: number;
+
+ /** FaceAnnotation tiltAngle. */
+ public tiltAngle: number;
+
+ /** FaceAnnotation detectionConfidence. */
+ public detectionConfidence: number;
+
+ /** FaceAnnotation landmarkingConfidence. */
+ public landmarkingConfidence: number;
+
+ /** FaceAnnotation joyLikelihood. */
+ public joyLikelihood: (google.cloud.vision.v1p4beta1.Likelihood|keyof typeof google.cloud.vision.v1p4beta1.Likelihood);
+
+ /** FaceAnnotation sorrowLikelihood. */
+ public sorrowLikelihood: (google.cloud.vision.v1p4beta1.Likelihood|keyof typeof google.cloud.vision.v1p4beta1.Likelihood);
+
+ /** FaceAnnotation angerLikelihood. */
+ public angerLikelihood: (google.cloud.vision.v1p4beta1.Likelihood|keyof typeof google.cloud.vision.v1p4beta1.Likelihood);
+
+ /** FaceAnnotation surpriseLikelihood. */
+ public surpriseLikelihood: (google.cloud.vision.v1p4beta1.Likelihood|keyof typeof google.cloud.vision.v1p4beta1.Likelihood);
+
+ /** FaceAnnotation underExposedLikelihood. */
+ public underExposedLikelihood: (google.cloud.vision.v1p4beta1.Likelihood|keyof typeof google.cloud.vision.v1p4beta1.Likelihood);
+
+ /** FaceAnnotation blurredLikelihood. */
+ public blurredLikelihood: (google.cloud.vision.v1p4beta1.Likelihood|keyof typeof google.cloud.vision.v1p4beta1.Likelihood);
+
+ /** FaceAnnotation headwearLikelihood. */
+ public headwearLikelihood: (google.cloud.vision.v1p4beta1.Likelihood|keyof typeof google.cloud.vision.v1p4beta1.Likelihood);
+
+ /** FaceAnnotation recognitionResult. */
+ public recognitionResult: google.cloud.vision.v1p4beta1.IFaceRecognitionResult[];
+
+ /**
+ * Creates a new FaceAnnotation instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns FaceAnnotation instance
+ */
+ public static create(properties?: google.cloud.vision.v1p4beta1.IFaceAnnotation): google.cloud.vision.v1p4beta1.FaceAnnotation;
+
+ /**
+ * Encodes the specified FaceAnnotation message. Does not implicitly {@link google.cloud.vision.v1p4beta1.FaceAnnotation.verify|verify} messages.
+ * @param message FaceAnnotation message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p4beta1.IFaceAnnotation, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified FaceAnnotation message, length delimited. Does not implicitly {@link google.cloud.vision.v1p4beta1.FaceAnnotation.verify|verify} messages.
+ * @param message FaceAnnotation message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p4beta1.IFaceAnnotation, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a FaceAnnotation message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns FaceAnnotation
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p4beta1.FaceAnnotation;
+
+ /**
+ * Decodes a FaceAnnotation message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns FaceAnnotation
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p4beta1.FaceAnnotation;
+
+ /**
+ * Verifies a FaceAnnotation message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a FaceAnnotation message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns FaceAnnotation
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p4beta1.FaceAnnotation;
+
+ /**
+ * Creates a plain object from a FaceAnnotation message. Also converts values to other types if specified.
+ * @param message FaceAnnotation
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p4beta1.FaceAnnotation, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this FaceAnnotation to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for FaceAnnotation
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace FaceAnnotation {
+
+ /** Properties of a Landmark. */
+ interface ILandmark {
+
+ /** Landmark type */
+ type?: (google.cloud.vision.v1p4beta1.FaceAnnotation.Landmark.Type|keyof typeof google.cloud.vision.v1p4beta1.FaceAnnotation.Landmark.Type|null);
+
+ /** Landmark position */
+ position?: (google.cloud.vision.v1p4beta1.IPosition|null);
+ }
+
+ /** Represents a Landmark. */
+ class Landmark implements ILandmark {
+
+ /**
+ * Constructs a new Landmark.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p4beta1.FaceAnnotation.ILandmark);
+
+ /** Landmark type. */
+ public type: (google.cloud.vision.v1p4beta1.FaceAnnotation.Landmark.Type|keyof typeof google.cloud.vision.v1p4beta1.FaceAnnotation.Landmark.Type);
+
+ /** Landmark position. */
+ public position?: (google.cloud.vision.v1p4beta1.IPosition|null);
+
+ /**
+ * Creates a new Landmark instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Landmark instance
+ */
+ public static create(properties?: google.cloud.vision.v1p4beta1.FaceAnnotation.ILandmark): google.cloud.vision.v1p4beta1.FaceAnnotation.Landmark;
+
+ /**
+ * Encodes the specified Landmark message. Does not implicitly {@link google.cloud.vision.v1p4beta1.FaceAnnotation.Landmark.verify|verify} messages.
+ * @param message Landmark message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p4beta1.FaceAnnotation.ILandmark, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Landmark message, length delimited. Does not implicitly {@link google.cloud.vision.v1p4beta1.FaceAnnotation.Landmark.verify|verify} messages.
+ * @param message Landmark message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p4beta1.FaceAnnotation.ILandmark, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Landmark message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Landmark
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p4beta1.FaceAnnotation.Landmark;
+
+ /**
+ * Decodes a Landmark message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Landmark
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p4beta1.FaceAnnotation.Landmark;
+
+ /**
+ * Verifies a Landmark message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a Landmark message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Landmark
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p4beta1.FaceAnnotation.Landmark;
+
+ /**
+ * Creates a plain object from a Landmark message. Also converts values to other types if specified.
+ * @param message Landmark
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p4beta1.FaceAnnotation.Landmark, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Landmark to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Landmark
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace Landmark {
+
+ /** Type enum. */
+ enum Type {
+ UNKNOWN_LANDMARK = 0,
+ LEFT_EYE = 1,
+ RIGHT_EYE = 2,
+ LEFT_OF_LEFT_EYEBROW = 3,
+ RIGHT_OF_LEFT_EYEBROW = 4,
+ LEFT_OF_RIGHT_EYEBROW = 5,
+ RIGHT_OF_RIGHT_EYEBROW = 6,
+ MIDPOINT_BETWEEN_EYES = 7,
+ NOSE_TIP = 8,
+ UPPER_LIP = 9,
+ LOWER_LIP = 10,
+ MOUTH_LEFT = 11,
+ MOUTH_RIGHT = 12,
+ MOUTH_CENTER = 13,
+ NOSE_BOTTOM_RIGHT = 14,
+ NOSE_BOTTOM_LEFT = 15,
+ NOSE_BOTTOM_CENTER = 16,
+ LEFT_EYE_TOP_BOUNDARY = 17,
+ LEFT_EYE_RIGHT_CORNER = 18,
+ LEFT_EYE_BOTTOM_BOUNDARY = 19,
+ LEFT_EYE_LEFT_CORNER = 20,
+ RIGHT_EYE_TOP_BOUNDARY = 21,
+ RIGHT_EYE_RIGHT_CORNER = 22,
+ RIGHT_EYE_BOTTOM_BOUNDARY = 23,
+ RIGHT_EYE_LEFT_CORNER = 24,
+ LEFT_EYEBROW_UPPER_MIDPOINT = 25,
+ RIGHT_EYEBROW_UPPER_MIDPOINT = 26,
+ LEFT_EAR_TRAGION = 27,
+ RIGHT_EAR_TRAGION = 28,
+ LEFT_EYE_PUPIL = 29,
+ RIGHT_EYE_PUPIL = 30,
+ FOREHEAD_GLABELLA = 31,
+ CHIN_GNATHION = 32,
+ CHIN_LEFT_GONION = 33,
+ CHIN_RIGHT_GONION = 34
+ }
+ }
+ }
+
+ /** Properties of a LocationInfo. */
+ interface ILocationInfo {
+
+ /** LocationInfo latLng */
+ latLng?: (google.type.ILatLng|null);
+ }
+
+ /** Represents a LocationInfo. */
+ class LocationInfo implements ILocationInfo {
+
+ /**
+ * Constructs a new LocationInfo.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p4beta1.ILocationInfo);
+
+ /** LocationInfo latLng. */
+ public latLng?: (google.type.ILatLng|null);
+
+ /**
+ * Creates a new LocationInfo instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns LocationInfo instance
+ */
+ public static create(properties?: google.cloud.vision.v1p4beta1.ILocationInfo): google.cloud.vision.v1p4beta1.LocationInfo;
+
+ /**
+ * Encodes the specified LocationInfo message. Does not implicitly {@link google.cloud.vision.v1p4beta1.LocationInfo.verify|verify} messages.
+ * @param message LocationInfo message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p4beta1.ILocationInfo, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified LocationInfo message, length delimited. Does not implicitly {@link google.cloud.vision.v1p4beta1.LocationInfo.verify|verify} messages.
+ * @param message LocationInfo message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p4beta1.ILocationInfo, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a LocationInfo message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns LocationInfo
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p4beta1.LocationInfo;
+
+ /**
+ * Decodes a LocationInfo message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns LocationInfo
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p4beta1.LocationInfo;
+
+ /**
+ * Verifies a LocationInfo message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a LocationInfo message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns LocationInfo
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p4beta1.LocationInfo;
+
+ /**
+ * Creates a plain object from a LocationInfo message. Also converts values to other types if specified.
+ * @param message LocationInfo
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p4beta1.LocationInfo, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this LocationInfo to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for LocationInfo
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a Property. */
+ interface IProperty {
+
+ /** Property name */
+ name?: (string|null);
+
+ /** Property value */
+ value?: (string|null);
+
+ /** Property uint64Value */
+ uint64Value?: (number|Long|string|null);
+ }
+
+ /** Represents a Property. */
+ class Property implements IProperty {
+
+ /**
+ * Constructs a new Property.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p4beta1.IProperty);
+
+ /** Property name. */
+ public name: string;
+
+ /** Property value. */
+ public value: string;
+
+ /** Property uint64Value. */
+ public uint64Value: (number|Long|string);
+
+ /**
+ * Creates a new Property instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Property instance
+ */
+ public static create(properties?: google.cloud.vision.v1p4beta1.IProperty): google.cloud.vision.v1p4beta1.Property;
+
+ /**
+ * Encodes the specified Property message. Does not implicitly {@link google.cloud.vision.v1p4beta1.Property.verify|verify} messages.
+ * @param message Property message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p4beta1.IProperty, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Property message, length delimited. Does not implicitly {@link google.cloud.vision.v1p4beta1.Property.verify|verify} messages.
+ * @param message Property message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p4beta1.IProperty, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Property message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Property
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p4beta1.Property;
+
+ /**
+ * Decodes a Property message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Property
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p4beta1.Property;
+
+ /**
+ * Verifies a Property message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a Property message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Property
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p4beta1.Property;
+
+ /**
+ * Creates a plain object from a Property message. Also converts values to other types if specified.
+ * @param message Property
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p4beta1.Property, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Property to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Property
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an EntityAnnotation. */
+ interface IEntityAnnotation {
+
+ /** EntityAnnotation mid */
+ mid?: (string|null);
+
+ /** EntityAnnotation locale */
+ locale?: (string|null);
+
+ /** EntityAnnotation description */
+ description?: (string|null);
+
+ /** EntityAnnotation score */
+ score?: (number|null);
+
+ /** EntityAnnotation confidence */
+ confidence?: (number|null);
+
+ /** EntityAnnotation topicality */
+ topicality?: (number|null);
+
+ /** EntityAnnotation boundingPoly */
+ boundingPoly?: (google.cloud.vision.v1p4beta1.IBoundingPoly|null);
+
+ /** EntityAnnotation locations */
+ locations?: (google.cloud.vision.v1p4beta1.ILocationInfo[]|null);
+
+ /** EntityAnnotation properties */
+ properties?: (google.cloud.vision.v1p4beta1.IProperty[]|null);
+ }
+
+ /** Represents an EntityAnnotation. */
+ class EntityAnnotation implements IEntityAnnotation {
+
+ /**
+ * Constructs a new EntityAnnotation.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p4beta1.IEntityAnnotation);
+
+ /** EntityAnnotation mid. */
+ public mid: string;
+
+ /** EntityAnnotation locale. */
+ public locale: string;
+
+ /** EntityAnnotation description. */
+ public description: string;
+
+ /** EntityAnnotation score. */
+ public score: number;
+
+ /** EntityAnnotation confidence. */
+ public confidence: number;
+
+ /** EntityAnnotation topicality. */
+ public topicality: number;
+
+ /** EntityAnnotation boundingPoly. */
+ public boundingPoly?: (google.cloud.vision.v1p4beta1.IBoundingPoly|null);
+
+ /** EntityAnnotation locations. */
+ public locations: google.cloud.vision.v1p4beta1.ILocationInfo[];
+
+ /** EntityAnnotation properties. */
+ public properties: google.cloud.vision.v1p4beta1.IProperty[];
+
+ /**
+ * Creates a new EntityAnnotation instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns EntityAnnotation instance
+ */
+ public static create(properties?: google.cloud.vision.v1p4beta1.IEntityAnnotation): google.cloud.vision.v1p4beta1.EntityAnnotation;
+
+ /**
+ * Encodes the specified EntityAnnotation message. Does not implicitly {@link google.cloud.vision.v1p4beta1.EntityAnnotation.verify|verify} messages.
+ * @param message EntityAnnotation message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p4beta1.IEntityAnnotation, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified EntityAnnotation message, length delimited. Does not implicitly {@link google.cloud.vision.v1p4beta1.EntityAnnotation.verify|verify} messages.
+ * @param message EntityAnnotation message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p4beta1.IEntityAnnotation, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an EntityAnnotation message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns EntityAnnotation
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p4beta1.EntityAnnotation;
+
+ /**
+ * Decodes an EntityAnnotation message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns EntityAnnotation
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p4beta1.EntityAnnotation;
+
+ /**
+ * Verifies an EntityAnnotation message.
+ * @param message Plain 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 EntityAnnotation message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns EntityAnnotation
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p4beta1.EntityAnnotation;
+
+ /**
+ * Creates a plain object from an EntityAnnotation message. Also converts values to other types if specified.
+ * @param message EntityAnnotation
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p4beta1.EntityAnnotation, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this EntityAnnotation to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for EntityAnnotation
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a LocalizedObjectAnnotation. */
+ interface ILocalizedObjectAnnotation {
+
+ /** LocalizedObjectAnnotation mid */
+ mid?: (string|null);
+
+ /** LocalizedObjectAnnotation languageCode */
+ languageCode?: (string|null);
+
+ /** LocalizedObjectAnnotation name */
+ name?: (string|null);
+
+ /** LocalizedObjectAnnotation score */
+ score?: (number|null);
+
+ /** LocalizedObjectAnnotation boundingPoly */
+ boundingPoly?: (google.cloud.vision.v1p4beta1.IBoundingPoly|null);
+ }
+
+ /** Represents a LocalizedObjectAnnotation. */
+ class LocalizedObjectAnnotation implements ILocalizedObjectAnnotation {
+
+ /**
+ * Constructs a new LocalizedObjectAnnotation.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p4beta1.ILocalizedObjectAnnotation);
+
+ /** LocalizedObjectAnnotation mid. */
+ public mid: string;
+
+ /** LocalizedObjectAnnotation languageCode. */
+ public languageCode: string;
+
+ /** LocalizedObjectAnnotation name. */
+ public name: string;
+
+ /** LocalizedObjectAnnotation score. */
+ public score: number;
+
+ /** LocalizedObjectAnnotation boundingPoly. */
+ public boundingPoly?: (google.cloud.vision.v1p4beta1.IBoundingPoly|null);
+
+ /**
+ * Creates a new LocalizedObjectAnnotation instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns LocalizedObjectAnnotation instance
+ */
+ public static create(properties?: google.cloud.vision.v1p4beta1.ILocalizedObjectAnnotation): google.cloud.vision.v1p4beta1.LocalizedObjectAnnotation;
+
+ /**
+ * Encodes the specified LocalizedObjectAnnotation message. Does not implicitly {@link google.cloud.vision.v1p4beta1.LocalizedObjectAnnotation.verify|verify} messages.
+ * @param message LocalizedObjectAnnotation message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p4beta1.ILocalizedObjectAnnotation, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified LocalizedObjectAnnotation message, length delimited. Does not implicitly {@link google.cloud.vision.v1p4beta1.LocalizedObjectAnnotation.verify|verify} messages.
+ * @param message LocalizedObjectAnnotation message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p4beta1.ILocalizedObjectAnnotation, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a LocalizedObjectAnnotation message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns LocalizedObjectAnnotation
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p4beta1.LocalizedObjectAnnotation;
+
+ /**
+ * Decodes a LocalizedObjectAnnotation message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns LocalizedObjectAnnotation
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p4beta1.LocalizedObjectAnnotation;
+
+ /**
+ * Verifies a LocalizedObjectAnnotation message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a LocalizedObjectAnnotation message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns LocalizedObjectAnnotation
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p4beta1.LocalizedObjectAnnotation;
+
+ /**
+ * Creates a plain object from a LocalizedObjectAnnotation message. Also converts values to other types if specified.
+ * @param message LocalizedObjectAnnotation
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p4beta1.LocalizedObjectAnnotation, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this LocalizedObjectAnnotation to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for LocalizedObjectAnnotation
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a SafeSearchAnnotation. */
+ interface ISafeSearchAnnotation {
+
+ /** SafeSearchAnnotation adult */
+ adult?: (google.cloud.vision.v1p4beta1.Likelihood|keyof typeof google.cloud.vision.v1p4beta1.Likelihood|null);
+
+ /** SafeSearchAnnotation spoof */
+ spoof?: (google.cloud.vision.v1p4beta1.Likelihood|keyof typeof google.cloud.vision.v1p4beta1.Likelihood|null);
+
+ /** SafeSearchAnnotation medical */
+ medical?: (google.cloud.vision.v1p4beta1.Likelihood|keyof typeof google.cloud.vision.v1p4beta1.Likelihood|null);
+
+ /** SafeSearchAnnotation violence */
+ violence?: (google.cloud.vision.v1p4beta1.Likelihood|keyof typeof google.cloud.vision.v1p4beta1.Likelihood|null);
+
+ /** SafeSearchAnnotation racy */
+ racy?: (google.cloud.vision.v1p4beta1.Likelihood|keyof typeof google.cloud.vision.v1p4beta1.Likelihood|null);
+ }
+
+ /** Represents a SafeSearchAnnotation. */
+ class SafeSearchAnnotation implements ISafeSearchAnnotation {
+
+ /**
+ * Constructs a new SafeSearchAnnotation.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p4beta1.ISafeSearchAnnotation);
+
+ /** SafeSearchAnnotation adult. */
+ public adult: (google.cloud.vision.v1p4beta1.Likelihood|keyof typeof google.cloud.vision.v1p4beta1.Likelihood);
+
+ /** SafeSearchAnnotation spoof. */
+ public spoof: (google.cloud.vision.v1p4beta1.Likelihood|keyof typeof google.cloud.vision.v1p4beta1.Likelihood);
+
+ /** SafeSearchAnnotation medical. */
+ public medical: (google.cloud.vision.v1p4beta1.Likelihood|keyof typeof google.cloud.vision.v1p4beta1.Likelihood);
+
+ /** SafeSearchAnnotation violence. */
+ public violence: (google.cloud.vision.v1p4beta1.Likelihood|keyof typeof google.cloud.vision.v1p4beta1.Likelihood);
+
+ /** SafeSearchAnnotation racy. */
+ public racy: (google.cloud.vision.v1p4beta1.Likelihood|keyof typeof google.cloud.vision.v1p4beta1.Likelihood);
+
+ /**
+ * Creates a new SafeSearchAnnotation instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns SafeSearchAnnotation instance
+ */
+ public static create(properties?: google.cloud.vision.v1p4beta1.ISafeSearchAnnotation): google.cloud.vision.v1p4beta1.SafeSearchAnnotation;
+
+ /**
+ * Encodes the specified SafeSearchAnnotation message. Does not implicitly {@link google.cloud.vision.v1p4beta1.SafeSearchAnnotation.verify|verify} messages.
+ * @param message SafeSearchAnnotation message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p4beta1.ISafeSearchAnnotation, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified SafeSearchAnnotation message, length delimited. Does not implicitly {@link google.cloud.vision.v1p4beta1.SafeSearchAnnotation.verify|verify} messages.
+ * @param message SafeSearchAnnotation message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p4beta1.ISafeSearchAnnotation, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a SafeSearchAnnotation message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns SafeSearchAnnotation
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p4beta1.SafeSearchAnnotation;
+
+ /**
+ * Decodes a SafeSearchAnnotation message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns SafeSearchAnnotation
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p4beta1.SafeSearchAnnotation;
+
+ /**
+ * Verifies a SafeSearchAnnotation message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a SafeSearchAnnotation message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns SafeSearchAnnotation
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p4beta1.SafeSearchAnnotation;
+
+ /**
+ * Creates a plain object from a SafeSearchAnnotation message. Also converts values to other types if specified.
+ * @param message SafeSearchAnnotation
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p4beta1.SafeSearchAnnotation, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this SafeSearchAnnotation to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for SafeSearchAnnotation
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a LatLongRect. */
+ interface ILatLongRect {
+
+ /** LatLongRect minLatLng */
+ minLatLng?: (google.type.ILatLng|null);
+
+ /** LatLongRect maxLatLng */
+ maxLatLng?: (google.type.ILatLng|null);
+ }
+
+ /** Represents a LatLongRect. */
+ class LatLongRect implements ILatLongRect {
+
+ /**
+ * Constructs a new LatLongRect.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p4beta1.ILatLongRect);
+
+ /** LatLongRect minLatLng. */
+ public minLatLng?: (google.type.ILatLng|null);
+
+ /** LatLongRect maxLatLng. */
+ public maxLatLng?: (google.type.ILatLng|null);
+
+ /**
+ * Creates a new LatLongRect instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns LatLongRect instance
+ */
+ public static create(properties?: google.cloud.vision.v1p4beta1.ILatLongRect): google.cloud.vision.v1p4beta1.LatLongRect;
+
+ /**
+ * Encodes the specified LatLongRect message. Does not implicitly {@link google.cloud.vision.v1p4beta1.LatLongRect.verify|verify} messages.
+ * @param message LatLongRect message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p4beta1.ILatLongRect, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified LatLongRect message, length delimited. Does not implicitly {@link google.cloud.vision.v1p4beta1.LatLongRect.verify|verify} messages.
+ * @param message LatLongRect message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p4beta1.ILatLongRect, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a LatLongRect message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns LatLongRect
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p4beta1.LatLongRect;
+
+ /**
+ * Decodes a LatLongRect message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns LatLongRect
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p4beta1.LatLongRect;
+
+ /**
+ * Verifies a LatLongRect message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a LatLongRect message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns LatLongRect
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p4beta1.LatLongRect;
+
+ /**
+ * Creates a plain object from a LatLongRect message. Also converts values to other types if specified.
+ * @param message LatLongRect
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p4beta1.LatLongRect, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this LatLongRect to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for LatLongRect
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ColorInfo. */
+ interface IColorInfo {
+
+ /** ColorInfo color */
+ color?: (google.type.IColor|null);
+
+ /** ColorInfo score */
+ score?: (number|null);
+
+ /** ColorInfo pixelFraction */
+ pixelFraction?: (number|null);
+ }
+
+ /** Represents a ColorInfo. */
+ class ColorInfo implements IColorInfo {
+
+ /**
+ * Constructs a new ColorInfo.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p4beta1.IColorInfo);
+
+ /** ColorInfo color. */
+ public color?: (google.type.IColor|null);
+
+ /** ColorInfo score. */
+ public score: number;
+
+ /** ColorInfo pixelFraction. */
+ public pixelFraction: number;
+
+ /**
+ * Creates a new ColorInfo instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ColorInfo instance
+ */
+ public static create(properties?: google.cloud.vision.v1p4beta1.IColorInfo): google.cloud.vision.v1p4beta1.ColorInfo;
+
+ /**
+ * Encodes the specified ColorInfo message. Does not implicitly {@link google.cloud.vision.v1p4beta1.ColorInfo.verify|verify} messages.
+ * @param message ColorInfo message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p4beta1.IColorInfo, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ColorInfo message, length delimited. Does not implicitly {@link google.cloud.vision.v1p4beta1.ColorInfo.verify|verify} messages.
+ * @param message ColorInfo message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p4beta1.IColorInfo, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ColorInfo message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ColorInfo
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p4beta1.ColorInfo;
+
+ /**
+ * Decodes a ColorInfo message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ColorInfo
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p4beta1.ColorInfo;
+
+ /**
+ * Verifies a ColorInfo message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ColorInfo message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ColorInfo
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p4beta1.ColorInfo;
+
+ /**
+ * Creates a plain object from a ColorInfo message. Also converts values to other types if specified.
+ * @param message ColorInfo
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p4beta1.ColorInfo, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ColorInfo to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ColorInfo
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a DominantColorsAnnotation. */
+ interface IDominantColorsAnnotation {
+
+ /** DominantColorsAnnotation colors */
+ colors?: (google.cloud.vision.v1p4beta1.IColorInfo[]|null);
+ }
+
+ /** Represents a DominantColorsAnnotation. */
+ class DominantColorsAnnotation implements IDominantColorsAnnotation {
+
+ /**
+ * Constructs a new DominantColorsAnnotation.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p4beta1.IDominantColorsAnnotation);
+
+ /** DominantColorsAnnotation colors. */
+ public colors: google.cloud.vision.v1p4beta1.IColorInfo[];
+
+ /**
+ * Creates a new DominantColorsAnnotation instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns DominantColorsAnnotation instance
+ */
+ public static create(properties?: google.cloud.vision.v1p4beta1.IDominantColorsAnnotation): google.cloud.vision.v1p4beta1.DominantColorsAnnotation;
+
+ /**
+ * Encodes the specified DominantColorsAnnotation message. Does not implicitly {@link google.cloud.vision.v1p4beta1.DominantColorsAnnotation.verify|verify} messages.
+ * @param message DominantColorsAnnotation message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p4beta1.IDominantColorsAnnotation, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified DominantColorsAnnotation message, length delimited. Does not implicitly {@link google.cloud.vision.v1p4beta1.DominantColorsAnnotation.verify|verify} messages.
+ * @param message DominantColorsAnnotation message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p4beta1.IDominantColorsAnnotation, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a DominantColorsAnnotation message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns DominantColorsAnnotation
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p4beta1.DominantColorsAnnotation;
+
+ /**
+ * Decodes a DominantColorsAnnotation message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns DominantColorsAnnotation
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p4beta1.DominantColorsAnnotation;
+
+ /**
+ * Verifies a DominantColorsAnnotation message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a DominantColorsAnnotation message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns DominantColorsAnnotation
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p4beta1.DominantColorsAnnotation;
+
+ /**
+ * Creates a plain object from a DominantColorsAnnotation message. Also converts values to other types if specified.
+ * @param message DominantColorsAnnotation
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p4beta1.DominantColorsAnnotation, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this DominantColorsAnnotation to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for DominantColorsAnnotation
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an ImageProperties. */
+ interface IImageProperties {
+
+ /** ImageProperties dominantColors */
+ dominantColors?: (google.cloud.vision.v1p4beta1.IDominantColorsAnnotation|null);
+ }
+
+ /** Represents an ImageProperties. */
+ class ImageProperties implements IImageProperties {
+
+ /**
+ * Constructs a new ImageProperties.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p4beta1.IImageProperties);
+
+ /** ImageProperties dominantColors. */
+ public dominantColors?: (google.cloud.vision.v1p4beta1.IDominantColorsAnnotation|null);
+
+ /**
+ * Creates a new ImageProperties instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ImageProperties instance
+ */
+ public static create(properties?: google.cloud.vision.v1p4beta1.IImageProperties): google.cloud.vision.v1p4beta1.ImageProperties;
+
+ /**
+ * Encodes the specified ImageProperties message. Does not implicitly {@link google.cloud.vision.v1p4beta1.ImageProperties.verify|verify} messages.
+ * @param message ImageProperties message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p4beta1.IImageProperties, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ImageProperties message, length delimited. Does not implicitly {@link google.cloud.vision.v1p4beta1.ImageProperties.verify|verify} messages.
+ * @param message ImageProperties message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p4beta1.IImageProperties, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an ImageProperties message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ImageProperties
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p4beta1.ImageProperties;
+
+ /**
+ * Decodes an ImageProperties message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ImageProperties
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p4beta1.ImageProperties;
+
+ /**
+ * Verifies an ImageProperties message.
+ * @param message Plain 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 ImageProperties message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ImageProperties
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p4beta1.ImageProperties;
+
+ /**
+ * Creates a plain object from an ImageProperties message. Also converts values to other types if specified.
+ * @param message ImageProperties
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p4beta1.ImageProperties, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ImageProperties to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ImageProperties
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a CropHint. */
+ interface ICropHint {
+
+ /** CropHint boundingPoly */
+ boundingPoly?: (google.cloud.vision.v1p4beta1.IBoundingPoly|null);
+
+ /** CropHint confidence */
+ confidence?: (number|null);
+
+ /** CropHint importanceFraction */
+ importanceFraction?: (number|null);
+ }
+
+ /** Represents a CropHint. */
+ class CropHint implements ICropHint {
+
+ /**
+ * Constructs a new CropHint.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p4beta1.ICropHint);
+
+ /** CropHint boundingPoly. */
+ public boundingPoly?: (google.cloud.vision.v1p4beta1.IBoundingPoly|null);
+
+ /** CropHint confidence. */
+ public confidence: number;
+
+ /** CropHint importanceFraction. */
+ public importanceFraction: number;
+
+ /**
+ * Creates a new CropHint instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns CropHint instance
+ */
+ public static create(properties?: google.cloud.vision.v1p4beta1.ICropHint): google.cloud.vision.v1p4beta1.CropHint;
+
+ /**
+ * Encodes the specified CropHint message. Does not implicitly {@link google.cloud.vision.v1p4beta1.CropHint.verify|verify} messages.
+ * @param message CropHint message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p4beta1.ICropHint, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified CropHint message, length delimited. Does not implicitly {@link google.cloud.vision.v1p4beta1.CropHint.verify|verify} messages.
+ * @param message CropHint message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p4beta1.ICropHint, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a CropHint message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns CropHint
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p4beta1.CropHint;
+
+ /**
+ * Decodes a CropHint message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns CropHint
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p4beta1.CropHint;
+
+ /**
+ * Verifies a CropHint message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a CropHint message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns CropHint
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p4beta1.CropHint;
+
+ /**
+ * Creates a plain object from a CropHint message. Also converts values to other types if specified.
+ * @param message CropHint
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p4beta1.CropHint, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this CropHint to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for CropHint
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a CropHintsAnnotation. */
+ interface ICropHintsAnnotation {
+
+ /** CropHintsAnnotation cropHints */
+ cropHints?: (google.cloud.vision.v1p4beta1.ICropHint[]|null);
+ }
+
+ /** Represents a CropHintsAnnotation. */
+ class CropHintsAnnotation implements ICropHintsAnnotation {
+
+ /**
+ * Constructs a new CropHintsAnnotation.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p4beta1.ICropHintsAnnotation);
+
+ /** CropHintsAnnotation cropHints. */
+ public cropHints: google.cloud.vision.v1p4beta1.ICropHint[];
+
+ /**
+ * Creates a new CropHintsAnnotation instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns CropHintsAnnotation instance
+ */
+ public static create(properties?: google.cloud.vision.v1p4beta1.ICropHintsAnnotation): google.cloud.vision.v1p4beta1.CropHintsAnnotation;
+
+ /**
+ * Encodes the specified CropHintsAnnotation message. Does not implicitly {@link google.cloud.vision.v1p4beta1.CropHintsAnnotation.verify|verify} messages.
+ * @param message CropHintsAnnotation message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p4beta1.ICropHintsAnnotation, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified CropHintsAnnotation message, length delimited. Does not implicitly {@link google.cloud.vision.v1p4beta1.CropHintsAnnotation.verify|verify} messages.
+ * @param message CropHintsAnnotation message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p4beta1.ICropHintsAnnotation, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a CropHintsAnnotation message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns CropHintsAnnotation
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p4beta1.CropHintsAnnotation;
+
+ /**
+ * Decodes a CropHintsAnnotation message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns CropHintsAnnotation
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p4beta1.CropHintsAnnotation;
+
+ /**
+ * Verifies a CropHintsAnnotation message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a CropHintsAnnotation message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns CropHintsAnnotation
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p4beta1.CropHintsAnnotation;
+
+ /**
+ * Creates a plain object from a CropHintsAnnotation message. Also converts values to other types if specified.
+ * @param message CropHintsAnnotation
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p4beta1.CropHintsAnnotation, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this CropHintsAnnotation to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for CropHintsAnnotation
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a CropHintsParams. */
+ interface ICropHintsParams {
+
+ /** CropHintsParams aspectRatios */
+ aspectRatios?: (number[]|null);
+ }
+
+ /** Represents a CropHintsParams. */
+ class CropHintsParams implements ICropHintsParams {
+
+ /**
+ * Constructs a new CropHintsParams.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p4beta1.ICropHintsParams);
+
+ /** CropHintsParams aspectRatios. */
+ public aspectRatios: number[];
+
+ /**
+ * Creates a new CropHintsParams instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns CropHintsParams instance
+ */
+ public static create(properties?: google.cloud.vision.v1p4beta1.ICropHintsParams): google.cloud.vision.v1p4beta1.CropHintsParams;
+
+ /**
+ * Encodes the specified CropHintsParams message. Does not implicitly {@link google.cloud.vision.v1p4beta1.CropHintsParams.verify|verify} messages.
+ * @param message CropHintsParams message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p4beta1.ICropHintsParams, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified CropHintsParams message, length delimited. Does not implicitly {@link google.cloud.vision.v1p4beta1.CropHintsParams.verify|verify} messages.
+ * @param message CropHintsParams message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p4beta1.ICropHintsParams, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a CropHintsParams message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns CropHintsParams
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p4beta1.CropHintsParams;
+
+ /**
+ * Decodes a CropHintsParams message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns CropHintsParams
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p4beta1.CropHintsParams;
+
+ /**
+ * Verifies a CropHintsParams message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a CropHintsParams message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns CropHintsParams
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p4beta1.CropHintsParams;
+
+ /**
+ * Creates a plain object from a CropHintsParams message. Also converts values to other types if specified.
+ * @param message CropHintsParams
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p4beta1.CropHintsParams, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this CropHintsParams to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for CropHintsParams
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a WebDetectionParams. */
+ interface IWebDetectionParams {
+
+ /** WebDetectionParams includeGeoResults */
+ includeGeoResults?: (boolean|null);
+ }
+
+ /** Represents a WebDetectionParams. */
+ class WebDetectionParams implements IWebDetectionParams {
+
+ /**
+ * Constructs a new WebDetectionParams.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p4beta1.IWebDetectionParams);
+
+ /** WebDetectionParams includeGeoResults. */
+ public includeGeoResults: boolean;
+
+ /**
+ * Creates a new WebDetectionParams instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns WebDetectionParams instance
+ */
+ public static create(properties?: google.cloud.vision.v1p4beta1.IWebDetectionParams): google.cloud.vision.v1p4beta1.WebDetectionParams;
+
+ /**
+ * Encodes the specified WebDetectionParams message. Does not implicitly {@link google.cloud.vision.v1p4beta1.WebDetectionParams.verify|verify} messages.
+ * @param message WebDetectionParams message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p4beta1.IWebDetectionParams, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified WebDetectionParams message, length delimited. Does not implicitly {@link google.cloud.vision.v1p4beta1.WebDetectionParams.verify|verify} messages.
+ * @param message WebDetectionParams message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p4beta1.IWebDetectionParams, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a WebDetectionParams message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns WebDetectionParams
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p4beta1.WebDetectionParams;
+
+ /**
+ * Decodes a WebDetectionParams message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns WebDetectionParams
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p4beta1.WebDetectionParams;
+
+ /**
+ * Verifies a WebDetectionParams message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a WebDetectionParams message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns WebDetectionParams
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p4beta1.WebDetectionParams;
+
+ /**
+ * Creates a plain object from a WebDetectionParams message. Also converts values to other types if specified.
+ * @param message WebDetectionParams
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p4beta1.WebDetectionParams, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this WebDetectionParams to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for WebDetectionParams
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a TextDetectionParams. */
+ interface ITextDetectionParams {
+
+ /** TextDetectionParams enableTextDetectionConfidenceScore */
+ enableTextDetectionConfidenceScore?: (boolean|null);
+
+ /** TextDetectionParams advancedOcrOptions */
+ advancedOcrOptions?: (string[]|null);
+ }
+
+ /** Represents a TextDetectionParams. */
+ class TextDetectionParams implements ITextDetectionParams {
+
+ /**
+ * Constructs a new TextDetectionParams.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p4beta1.ITextDetectionParams);
+
+ /** TextDetectionParams enableTextDetectionConfidenceScore. */
+ public enableTextDetectionConfidenceScore: boolean;
+
+ /** TextDetectionParams advancedOcrOptions. */
+ public advancedOcrOptions: string[];
+
+ /**
+ * Creates a new TextDetectionParams instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns TextDetectionParams instance
+ */
+ public static create(properties?: google.cloud.vision.v1p4beta1.ITextDetectionParams): google.cloud.vision.v1p4beta1.TextDetectionParams;
+
+ /**
+ * Encodes the specified TextDetectionParams message. Does not implicitly {@link google.cloud.vision.v1p4beta1.TextDetectionParams.verify|verify} messages.
+ * @param message TextDetectionParams message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p4beta1.ITextDetectionParams, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified TextDetectionParams message, length delimited. Does not implicitly {@link google.cloud.vision.v1p4beta1.TextDetectionParams.verify|verify} messages.
+ * @param message TextDetectionParams message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p4beta1.ITextDetectionParams, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a TextDetectionParams message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns TextDetectionParams
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p4beta1.TextDetectionParams;
+
+ /**
+ * Decodes a TextDetectionParams message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns TextDetectionParams
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p4beta1.TextDetectionParams;
+
+ /**
+ * Verifies a TextDetectionParams message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a TextDetectionParams message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns TextDetectionParams
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p4beta1.TextDetectionParams;
+
+ /**
+ * Creates a plain object from a TextDetectionParams message. Also converts values to other types if specified.
+ * @param message TextDetectionParams
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p4beta1.TextDetectionParams, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this TextDetectionParams to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for TextDetectionParams
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an ImageContext. */
+ interface IImageContext {
+
+ /** ImageContext latLongRect */
+ latLongRect?: (google.cloud.vision.v1p4beta1.ILatLongRect|null);
+
+ /** ImageContext languageHints */
+ languageHints?: (string[]|null);
+
+ /** ImageContext cropHintsParams */
+ cropHintsParams?: (google.cloud.vision.v1p4beta1.ICropHintsParams|null);
+
+ /** ImageContext faceRecognitionParams */
+ faceRecognitionParams?: (google.cloud.vision.v1p4beta1.IFaceRecognitionParams|null);
+
+ /** ImageContext productSearchParams */
+ productSearchParams?: (google.cloud.vision.v1p4beta1.IProductSearchParams|null);
+
+ /** ImageContext webDetectionParams */
+ webDetectionParams?: (google.cloud.vision.v1p4beta1.IWebDetectionParams|null);
+
+ /** ImageContext textDetectionParams */
+ textDetectionParams?: (google.cloud.vision.v1p4beta1.ITextDetectionParams|null);
+ }
+
+ /** Represents an ImageContext. */
+ class ImageContext implements IImageContext {
+
+ /**
+ * Constructs a new ImageContext.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p4beta1.IImageContext);
+
+ /** ImageContext latLongRect. */
+ public latLongRect?: (google.cloud.vision.v1p4beta1.ILatLongRect|null);
+
+ /** ImageContext languageHints. */
+ public languageHints: string[];
+
+ /** ImageContext cropHintsParams. */
+ public cropHintsParams?: (google.cloud.vision.v1p4beta1.ICropHintsParams|null);
+
+ /** ImageContext faceRecognitionParams. */
+ public faceRecognitionParams?: (google.cloud.vision.v1p4beta1.IFaceRecognitionParams|null);
+
+ /** ImageContext productSearchParams. */
+ public productSearchParams?: (google.cloud.vision.v1p4beta1.IProductSearchParams|null);
+
+ /** ImageContext webDetectionParams. */
+ public webDetectionParams?: (google.cloud.vision.v1p4beta1.IWebDetectionParams|null);
+
+ /** ImageContext textDetectionParams. */
+ public textDetectionParams?: (google.cloud.vision.v1p4beta1.ITextDetectionParams|null);
+
+ /**
+ * Creates a new ImageContext instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ImageContext instance
+ */
+ public static create(properties?: google.cloud.vision.v1p4beta1.IImageContext): google.cloud.vision.v1p4beta1.ImageContext;
+
+ /**
+ * Encodes the specified ImageContext message. Does not implicitly {@link google.cloud.vision.v1p4beta1.ImageContext.verify|verify} messages.
+ * @param message ImageContext message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p4beta1.IImageContext, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ImageContext message, length delimited. Does not implicitly {@link google.cloud.vision.v1p4beta1.ImageContext.verify|verify} messages.
+ * @param message ImageContext message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p4beta1.IImageContext, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an ImageContext message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ImageContext
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p4beta1.ImageContext;
+
+ /**
+ * Decodes an ImageContext message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ImageContext
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p4beta1.ImageContext;
+
+ /**
+ * Verifies an ImageContext message.
+ * @param message Plain 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 ImageContext message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ImageContext
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p4beta1.ImageContext;
+
+ /**
+ * Creates a plain object from an ImageContext message. Also converts values to other types if specified.
+ * @param message ImageContext
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p4beta1.ImageContext, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ImageContext to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ImageContext
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an AnnotateImageRequest. */
+ interface IAnnotateImageRequest {
+
+ /** AnnotateImageRequest image */
+ image?: (google.cloud.vision.v1p4beta1.IImage|null);
+
+ /** AnnotateImageRequest features */
+ features?: (google.cloud.vision.v1p4beta1.IFeature[]|null);
+
+ /** AnnotateImageRequest imageContext */
+ imageContext?: (google.cloud.vision.v1p4beta1.IImageContext|null);
+ }
+
+ /** Represents an AnnotateImageRequest. */
+ class AnnotateImageRequest implements IAnnotateImageRequest {
+
+ /**
+ * Constructs a new AnnotateImageRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p4beta1.IAnnotateImageRequest);
+
+ /** AnnotateImageRequest image. */
+ public image?: (google.cloud.vision.v1p4beta1.IImage|null);
+
+ /** AnnotateImageRequest features. */
+ public features: google.cloud.vision.v1p4beta1.IFeature[];
+
+ /** AnnotateImageRequest imageContext. */
+ public imageContext?: (google.cloud.vision.v1p4beta1.IImageContext|null);
+
+ /**
+ * Creates a new AnnotateImageRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns AnnotateImageRequest instance
+ */
+ public static create(properties?: google.cloud.vision.v1p4beta1.IAnnotateImageRequest): google.cloud.vision.v1p4beta1.AnnotateImageRequest;
+
+ /**
+ * Encodes the specified AnnotateImageRequest message. Does not implicitly {@link google.cloud.vision.v1p4beta1.AnnotateImageRequest.verify|verify} messages.
+ * @param message AnnotateImageRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p4beta1.IAnnotateImageRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified AnnotateImageRequest message, length delimited. Does not implicitly {@link google.cloud.vision.v1p4beta1.AnnotateImageRequest.verify|verify} messages.
+ * @param message AnnotateImageRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p4beta1.IAnnotateImageRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an AnnotateImageRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns AnnotateImageRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p4beta1.AnnotateImageRequest;
+
+ /**
+ * Decodes an AnnotateImageRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns AnnotateImageRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p4beta1.AnnotateImageRequest;
+
+ /**
+ * Verifies an AnnotateImageRequest message.
+ * @param message Plain 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 AnnotateImageRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns AnnotateImageRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p4beta1.AnnotateImageRequest;
+
+ /**
+ * Creates a plain object from an AnnotateImageRequest message. Also converts values to other types if specified.
+ * @param message AnnotateImageRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p4beta1.AnnotateImageRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this AnnotateImageRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for AnnotateImageRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an ImageAnnotationContext. */
+ interface IImageAnnotationContext {
+
+ /** ImageAnnotationContext uri */
+ uri?: (string|null);
+
+ /** ImageAnnotationContext pageNumber */
+ pageNumber?: (number|null);
+ }
+
+ /** Represents an ImageAnnotationContext. */
+ class ImageAnnotationContext implements IImageAnnotationContext {
+
+ /**
+ * Constructs a new ImageAnnotationContext.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p4beta1.IImageAnnotationContext);
+
+ /** ImageAnnotationContext uri. */
+ public uri: string;
+
+ /** ImageAnnotationContext pageNumber. */
+ public pageNumber: number;
+
+ /**
+ * Creates a new ImageAnnotationContext instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ImageAnnotationContext instance
+ */
+ public static create(properties?: google.cloud.vision.v1p4beta1.IImageAnnotationContext): google.cloud.vision.v1p4beta1.ImageAnnotationContext;
+
+ /**
+ * Encodes the specified ImageAnnotationContext message. Does not implicitly {@link google.cloud.vision.v1p4beta1.ImageAnnotationContext.verify|verify} messages.
+ * @param message ImageAnnotationContext message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p4beta1.IImageAnnotationContext, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ImageAnnotationContext message, length delimited. Does not implicitly {@link google.cloud.vision.v1p4beta1.ImageAnnotationContext.verify|verify} messages.
+ * @param message ImageAnnotationContext message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p4beta1.IImageAnnotationContext, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an ImageAnnotationContext message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ImageAnnotationContext
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p4beta1.ImageAnnotationContext;
+
+ /**
+ * Decodes an ImageAnnotationContext message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ImageAnnotationContext
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p4beta1.ImageAnnotationContext;
+
+ /**
+ * Verifies an ImageAnnotationContext message.
+ * @param message Plain 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 ImageAnnotationContext message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ImageAnnotationContext
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p4beta1.ImageAnnotationContext;
+
+ /**
+ * Creates a plain object from an ImageAnnotationContext message. Also converts values to other types if specified.
+ * @param message ImageAnnotationContext
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p4beta1.ImageAnnotationContext, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ImageAnnotationContext to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ImageAnnotationContext
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an AnnotateImageResponse. */
+ interface IAnnotateImageResponse {
+
+ /** AnnotateImageResponse faceAnnotations */
+ faceAnnotations?: (google.cloud.vision.v1p4beta1.IFaceAnnotation[]|null);
+
+ /** AnnotateImageResponse landmarkAnnotations */
+ landmarkAnnotations?: (google.cloud.vision.v1p4beta1.IEntityAnnotation[]|null);
+
+ /** AnnotateImageResponse logoAnnotations */
+ logoAnnotations?: (google.cloud.vision.v1p4beta1.IEntityAnnotation[]|null);
+
+ /** AnnotateImageResponse labelAnnotations */
+ labelAnnotations?: (google.cloud.vision.v1p4beta1.IEntityAnnotation[]|null);
+
+ /** AnnotateImageResponse localizedObjectAnnotations */
+ localizedObjectAnnotations?: (google.cloud.vision.v1p4beta1.ILocalizedObjectAnnotation[]|null);
+
+ /** AnnotateImageResponse textAnnotations */
+ textAnnotations?: (google.cloud.vision.v1p4beta1.IEntityAnnotation[]|null);
+
+ /** AnnotateImageResponse fullTextAnnotation */
+ fullTextAnnotation?: (google.cloud.vision.v1p4beta1.ITextAnnotation|null);
+
+ /** AnnotateImageResponse safeSearchAnnotation */
+ safeSearchAnnotation?: (google.cloud.vision.v1p4beta1.ISafeSearchAnnotation|null);
+
+ /** AnnotateImageResponse imagePropertiesAnnotation */
+ imagePropertiesAnnotation?: (google.cloud.vision.v1p4beta1.IImageProperties|null);
+
+ /** AnnotateImageResponse cropHintsAnnotation */
+ cropHintsAnnotation?: (google.cloud.vision.v1p4beta1.ICropHintsAnnotation|null);
+
+ /** AnnotateImageResponse webDetection */
+ webDetection?: (google.cloud.vision.v1p4beta1.IWebDetection|null);
+
+ /** AnnotateImageResponse productSearchResults */
+ productSearchResults?: (google.cloud.vision.v1p4beta1.IProductSearchResults|null);
+
+ /** AnnotateImageResponse error */
+ error?: (google.rpc.IStatus|null);
+
+ /** AnnotateImageResponse context */
+ context?: (google.cloud.vision.v1p4beta1.IImageAnnotationContext|null);
+ }
+
+ /** Represents an AnnotateImageResponse. */
+ class AnnotateImageResponse implements IAnnotateImageResponse {
+
+ /**
+ * Constructs a new AnnotateImageResponse.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p4beta1.IAnnotateImageResponse);
+
+ /** AnnotateImageResponse faceAnnotations. */
+ public faceAnnotations: google.cloud.vision.v1p4beta1.IFaceAnnotation[];
+
+ /** AnnotateImageResponse landmarkAnnotations. */
+ public landmarkAnnotations: google.cloud.vision.v1p4beta1.IEntityAnnotation[];
+
+ /** AnnotateImageResponse logoAnnotations. */
+ public logoAnnotations: google.cloud.vision.v1p4beta1.IEntityAnnotation[];
+
+ /** AnnotateImageResponse labelAnnotations. */
+ public labelAnnotations: google.cloud.vision.v1p4beta1.IEntityAnnotation[];
+
+ /** AnnotateImageResponse localizedObjectAnnotations. */
+ public localizedObjectAnnotations: google.cloud.vision.v1p4beta1.ILocalizedObjectAnnotation[];
+
+ /** AnnotateImageResponse textAnnotations. */
+ public textAnnotations: google.cloud.vision.v1p4beta1.IEntityAnnotation[];
+
+ /** AnnotateImageResponse fullTextAnnotation. */
+ public fullTextAnnotation?: (google.cloud.vision.v1p4beta1.ITextAnnotation|null);
+
+ /** AnnotateImageResponse safeSearchAnnotation. */
+ public safeSearchAnnotation?: (google.cloud.vision.v1p4beta1.ISafeSearchAnnotation|null);
+
+ /** AnnotateImageResponse imagePropertiesAnnotation. */
+ public imagePropertiesAnnotation?: (google.cloud.vision.v1p4beta1.IImageProperties|null);
+
+ /** AnnotateImageResponse cropHintsAnnotation. */
+ public cropHintsAnnotation?: (google.cloud.vision.v1p4beta1.ICropHintsAnnotation|null);
+
+ /** AnnotateImageResponse webDetection. */
+ public webDetection?: (google.cloud.vision.v1p4beta1.IWebDetection|null);
+
+ /** AnnotateImageResponse productSearchResults. */
+ public productSearchResults?: (google.cloud.vision.v1p4beta1.IProductSearchResults|null);
+
+ /** AnnotateImageResponse error. */
+ public error?: (google.rpc.IStatus|null);
+
+ /** AnnotateImageResponse context. */
+ public context?: (google.cloud.vision.v1p4beta1.IImageAnnotationContext|null);
+
+ /**
+ * Creates a new AnnotateImageResponse instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns AnnotateImageResponse instance
+ */
+ public static create(properties?: google.cloud.vision.v1p4beta1.IAnnotateImageResponse): google.cloud.vision.v1p4beta1.AnnotateImageResponse;
+
+ /**
+ * Encodes the specified AnnotateImageResponse message. Does not implicitly {@link google.cloud.vision.v1p4beta1.AnnotateImageResponse.verify|verify} messages.
+ * @param message AnnotateImageResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p4beta1.IAnnotateImageResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified AnnotateImageResponse message, length delimited. Does not implicitly {@link google.cloud.vision.v1p4beta1.AnnotateImageResponse.verify|verify} messages.
+ * @param message AnnotateImageResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p4beta1.IAnnotateImageResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an AnnotateImageResponse message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns AnnotateImageResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p4beta1.AnnotateImageResponse;
+
+ /**
+ * Decodes an AnnotateImageResponse message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns AnnotateImageResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p4beta1.AnnotateImageResponse;
+
+ /**
+ * Verifies an AnnotateImageResponse message.
+ * @param message Plain 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 AnnotateImageResponse message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns AnnotateImageResponse
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p4beta1.AnnotateImageResponse;
+
+ /**
+ * Creates a plain object from an AnnotateImageResponse message. Also converts values to other types if specified.
+ * @param message AnnotateImageResponse
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p4beta1.AnnotateImageResponse, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this AnnotateImageResponse to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for AnnotateImageResponse
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a BatchAnnotateImagesRequest. */
+ interface IBatchAnnotateImagesRequest {
+
+ /** BatchAnnotateImagesRequest requests */
+ requests?: (google.cloud.vision.v1p4beta1.IAnnotateImageRequest[]|null);
+ }
+
+ /** Represents a BatchAnnotateImagesRequest. */
+ class BatchAnnotateImagesRequest implements IBatchAnnotateImagesRequest {
+
+ /**
+ * Constructs a new BatchAnnotateImagesRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p4beta1.IBatchAnnotateImagesRequest);
+
+ /** BatchAnnotateImagesRequest requests. */
+ public requests: google.cloud.vision.v1p4beta1.IAnnotateImageRequest[];
+
+ /**
+ * Creates a new BatchAnnotateImagesRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns BatchAnnotateImagesRequest instance
+ */
+ public static create(properties?: google.cloud.vision.v1p4beta1.IBatchAnnotateImagesRequest): google.cloud.vision.v1p4beta1.BatchAnnotateImagesRequest;
+
+ /**
+ * Encodes the specified BatchAnnotateImagesRequest message. Does not implicitly {@link google.cloud.vision.v1p4beta1.BatchAnnotateImagesRequest.verify|verify} messages.
+ * @param message BatchAnnotateImagesRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p4beta1.IBatchAnnotateImagesRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified BatchAnnotateImagesRequest message, length delimited. Does not implicitly {@link google.cloud.vision.v1p4beta1.BatchAnnotateImagesRequest.verify|verify} messages.
+ * @param message BatchAnnotateImagesRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p4beta1.IBatchAnnotateImagesRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a BatchAnnotateImagesRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns BatchAnnotateImagesRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p4beta1.BatchAnnotateImagesRequest;
+
+ /**
+ * Decodes a BatchAnnotateImagesRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns BatchAnnotateImagesRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p4beta1.BatchAnnotateImagesRequest;
+
+ /**
+ * Verifies a BatchAnnotateImagesRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a BatchAnnotateImagesRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns BatchAnnotateImagesRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p4beta1.BatchAnnotateImagesRequest;
+
+ /**
+ * Creates a plain object from a BatchAnnotateImagesRequest message. Also converts values to other types if specified.
+ * @param message BatchAnnotateImagesRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p4beta1.BatchAnnotateImagesRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this BatchAnnotateImagesRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for BatchAnnotateImagesRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a BatchAnnotateImagesResponse. */
+ interface IBatchAnnotateImagesResponse {
+
+ /** BatchAnnotateImagesResponse responses */
+ responses?: (google.cloud.vision.v1p4beta1.IAnnotateImageResponse[]|null);
+ }
+
+ /** Represents a BatchAnnotateImagesResponse. */
+ class BatchAnnotateImagesResponse implements IBatchAnnotateImagesResponse {
+
+ /**
+ * Constructs a new BatchAnnotateImagesResponse.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p4beta1.IBatchAnnotateImagesResponse);
+
+ /** BatchAnnotateImagesResponse responses. */
+ public responses: google.cloud.vision.v1p4beta1.IAnnotateImageResponse[];
+
+ /**
+ * Creates a new BatchAnnotateImagesResponse instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns BatchAnnotateImagesResponse instance
+ */
+ public static create(properties?: google.cloud.vision.v1p4beta1.IBatchAnnotateImagesResponse): google.cloud.vision.v1p4beta1.BatchAnnotateImagesResponse;
+
+ /**
+ * Encodes the specified BatchAnnotateImagesResponse message. Does not implicitly {@link google.cloud.vision.v1p4beta1.BatchAnnotateImagesResponse.verify|verify} messages.
+ * @param message BatchAnnotateImagesResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p4beta1.IBatchAnnotateImagesResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified BatchAnnotateImagesResponse message, length delimited. Does not implicitly {@link google.cloud.vision.v1p4beta1.BatchAnnotateImagesResponse.verify|verify} messages.
+ * @param message BatchAnnotateImagesResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p4beta1.IBatchAnnotateImagesResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a BatchAnnotateImagesResponse message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns BatchAnnotateImagesResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p4beta1.BatchAnnotateImagesResponse;
+
+ /**
+ * Decodes a BatchAnnotateImagesResponse message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns BatchAnnotateImagesResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p4beta1.BatchAnnotateImagesResponse;
+
+ /**
+ * Verifies a BatchAnnotateImagesResponse message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a BatchAnnotateImagesResponse message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns BatchAnnotateImagesResponse
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p4beta1.BatchAnnotateImagesResponse;
+
+ /**
+ * Creates a plain object from a BatchAnnotateImagesResponse message. Also converts values to other types if specified.
+ * @param message BatchAnnotateImagesResponse
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p4beta1.BatchAnnotateImagesResponse, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this BatchAnnotateImagesResponse to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for BatchAnnotateImagesResponse
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an AnnotateFileRequest. */
+ interface IAnnotateFileRequest {
+
+ /** AnnotateFileRequest inputConfig */
+ inputConfig?: (google.cloud.vision.v1p4beta1.IInputConfig|null);
+
+ /** AnnotateFileRequest features */
+ features?: (google.cloud.vision.v1p4beta1.IFeature[]|null);
+
+ /** AnnotateFileRequest imageContext */
+ imageContext?: (google.cloud.vision.v1p4beta1.IImageContext|null);
+
+ /** AnnotateFileRequest pages */
+ pages?: (number[]|null);
+ }
+
+ /** Represents an AnnotateFileRequest. */
+ class AnnotateFileRequest implements IAnnotateFileRequest {
+
+ /**
+ * Constructs a new AnnotateFileRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p4beta1.IAnnotateFileRequest);
+
+ /** AnnotateFileRequest inputConfig. */
+ public inputConfig?: (google.cloud.vision.v1p4beta1.IInputConfig|null);
+
+ /** AnnotateFileRequest features. */
+ public features: google.cloud.vision.v1p4beta1.IFeature[];
+
+ /** AnnotateFileRequest imageContext. */
+ public imageContext?: (google.cloud.vision.v1p4beta1.IImageContext|null);
+
+ /** AnnotateFileRequest pages. */
+ public pages: number[];
+
+ /**
+ * Creates a new AnnotateFileRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns AnnotateFileRequest instance
+ */
+ public static create(properties?: google.cloud.vision.v1p4beta1.IAnnotateFileRequest): google.cloud.vision.v1p4beta1.AnnotateFileRequest;
+
+ /**
+ * Encodes the specified AnnotateFileRequest message. Does not implicitly {@link google.cloud.vision.v1p4beta1.AnnotateFileRequest.verify|verify} messages.
+ * @param message AnnotateFileRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p4beta1.IAnnotateFileRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified AnnotateFileRequest message, length delimited. Does not implicitly {@link google.cloud.vision.v1p4beta1.AnnotateFileRequest.verify|verify} messages.
+ * @param message AnnotateFileRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p4beta1.IAnnotateFileRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an AnnotateFileRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns AnnotateFileRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p4beta1.AnnotateFileRequest;
+
+ /**
+ * Decodes an AnnotateFileRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns AnnotateFileRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p4beta1.AnnotateFileRequest;
+
+ /**
+ * Verifies an AnnotateFileRequest message.
+ * @param message Plain 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 AnnotateFileRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns AnnotateFileRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p4beta1.AnnotateFileRequest;
+
+ /**
+ * Creates a plain object from an AnnotateFileRequest message. Also converts values to other types if specified.
+ * @param message AnnotateFileRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p4beta1.AnnotateFileRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this AnnotateFileRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for AnnotateFileRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an AnnotateFileResponse. */
+ interface IAnnotateFileResponse {
+
+ /** AnnotateFileResponse inputConfig */
+ inputConfig?: (google.cloud.vision.v1p4beta1.IInputConfig|null);
+
+ /** AnnotateFileResponse responses */
+ responses?: (google.cloud.vision.v1p4beta1.IAnnotateImageResponse[]|null);
+
+ /** AnnotateFileResponse totalPages */
+ totalPages?: (number|null);
+
+ /** AnnotateFileResponse error */
+ error?: (google.rpc.IStatus|null);
+ }
+
+ /** Represents an AnnotateFileResponse. */
+ class AnnotateFileResponse implements IAnnotateFileResponse {
+
+ /**
+ * Constructs a new AnnotateFileResponse.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p4beta1.IAnnotateFileResponse);
+
+ /** AnnotateFileResponse inputConfig. */
+ public inputConfig?: (google.cloud.vision.v1p4beta1.IInputConfig|null);
+
+ /** AnnotateFileResponse responses. */
+ public responses: google.cloud.vision.v1p4beta1.IAnnotateImageResponse[];
+
+ /** AnnotateFileResponse totalPages. */
+ public totalPages: number;
+
+ /** AnnotateFileResponse error. */
+ public error?: (google.rpc.IStatus|null);
+
+ /**
+ * Creates a new AnnotateFileResponse instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns AnnotateFileResponse instance
+ */
+ public static create(properties?: google.cloud.vision.v1p4beta1.IAnnotateFileResponse): google.cloud.vision.v1p4beta1.AnnotateFileResponse;
+
+ /**
+ * Encodes the specified AnnotateFileResponse message. Does not implicitly {@link google.cloud.vision.v1p4beta1.AnnotateFileResponse.verify|verify} messages.
+ * @param message AnnotateFileResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p4beta1.IAnnotateFileResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified AnnotateFileResponse message, length delimited. Does not implicitly {@link google.cloud.vision.v1p4beta1.AnnotateFileResponse.verify|verify} messages.
+ * @param message AnnotateFileResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p4beta1.IAnnotateFileResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an AnnotateFileResponse message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns AnnotateFileResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p4beta1.AnnotateFileResponse;
+
+ /**
+ * Decodes an AnnotateFileResponse message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns AnnotateFileResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p4beta1.AnnotateFileResponse;
+
+ /**
+ * Verifies an AnnotateFileResponse message.
+ * @param message Plain 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 AnnotateFileResponse message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns AnnotateFileResponse
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p4beta1.AnnotateFileResponse;
+
+ /**
+ * Creates a plain object from an AnnotateFileResponse message. Also converts values to other types if specified.
+ * @param message AnnotateFileResponse
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p4beta1.AnnotateFileResponse, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this AnnotateFileResponse to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for AnnotateFileResponse
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a BatchAnnotateFilesRequest. */
+ interface IBatchAnnotateFilesRequest {
+
+ /** BatchAnnotateFilesRequest requests */
+ requests?: (google.cloud.vision.v1p4beta1.IAnnotateFileRequest[]|null);
+ }
+
+ /** Represents a BatchAnnotateFilesRequest. */
+ class BatchAnnotateFilesRequest implements IBatchAnnotateFilesRequest {
+
+ /**
+ * Constructs a new BatchAnnotateFilesRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p4beta1.IBatchAnnotateFilesRequest);
+
+ /** BatchAnnotateFilesRequest requests. */
+ public requests: google.cloud.vision.v1p4beta1.IAnnotateFileRequest[];
+
+ /**
+ * Creates a new BatchAnnotateFilesRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns BatchAnnotateFilesRequest instance
+ */
+ public static create(properties?: google.cloud.vision.v1p4beta1.IBatchAnnotateFilesRequest): google.cloud.vision.v1p4beta1.BatchAnnotateFilesRequest;
+
+ /**
+ * Encodes the specified BatchAnnotateFilesRequest message. Does not implicitly {@link google.cloud.vision.v1p4beta1.BatchAnnotateFilesRequest.verify|verify} messages.
+ * @param message BatchAnnotateFilesRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p4beta1.IBatchAnnotateFilesRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified BatchAnnotateFilesRequest message, length delimited. Does not implicitly {@link google.cloud.vision.v1p4beta1.BatchAnnotateFilesRequest.verify|verify} messages.
+ * @param message BatchAnnotateFilesRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p4beta1.IBatchAnnotateFilesRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a BatchAnnotateFilesRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns BatchAnnotateFilesRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p4beta1.BatchAnnotateFilesRequest;
+
+ /**
+ * Decodes a BatchAnnotateFilesRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns BatchAnnotateFilesRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p4beta1.BatchAnnotateFilesRequest;
+
+ /**
+ * Verifies a BatchAnnotateFilesRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a BatchAnnotateFilesRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns BatchAnnotateFilesRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p4beta1.BatchAnnotateFilesRequest;
+
+ /**
+ * Creates a plain object from a BatchAnnotateFilesRequest message. Also converts values to other types if specified.
+ * @param message BatchAnnotateFilesRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p4beta1.BatchAnnotateFilesRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this BatchAnnotateFilesRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for BatchAnnotateFilesRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a BatchAnnotateFilesResponse. */
+ interface IBatchAnnotateFilesResponse {
+
+ /** BatchAnnotateFilesResponse responses */
+ responses?: (google.cloud.vision.v1p4beta1.IAnnotateFileResponse[]|null);
+ }
+
+ /** Represents a BatchAnnotateFilesResponse. */
+ class BatchAnnotateFilesResponse implements IBatchAnnotateFilesResponse {
+
+ /**
+ * Constructs a new BatchAnnotateFilesResponse.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p4beta1.IBatchAnnotateFilesResponse);
+
+ /** BatchAnnotateFilesResponse responses. */
+ public responses: google.cloud.vision.v1p4beta1.IAnnotateFileResponse[];
+
+ /**
+ * Creates a new BatchAnnotateFilesResponse instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns BatchAnnotateFilesResponse instance
+ */
+ public static create(properties?: google.cloud.vision.v1p4beta1.IBatchAnnotateFilesResponse): google.cloud.vision.v1p4beta1.BatchAnnotateFilesResponse;
+
+ /**
+ * Encodes the specified BatchAnnotateFilesResponse message. Does not implicitly {@link google.cloud.vision.v1p4beta1.BatchAnnotateFilesResponse.verify|verify} messages.
+ * @param message BatchAnnotateFilesResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p4beta1.IBatchAnnotateFilesResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified BatchAnnotateFilesResponse message, length delimited. Does not implicitly {@link google.cloud.vision.v1p4beta1.BatchAnnotateFilesResponse.verify|verify} messages.
+ * @param message BatchAnnotateFilesResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p4beta1.IBatchAnnotateFilesResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a BatchAnnotateFilesResponse message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns BatchAnnotateFilesResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p4beta1.BatchAnnotateFilesResponse;
+
+ /**
+ * Decodes a BatchAnnotateFilesResponse message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns BatchAnnotateFilesResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p4beta1.BatchAnnotateFilesResponse;
+
+ /**
+ * Verifies a BatchAnnotateFilesResponse message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a BatchAnnotateFilesResponse message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns BatchAnnotateFilesResponse
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p4beta1.BatchAnnotateFilesResponse;
+
+ /**
+ * Creates a plain object from a BatchAnnotateFilesResponse message. Also converts values to other types if specified.
+ * @param message BatchAnnotateFilesResponse
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p4beta1.BatchAnnotateFilesResponse, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this BatchAnnotateFilesResponse to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for BatchAnnotateFilesResponse
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an AsyncAnnotateFileRequest. */
+ interface IAsyncAnnotateFileRequest {
+
+ /** AsyncAnnotateFileRequest inputConfig */
+ inputConfig?: (google.cloud.vision.v1p4beta1.IInputConfig|null);
+
+ /** AsyncAnnotateFileRequest features */
+ features?: (google.cloud.vision.v1p4beta1.IFeature[]|null);
+
+ /** AsyncAnnotateFileRequest imageContext */
+ imageContext?: (google.cloud.vision.v1p4beta1.IImageContext|null);
+
+ /** AsyncAnnotateFileRequest outputConfig */
+ outputConfig?: (google.cloud.vision.v1p4beta1.IOutputConfig|null);
+ }
+
+ /** Represents an AsyncAnnotateFileRequest. */
+ class AsyncAnnotateFileRequest implements IAsyncAnnotateFileRequest {
+
+ /**
+ * Constructs a new AsyncAnnotateFileRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p4beta1.IAsyncAnnotateFileRequest);
+
+ /** AsyncAnnotateFileRequest inputConfig. */
+ public inputConfig?: (google.cloud.vision.v1p4beta1.IInputConfig|null);
+
+ /** AsyncAnnotateFileRequest features. */
+ public features: google.cloud.vision.v1p4beta1.IFeature[];
+
+ /** AsyncAnnotateFileRequest imageContext. */
+ public imageContext?: (google.cloud.vision.v1p4beta1.IImageContext|null);
+
+ /** AsyncAnnotateFileRequest outputConfig. */
+ public outputConfig?: (google.cloud.vision.v1p4beta1.IOutputConfig|null);
+
+ /**
+ * Creates a new AsyncAnnotateFileRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns AsyncAnnotateFileRequest instance
+ */
+ public static create(properties?: google.cloud.vision.v1p4beta1.IAsyncAnnotateFileRequest): google.cloud.vision.v1p4beta1.AsyncAnnotateFileRequest;
+
+ /**
+ * Encodes the specified AsyncAnnotateFileRequest message. Does not implicitly {@link google.cloud.vision.v1p4beta1.AsyncAnnotateFileRequest.verify|verify} messages.
+ * @param message AsyncAnnotateFileRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p4beta1.IAsyncAnnotateFileRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified AsyncAnnotateFileRequest message, length delimited. Does not implicitly {@link google.cloud.vision.v1p4beta1.AsyncAnnotateFileRequest.verify|verify} messages.
+ * @param message AsyncAnnotateFileRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p4beta1.IAsyncAnnotateFileRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an AsyncAnnotateFileRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns AsyncAnnotateFileRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p4beta1.AsyncAnnotateFileRequest;
+
+ /**
+ * Decodes an AsyncAnnotateFileRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns AsyncAnnotateFileRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p4beta1.AsyncAnnotateFileRequest;
+
+ /**
+ * Verifies an AsyncAnnotateFileRequest message.
+ * @param message Plain 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 AsyncAnnotateFileRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns AsyncAnnotateFileRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p4beta1.AsyncAnnotateFileRequest;
+
+ /**
+ * Creates a plain object from an AsyncAnnotateFileRequest message. Also converts values to other types if specified.
+ * @param message AsyncAnnotateFileRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p4beta1.AsyncAnnotateFileRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this AsyncAnnotateFileRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for AsyncAnnotateFileRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an AsyncAnnotateFileResponse. */
+ interface IAsyncAnnotateFileResponse {
+
+ /** AsyncAnnotateFileResponse outputConfig */
+ outputConfig?: (google.cloud.vision.v1p4beta1.IOutputConfig|null);
+ }
+
+ /** Represents an AsyncAnnotateFileResponse. */
+ class AsyncAnnotateFileResponse implements IAsyncAnnotateFileResponse {
+
+ /**
+ * Constructs a new AsyncAnnotateFileResponse.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p4beta1.IAsyncAnnotateFileResponse);
+
+ /** AsyncAnnotateFileResponse outputConfig. */
+ public outputConfig?: (google.cloud.vision.v1p4beta1.IOutputConfig|null);
+
+ /**
+ * Creates a new AsyncAnnotateFileResponse instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns AsyncAnnotateFileResponse instance
+ */
+ public static create(properties?: google.cloud.vision.v1p4beta1.IAsyncAnnotateFileResponse): google.cloud.vision.v1p4beta1.AsyncAnnotateFileResponse;
+
+ /**
+ * Encodes the specified AsyncAnnotateFileResponse message. Does not implicitly {@link google.cloud.vision.v1p4beta1.AsyncAnnotateFileResponse.verify|verify} messages.
+ * @param message AsyncAnnotateFileResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p4beta1.IAsyncAnnotateFileResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified AsyncAnnotateFileResponse message, length delimited. Does not implicitly {@link google.cloud.vision.v1p4beta1.AsyncAnnotateFileResponse.verify|verify} messages.
+ * @param message AsyncAnnotateFileResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p4beta1.IAsyncAnnotateFileResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an AsyncAnnotateFileResponse message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns AsyncAnnotateFileResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p4beta1.AsyncAnnotateFileResponse;
+
+ /**
+ * Decodes an AsyncAnnotateFileResponse message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns AsyncAnnotateFileResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p4beta1.AsyncAnnotateFileResponse;
+
+ /**
+ * Verifies an AsyncAnnotateFileResponse message.
+ * @param message Plain 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 AsyncAnnotateFileResponse message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns AsyncAnnotateFileResponse
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p4beta1.AsyncAnnotateFileResponse;
+
+ /**
+ * Creates a plain object from an AsyncAnnotateFileResponse message. Also converts values to other types if specified.
+ * @param message AsyncAnnotateFileResponse
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p4beta1.AsyncAnnotateFileResponse, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this AsyncAnnotateFileResponse to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for AsyncAnnotateFileResponse
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an AsyncBatchAnnotateImagesRequest. */
+ interface IAsyncBatchAnnotateImagesRequest {
+
+ /** AsyncBatchAnnotateImagesRequest requests */
+ requests?: (google.cloud.vision.v1p4beta1.IAnnotateImageRequest[]|null);
+
+ /** AsyncBatchAnnotateImagesRequest outputConfig */
+ outputConfig?: (google.cloud.vision.v1p4beta1.IOutputConfig|null);
+ }
+
+ /** Represents an AsyncBatchAnnotateImagesRequest. */
+ class AsyncBatchAnnotateImagesRequest implements IAsyncBatchAnnotateImagesRequest {
+
+ /**
+ * Constructs a new AsyncBatchAnnotateImagesRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p4beta1.IAsyncBatchAnnotateImagesRequest);
+
+ /** AsyncBatchAnnotateImagesRequest requests. */
+ public requests: google.cloud.vision.v1p4beta1.IAnnotateImageRequest[];
+
+ /** AsyncBatchAnnotateImagesRequest outputConfig. */
+ public outputConfig?: (google.cloud.vision.v1p4beta1.IOutputConfig|null);
+
+ /**
+ * Creates a new AsyncBatchAnnotateImagesRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns AsyncBatchAnnotateImagesRequest instance
+ */
+ public static create(properties?: google.cloud.vision.v1p4beta1.IAsyncBatchAnnotateImagesRequest): google.cloud.vision.v1p4beta1.AsyncBatchAnnotateImagesRequest;
+
+ /**
+ * Encodes the specified AsyncBatchAnnotateImagesRequest message. Does not implicitly {@link google.cloud.vision.v1p4beta1.AsyncBatchAnnotateImagesRequest.verify|verify} messages.
+ * @param message AsyncBatchAnnotateImagesRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p4beta1.IAsyncBatchAnnotateImagesRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified AsyncBatchAnnotateImagesRequest message, length delimited. Does not implicitly {@link google.cloud.vision.v1p4beta1.AsyncBatchAnnotateImagesRequest.verify|verify} messages.
+ * @param message AsyncBatchAnnotateImagesRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p4beta1.IAsyncBatchAnnotateImagesRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an AsyncBatchAnnotateImagesRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns AsyncBatchAnnotateImagesRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p4beta1.AsyncBatchAnnotateImagesRequest;
+
+ /**
+ * Decodes an AsyncBatchAnnotateImagesRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns AsyncBatchAnnotateImagesRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p4beta1.AsyncBatchAnnotateImagesRequest;
+
+ /**
+ * Verifies an AsyncBatchAnnotateImagesRequest message.
+ * @param message Plain 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 AsyncBatchAnnotateImagesRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns AsyncBatchAnnotateImagesRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p4beta1.AsyncBatchAnnotateImagesRequest;
+
+ /**
+ * Creates a plain object from an AsyncBatchAnnotateImagesRequest message. Also converts values to other types if specified.
+ * @param message AsyncBatchAnnotateImagesRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p4beta1.AsyncBatchAnnotateImagesRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this AsyncBatchAnnotateImagesRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for AsyncBatchAnnotateImagesRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an AsyncBatchAnnotateImagesResponse. */
+ interface IAsyncBatchAnnotateImagesResponse {
+
+ /** AsyncBatchAnnotateImagesResponse outputConfig */
+ outputConfig?: (google.cloud.vision.v1p4beta1.IOutputConfig|null);
+ }
+
+ /** Represents an AsyncBatchAnnotateImagesResponse. */
+ class AsyncBatchAnnotateImagesResponse implements IAsyncBatchAnnotateImagesResponse {
+
+ /**
+ * Constructs a new AsyncBatchAnnotateImagesResponse.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p4beta1.IAsyncBatchAnnotateImagesResponse);
+
+ /** AsyncBatchAnnotateImagesResponse outputConfig. */
+ public outputConfig?: (google.cloud.vision.v1p4beta1.IOutputConfig|null);
+
+ /**
+ * Creates a new AsyncBatchAnnotateImagesResponse instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns AsyncBatchAnnotateImagesResponse instance
+ */
+ public static create(properties?: google.cloud.vision.v1p4beta1.IAsyncBatchAnnotateImagesResponse): google.cloud.vision.v1p4beta1.AsyncBatchAnnotateImagesResponse;
+
+ /**
+ * Encodes the specified AsyncBatchAnnotateImagesResponse message. Does not implicitly {@link google.cloud.vision.v1p4beta1.AsyncBatchAnnotateImagesResponse.verify|verify} messages.
+ * @param message AsyncBatchAnnotateImagesResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p4beta1.IAsyncBatchAnnotateImagesResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified AsyncBatchAnnotateImagesResponse message, length delimited. Does not implicitly {@link google.cloud.vision.v1p4beta1.AsyncBatchAnnotateImagesResponse.verify|verify} messages.
+ * @param message AsyncBatchAnnotateImagesResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p4beta1.IAsyncBatchAnnotateImagesResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an AsyncBatchAnnotateImagesResponse message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns AsyncBatchAnnotateImagesResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p4beta1.AsyncBatchAnnotateImagesResponse;
+
+ /**
+ * Decodes an AsyncBatchAnnotateImagesResponse message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns AsyncBatchAnnotateImagesResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p4beta1.AsyncBatchAnnotateImagesResponse;
+
+ /**
+ * Verifies an AsyncBatchAnnotateImagesResponse message.
+ * @param message Plain 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 AsyncBatchAnnotateImagesResponse message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns AsyncBatchAnnotateImagesResponse
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p4beta1.AsyncBatchAnnotateImagesResponse;
+
+ /**
+ * Creates a plain object from an AsyncBatchAnnotateImagesResponse message. Also converts values to other types if specified.
+ * @param message AsyncBatchAnnotateImagesResponse
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p4beta1.AsyncBatchAnnotateImagesResponse, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this AsyncBatchAnnotateImagesResponse to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for AsyncBatchAnnotateImagesResponse
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an AsyncBatchAnnotateFilesRequest. */
+ interface IAsyncBatchAnnotateFilesRequest {
+
+ /** AsyncBatchAnnotateFilesRequest requests */
+ requests?: (google.cloud.vision.v1p4beta1.IAsyncAnnotateFileRequest[]|null);
+ }
+
+ /** Represents an AsyncBatchAnnotateFilesRequest. */
+ class AsyncBatchAnnotateFilesRequest implements IAsyncBatchAnnotateFilesRequest {
+
+ /**
+ * Constructs a new AsyncBatchAnnotateFilesRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p4beta1.IAsyncBatchAnnotateFilesRequest);
+
+ /** AsyncBatchAnnotateFilesRequest requests. */
+ public requests: google.cloud.vision.v1p4beta1.IAsyncAnnotateFileRequest[];
+
+ /**
+ * Creates a new AsyncBatchAnnotateFilesRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns AsyncBatchAnnotateFilesRequest instance
+ */
+ public static create(properties?: google.cloud.vision.v1p4beta1.IAsyncBatchAnnotateFilesRequest): google.cloud.vision.v1p4beta1.AsyncBatchAnnotateFilesRequest;
+
+ /**
+ * Encodes the specified AsyncBatchAnnotateFilesRequest message. Does not implicitly {@link google.cloud.vision.v1p4beta1.AsyncBatchAnnotateFilesRequest.verify|verify} messages.
+ * @param message AsyncBatchAnnotateFilesRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p4beta1.IAsyncBatchAnnotateFilesRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified AsyncBatchAnnotateFilesRequest message, length delimited. Does not implicitly {@link google.cloud.vision.v1p4beta1.AsyncBatchAnnotateFilesRequest.verify|verify} messages.
+ * @param message AsyncBatchAnnotateFilesRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p4beta1.IAsyncBatchAnnotateFilesRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an AsyncBatchAnnotateFilesRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns AsyncBatchAnnotateFilesRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p4beta1.AsyncBatchAnnotateFilesRequest;
+
+ /**
+ * Decodes an AsyncBatchAnnotateFilesRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns AsyncBatchAnnotateFilesRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p4beta1.AsyncBatchAnnotateFilesRequest;
+
+ /**
+ * Verifies an AsyncBatchAnnotateFilesRequest message.
+ * @param message Plain 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 AsyncBatchAnnotateFilesRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns AsyncBatchAnnotateFilesRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p4beta1.AsyncBatchAnnotateFilesRequest;
+
+ /**
+ * Creates a plain object from an AsyncBatchAnnotateFilesRequest message. Also converts values to other types if specified.
+ * @param message AsyncBatchAnnotateFilesRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p4beta1.AsyncBatchAnnotateFilesRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this AsyncBatchAnnotateFilesRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for AsyncBatchAnnotateFilesRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an AsyncBatchAnnotateFilesResponse. */
+ interface IAsyncBatchAnnotateFilesResponse {
+
+ /** AsyncBatchAnnotateFilesResponse responses */
+ responses?: (google.cloud.vision.v1p4beta1.IAsyncAnnotateFileResponse[]|null);
+ }
+
+ /** Represents an AsyncBatchAnnotateFilesResponse. */
+ class AsyncBatchAnnotateFilesResponse implements IAsyncBatchAnnotateFilesResponse {
+
+ /**
+ * Constructs a new AsyncBatchAnnotateFilesResponse.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p4beta1.IAsyncBatchAnnotateFilesResponse);
+
+ /** AsyncBatchAnnotateFilesResponse responses. */
+ public responses: google.cloud.vision.v1p4beta1.IAsyncAnnotateFileResponse[];
+
+ /**
+ * Creates a new AsyncBatchAnnotateFilesResponse instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns AsyncBatchAnnotateFilesResponse instance
+ */
+ public static create(properties?: google.cloud.vision.v1p4beta1.IAsyncBatchAnnotateFilesResponse): google.cloud.vision.v1p4beta1.AsyncBatchAnnotateFilesResponse;
+
+ /**
+ * Encodes the specified AsyncBatchAnnotateFilesResponse message. Does not implicitly {@link google.cloud.vision.v1p4beta1.AsyncBatchAnnotateFilesResponse.verify|verify} messages.
+ * @param message AsyncBatchAnnotateFilesResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p4beta1.IAsyncBatchAnnotateFilesResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified AsyncBatchAnnotateFilesResponse message, length delimited. Does not implicitly {@link google.cloud.vision.v1p4beta1.AsyncBatchAnnotateFilesResponse.verify|verify} messages.
+ * @param message AsyncBatchAnnotateFilesResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p4beta1.IAsyncBatchAnnotateFilesResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an AsyncBatchAnnotateFilesResponse message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns AsyncBatchAnnotateFilesResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p4beta1.AsyncBatchAnnotateFilesResponse;
+
+ /**
+ * Decodes an AsyncBatchAnnotateFilesResponse message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns AsyncBatchAnnotateFilesResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p4beta1.AsyncBatchAnnotateFilesResponse;
+
+ /**
+ * Verifies an AsyncBatchAnnotateFilesResponse message.
+ * @param message Plain 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 AsyncBatchAnnotateFilesResponse message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns AsyncBatchAnnotateFilesResponse
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p4beta1.AsyncBatchAnnotateFilesResponse;
+
+ /**
+ * Creates a plain object from an AsyncBatchAnnotateFilesResponse message. Also converts values to other types if specified.
+ * @param message AsyncBatchAnnotateFilesResponse
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p4beta1.AsyncBatchAnnotateFilesResponse, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this AsyncBatchAnnotateFilesResponse to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for AsyncBatchAnnotateFilesResponse
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an InputConfig. */
+ interface IInputConfig {
+
+ /** InputConfig gcsSource */
+ gcsSource?: (google.cloud.vision.v1p4beta1.IGcsSource|null);
+
+ /** InputConfig content */
+ content?: (Uint8Array|string|null);
+
+ /** InputConfig mimeType */
+ mimeType?: (string|null);
+ }
+
+ /** Represents an InputConfig. */
+ class InputConfig implements IInputConfig {
+
+ /**
+ * Constructs a new InputConfig.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p4beta1.IInputConfig);
+
+ /** InputConfig gcsSource. */
+ public gcsSource?: (google.cloud.vision.v1p4beta1.IGcsSource|null);
+
+ /** InputConfig content. */
+ public content: (Uint8Array|string);
+
+ /** InputConfig mimeType. */
+ public mimeType: string;
+
+ /**
+ * Creates a new InputConfig instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns InputConfig instance
+ */
+ public static create(properties?: google.cloud.vision.v1p4beta1.IInputConfig): google.cloud.vision.v1p4beta1.InputConfig;
+
+ /**
+ * Encodes the specified InputConfig message. Does not implicitly {@link google.cloud.vision.v1p4beta1.InputConfig.verify|verify} messages.
+ * @param message InputConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p4beta1.IInputConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified InputConfig message, length delimited. Does not implicitly {@link google.cloud.vision.v1p4beta1.InputConfig.verify|verify} messages.
+ * @param message InputConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p4beta1.IInputConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an InputConfig message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns InputConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p4beta1.InputConfig;
+
+ /**
+ * Decodes an InputConfig message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns InputConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p4beta1.InputConfig;
+
+ /**
+ * Verifies an InputConfig message.
+ * @param message Plain 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 InputConfig message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns InputConfig
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p4beta1.InputConfig;
+
+ /**
+ * Creates a plain object from an InputConfig message. Also converts values to other types if specified.
+ * @param message InputConfig
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p4beta1.InputConfig, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this InputConfig to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for InputConfig
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an OutputConfig. */
+ interface IOutputConfig {
+
+ /** OutputConfig gcsDestination */
+ gcsDestination?: (google.cloud.vision.v1p4beta1.IGcsDestination|null);
+
+ /** OutputConfig batchSize */
+ batchSize?: (number|null);
+ }
+
+ /** Represents an OutputConfig. */
+ class OutputConfig implements IOutputConfig {
+
+ /**
+ * Constructs a new OutputConfig.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p4beta1.IOutputConfig);
+
+ /** OutputConfig gcsDestination. */
+ public gcsDestination?: (google.cloud.vision.v1p4beta1.IGcsDestination|null);
+
+ /** OutputConfig batchSize. */
+ public batchSize: number;
+
+ /**
+ * Creates a new OutputConfig instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns OutputConfig instance
+ */
+ public static create(properties?: google.cloud.vision.v1p4beta1.IOutputConfig): google.cloud.vision.v1p4beta1.OutputConfig;
+
+ /**
+ * Encodes the specified OutputConfig message. Does not implicitly {@link google.cloud.vision.v1p4beta1.OutputConfig.verify|verify} messages.
+ * @param message OutputConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p4beta1.IOutputConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified OutputConfig message, length delimited. Does not implicitly {@link google.cloud.vision.v1p4beta1.OutputConfig.verify|verify} messages.
+ * @param message OutputConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p4beta1.IOutputConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an OutputConfig message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns OutputConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p4beta1.OutputConfig;
+
+ /**
+ * Decodes an OutputConfig message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns OutputConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p4beta1.OutputConfig;
+
+ /**
+ * Verifies an OutputConfig message.
+ * @param message Plain 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 OutputConfig message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns OutputConfig
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p4beta1.OutputConfig;
+
+ /**
+ * Creates a plain object from an OutputConfig message. Also converts values to other types if specified.
+ * @param message OutputConfig
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p4beta1.OutputConfig, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this OutputConfig to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for OutputConfig
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a GcsSource. */
+ interface IGcsSource {
+
+ /** GcsSource uri */
+ uri?: (string|null);
+ }
+
+ /** Represents a GcsSource. */
+ class GcsSource implements IGcsSource {
+
+ /**
+ * Constructs a new GcsSource.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p4beta1.IGcsSource);
+
+ /** GcsSource uri. */
+ public uri: string;
+
+ /**
+ * Creates a new GcsSource instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns GcsSource instance
+ */
+ public static create(properties?: google.cloud.vision.v1p4beta1.IGcsSource): google.cloud.vision.v1p4beta1.GcsSource;
+
+ /**
+ * Encodes the specified GcsSource message. Does not implicitly {@link google.cloud.vision.v1p4beta1.GcsSource.verify|verify} messages.
+ * @param message GcsSource message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p4beta1.IGcsSource, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified GcsSource message, length delimited. Does not implicitly {@link google.cloud.vision.v1p4beta1.GcsSource.verify|verify} messages.
+ * @param message GcsSource message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p4beta1.IGcsSource, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a GcsSource message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns GcsSource
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p4beta1.GcsSource;
+
+ /**
+ * Decodes a GcsSource message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns GcsSource
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p4beta1.GcsSource;
+
+ /**
+ * Verifies a GcsSource message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a GcsSource message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns GcsSource
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p4beta1.GcsSource;
+
+ /**
+ * Creates a plain object from a GcsSource message. Also converts values to other types if specified.
+ * @param message GcsSource
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p4beta1.GcsSource, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this GcsSource to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for GcsSource
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a GcsDestination. */
+ interface IGcsDestination {
+
+ /** GcsDestination uri */
+ uri?: (string|null);
+ }
+
+ /** Represents a GcsDestination. */
+ class GcsDestination implements IGcsDestination {
+
+ /**
+ * Constructs a new GcsDestination.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p4beta1.IGcsDestination);
+
+ /** GcsDestination uri. */
+ public uri: string;
+
+ /**
+ * Creates a new GcsDestination instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns GcsDestination instance
+ */
+ public static create(properties?: google.cloud.vision.v1p4beta1.IGcsDestination): google.cloud.vision.v1p4beta1.GcsDestination;
+
+ /**
+ * Encodes the specified GcsDestination message. Does not implicitly {@link google.cloud.vision.v1p4beta1.GcsDestination.verify|verify} messages.
+ * @param message GcsDestination message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p4beta1.IGcsDestination, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified GcsDestination message, length delimited. Does not implicitly {@link google.cloud.vision.v1p4beta1.GcsDestination.verify|verify} messages.
+ * @param message GcsDestination message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p4beta1.IGcsDestination, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a GcsDestination message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns GcsDestination
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p4beta1.GcsDestination;
+
+ /**
+ * Decodes a GcsDestination message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns GcsDestination
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p4beta1.GcsDestination;
+
+ /**
+ * Verifies a GcsDestination message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a GcsDestination message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns GcsDestination
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p4beta1.GcsDestination;
+
+ /**
+ * Creates a plain object from a GcsDestination message. Also converts values to other types if specified.
+ * @param message GcsDestination
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p4beta1.GcsDestination, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this GcsDestination to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for GcsDestination
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an OperationMetadata. */
+ interface IOperationMetadata {
+
+ /** OperationMetadata state */
+ state?: (google.cloud.vision.v1p4beta1.OperationMetadata.State|keyof typeof google.cloud.vision.v1p4beta1.OperationMetadata.State|null);
+
+ /** OperationMetadata createTime */
+ createTime?: (google.protobuf.ITimestamp|null);
+
+ /** OperationMetadata updateTime */
+ updateTime?: (google.protobuf.ITimestamp|null);
+ }
+
+ /** Represents an OperationMetadata. */
+ class OperationMetadata implements IOperationMetadata {
+
+ /**
+ * Constructs a new OperationMetadata.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p4beta1.IOperationMetadata);
+
+ /** OperationMetadata state. */
+ public state: (google.cloud.vision.v1p4beta1.OperationMetadata.State|keyof typeof google.cloud.vision.v1p4beta1.OperationMetadata.State);
+
+ /** OperationMetadata createTime. */
+ public createTime?: (google.protobuf.ITimestamp|null);
+
+ /** OperationMetadata updateTime. */
+ public updateTime?: (google.protobuf.ITimestamp|null);
+
+ /**
+ * Creates a new OperationMetadata instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns OperationMetadata instance
+ */
+ public static create(properties?: google.cloud.vision.v1p4beta1.IOperationMetadata): google.cloud.vision.v1p4beta1.OperationMetadata;
+
+ /**
+ * Encodes the specified OperationMetadata message. Does not implicitly {@link google.cloud.vision.v1p4beta1.OperationMetadata.verify|verify} messages.
+ * @param message OperationMetadata message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p4beta1.IOperationMetadata, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified OperationMetadata message, length delimited. Does not implicitly {@link google.cloud.vision.v1p4beta1.OperationMetadata.verify|verify} messages.
+ * @param message OperationMetadata message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p4beta1.IOperationMetadata, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an OperationMetadata message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns OperationMetadata
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p4beta1.OperationMetadata;
+
+ /**
+ * Decodes an OperationMetadata message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns OperationMetadata
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p4beta1.OperationMetadata;
+
+ /**
+ * Verifies an OperationMetadata message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates an OperationMetadata message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns OperationMetadata
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p4beta1.OperationMetadata;
+
+ /**
+ * Creates a plain object from an OperationMetadata message. Also converts values to other types if specified.
+ * @param message OperationMetadata
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p4beta1.OperationMetadata, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this OperationMetadata to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for OperationMetadata
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace OperationMetadata {
+
+ /** State enum. */
+ enum State {
+ STATE_UNSPECIFIED = 0,
+ CREATED = 1,
+ RUNNING = 2,
+ DONE = 3,
+ CANCELLED = 4
+ }
+ }
+
+ /** Properties of a ProductSearchParams. */
+ interface IProductSearchParams {
+
+ /** ProductSearchParams boundingPoly */
+ boundingPoly?: (google.cloud.vision.v1p4beta1.IBoundingPoly|null);
+
+ /** ProductSearchParams productSet */
+ productSet?: (string|null);
+
+ /** ProductSearchParams productCategories */
+ productCategories?: (string[]|null);
+
+ /** ProductSearchParams filter */
+ filter?: (string|null);
+ }
+
+ /** Represents a ProductSearchParams. */
+ class ProductSearchParams implements IProductSearchParams {
+
+ /**
+ * Constructs a new ProductSearchParams.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p4beta1.IProductSearchParams);
+
+ /** ProductSearchParams boundingPoly. */
+ public boundingPoly?: (google.cloud.vision.v1p4beta1.IBoundingPoly|null);
+
+ /** ProductSearchParams productSet. */
+ public productSet: string;
+
+ /** ProductSearchParams productCategories. */
+ public productCategories: string[];
+
+ /** ProductSearchParams filter. */
+ public filter: string;
+
+ /**
+ * Creates a new ProductSearchParams instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ProductSearchParams instance
+ */
+ public static create(properties?: google.cloud.vision.v1p4beta1.IProductSearchParams): google.cloud.vision.v1p4beta1.ProductSearchParams;
+
+ /**
+ * Encodes the specified ProductSearchParams message. Does not implicitly {@link google.cloud.vision.v1p4beta1.ProductSearchParams.verify|verify} messages.
+ * @param message ProductSearchParams message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p4beta1.IProductSearchParams, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ProductSearchParams message, length delimited. Does not implicitly {@link google.cloud.vision.v1p4beta1.ProductSearchParams.verify|verify} messages.
+ * @param message ProductSearchParams message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p4beta1.IProductSearchParams, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ProductSearchParams message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ProductSearchParams
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p4beta1.ProductSearchParams;
+
+ /**
+ * Decodes a ProductSearchParams message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ProductSearchParams
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p4beta1.ProductSearchParams;
+
+ /**
+ * Verifies a ProductSearchParams message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ProductSearchParams message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ProductSearchParams
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p4beta1.ProductSearchParams;
+
+ /**
+ * Creates a plain object from a ProductSearchParams message. Also converts values to other types if specified.
+ * @param message ProductSearchParams
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p4beta1.ProductSearchParams, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ProductSearchParams to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ProductSearchParams
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ProductSearchResults. */
+ interface IProductSearchResults {
+
+ /** ProductSearchResults indexTime */
+ indexTime?: (google.protobuf.ITimestamp|null);
+
+ /** ProductSearchResults results */
+ results?: (google.cloud.vision.v1p4beta1.ProductSearchResults.IResult[]|null);
+
+ /** ProductSearchResults productGroupedResults */
+ productGroupedResults?: (google.cloud.vision.v1p4beta1.ProductSearchResults.IGroupedResult[]|null);
+ }
+
+ /** Represents a ProductSearchResults. */
+ class ProductSearchResults implements IProductSearchResults {
+
+ /**
+ * Constructs a new ProductSearchResults.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p4beta1.IProductSearchResults);
+
+ /** ProductSearchResults indexTime. */
+ public indexTime?: (google.protobuf.ITimestamp|null);
+
+ /** ProductSearchResults results. */
+ public results: google.cloud.vision.v1p4beta1.ProductSearchResults.IResult[];
+
+ /** ProductSearchResults productGroupedResults. */
+ public productGroupedResults: google.cloud.vision.v1p4beta1.ProductSearchResults.IGroupedResult[];
+
+ /**
+ * Creates a new ProductSearchResults instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ProductSearchResults instance
+ */
+ public static create(properties?: google.cloud.vision.v1p4beta1.IProductSearchResults): google.cloud.vision.v1p4beta1.ProductSearchResults;
+
+ /**
+ * Encodes the specified ProductSearchResults message. Does not implicitly {@link google.cloud.vision.v1p4beta1.ProductSearchResults.verify|verify} messages.
+ * @param message ProductSearchResults message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p4beta1.IProductSearchResults, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ProductSearchResults message, length delimited. Does not implicitly {@link google.cloud.vision.v1p4beta1.ProductSearchResults.verify|verify} messages.
+ * @param message ProductSearchResults message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p4beta1.IProductSearchResults, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ProductSearchResults message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ProductSearchResults
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p4beta1.ProductSearchResults;
+
+ /**
+ * Decodes a ProductSearchResults message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ProductSearchResults
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p4beta1.ProductSearchResults;
+
+ /**
+ * Verifies a ProductSearchResults message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ProductSearchResults message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ProductSearchResults
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p4beta1.ProductSearchResults;
+
+ /**
+ * Creates a plain object from a ProductSearchResults message. Also converts values to other types if specified.
+ * @param message ProductSearchResults
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p4beta1.ProductSearchResults, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ProductSearchResults to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ProductSearchResults
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace ProductSearchResults {
+
+ /** Properties of a Result. */
+ interface IResult {
+
+ /** Result product */
+ product?: (google.cloud.vision.v1p4beta1.IProduct|null);
+
+ /** Result score */
+ score?: (number|null);
+
+ /** Result image */
+ image?: (string|null);
+ }
+
+ /** Represents a Result. */
+ class Result implements IResult {
+
+ /**
+ * Constructs a new Result.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p4beta1.ProductSearchResults.IResult);
+
+ /** Result product. */
+ public product?: (google.cloud.vision.v1p4beta1.IProduct|null);
+
+ /** Result score. */
+ public score: number;
+
+ /** Result image. */
+ public image: string;
+
+ /**
+ * Creates a new Result instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Result instance
+ */
+ public static create(properties?: google.cloud.vision.v1p4beta1.ProductSearchResults.IResult): google.cloud.vision.v1p4beta1.ProductSearchResults.Result;
+
+ /**
+ * Encodes the specified Result message. Does not implicitly {@link google.cloud.vision.v1p4beta1.ProductSearchResults.Result.verify|verify} messages.
+ * @param message Result message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p4beta1.ProductSearchResults.IResult, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Result message, length delimited. Does not implicitly {@link google.cloud.vision.v1p4beta1.ProductSearchResults.Result.verify|verify} messages.
+ * @param message Result message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p4beta1.ProductSearchResults.IResult, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Result message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Result
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p4beta1.ProductSearchResults.Result;
+
+ /**
+ * Decodes a Result message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Result
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p4beta1.ProductSearchResults.Result;
+
+ /**
+ * Verifies a Result message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a Result message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Result
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p4beta1.ProductSearchResults.Result;
+
+ /**
+ * Creates a plain object from a Result message. Also converts values to other types if specified.
+ * @param message Result
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p4beta1.ProductSearchResults.Result, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Result to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Result
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an ObjectAnnotation. */
+ interface IObjectAnnotation {
+
+ /** ObjectAnnotation mid */
+ mid?: (string|null);
+
+ /** ObjectAnnotation languageCode */
+ languageCode?: (string|null);
+
+ /** ObjectAnnotation name */
+ name?: (string|null);
+
+ /** ObjectAnnotation score */
+ score?: (number|null);
+ }
+
+ /** Represents an ObjectAnnotation. */
+ class ObjectAnnotation implements IObjectAnnotation {
+
+ /**
+ * Constructs a new ObjectAnnotation.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p4beta1.ProductSearchResults.IObjectAnnotation);
+
+ /** ObjectAnnotation mid. */
+ public mid: string;
+
+ /** ObjectAnnotation languageCode. */
+ public languageCode: string;
+
+ /** ObjectAnnotation name. */
+ public name: string;
+
+ /** ObjectAnnotation score. */
+ public score: number;
+
+ /**
+ * Creates a new ObjectAnnotation instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ObjectAnnotation instance
+ */
+ public static create(properties?: google.cloud.vision.v1p4beta1.ProductSearchResults.IObjectAnnotation): google.cloud.vision.v1p4beta1.ProductSearchResults.ObjectAnnotation;
+
+ /**
+ * Encodes the specified ObjectAnnotation message. Does not implicitly {@link google.cloud.vision.v1p4beta1.ProductSearchResults.ObjectAnnotation.verify|verify} messages.
+ * @param message ObjectAnnotation message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p4beta1.ProductSearchResults.IObjectAnnotation, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ObjectAnnotation message, length delimited. Does not implicitly {@link google.cloud.vision.v1p4beta1.ProductSearchResults.ObjectAnnotation.verify|verify} messages.
+ * @param message ObjectAnnotation message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p4beta1.ProductSearchResults.IObjectAnnotation, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an ObjectAnnotation message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ObjectAnnotation
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p4beta1.ProductSearchResults.ObjectAnnotation;
+
+ /**
+ * Decodes an ObjectAnnotation message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ObjectAnnotation
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p4beta1.ProductSearchResults.ObjectAnnotation;
+
+ /**
+ * Verifies an ObjectAnnotation message.
+ * @param message Plain 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 ObjectAnnotation message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ObjectAnnotation
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p4beta1.ProductSearchResults.ObjectAnnotation;
+
+ /**
+ * Creates a plain object from an ObjectAnnotation message. Also converts values to other types if specified.
+ * @param message ObjectAnnotation
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p4beta1.ProductSearchResults.ObjectAnnotation, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ObjectAnnotation to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ObjectAnnotation
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a GroupedResult. */
+ interface IGroupedResult {
+
+ /** GroupedResult boundingPoly */
+ boundingPoly?: (google.cloud.vision.v1p4beta1.IBoundingPoly|null);
+
+ /** GroupedResult results */
+ results?: (google.cloud.vision.v1p4beta1.ProductSearchResults.IResult[]|null);
+
+ /** GroupedResult objectAnnotations */
+ objectAnnotations?: (google.cloud.vision.v1p4beta1.ProductSearchResults.IObjectAnnotation[]|null);
+ }
+
+ /** Represents a GroupedResult. */
+ class GroupedResult implements IGroupedResult {
+
+ /**
+ * Constructs a new GroupedResult.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p4beta1.ProductSearchResults.IGroupedResult);
+
+ /** GroupedResult boundingPoly. */
+ public boundingPoly?: (google.cloud.vision.v1p4beta1.IBoundingPoly|null);
+
+ /** GroupedResult results. */
+ public results: google.cloud.vision.v1p4beta1.ProductSearchResults.IResult[];
+
+ /** GroupedResult objectAnnotations. */
+ public objectAnnotations: google.cloud.vision.v1p4beta1.ProductSearchResults.IObjectAnnotation[];
+
+ /**
+ * Creates a new GroupedResult instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns GroupedResult instance
+ */
+ public static create(properties?: google.cloud.vision.v1p4beta1.ProductSearchResults.IGroupedResult): google.cloud.vision.v1p4beta1.ProductSearchResults.GroupedResult;
+
+ /**
+ * Encodes the specified GroupedResult message. Does not implicitly {@link google.cloud.vision.v1p4beta1.ProductSearchResults.GroupedResult.verify|verify} messages.
+ * @param message GroupedResult message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p4beta1.ProductSearchResults.IGroupedResult, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified GroupedResult message, length delimited. Does not implicitly {@link google.cloud.vision.v1p4beta1.ProductSearchResults.GroupedResult.verify|verify} messages.
+ * @param message GroupedResult message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p4beta1.ProductSearchResults.IGroupedResult, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a GroupedResult message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns GroupedResult
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p4beta1.ProductSearchResults.GroupedResult;
+
+ /**
+ * Decodes a GroupedResult message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns GroupedResult
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p4beta1.ProductSearchResults.GroupedResult;
+
+ /**
+ * Verifies a GroupedResult message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a GroupedResult message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns GroupedResult
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p4beta1.ProductSearchResults.GroupedResult;
+
+ /**
+ * Creates a plain object from a GroupedResult message. Also converts values to other types if specified.
+ * @param message GroupedResult
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p4beta1.ProductSearchResults.GroupedResult, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this GroupedResult to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for GroupedResult
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+ }
+
+ /** Represents a ProductSearch */
+ class ProductSearch extends $protobuf.rpc.Service {
+
+ /**
+ * Constructs a new ProductSearch 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 ProductSearch 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): ProductSearch;
+
+ /**
+ * Calls CreateProductSet.
+ * @param request CreateProductSetRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and ProductSet
+ */
+ public createProductSet(request: google.cloud.vision.v1p4beta1.ICreateProductSetRequest, callback: google.cloud.vision.v1p4beta1.ProductSearch.CreateProductSetCallback): void;
+
+ /**
+ * Calls CreateProductSet.
+ * @param request CreateProductSetRequest message or plain object
+ * @returns Promise
+ */
+ public createProductSet(request: google.cloud.vision.v1p4beta1.ICreateProductSetRequest): Promise;
+
+ /**
+ * Calls ListProductSets.
+ * @param request ListProductSetsRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and ListProductSetsResponse
+ */
+ public listProductSets(request: google.cloud.vision.v1p4beta1.IListProductSetsRequest, callback: google.cloud.vision.v1p4beta1.ProductSearch.ListProductSetsCallback): void;
+
+ /**
+ * Calls ListProductSets.
+ * @param request ListProductSetsRequest message or plain object
+ * @returns Promise
+ */
+ public listProductSets(request: google.cloud.vision.v1p4beta1.IListProductSetsRequest): Promise;
+
+ /**
+ * Calls GetProductSet.
+ * @param request GetProductSetRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and ProductSet
+ */
+ public getProductSet(request: google.cloud.vision.v1p4beta1.IGetProductSetRequest, callback: google.cloud.vision.v1p4beta1.ProductSearch.GetProductSetCallback): void;
+
+ /**
+ * Calls GetProductSet.
+ * @param request GetProductSetRequest message or plain object
+ * @returns Promise
+ */
+ public getProductSet(request: google.cloud.vision.v1p4beta1.IGetProductSetRequest): Promise;
+
+ /**
+ * Calls UpdateProductSet.
+ * @param request UpdateProductSetRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and ProductSet
+ */
+ public updateProductSet(request: google.cloud.vision.v1p4beta1.IUpdateProductSetRequest, callback: google.cloud.vision.v1p4beta1.ProductSearch.UpdateProductSetCallback): void;
+
+ /**
+ * Calls UpdateProductSet.
+ * @param request UpdateProductSetRequest message or plain object
+ * @returns Promise
+ */
+ public updateProductSet(request: google.cloud.vision.v1p4beta1.IUpdateProductSetRequest): Promise;
+
+ /**
+ * Calls DeleteProductSet.
+ * @param request DeleteProductSetRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Empty
+ */
+ public deleteProductSet(request: google.cloud.vision.v1p4beta1.IDeleteProductSetRequest, callback: google.cloud.vision.v1p4beta1.ProductSearch.DeleteProductSetCallback): void;
+
+ /**
+ * Calls DeleteProductSet.
+ * @param request DeleteProductSetRequest message or plain object
+ * @returns Promise
+ */
+ public deleteProductSet(request: google.cloud.vision.v1p4beta1.IDeleteProductSetRequest): Promise;
+
+ /**
+ * Calls CreateProduct.
+ * @param request CreateProductRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Product
+ */
+ public createProduct(request: google.cloud.vision.v1p4beta1.ICreateProductRequest, callback: google.cloud.vision.v1p4beta1.ProductSearch.CreateProductCallback): void;
+
+ /**
+ * Calls CreateProduct.
+ * @param request CreateProductRequest message or plain object
+ * @returns Promise
+ */
+ public createProduct(request: google.cloud.vision.v1p4beta1.ICreateProductRequest): Promise;
+
+ /**
+ * Calls ListProducts.
+ * @param request ListProductsRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and ListProductsResponse
+ */
+ public listProducts(request: google.cloud.vision.v1p4beta1.IListProductsRequest, callback: google.cloud.vision.v1p4beta1.ProductSearch.ListProductsCallback): void;
+
+ /**
+ * Calls ListProducts.
+ * @param request ListProductsRequest message or plain object
+ * @returns Promise
+ */
+ public listProducts(request: google.cloud.vision.v1p4beta1.IListProductsRequest): Promise;
+
+ /**
+ * Calls GetProduct.
+ * @param request GetProductRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Product
+ */
+ public getProduct(request: google.cloud.vision.v1p4beta1.IGetProductRequest, callback: google.cloud.vision.v1p4beta1.ProductSearch.GetProductCallback): void;
+
+ /**
+ * Calls GetProduct.
+ * @param request GetProductRequest message or plain object
+ * @returns Promise
+ */
+ public getProduct(request: google.cloud.vision.v1p4beta1.IGetProductRequest): Promise;
+
+ /**
+ * Calls UpdateProduct.
+ * @param request UpdateProductRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Product
+ */
+ public updateProduct(request: google.cloud.vision.v1p4beta1.IUpdateProductRequest, callback: google.cloud.vision.v1p4beta1.ProductSearch.UpdateProductCallback): void;
+
+ /**
+ * Calls UpdateProduct.
+ * @param request UpdateProductRequest message or plain object
+ * @returns Promise
+ */
+ public updateProduct(request: google.cloud.vision.v1p4beta1.IUpdateProductRequest): Promise;
+
+ /**
+ * Calls DeleteProduct.
+ * @param request DeleteProductRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Empty
+ */
+ public deleteProduct(request: google.cloud.vision.v1p4beta1.IDeleteProductRequest, callback: google.cloud.vision.v1p4beta1.ProductSearch.DeleteProductCallback): void;
+
+ /**
+ * Calls DeleteProduct.
+ * @param request DeleteProductRequest message or plain object
+ * @returns Promise
+ */
+ public deleteProduct(request: google.cloud.vision.v1p4beta1.IDeleteProductRequest): Promise;
+
+ /**
+ * Calls CreateReferenceImage.
+ * @param request CreateReferenceImageRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and ReferenceImage
+ */
+ public createReferenceImage(request: google.cloud.vision.v1p4beta1.ICreateReferenceImageRequest, callback: google.cloud.vision.v1p4beta1.ProductSearch.CreateReferenceImageCallback): void;
+
+ /**
+ * Calls CreateReferenceImage.
+ * @param request CreateReferenceImageRequest message or plain object
+ * @returns Promise
+ */
+ public createReferenceImage(request: google.cloud.vision.v1p4beta1.ICreateReferenceImageRequest): Promise;
+
+ /**
+ * Calls DeleteReferenceImage.
+ * @param request DeleteReferenceImageRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Empty
+ */
+ public deleteReferenceImage(request: google.cloud.vision.v1p4beta1.IDeleteReferenceImageRequest, callback: google.cloud.vision.v1p4beta1.ProductSearch.DeleteReferenceImageCallback): void;
+
+ /**
+ * Calls DeleteReferenceImage.
+ * @param request DeleteReferenceImageRequest message or plain object
+ * @returns Promise
+ */
+ public deleteReferenceImage(request: google.cloud.vision.v1p4beta1.IDeleteReferenceImageRequest): Promise;
+
+ /**
+ * Calls ListReferenceImages.
+ * @param request ListReferenceImagesRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and ListReferenceImagesResponse
+ */
+ public listReferenceImages(request: google.cloud.vision.v1p4beta1.IListReferenceImagesRequest, callback: google.cloud.vision.v1p4beta1.ProductSearch.ListReferenceImagesCallback): void;
+
+ /**
+ * Calls ListReferenceImages.
+ * @param request ListReferenceImagesRequest message or plain object
+ * @returns Promise
+ */
+ public listReferenceImages(request: google.cloud.vision.v1p4beta1.IListReferenceImagesRequest): Promise;
+
+ /**
+ * Calls GetReferenceImage.
+ * @param request GetReferenceImageRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and ReferenceImage
+ */
+ public getReferenceImage(request: google.cloud.vision.v1p4beta1.IGetReferenceImageRequest, callback: google.cloud.vision.v1p4beta1.ProductSearch.GetReferenceImageCallback): void;
+
+ /**
+ * Calls GetReferenceImage.
+ * @param request GetReferenceImageRequest message or plain object
+ * @returns Promise
+ */
+ public getReferenceImage(request: google.cloud.vision.v1p4beta1.IGetReferenceImageRequest): Promise;
+
+ /**
+ * Calls AddProductToProductSet.
+ * @param request AddProductToProductSetRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Empty
+ */
+ public addProductToProductSet(request: google.cloud.vision.v1p4beta1.IAddProductToProductSetRequest, callback: google.cloud.vision.v1p4beta1.ProductSearch.AddProductToProductSetCallback): void;
+
+ /**
+ * Calls AddProductToProductSet.
+ * @param request AddProductToProductSetRequest message or plain object
+ * @returns Promise
+ */
+ public addProductToProductSet(request: google.cloud.vision.v1p4beta1.IAddProductToProductSetRequest): Promise;
+
+ /**
+ * Calls RemoveProductFromProductSet.
+ * @param request RemoveProductFromProductSetRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Empty
+ */
+ public removeProductFromProductSet(request: google.cloud.vision.v1p4beta1.IRemoveProductFromProductSetRequest, callback: google.cloud.vision.v1p4beta1.ProductSearch.RemoveProductFromProductSetCallback): void;
+
+ /**
+ * Calls RemoveProductFromProductSet.
+ * @param request RemoveProductFromProductSetRequest message or plain object
+ * @returns Promise
+ */
+ public removeProductFromProductSet(request: google.cloud.vision.v1p4beta1.IRemoveProductFromProductSetRequest): Promise;
+
+ /**
+ * Calls ListProductsInProductSet.
+ * @param request ListProductsInProductSetRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and ListProductsInProductSetResponse
+ */
+ public listProductsInProductSet(request: google.cloud.vision.v1p4beta1.IListProductsInProductSetRequest, callback: google.cloud.vision.v1p4beta1.ProductSearch.ListProductsInProductSetCallback): void;
+
+ /**
+ * Calls ListProductsInProductSet.
+ * @param request ListProductsInProductSetRequest message or plain object
+ * @returns Promise
+ */
+ public listProductsInProductSet(request: google.cloud.vision.v1p4beta1.IListProductsInProductSetRequest): Promise;
+
+ /**
+ * Calls ImportProductSets.
+ * @param request ImportProductSetsRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Operation
+ */
+ public importProductSets(request: google.cloud.vision.v1p4beta1.IImportProductSetsRequest, callback: google.cloud.vision.v1p4beta1.ProductSearch.ImportProductSetsCallback): void;
+
+ /**
+ * Calls ImportProductSets.
+ * @param request ImportProductSetsRequest message or plain object
+ * @returns Promise
+ */
+ public importProductSets(request: google.cloud.vision.v1p4beta1.IImportProductSetsRequest): Promise;
+
+ /**
+ * Calls PurgeProducts.
+ * @param request PurgeProductsRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Operation
+ */
+ public purgeProducts(request: google.cloud.vision.v1p4beta1.IPurgeProductsRequest, callback: google.cloud.vision.v1p4beta1.ProductSearch.PurgeProductsCallback): void;
+
+ /**
+ * Calls PurgeProducts.
+ * @param request PurgeProductsRequest message or plain object
+ * @returns Promise
+ */
+ public purgeProducts(request: google.cloud.vision.v1p4beta1.IPurgeProductsRequest): Promise;
+ }
+
+ namespace ProductSearch {
+
+ /**
+ * Callback as used by {@link google.cloud.vision.v1p4beta1.ProductSearch|createProductSet}.
+ * @param error Error, if any
+ * @param [response] ProductSet
+ */
+ type CreateProductSetCallback = (error: (Error|null), response?: google.cloud.vision.v1p4beta1.ProductSet) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.vision.v1p4beta1.ProductSearch|listProductSets}.
+ * @param error Error, if any
+ * @param [response] ListProductSetsResponse
+ */
+ type ListProductSetsCallback = (error: (Error|null), response?: google.cloud.vision.v1p4beta1.ListProductSetsResponse) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.vision.v1p4beta1.ProductSearch|getProductSet}.
+ * @param error Error, if any
+ * @param [response] ProductSet
+ */
+ type GetProductSetCallback = (error: (Error|null), response?: google.cloud.vision.v1p4beta1.ProductSet) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.vision.v1p4beta1.ProductSearch|updateProductSet}.
+ * @param error Error, if any
+ * @param [response] ProductSet
+ */
+ type UpdateProductSetCallback = (error: (Error|null), response?: google.cloud.vision.v1p4beta1.ProductSet) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.vision.v1p4beta1.ProductSearch|deleteProductSet}.
+ * @param error Error, if any
+ * @param [response] Empty
+ */
+ type DeleteProductSetCallback = (error: (Error|null), response?: google.protobuf.Empty) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.vision.v1p4beta1.ProductSearch|createProduct}.
+ * @param error Error, if any
+ * @param [response] Product
+ */
+ type CreateProductCallback = (error: (Error|null), response?: google.cloud.vision.v1p4beta1.Product) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.vision.v1p4beta1.ProductSearch|listProducts}.
+ * @param error Error, if any
+ * @param [response] ListProductsResponse
+ */
+ type ListProductsCallback = (error: (Error|null), response?: google.cloud.vision.v1p4beta1.ListProductsResponse) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.vision.v1p4beta1.ProductSearch|getProduct}.
+ * @param error Error, if any
+ * @param [response] Product
+ */
+ type GetProductCallback = (error: (Error|null), response?: google.cloud.vision.v1p4beta1.Product) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.vision.v1p4beta1.ProductSearch|updateProduct}.
+ * @param error Error, if any
+ * @param [response] Product
+ */
+ type UpdateProductCallback = (error: (Error|null), response?: google.cloud.vision.v1p4beta1.Product) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.vision.v1p4beta1.ProductSearch|deleteProduct}.
+ * @param error Error, if any
+ * @param [response] Empty
+ */
+ type DeleteProductCallback = (error: (Error|null), response?: google.protobuf.Empty) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.vision.v1p4beta1.ProductSearch|createReferenceImage}.
+ * @param error Error, if any
+ * @param [response] ReferenceImage
+ */
+ type CreateReferenceImageCallback = (error: (Error|null), response?: google.cloud.vision.v1p4beta1.ReferenceImage) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.vision.v1p4beta1.ProductSearch|deleteReferenceImage}.
+ * @param error Error, if any
+ * @param [response] Empty
+ */
+ type DeleteReferenceImageCallback = (error: (Error|null), response?: google.protobuf.Empty) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.vision.v1p4beta1.ProductSearch|listReferenceImages}.
+ * @param error Error, if any
+ * @param [response] ListReferenceImagesResponse
+ */
+ type ListReferenceImagesCallback = (error: (Error|null), response?: google.cloud.vision.v1p4beta1.ListReferenceImagesResponse) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.vision.v1p4beta1.ProductSearch|getReferenceImage}.
+ * @param error Error, if any
+ * @param [response] ReferenceImage
+ */
+ type GetReferenceImageCallback = (error: (Error|null), response?: google.cloud.vision.v1p4beta1.ReferenceImage) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.vision.v1p4beta1.ProductSearch|addProductToProductSet}.
+ * @param error Error, if any
+ * @param [response] Empty
+ */
+ type AddProductToProductSetCallback = (error: (Error|null), response?: google.protobuf.Empty) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.vision.v1p4beta1.ProductSearch|removeProductFromProductSet}.
+ * @param error Error, if any
+ * @param [response] Empty
+ */
+ type RemoveProductFromProductSetCallback = (error: (Error|null), response?: google.protobuf.Empty) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.vision.v1p4beta1.ProductSearch|listProductsInProductSet}.
+ * @param error Error, if any
+ * @param [response] ListProductsInProductSetResponse
+ */
+ type ListProductsInProductSetCallback = (error: (Error|null), response?: google.cloud.vision.v1p4beta1.ListProductsInProductSetResponse) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.vision.v1p4beta1.ProductSearch|importProductSets}.
+ * @param error Error, if any
+ * @param [response] Operation
+ */
+ type ImportProductSetsCallback = (error: (Error|null), response?: google.longrunning.Operation) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.vision.v1p4beta1.ProductSearch|purgeProducts}.
+ * @param error Error, if any
+ * @param [response] Operation
+ */
+ type PurgeProductsCallback = (error: (Error|null), response?: google.longrunning.Operation) => void;
+ }
+
+ /** Properties of a Product. */
+ interface IProduct {
+
+ /** Product name */
+ name?: (string|null);
+
+ /** Product displayName */
+ displayName?: (string|null);
+
+ /** Product description */
+ description?: (string|null);
+
+ /** Product productCategory */
+ productCategory?: (string|null);
+
+ /** Product productLabels */
+ productLabels?: (google.cloud.vision.v1p4beta1.Product.IKeyValue[]|null);
+ }
+
+ /** Represents a Product. */
+ class Product implements IProduct {
+
+ /**
+ * Constructs a new Product.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p4beta1.IProduct);
+
+ /** Product name. */
+ public name: string;
+
+ /** Product displayName. */
+ public displayName: string;
+
+ /** Product description. */
+ public description: string;
+
+ /** Product productCategory. */
+ public productCategory: string;
+
+ /** Product productLabels. */
+ public productLabels: google.cloud.vision.v1p4beta1.Product.IKeyValue[];
+
+ /**
+ * Creates a new Product instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Product instance
+ */
+ public static create(properties?: google.cloud.vision.v1p4beta1.IProduct): google.cloud.vision.v1p4beta1.Product;
+
+ /**
+ * Encodes the specified Product message. Does not implicitly {@link google.cloud.vision.v1p4beta1.Product.verify|verify} messages.
+ * @param message Product message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p4beta1.IProduct, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Product message, length delimited. Does not implicitly {@link google.cloud.vision.v1p4beta1.Product.verify|verify} messages.
+ * @param message Product message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p4beta1.IProduct, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Product message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Product
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p4beta1.Product;
+
+ /**
+ * Decodes a Product message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Product
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p4beta1.Product;
+
+ /**
+ * Verifies a Product message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a Product message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Product
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p4beta1.Product;
+
+ /**
+ * Creates a plain object from a Product message. Also converts values to other types if specified.
+ * @param message Product
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p4beta1.Product, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Product to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Product
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace Product {
+
+ /** Properties of a KeyValue. */
+ interface IKeyValue {
+
+ /** KeyValue key */
+ key?: (string|null);
+
+ /** KeyValue value */
+ value?: (string|null);
+ }
+
+ /** Represents a KeyValue. */
+ class KeyValue implements IKeyValue {
+
+ /**
+ * Constructs a new KeyValue.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p4beta1.Product.IKeyValue);
+
+ /** KeyValue key. */
+ public key: string;
+
+ /** KeyValue value. */
+ public value: string;
+
+ /**
+ * Creates a new KeyValue instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns KeyValue instance
+ */
+ public static create(properties?: google.cloud.vision.v1p4beta1.Product.IKeyValue): google.cloud.vision.v1p4beta1.Product.KeyValue;
+
+ /**
+ * Encodes the specified KeyValue message. Does not implicitly {@link google.cloud.vision.v1p4beta1.Product.KeyValue.verify|verify} messages.
+ * @param message KeyValue message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p4beta1.Product.IKeyValue, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified KeyValue message, length delimited. Does not implicitly {@link google.cloud.vision.v1p4beta1.Product.KeyValue.verify|verify} messages.
+ * @param message KeyValue message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p4beta1.Product.IKeyValue, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a KeyValue message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns KeyValue
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p4beta1.Product.KeyValue;
+
+ /**
+ * Decodes a KeyValue message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns KeyValue
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p4beta1.Product.KeyValue;
+
+ /**
+ * Verifies a KeyValue message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a KeyValue message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns KeyValue
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p4beta1.Product.KeyValue;
+
+ /**
+ * Creates a plain object from a KeyValue message. Also converts values to other types if specified.
+ * @param message KeyValue
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p4beta1.Product.KeyValue, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this KeyValue to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for KeyValue
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+ }
+
+ /** Properties of a ProductSet. */
+ interface IProductSet {
+
+ /** ProductSet name */
+ name?: (string|null);
+
+ /** ProductSet displayName */
+ displayName?: (string|null);
+
+ /** ProductSet indexTime */
+ indexTime?: (google.protobuf.ITimestamp|null);
+
+ /** ProductSet indexError */
+ indexError?: (google.rpc.IStatus|null);
+ }
+
+ /** Represents a ProductSet. */
+ class ProductSet implements IProductSet {
+
+ /**
+ * Constructs a new ProductSet.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p4beta1.IProductSet);
+
+ /** ProductSet name. */
+ public name: string;
+
+ /** ProductSet displayName. */
+ public displayName: string;
+
+ /** ProductSet indexTime. */
+ public indexTime?: (google.protobuf.ITimestamp|null);
+
+ /** ProductSet indexError. */
+ public indexError?: (google.rpc.IStatus|null);
+
+ /**
+ * Creates a new ProductSet instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ProductSet instance
+ */
+ public static create(properties?: google.cloud.vision.v1p4beta1.IProductSet): google.cloud.vision.v1p4beta1.ProductSet;
+
+ /**
+ * Encodes the specified ProductSet message. Does not implicitly {@link google.cloud.vision.v1p4beta1.ProductSet.verify|verify} messages.
+ * @param message ProductSet message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p4beta1.IProductSet, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ProductSet message, length delimited. Does not implicitly {@link google.cloud.vision.v1p4beta1.ProductSet.verify|verify} messages.
+ * @param message ProductSet message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p4beta1.IProductSet, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ProductSet message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ProductSet
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p4beta1.ProductSet;
+
+ /**
+ * Decodes a ProductSet message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ProductSet
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p4beta1.ProductSet;
+
+ /**
+ * Verifies a ProductSet message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ProductSet message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ProductSet
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p4beta1.ProductSet;
+
+ /**
+ * Creates a plain object from a ProductSet message. Also converts values to other types if specified.
+ * @param message ProductSet
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p4beta1.ProductSet, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ProductSet to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ProductSet
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ReferenceImage. */
+ interface IReferenceImage {
+
+ /** ReferenceImage name */
+ name?: (string|null);
+
+ /** ReferenceImage uri */
+ uri?: (string|null);
+
+ /** ReferenceImage boundingPolys */
+ boundingPolys?: (google.cloud.vision.v1p4beta1.IBoundingPoly[]|null);
+ }
+
+ /** Represents a ReferenceImage. */
+ class ReferenceImage implements IReferenceImage {
+
+ /**
+ * Constructs a new ReferenceImage.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p4beta1.IReferenceImage);
+
+ /** ReferenceImage name. */
+ public name: string;
+
+ /** ReferenceImage uri. */
+ public uri: string;
+
+ /** ReferenceImage boundingPolys. */
+ public boundingPolys: google.cloud.vision.v1p4beta1.IBoundingPoly[];
+
+ /**
+ * Creates a new ReferenceImage instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ReferenceImage instance
+ */
+ public static create(properties?: google.cloud.vision.v1p4beta1.IReferenceImage): google.cloud.vision.v1p4beta1.ReferenceImage;
+
+ /**
+ * Encodes the specified ReferenceImage message. Does not implicitly {@link google.cloud.vision.v1p4beta1.ReferenceImage.verify|verify} messages.
+ * @param message ReferenceImage message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p4beta1.IReferenceImage, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ReferenceImage message, length delimited. Does not implicitly {@link google.cloud.vision.v1p4beta1.ReferenceImage.verify|verify} messages.
+ * @param message ReferenceImage message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p4beta1.IReferenceImage, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ReferenceImage message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ReferenceImage
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p4beta1.ReferenceImage;
+
+ /**
+ * Decodes a ReferenceImage message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ReferenceImage
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p4beta1.ReferenceImage;
+
+ /**
+ * Verifies a ReferenceImage message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ReferenceImage message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ReferenceImage
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p4beta1.ReferenceImage;
+
+ /**
+ * Creates a plain object from a ReferenceImage message. Also converts values to other types if specified.
+ * @param message ReferenceImage
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p4beta1.ReferenceImage, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ReferenceImage to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ReferenceImage
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a CreateProductRequest. */
+ interface ICreateProductRequest {
+
+ /** CreateProductRequest parent */
+ parent?: (string|null);
+
+ /** CreateProductRequest product */
+ product?: (google.cloud.vision.v1p4beta1.IProduct|null);
+
+ /** CreateProductRequest productId */
+ productId?: (string|null);
+ }
+
+ /** Represents a CreateProductRequest. */
+ class CreateProductRequest implements ICreateProductRequest {
+
+ /**
+ * Constructs a new CreateProductRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p4beta1.ICreateProductRequest);
+
+ /** CreateProductRequest parent. */
+ public parent: string;
+
+ /** CreateProductRequest product. */
+ public product?: (google.cloud.vision.v1p4beta1.IProduct|null);
+
+ /** CreateProductRequest productId. */
+ public productId: string;
+
+ /**
+ * Creates a new CreateProductRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns CreateProductRequest instance
+ */
+ public static create(properties?: google.cloud.vision.v1p4beta1.ICreateProductRequest): google.cloud.vision.v1p4beta1.CreateProductRequest;
+
+ /**
+ * Encodes the specified CreateProductRequest message. Does not implicitly {@link google.cloud.vision.v1p4beta1.CreateProductRequest.verify|verify} messages.
+ * @param message CreateProductRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p4beta1.ICreateProductRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified CreateProductRequest message, length delimited. Does not implicitly {@link google.cloud.vision.v1p4beta1.CreateProductRequest.verify|verify} messages.
+ * @param message CreateProductRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p4beta1.ICreateProductRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a CreateProductRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns CreateProductRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p4beta1.CreateProductRequest;
+
+ /**
+ * Decodes a CreateProductRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns CreateProductRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p4beta1.CreateProductRequest;
+
+ /**
+ * Verifies a CreateProductRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a CreateProductRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns CreateProductRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p4beta1.CreateProductRequest;
+
+ /**
+ * Creates a plain object from a CreateProductRequest message. Also converts values to other types if specified.
+ * @param message CreateProductRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p4beta1.CreateProductRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this CreateProductRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for CreateProductRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ListProductsRequest. */
+ interface IListProductsRequest {
+
+ /** ListProductsRequest parent */
+ parent?: (string|null);
+
+ /** ListProductsRequest pageSize */
+ pageSize?: (number|null);
+
+ /** ListProductsRequest pageToken */
+ pageToken?: (string|null);
+ }
+
+ /** Represents a ListProductsRequest. */
+ class ListProductsRequest implements IListProductsRequest {
+
+ /**
+ * Constructs a new ListProductsRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p4beta1.IListProductsRequest);
+
+ /** ListProductsRequest parent. */
+ public parent: string;
+
+ /** ListProductsRequest pageSize. */
+ public pageSize: number;
+
+ /** ListProductsRequest pageToken. */
+ public pageToken: string;
+
+ /**
+ * Creates a new ListProductsRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ListProductsRequest instance
+ */
+ public static create(properties?: google.cloud.vision.v1p4beta1.IListProductsRequest): google.cloud.vision.v1p4beta1.ListProductsRequest;
+
+ /**
+ * Encodes the specified ListProductsRequest message. Does not implicitly {@link google.cloud.vision.v1p4beta1.ListProductsRequest.verify|verify} messages.
+ * @param message ListProductsRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p4beta1.IListProductsRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ListProductsRequest message, length delimited. Does not implicitly {@link google.cloud.vision.v1p4beta1.ListProductsRequest.verify|verify} messages.
+ * @param message ListProductsRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p4beta1.IListProductsRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ListProductsRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ListProductsRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p4beta1.ListProductsRequest;
+
+ /**
+ * Decodes a ListProductsRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ListProductsRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p4beta1.ListProductsRequest;
+
+ /**
+ * Verifies a ListProductsRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ListProductsRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ListProductsRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p4beta1.ListProductsRequest;
+
+ /**
+ * Creates a plain object from a ListProductsRequest message. Also converts values to other types if specified.
+ * @param message ListProductsRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p4beta1.ListProductsRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ListProductsRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ListProductsRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ListProductsResponse. */
+ interface IListProductsResponse {
+
+ /** ListProductsResponse products */
+ products?: (google.cloud.vision.v1p4beta1.IProduct[]|null);
+
+ /** ListProductsResponse nextPageToken */
+ nextPageToken?: (string|null);
+ }
+
+ /** Represents a ListProductsResponse. */
+ class ListProductsResponse implements IListProductsResponse {
+
+ /**
+ * Constructs a new ListProductsResponse.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p4beta1.IListProductsResponse);
+
+ /** ListProductsResponse products. */
+ public products: google.cloud.vision.v1p4beta1.IProduct[];
+
+ /** ListProductsResponse nextPageToken. */
+ public nextPageToken: string;
+
+ /**
+ * Creates a new ListProductsResponse instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ListProductsResponse instance
+ */
+ public static create(properties?: google.cloud.vision.v1p4beta1.IListProductsResponse): google.cloud.vision.v1p4beta1.ListProductsResponse;
+
+ /**
+ * Encodes the specified ListProductsResponse message. Does not implicitly {@link google.cloud.vision.v1p4beta1.ListProductsResponse.verify|verify} messages.
+ * @param message ListProductsResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p4beta1.IListProductsResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ListProductsResponse message, length delimited. Does not implicitly {@link google.cloud.vision.v1p4beta1.ListProductsResponse.verify|verify} messages.
+ * @param message ListProductsResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p4beta1.IListProductsResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ListProductsResponse message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ListProductsResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p4beta1.ListProductsResponse;
+
+ /**
+ * Decodes a ListProductsResponse message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ListProductsResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p4beta1.ListProductsResponse;
+
+ /**
+ * Verifies a ListProductsResponse message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ListProductsResponse message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ListProductsResponse
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p4beta1.ListProductsResponse;
+
+ /**
+ * Creates a plain object from a ListProductsResponse message. Also converts values to other types if specified.
+ * @param message ListProductsResponse
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p4beta1.ListProductsResponse, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ListProductsResponse to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ListProductsResponse
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a GetProductRequest. */
+ interface IGetProductRequest {
+
+ /** GetProductRequest name */
+ name?: (string|null);
+ }
+
+ /** Represents a GetProductRequest. */
+ class GetProductRequest implements IGetProductRequest {
+
+ /**
+ * Constructs a new GetProductRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p4beta1.IGetProductRequest);
+
+ /** GetProductRequest name. */
+ public name: string;
+
+ /**
+ * Creates a new GetProductRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns GetProductRequest instance
+ */
+ public static create(properties?: google.cloud.vision.v1p4beta1.IGetProductRequest): google.cloud.vision.v1p4beta1.GetProductRequest;
+
+ /**
+ * Encodes the specified GetProductRequest message. Does not implicitly {@link google.cloud.vision.v1p4beta1.GetProductRequest.verify|verify} messages.
+ * @param message GetProductRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p4beta1.IGetProductRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified GetProductRequest message, length delimited. Does not implicitly {@link google.cloud.vision.v1p4beta1.GetProductRequest.verify|verify} messages.
+ * @param message GetProductRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p4beta1.IGetProductRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a GetProductRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns GetProductRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p4beta1.GetProductRequest;
+
+ /**
+ * Decodes a GetProductRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns GetProductRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p4beta1.GetProductRequest;
+
+ /**
+ * Verifies a GetProductRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a GetProductRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns GetProductRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p4beta1.GetProductRequest;
+
+ /**
+ * Creates a plain object from a GetProductRequest message. Also converts values to other types if specified.
+ * @param message GetProductRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p4beta1.GetProductRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this GetProductRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for GetProductRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an UpdateProductRequest. */
+ interface IUpdateProductRequest {
+
+ /** UpdateProductRequest product */
+ product?: (google.cloud.vision.v1p4beta1.IProduct|null);
+
+ /** UpdateProductRequest updateMask */
+ updateMask?: (google.protobuf.IFieldMask|null);
+ }
+
+ /** Represents an UpdateProductRequest. */
+ class UpdateProductRequest implements IUpdateProductRequest {
+
+ /**
+ * Constructs a new UpdateProductRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p4beta1.IUpdateProductRequest);
+
+ /** UpdateProductRequest product. */
+ public product?: (google.cloud.vision.v1p4beta1.IProduct|null);
+
+ /** UpdateProductRequest updateMask. */
+ public updateMask?: (google.protobuf.IFieldMask|null);
+
+ /**
+ * Creates a new UpdateProductRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns UpdateProductRequest instance
+ */
+ public static create(properties?: google.cloud.vision.v1p4beta1.IUpdateProductRequest): google.cloud.vision.v1p4beta1.UpdateProductRequest;
+
+ /**
+ * Encodes the specified UpdateProductRequest message. Does not implicitly {@link google.cloud.vision.v1p4beta1.UpdateProductRequest.verify|verify} messages.
+ * @param message UpdateProductRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p4beta1.IUpdateProductRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified UpdateProductRequest message, length delimited. Does not implicitly {@link google.cloud.vision.v1p4beta1.UpdateProductRequest.verify|verify} messages.
+ * @param message UpdateProductRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p4beta1.IUpdateProductRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an UpdateProductRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns UpdateProductRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p4beta1.UpdateProductRequest;
+
+ /**
+ * Decodes an UpdateProductRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns UpdateProductRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p4beta1.UpdateProductRequest;
+
+ /**
+ * Verifies an UpdateProductRequest message.
+ * @param message Plain 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 UpdateProductRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns UpdateProductRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p4beta1.UpdateProductRequest;
+
+ /**
+ * Creates a plain object from an UpdateProductRequest message. Also converts values to other types if specified.
+ * @param message UpdateProductRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p4beta1.UpdateProductRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this UpdateProductRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for UpdateProductRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a DeleteProductRequest. */
+ interface IDeleteProductRequest {
+
+ /** DeleteProductRequest name */
+ name?: (string|null);
+ }
+
+ /** Represents a DeleteProductRequest. */
+ class DeleteProductRequest implements IDeleteProductRequest {
+
+ /**
+ * Constructs a new DeleteProductRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p4beta1.IDeleteProductRequest);
+
+ /** DeleteProductRequest name. */
+ public name: string;
+
+ /**
+ * Creates a new DeleteProductRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns DeleteProductRequest instance
+ */
+ public static create(properties?: google.cloud.vision.v1p4beta1.IDeleteProductRequest): google.cloud.vision.v1p4beta1.DeleteProductRequest;
+
+ /**
+ * Encodes the specified DeleteProductRequest message. Does not implicitly {@link google.cloud.vision.v1p4beta1.DeleteProductRequest.verify|verify} messages.
+ * @param message DeleteProductRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p4beta1.IDeleteProductRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified DeleteProductRequest message, length delimited. Does not implicitly {@link google.cloud.vision.v1p4beta1.DeleteProductRequest.verify|verify} messages.
+ * @param message DeleteProductRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p4beta1.IDeleteProductRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a DeleteProductRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns DeleteProductRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p4beta1.DeleteProductRequest;
+
+ /**
+ * Decodes a DeleteProductRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns DeleteProductRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p4beta1.DeleteProductRequest;
+
+ /**
+ * Verifies a DeleteProductRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a DeleteProductRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns DeleteProductRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p4beta1.DeleteProductRequest;
+
+ /**
+ * Creates a plain object from a DeleteProductRequest message. Also converts values to other types if specified.
+ * @param message DeleteProductRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p4beta1.DeleteProductRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this DeleteProductRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for DeleteProductRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a CreateProductSetRequest. */
+ interface ICreateProductSetRequest {
+
+ /** CreateProductSetRequest parent */
+ parent?: (string|null);
+
+ /** CreateProductSetRequest productSet */
+ productSet?: (google.cloud.vision.v1p4beta1.IProductSet|null);
+
+ /** CreateProductSetRequest productSetId */
+ productSetId?: (string|null);
+ }
+
+ /** Represents a CreateProductSetRequest. */
+ class CreateProductSetRequest implements ICreateProductSetRequest {
+
+ /**
+ * Constructs a new CreateProductSetRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p4beta1.ICreateProductSetRequest);
+
+ /** CreateProductSetRequest parent. */
+ public parent: string;
+
+ /** CreateProductSetRequest productSet. */
+ public productSet?: (google.cloud.vision.v1p4beta1.IProductSet|null);
+
+ /** CreateProductSetRequest productSetId. */
+ public productSetId: string;
+
+ /**
+ * Creates a new CreateProductSetRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns CreateProductSetRequest instance
+ */
+ public static create(properties?: google.cloud.vision.v1p4beta1.ICreateProductSetRequest): google.cloud.vision.v1p4beta1.CreateProductSetRequest;
+
+ /**
+ * Encodes the specified CreateProductSetRequest message. Does not implicitly {@link google.cloud.vision.v1p4beta1.CreateProductSetRequest.verify|verify} messages.
+ * @param message CreateProductSetRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p4beta1.ICreateProductSetRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified CreateProductSetRequest message, length delimited. Does not implicitly {@link google.cloud.vision.v1p4beta1.CreateProductSetRequest.verify|verify} messages.
+ * @param message CreateProductSetRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p4beta1.ICreateProductSetRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a CreateProductSetRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns CreateProductSetRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p4beta1.CreateProductSetRequest;
+
+ /**
+ * Decodes a CreateProductSetRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns CreateProductSetRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p4beta1.CreateProductSetRequest;
+
+ /**
+ * Verifies a CreateProductSetRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a CreateProductSetRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns CreateProductSetRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p4beta1.CreateProductSetRequest;
+
+ /**
+ * Creates a plain object from a CreateProductSetRequest message. Also converts values to other types if specified.
+ * @param message CreateProductSetRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p4beta1.CreateProductSetRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this CreateProductSetRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for CreateProductSetRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ListProductSetsRequest. */
+ interface IListProductSetsRequest {
+
+ /** ListProductSetsRequest parent */
+ parent?: (string|null);
+
+ /** ListProductSetsRequest pageSize */
+ pageSize?: (number|null);
+
+ /** ListProductSetsRequest pageToken */
+ pageToken?: (string|null);
+ }
+
+ /** Represents a ListProductSetsRequest. */
+ class ListProductSetsRequest implements IListProductSetsRequest {
+
+ /**
+ * Constructs a new ListProductSetsRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p4beta1.IListProductSetsRequest);
+
+ /** ListProductSetsRequest parent. */
+ public parent: string;
+
+ /** ListProductSetsRequest pageSize. */
+ public pageSize: number;
+
+ /** ListProductSetsRequest pageToken. */
+ public pageToken: string;
+
+ /**
+ * Creates a new ListProductSetsRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ListProductSetsRequest instance
+ */
+ public static create(properties?: google.cloud.vision.v1p4beta1.IListProductSetsRequest): google.cloud.vision.v1p4beta1.ListProductSetsRequest;
+
+ /**
+ * Encodes the specified ListProductSetsRequest message. Does not implicitly {@link google.cloud.vision.v1p4beta1.ListProductSetsRequest.verify|verify} messages.
+ * @param message ListProductSetsRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p4beta1.IListProductSetsRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ListProductSetsRequest message, length delimited. Does not implicitly {@link google.cloud.vision.v1p4beta1.ListProductSetsRequest.verify|verify} messages.
+ * @param message ListProductSetsRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p4beta1.IListProductSetsRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ListProductSetsRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ListProductSetsRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p4beta1.ListProductSetsRequest;
+
+ /**
+ * Decodes a ListProductSetsRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ListProductSetsRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p4beta1.ListProductSetsRequest;
+
+ /**
+ * Verifies a ListProductSetsRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ListProductSetsRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ListProductSetsRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p4beta1.ListProductSetsRequest;
+
+ /**
+ * Creates a plain object from a ListProductSetsRequest message. Also converts values to other types if specified.
+ * @param message ListProductSetsRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p4beta1.ListProductSetsRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ListProductSetsRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ListProductSetsRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ListProductSetsResponse. */
+ interface IListProductSetsResponse {
+
+ /** ListProductSetsResponse productSets */
+ productSets?: (google.cloud.vision.v1p4beta1.IProductSet[]|null);
+
+ /** ListProductSetsResponse nextPageToken */
+ nextPageToken?: (string|null);
+ }
+
+ /** Represents a ListProductSetsResponse. */
+ class ListProductSetsResponse implements IListProductSetsResponse {
+
+ /**
+ * Constructs a new ListProductSetsResponse.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p4beta1.IListProductSetsResponse);
+
+ /** ListProductSetsResponse productSets. */
+ public productSets: google.cloud.vision.v1p4beta1.IProductSet[];
+
+ /** ListProductSetsResponse nextPageToken. */
+ public nextPageToken: string;
+
+ /**
+ * Creates a new ListProductSetsResponse instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ListProductSetsResponse instance
+ */
+ public static create(properties?: google.cloud.vision.v1p4beta1.IListProductSetsResponse): google.cloud.vision.v1p4beta1.ListProductSetsResponse;
+
+ /**
+ * Encodes the specified ListProductSetsResponse message. Does not implicitly {@link google.cloud.vision.v1p4beta1.ListProductSetsResponse.verify|verify} messages.
+ * @param message ListProductSetsResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p4beta1.IListProductSetsResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ListProductSetsResponse message, length delimited. Does not implicitly {@link google.cloud.vision.v1p4beta1.ListProductSetsResponse.verify|verify} messages.
+ * @param message ListProductSetsResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p4beta1.IListProductSetsResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ListProductSetsResponse message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ListProductSetsResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p4beta1.ListProductSetsResponse;
+
+ /**
+ * Decodes a ListProductSetsResponse message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ListProductSetsResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p4beta1.ListProductSetsResponse;
+
+ /**
+ * Verifies a ListProductSetsResponse message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ListProductSetsResponse message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ListProductSetsResponse
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p4beta1.ListProductSetsResponse;
+
+ /**
+ * Creates a plain object from a ListProductSetsResponse message. Also converts values to other types if specified.
+ * @param message ListProductSetsResponse
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p4beta1.ListProductSetsResponse, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ListProductSetsResponse to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ListProductSetsResponse
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a GetProductSetRequest. */
+ interface IGetProductSetRequest {
+
+ /** GetProductSetRequest name */
+ name?: (string|null);
+ }
+
+ /** Represents a GetProductSetRequest. */
+ class GetProductSetRequest implements IGetProductSetRequest {
+
+ /**
+ * Constructs a new GetProductSetRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p4beta1.IGetProductSetRequest);
+
+ /** GetProductSetRequest name. */
+ public name: string;
+
+ /**
+ * Creates a new GetProductSetRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns GetProductSetRequest instance
+ */
+ public static create(properties?: google.cloud.vision.v1p4beta1.IGetProductSetRequest): google.cloud.vision.v1p4beta1.GetProductSetRequest;
+
+ /**
+ * Encodes the specified GetProductSetRequest message. Does not implicitly {@link google.cloud.vision.v1p4beta1.GetProductSetRequest.verify|verify} messages.
+ * @param message GetProductSetRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p4beta1.IGetProductSetRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified GetProductSetRequest message, length delimited. Does not implicitly {@link google.cloud.vision.v1p4beta1.GetProductSetRequest.verify|verify} messages.
+ * @param message GetProductSetRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p4beta1.IGetProductSetRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a GetProductSetRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns GetProductSetRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p4beta1.GetProductSetRequest;
+
+ /**
+ * Decodes a GetProductSetRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns GetProductSetRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p4beta1.GetProductSetRequest;
+
+ /**
+ * Verifies a GetProductSetRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a GetProductSetRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns GetProductSetRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p4beta1.GetProductSetRequest;
+
+ /**
+ * Creates a plain object from a GetProductSetRequest message. Also converts values to other types if specified.
+ * @param message GetProductSetRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p4beta1.GetProductSetRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this GetProductSetRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for GetProductSetRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an UpdateProductSetRequest. */
+ interface IUpdateProductSetRequest {
+
+ /** UpdateProductSetRequest productSet */
+ productSet?: (google.cloud.vision.v1p4beta1.IProductSet|null);
+
+ /** UpdateProductSetRequest updateMask */
+ updateMask?: (google.protobuf.IFieldMask|null);
+ }
+
+ /** Represents an UpdateProductSetRequest. */
+ class UpdateProductSetRequest implements IUpdateProductSetRequest {
+
+ /**
+ * Constructs a new UpdateProductSetRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p4beta1.IUpdateProductSetRequest);
+
+ /** UpdateProductSetRequest productSet. */
+ public productSet?: (google.cloud.vision.v1p4beta1.IProductSet|null);
+
+ /** UpdateProductSetRequest updateMask. */
+ public updateMask?: (google.protobuf.IFieldMask|null);
+
+ /**
+ * Creates a new UpdateProductSetRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns UpdateProductSetRequest instance
+ */
+ public static create(properties?: google.cloud.vision.v1p4beta1.IUpdateProductSetRequest): google.cloud.vision.v1p4beta1.UpdateProductSetRequest;
+
+ /**
+ * Encodes the specified UpdateProductSetRequest message. Does not implicitly {@link google.cloud.vision.v1p4beta1.UpdateProductSetRequest.verify|verify} messages.
+ * @param message UpdateProductSetRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p4beta1.IUpdateProductSetRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified UpdateProductSetRequest message, length delimited. Does not implicitly {@link google.cloud.vision.v1p4beta1.UpdateProductSetRequest.verify|verify} messages.
+ * @param message UpdateProductSetRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p4beta1.IUpdateProductSetRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an UpdateProductSetRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns UpdateProductSetRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p4beta1.UpdateProductSetRequest;
+
+ /**
+ * Decodes an UpdateProductSetRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns UpdateProductSetRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p4beta1.UpdateProductSetRequest;
+
+ /**
+ * Verifies an UpdateProductSetRequest message.
+ * @param message Plain 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 UpdateProductSetRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns UpdateProductSetRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p4beta1.UpdateProductSetRequest;
+
+ /**
+ * Creates a plain object from an UpdateProductSetRequest message. Also converts values to other types if specified.
+ * @param message UpdateProductSetRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p4beta1.UpdateProductSetRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this UpdateProductSetRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for UpdateProductSetRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a DeleteProductSetRequest. */
+ interface IDeleteProductSetRequest {
+
+ /** DeleteProductSetRequest name */
+ name?: (string|null);
+ }
+
+ /** Represents a DeleteProductSetRequest. */
+ class DeleteProductSetRequest implements IDeleteProductSetRequest {
+
+ /**
+ * Constructs a new DeleteProductSetRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p4beta1.IDeleteProductSetRequest);
+
+ /** DeleteProductSetRequest name. */
+ public name: string;
+
+ /**
+ * Creates a new DeleteProductSetRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns DeleteProductSetRequest instance
+ */
+ public static create(properties?: google.cloud.vision.v1p4beta1.IDeleteProductSetRequest): google.cloud.vision.v1p4beta1.DeleteProductSetRequest;
+
+ /**
+ * Encodes the specified DeleteProductSetRequest message. Does not implicitly {@link google.cloud.vision.v1p4beta1.DeleteProductSetRequest.verify|verify} messages.
+ * @param message DeleteProductSetRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p4beta1.IDeleteProductSetRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified DeleteProductSetRequest message, length delimited. Does not implicitly {@link google.cloud.vision.v1p4beta1.DeleteProductSetRequest.verify|verify} messages.
+ * @param message DeleteProductSetRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p4beta1.IDeleteProductSetRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a DeleteProductSetRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns DeleteProductSetRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p4beta1.DeleteProductSetRequest;
+
+ /**
+ * Decodes a DeleteProductSetRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns DeleteProductSetRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p4beta1.DeleteProductSetRequest;
+
+ /**
+ * Verifies a DeleteProductSetRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a DeleteProductSetRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns DeleteProductSetRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p4beta1.DeleteProductSetRequest;
+
+ /**
+ * Creates a plain object from a DeleteProductSetRequest message. Also converts values to other types if specified.
+ * @param message DeleteProductSetRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p4beta1.DeleteProductSetRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this DeleteProductSetRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for DeleteProductSetRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a CreateReferenceImageRequest. */
+ interface ICreateReferenceImageRequest {
+
+ /** CreateReferenceImageRequest parent */
+ parent?: (string|null);
+
+ /** CreateReferenceImageRequest referenceImage */
+ referenceImage?: (google.cloud.vision.v1p4beta1.IReferenceImage|null);
+
+ /** CreateReferenceImageRequest referenceImageId */
+ referenceImageId?: (string|null);
+ }
+
+ /** Represents a CreateReferenceImageRequest. */
+ class CreateReferenceImageRequest implements ICreateReferenceImageRequest {
+
+ /**
+ * Constructs a new CreateReferenceImageRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p4beta1.ICreateReferenceImageRequest);
+
+ /** CreateReferenceImageRequest parent. */
+ public parent: string;
+
+ /** CreateReferenceImageRequest referenceImage. */
+ public referenceImage?: (google.cloud.vision.v1p4beta1.IReferenceImage|null);
+
+ /** CreateReferenceImageRequest referenceImageId. */
+ public referenceImageId: string;
+
+ /**
+ * Creates a new CreateReferenceImageRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns CreateReferenceImageRequest instance
+ */
+ public static create(properties?: google.cloud.vision.v1p4beta1.ICreateReferenceImageRequest): google.cloud.vision.v1p4beta1.CreateReferenceImageRequest;
+
+ /**
+ * Encodes the specified CreateReferenceImageRequest message. Does not implicitly {@link google.cloud.vision.v1p4beta1.CreateReferenceImageRequest.verify|verify} messages.
+ * @param message CreateReferenceImageRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p4beta1.ICreateReferenceImageRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified CreateReferenceImageRequest message, length delimited. Does not implicitly {@link google.cloud.vision.v1p4beta1.CreateReferenceImageRequest.verify|verify} messages.
+ * @param message CreateReferenceImageRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p4beta1.ICreateReferenceImageRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a CreateReferenceImageRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns CreateReferenceImageRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p4beta1.CreateReferenceImageRequest;
+
+ /**
+ * Decodes a CreateReferenceImageRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns CreateReferenceImageRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p4beta1.CreateReferenceImageRequest;
+
+ /**
+ * Verifies a CreateReferenceImageRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a CreateReferenceImageRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns CreateReferenceImageRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p4beta1.CreateReferenceImageRequest;
+
+ /**
+ * Creates a plain object from a CreateReferenceImageRequest message. Also converts values to other types if specified.
+ * @param message CreateReferenceImageRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p4beta1.CreateReferenceImageRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this CreateReferenceImageRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for CreateReferenceImageRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ListReferenceImagesRequest. */
+ interface IListReferenceImagesRequest {
+
+ /** ListReferenceImagesRequest parent */
+ parent?: (string|null);
+
+ /** ListReferenceImagesRequest pageSize */
+ pageSize?: (number|null);
+
+ /** ListReferenceImagesRequest pageToken */
+ pageToken?: (string|null);
+ }
+
+ /** Represents a ListReferenceImagesRequest. */
+ class ListReferenceImagesRequest implements IListReferenceImagesRequest {
+
+ /**
+ * Constructs a new ListReferenceImagesRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p4beta1.IListReferenceImagesRequest);
+
+ /** ListReferenceImagesRequest parent. */
+ public parent: string;
+
+ /** ListReferenceImagesRequest pageSize. */
+ public pageSize: number;
+
+ /** ListReferenceImagesRequest pageToken. */
+ public pageToken: string;
+
+ /**
+ * Creates a new ListReferenceImagesRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ListReferenceImagesRequest instance
+ */
+ public static create(properties?: google.cloud.vision.v1p4beta1.IListReferenceImagesRequest): google.cloud.vision.v1p4beta1.ListReferenceImagesRequest;
+
+ /**
+ * Encodes the specified ListReferenceImagesRequest message. Does not implicitly {@link google.cloud.vision.v1p4beta1.ListReferenceImagesRequest.verify|verify} messages.
+ * @param message ListReferenceImagesRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p4beta1.IListReferenceImagesRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ListReferenceImagesRequest message, length delimited. Does not implicitly {@link google.cloud.vision.v1p4beta1.ListReferenceImagesRequest.verify|verify} messages.
+ * @param message ListReferenceImagesRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p4beta1.IListReferenceImagesRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ListReferenceImagesRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ListReferenceImagesRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p4beta1.ListReferenceImagesRequest;
+
+ /**
+ * Decodes a ListReferenceImagesRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ListReferenceImagesRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p4beta1.ListReferenceImagesRequest;
+
+ /**
+ * Verifies a ListReferenceImagesRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ListReferenceImagesRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ListReferenceImagesRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p4beta1.ListReferenceImagesRequest;
+
+ /**
+ * Creates a plain object from a ListReferenceImagesRequest message. Also converts values to other types if specified.
+ * @param message ListReferenceImagesRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p4beta1.ListReferenceImagesRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ListReferenceImagesRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ListReferenceImagesRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ListReferenceImagesResponse. */
+ interface IListReferenceImagesResponse {
+
+ /** ListReferenceImagesResponse referenceImages */
+ referenceImages?: (google.cloud.vision.v1p4beta1.IReferenceImage[]|null);
+
+ /** ListReferenceImagesResponse pageSize */
+ pageSize?: (number|null);
+
+ /** ListReferenceImagesResponse nextPageToken */
+ nextPageToken?: (string|null);
+ }
+
+ /** Represents a ListReferenceImagesResponse. */
+ class ListReferenceImagesResponse implements IListReferenceImagesResponse {
+
+ /**
+ * Constructs a new ListReferenceImagesResponse.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p4beta1.IListReferenceImagesResponse);
+
+ /** ListReferenceImagesResponse referenceImages. */
+ public referenceImages: google.cloud.vision.v1p4beta1.IReferenceImage[];
+
+ /** ListReferenceImagesResponse pageSize. */
+ public pageSize: number;
+
+ /** ListReferenceImagesResponse nextPageToken. */
+ public nextPageToken: string;
+
+ /**
+ * Creates a new ListReferenceImagesResponse instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ListReferenceImagesResponse instance
+ */
+ public static create(properties?: google.cloud.vision.v1p4beta1.IListReferenceImagesResponse): google.cloud.vision.v1p4beta1.ListReferenceImagesResponse;
+
+ /**
+ * Encodes the specified ListReferenceImagesResponse message. Does not implicitly {@link google.cloud.vision.v1p4beta1.ListReferenceImagesResponse.verify|verify} messages.
+ * @param message ListReferenceImagesResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p4beta1.IListReferenceImagesResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ListReferenceImagesResponse message, length delimited. Does not implicitly {@link google.cloud.vision.v1p4beta1.ListReferenceImagesResponse.verify|verify} messages.
+ * @param message ListReferenceImagesResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p4beta1.IListReferenceImagesResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ListReferenceImagesResponse message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ListReferenceImagesResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p4beta1.ListReferenceImagesResponse;
+
+ /**
+ * Decodes a ListReferenceImagesResponse message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ListReferenceImagesResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p4beta1.ListReferenceImagesResponse;
+
+ /**
+ * Verifies a ListReferenceImagesResponse message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ListReferenceImagesResponse message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ListReferenceImagesResponse
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p4beta1.ListReferenceImagesResponse;
+
+ /**
+ * Creates a plain object from a ListReferenceImagesResponse message. Also converts values to other types if specified.
+ * @param message ListReferenceImagesResponse
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p4beta1.ListReferenceImagesResponse, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ListReferenceImagesResponse to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ListReferenceImagesResponse
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a GetReferenceImageRequest. */
+ interface IGetReferenceImageRequest {
+
+ /** GetReferenceImageRequest name */
+ name?: (string|null);
+ }
+
+ /** Represents a GetReferenceImageRequest. */
+ class GetReferenceImageRequest implements IGetReferenceImageRequest {
+
+ /**
+ * Constructs a new GetReferenceImageRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p4beta1.IGetReferenceImageRequest);
+
+ /** GetReferenceImageRequest name. */
+ public name: string;
+
+ /**
+ * Creates a new GetReferenceImageRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns GetReferenceImageRequest instance
+ */
+ public static create(properties?: google.cloud.vision.v1p4beta1.IGetReferenceImageRequest): google.cloud.vision.v1p4beta1.GetReferenceImageRequest;
+
+ /**
+ * Encodes the specified GetReferenceImageRequest message. Does not implicitly {@link google.cloud.vision.v1p4beta1.GetReferenceImageRequest.verify|verify} messages.
+ * @param message GetReferenceImageRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p4beta1.IGetReferenceImageRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified GetReferenceImageRequest message, length delimited. Does not implicitly {@link google.cloud.vision.v1p4beta1.GetReferenceImageRequest.verify|verify} messages.
+ * @param message GetReferenceImageRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p4beta1.IGetReferenceImageRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a GetReferenceImageRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns GetReferenceImageRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p4beta1.GetReferenceImageRequest;
+
+ /**
+ * Decodes a GetReferenceImageRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns GetReferenceImageRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p4beta1.GetReferenceImageRequest;
+
+ /**
+ * Verifies a GetReferenceImageRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a GetReferenceImageRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns GetReferenceImageRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p4beta1.GetReferenceImageRequest;
+
+ /**
+ * Creates a plain object from a GetReferenceImageRequest message. Also converts values to other types if specified.
+ * @param message GetReferenceImageRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p4beta1.GetReferenceImageRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this GetReferenceImageRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for GetReferenceImageRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a DeleteReferenceImageRequest. */
+ interface IDeleteReferenceImageRequest {
+
+ /** DeleteReferenceImageRequest name */
+ name?: (string|null);
+ }
+
+ /** Represents a DeleteReferenceImageRequest. */
+ class DeleteReferenceImageRequest implements IDeleteReferenceImageRequest {
+
+ /**
+ * Constructs a new DeleteReferenceImageRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p4beta1.IDeleteReferenceImageRequest);
+
+ /** DeleteReferenceImageRequest name. */
+ public name: string;
+
+ /**
+ * Creates a new DeleteReferenceImageRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns DeleteReferenceImageRequest instance
+ */
+ public static create(properties?: google.cloud.vision.v1p4beta1.IDeleteReferenceImageRequest): google.cloud.vision.v1p4beta1.DeleteReferenceImageRequest;
+
+ /**
+ * Encodes the specified DeleteReferenceImageRequest message. Does not implicitly {@link google.cloud.vision.v1p4beta1.DeleteReferenceImageRequest.verify|verify} messages.
+ * @param message DeleteReferenceImageRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p4beta1.IDeleteReferenceImageRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified DeleteReferenceImageRequest message, length delimited. Does not implicitly {@link google.cloud.vision.v1p4beta1.DeleteReferenceImageRequest.verify|verify} messages.
+ * @param message DeleteReferenceImageRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p4beta1.IDeleteReferenceImageRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a DeleteReferenceImageRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns DeleteReferenceImageRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p4beta1.DeleteReferenceImageRequest;
+
+ /**
+ * Decodes a DeleteReferenceImageRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns DeleteReferenceImageRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p4beta1.DeleteReferenceImageRequest;
+
+ /**
+ * Verifies a DeleteReferenceImageRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a DeleteReferenceImageRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns DeleteReferenceImageRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p4beta1.DeleteReferenceImageRequest;
+
+ /**
+ * Creates a plain object from a DeleteReferenceImageRequest message. Also converts values to other types if specified.
+ * @param message DeleteReferenceImageRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p4beta1.DeleteReferenceImageRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this DeleteReferenceImageRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for DeleteReferenceImageRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an AddProductToProductSetRequest. */
+ interface IAddProductToProductSetRequest {
+
+ /** AddProductToProductSetRequest name */
+ name?: (string|null);
+
+ /** AddProductToProductSetRequest product */
+ product?: (string|null);
+ }
+
+ /** Represents an AddProductToProductSetRequest. */
+ class AddProductToProductSetRequest implements IAddProductToProductSetRequest {
+
+ /**
+ * Constructs a new AddProductToProductSetRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p4beta1.IAddProductToProductSetRequest);
+
+ /** AddProductToProductSetRequest name. */
+ public name: string;
+
+ /** AddProductToProductSetRequest product. */
+ public product: string;
+
+ /**
+ * Creates a new AddProductToProductSetRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns AddProductToProductSetRequest instance
+ */
+ public static create(properties?: google.cloud.vision.v1p4beta1.IAddProductToProductSetRequest): google.cloud.vision.v1p4beta1.AddProductToProductSetRequest;
+
+ /**
+ * Encodes the specified AddProductToProductSetRequest message. Does not implicitly {@link google.cloud.vision.v1p4beta1.AddProductToProductSetRequest.verify|verify} messages.
+ * @param message AddProductToProductSetRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p4beta1.IAddProductToProductSetRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified AddProductToProductSetRequest message, length delimited. Does not implicitly {@link google.cloud.vision.v1p4beta1.AddProductToProductSetRequest.verify|verify} messages.
+ * @param message AddProductToProductSetRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p4beta1.IAddProductToProductSetRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an AddProductToProductSetRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns AddProductToProductSetRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p4beta1.AddProductToProductSetRequest;
+
+ /**
+ * Decodes an AddProductToProductSetRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns AddProductToProductSetRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p4beta1.AddProductToProductSetRequest;
+
+ /**
+ * Verifies an AddProductToProductSetRequest message.
+ * @param message Plain 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 AddProductToProductSetRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns AddProductToProductSetRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p4beta1.AddProductToProductSetRequest;
+
+ /**
+ * Creates a plain object from an AddProductToProductSetRequest message. Also converts values to other types if specified.
+ * @param message AddProductToProductSetRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p4beta1.AddProductToProductSetRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this AddProductToProductSetRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for AddProductToProductSetRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a RemoveProductFromProductSetRequest. */
+ interface IRemoveProductFromProductSetRequest {
+
+ /** RemoveProductFromProductSetRequest name */
+ name?: (string|null);
+
+ /** RemoveProductFromProductSetRequest product */
+ product?: (string|null);
+ }
+
+ /** Represents a RemoveProductFromProductSetRequest. */
+ class RemoveProductFromProductSetRequest implements IRemoveProductFromProductSetRequest {
+
+ /**
+ * Constructs a new RemoveProductFromProductSetRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p4beta1.IRemoveProductFromProductSetRequest);
+
+ /** RemoveProductFromProductSetRequest name. */
+ public name: string;
+
+ /** RemoveProductFromProductSetRequest product. */
+ public product: string;
+
+ /**
+ * Creates a new RemoveProductFromProductSetRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns RemoveProductFromProductSetRequest instance
+ */
+ public static create(properties?: google.cloud.vision.v1p4beta1.IRemoveProductFromProductSetRequest): google.cloud.vision.v1p4beta1.RemoveProductFromProductSetRequest;
+
+ /**
+ * Encodes the specified RemoveProductFromProductSetRequest message. Does not implicitly {@link google.cloud.vision.v1p4beta1.RemoveProductFromProductSetRequest.verify|verify} messages.
+ * @param message RemoveProductFromProductSetRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p4beta1.IRemoveProductFromProductSetRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified RemoveProductFromProductSetRequest message, length delimited. Does not implicitly {@link google.cloud.vision.v1p4beta1.RemoveProductFromProductSetRequest.verify|verify} messages.
+ * @param message RemoveProductFromProductSetRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p4beta1.IRemoveProductFromProductSetRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a RemoveProductFromProductSetRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns RemoveProductFromProductSetRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p4beta1.RemoveProductFromProductSetRequest;
+
+ /**
+ * Decodes a RemoveProductFromProductSetRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns RemoveProductFromProductSetRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p4beta1.RemoveProductFromProductSetRequest;
+
+ /**
+ * Verifies a RemoveProductFromProductSetRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a RemoveProductFromProductSetRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns RemoveProductFromProductSetRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p4beta1.RemoveProductFromProductSetRequest;
+
+ /**
+ * Creates a plain object from a RemoveProductFromProductSetRequest message. Also converts values to other types if specified.
+ * @param message RemoveProductFromProductSetRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p4beta1.RemoveProductFromProductSetRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this RemoveProductFromProductSetRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for RemoveProductFromProductSetRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ListProductsInProductSetRequest. */
+ interface IListProductsInProductSetRequest {
+
+ /** ListProductsInProductSetRequest name */
+ name?: (string|null);
+
+ /** ListProductsInProductSetRequest pageSize */
+ pageSize?: (number|null);
+
+ /** ListProductsInProductSetRequest pageToken */
+ pageToken?: (string|null);
+ }
+
+ /** Represents a ListProductsInProductSetRequest. */
+ class ListProductsInProductSetRequest implements IListProductsInProductSetRequest {
+
+ /**
+ * Constructs a new ListProductsInProductSetRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p4beta1.IListProductsInProductSetRequest);
+
+ /** ListProductsInProductSetRequest name. */
+ public name: string;
+
+ /** ListProductsInProductSetRequest pageSize. */
+ public pageSize: number;
+
+ /** ListProductsInProductSetRequest pageToken. */
+ public pageToken: string;
+
+ /**
+ * Creates a new ListProductsInProductSetRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ListProductsInProductSetRequest instance
+ */
+ public static create(properties?: google.cloud.vision.v1p4beta1.IListProductsInProductSetRequest): google.cloud.vision.v1p4beta1.ListProductsInProductSetRequest;
+
+ /**
+ * Encodes the specified ListProductsInProductSetRequest message. Does not implicitly {@link google.cloud.vision.v1p4beta1.ListProductsInProductSetRequest.verify|verify} messages.
+ * @param message ListProductsInProductSetRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p4beta1.IListProductsInProductSetRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ListProductsInProductSetRequest message, length delimited. Does not implicitly {@link google.cloud.vision.v1p4beta1.ListProductsInProductSetRequest.verify|verify} messages.
+ * @param message ListProductsInProductSetRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p4beta1.IListProductsInProductSetRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ListProductsInProductSetRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ListProductsInProductSetRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p4beta1.ListProductsInProductSetRequest;
+
+ /**
+ * Decodes a ListProductsInProductSetRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ListProductsInProductSetRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p4beta1.ListProductsInProductSetRequest;
+
+ /**
+ * Verifies a ListProductsInProductSetRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ListProductsInProductSetRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ListProductsInProductSetRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p4beta1.ListProductsInProductSetRequest;
+
+ /**
+ * Creates a plain object from a ListProductsInProductSetRequest message. Also converts values to other types if specified.
+ * @param message ListProductsInProductSetRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p4beta1.ListProductsInProductSetRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ListProductsInProductSetRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ListProductsInProductSetRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ListProductsInProductSetResponse. */
+ interface IListProductsInProductSetResponse {
+
+ /** ListProductsInProductSetResponse products */
+ products?: (google.cloud.vision.v1p4beta1.IProduct[]|null);
+
+ /** ListProductsInProductSetResponse nextPageToken */
+ nextPageToken?: (string|null);
+ }
+
+ /** Represents a ListProductsInProductSetResponse. */
+ class ListProductsInProductSetResponse implements IListProductsInProductSetResponse {
+
+ /**
+ * Constructs a new ListProductsInProductSetResponse.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p4beta1.IListProductsInProductSetResponse);
+
+ /** ListProductsInProductSetResponse products. */
+ public products: google.cloud.vision.v1p4beta1.IProduct[];
+
+ /** ListProductsInProductSetResponse nextPageToken. */
+ public nextPageToken: string;
+
+ /**
+ * Creates a new ListProductsInProductSetResponse instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ListProductsInProductSetResponse instance
+ */
+ public static create(properties?: google.cloud.vision.v1p4beta1.IListProductsInProductSetResponse): google.cloud.vision.v1p4beta1.ListProductsInProductSetResponse;
+
+ /**
+ * Encodes the specified ListProductsInProductSetResponse message. Does not implicitly {@link google.cloud.vision.v1p4beta1.ListProductsInProductSetResponse.verify|verify} messages.
+ * @param message ListProductsInProductSetResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p4beta1.IListProductsInProductSetResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ListProductsInProductSetResponse message, length delimited. Does not implicitly {@link google.cloud.vision.v1p4beta1.ListProductsInProductSetResponse.verify|verify} messages.
+ * @param message ListProductsInProductSetResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p4beta1.IListProductsInProductSetResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ListProductsInProductSetResponse message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ListProductsInProductSetResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p4beta1.ListProductsInProductSetResponse;
+
+ /**
+ * Decodes a ListProductsInProductSetResponse message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ListProductsInProductSetResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p4beta1.ListProductsInProductSetResponse;
+
+ /**
+ * Verifies a ListProductsInProductSetResponse message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ListProductsInProductSetResponse message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ListProductsInProductSetResponse
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p4beta1.ListProductsInProductSetResponse;
+
+ /**
+ * Creates a plain object from a ListProductsInProductSetResponse message. Also converts values to other types if specified.
+ * @param message ListProductsInProductSetResponse
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p4beta1.ListProductsInProductSetResponse, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ListProductsInProductSetResponse to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ListProductsInProductSetResponse
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an ImportProductSetsGcsSource. */
+ interface IImportProductSetsGcsSource {
+
+ /** ImportProductSetsGcsSource csvFileUri */
+ csvFileUri?: (string|null);
+ }
+
+ /** Represents an ImportProductSetsGcsSource. */
+ class ImportProductSetsGcsSource implements IImportProductSetsGcsSource {
+
+ /**
+ * Constructs a new ImportProductSetsGcsSource.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p4beta1.IImportProductSetsGcsSource);
+
+ /** ImportProductSetsGcsSource csvFileUri. */
+ public csvFileUri: string;
+
+ /**
+ * Creates a new ImportProductSetsGcsSource instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ImportProductSetsGcsSource instance
+ */
+ public static create(properties?: google.cloud.vision.v1p4beta1.IImportProductSetsGcsSource): google.cloud.vision.v1p4beta1.ImportProductSetsGcsSource;
+
+ /**
+ * Encodes the specified ImportProductSetsGcsSource message. Does not implicitly {@link google.cloud.vision.v1p4beta1.ImportProductSetsGcsSource.verify|verify} messages.
+ * @param message ImportProductSetsGcsSource message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p4beta1.IImportProductSetsGcsSource, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ImportProductSetsGcsSource message, length delimited. Does not implicitly {@link google.cloud.vision.v1p4beta1.ImportProductSetsGcsSource.verify|verify} messages.
+ * @param message ImportProductSetsGcsSource message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p4beta1.IImportProductSetsGcsSource, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an ImportProductSetsGcsSource message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ImportProductSetsGcsSource
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p4beta1.ImportProductSetsGcsSource;
+
+ /**
+ * Decodes an ImportProductSetsGcsSource message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ImportProductSetsGcsSource
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p4beta1.ImportProductSetsGcsSource;
+
+ /**
+ * Verifies an ImportProductSetsGcsSource message.
+ * @param message Plain 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 ImportProductSetsGcsSource message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ImportProductSetsGcsSource
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p4beta1.ImportProductSetsGcsSource;
+
+ /**
+ * Creates a plain object from an ImportProductSetsGcsSource message. Also converts values to other types if specified.
+ * @param message ImportProductSetsGcsSource
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p4beta1.ImportProductSetsGcsSource, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ImportProductSetsGcsSource to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ImportProductSetsGcsSource
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an ImportProductSetsInputConfig. */
+ interface IImportProductSetsInputConfig {
+
+ /** ImportProductSetsInputConfig gcsSource */
+ gcsSource?: (google.cloud.vision.v1p4beta1.IImportProductSetsGcsSource|null);
+ }
+
+ /** Represents an ImportProductSetsInputConfig. */
+ class ImportProductSetsInputConfig implements IImportProductSetsInputConfig {
+
+ /**
+ * Constructs a new ImportProductSetsInputConfig.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p4beta1.IImportProductSetsInputConfig);
+
+ /** ImportProductSetsInputConfig gcsSource. */
+ public gcsSource?: (google.cloud.vision.v1p4beta1.IImportProductSetsGcsSource|null);
+
+ /** ImportProductSetsInputConfig source. */
+ public source?: "gcsSource";
+
+ /**
+ * Creates a new ImportProductSetsInputConfig instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ImportProductSetsInputConfig instance
+ */
+ public static create(properties?: google.cloud.vision.v1p4beta1.IImportProductSetsInputConfig): google.cloud.vision.v1p4beta1.ImportProductSetsInputConfig;
+
+ /**
+ * Encodes the specified ImportProductSetsInputConfig message. Does not implicitly {@link google.cloud.vision.v1p4beta1.ImportProductSetsInputConfig.verify|verify} messages.
+ * @param message ImportProductSetsInputConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p4beta1.IImportProductSetsInputConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ImportProductSetsInputConfig message, length delimited. Does not implicitly {@link google.cloud.vision.v1p4beta1.ImportProductSetsInputConfig.verify|verify} messages.
+ * @param message ImportProductSetsInputConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p4beta1.IImportProductSetsInputConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an ImportProductSetsInputConfig message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ImportProductSetsInputConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p4beta1.ImportProductSetsInputConfig;
+
+ /**
+ * Decodes an ImportProductSetsInputConfig message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ImportProductSetsInputConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p4beta1.ImportProductSetsInputConfig;
+
+ /**
+ * Verifies an ImportProductSetsInputConfig message.
+ * @param message Plain 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 ImportProductSetsInputConfig message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ImportProductSetsInputConfig
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p4beta1.ImportProductSetsInputConfig;
+
+ /**
+ * Creates a plain object from an ImportProductSetsInputConfig message. Also converts values to other types if specified.
+ * @param message ImportProductSetsInputConfig
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p4beta1.ImportProductSetsInputConfig, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ImportProductSetsInputConfig to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ImportProductSetsInputConfig
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an ImportProductSetsRequest. */
+ interface IImportProductSetsRequest {
+
+ /** ImportProductSetsRequest parent */
+ parent?: (string|null);
+
+ /** ImportProductSetsRequest inputConfig */
+ inputConfig?: (google.cloud.vision.v1p4beta1.IImportProductSetsInputConfig|null);
+ }
+
+ /** Represents an ImportProductSetsRequest. */
+ class ImportProductSetsRequest implements IImportProductSetsRequest {
+
+ /**
+ * Constructs a new ImportProductSetsRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p4beta1.IImportProductSetsRequest);
+
+ /** ImportProductSetsRequest parent. */
+ public parent: string;
+
+ /** ImportProductSetsRequest inputConfig. */
+ public inputConfig?: (google.cloud.vision.v1p4beta1.IImportProductSetsInputConfig|null);
+
+ /**
+ * Creates a new ImportProductSetsRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ImportProductSetsRequest instance
+ */
+ public static create(properties?: google.cloud.vision.v1p4beta1.IImportProductSetsRequest): google.cloud.vision.v1p4beta1.ImportProductSetsRequest;
+
+ /**
+ * Encodes the specified ImportProductSetsRequest message. Does not implicitly {@link google.cloud.vision.v1p4beta1.ImportProductSetsRequest.verify|verify} messages.
+ * @param message ImportProductSetsRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p4beta1.IImportProductSetsRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ImportProductSetsRequest message, length delimited. Does not implicitly {@link google.cloud.vision.v1p4beta1.ImportProductSetsRequest.verify|verify} messages.
+ * @param message ImportProductSetsRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p4beta1.IImportProductSetsRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an ImportProductSetsRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ImportProductSetsRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p4beta1.ImportProductSetsRequest;
+
+ /**
+ * Decodes an ImportProductSetsRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ImportProductSetsRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p4beta1.ImportProductSetsRequest;
+
+ /**
+ * Verifies an ImportProductSetsRequest message.
+ * @param message Plain 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 ImportProductSetsRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ImportProductSetsRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p4beta1.ImportProductSetsRequest;
+
+ /**
+ * Creates a plain object from an ImportProductSetsRequest message. Also converts values to other types if specified.
+ * @param message ImportProductSetsRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p4beta1.ImportProductSetsRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ImportProductSetsRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ImportProductSetsRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an ImportProductSetsResponse. */
+ interface IImportProductSetsResponse {
+
+ /** ImportProductSetsResponse referenceImages */
+ referenceImages?: (google.cloud.vision.v1p4beta1.IReferenceImage[]|null);
+
+ /** ImportProductSetsResponse statuses */
+ statuses?: (google.rpc.IStatus[]|null);
+ }
+
+ /** Represents an ImportProductSetsResponse. */
+ class ImportProductSetsResponse implements IImportProductSetsResponse {
+
+ /**
+ * Constructs a new ImportProductSetsResponse.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p4beta1.IImportProductSetsResponse);
+
+ /** ImportProductSetsResponse referenceImages. */
+ public referenceImages: google.cloud.vision.v1p4beta1.IReferenceImage[];
+
+ /** ImportProductSetsResponse statuses. */
+ public statuses: google.rpc.IStatus[];
+
+ /**
+ * Creates a new ImportProductSetsResponse instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ImportProductSetsResponse instance
+ */
+ public static create(properties?: google.cloud.vision.v1p4beta1.IImportProductSetsResponse): google.cloud.vision.v1p4beta1.ImportProductSetsResponse;
+
+ /**
+ * Encodes the specified ImportProductSetsResponse message. Does not implicitly {@link google.cloud.vision.v1p4beta1.ImportProductSetsResponse.verify|verify} messages.
+ * @param message ImportProductSetsResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p4beta1.IImportProductSetsResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ImportProductSetsResponse message, length delimited. Does not implicitly {@link google.cloud.vision.v1p4beta1.ImportProductSetsResponse.verify|verify} messages.
+ * @param message ImportProductSetsResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p4beta1.IImportProductSetsResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an ImportProductSetsResponse message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ImportProductSetsResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p4beta1.ImportProductSetsResponse;
+
+ /**
+ * Decodes an ImportProductSetsResponse message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ImportProductSetsResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p4beta1.ImportProductSetsResponse;
+
+ /**
+ * Verifies an ImportProductSetsResponse message.
+ * @param message Plain 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 ImportProductSetsResponse message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ImportProductSetsResponse
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p4beta1.ImportProductSetsResponse;
+
+ /**
+ * Creates a plain object from an ImportProductSetsResponse message. Also converts values to other types if specified.
+ * @param message ImportProductSetsResponse
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p4beta1.ImportProductSetsResponse, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ImportProductSetsResponse to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ImportProductSetsResponse
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a BatchOperationMetadata. */
+ interface IBatchOperationMetadata {
+
+ /** BatchOperationMetadata state */
+ state?: (google.cloud.vision.v1p4beta1.BatchOperationMetadata.State|keyof typeof google.cloud.vision.v1p4beta1.BatchOperationMetadata.State|null);
+
+ /** BatchOperationMetadata submitTime */
+ submitTime?: (google.protobuf.ITimestamp|null);
+
+ /** BatchOperationMetadata endTime */
+ endTime?: (google.protobuf.ITimestamp|null);
+ }
+
+ /** Represents a BatchOperationMetadata. */
+ class BatchOperationMetadata implements IBatchOperationMetadata {
+
+ /**
+ * Constructs a new BatchOperationMetadata.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p4beta1.IBatchOperationMetadata);
+
+ /** BatchOperationMetadata state. */
+ public state: (google.cloud.vision.v1p4beta1.BatchOperationMetadata.State|keyof typeof google.cloud.vision.v1p4beta1.BatchOperationMetadata.State);
+
+ /** BatchOperationMetadata submitTime. */
+ public submitTime?: (google.protobuf.ITimestamp|null);
+
+ /** BatchOperationMetadata endTime. */
+ public endTime?: (google.protobuf.ITimestamp|null);
+
+ /**
+ * Creates a new BatchOperationMetadata instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns BatchOperationMetadata instance
+ */
+ public static create(properties?: google.cloud.vision.v1p4beta1.IBatchOperationMetadata): google.cloud.vision.v1p4beta1.BatchOperationMetadata;
+
+ /**
+ * Encodes the specified BatchOperationMetadata message. Does not implicitly {@link google.cloud.vision.v1p4beta1.BatchOperationMetadata.verify|verify} messages.
+ * @param message BatchOperationMetadata message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p4beta1.IBatchOperationMetadata, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified BatchOperationMetadata message, length delimited. Does not implicitly {@link google.cloud.vision.v1p4beta1.BatchOperationMetadata.verify|verify} messages.
+ * @param message BatchOperationMetadata message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p4beta1.IBatchOperationMetadata, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a BatchOperationMetadata message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns BatchOperationMetadata
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p4beta1.BatchOperationMetadata;
+
+ /**
+ * Decodes a BatchOperationMetadata message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns BatchOperationMetadata
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p4beta1.BatchOperationMetadata;
+
+ /**
+ * Verifies a BatchOperationMetadata message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a BatchOperationMetadata message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns BatchOperationMetadata
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p4beta1.BatchOperationMetadata;
+
+ /**
+ * Creates a plain object from a BatchOperationMetadata message. Also converts values to other types if specified.
+ * @param message BatchOperationMetadata
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p4beta1.BatchOperationMetadata, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this BatchOperationMetadata to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for BatchOperationMetadata
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace BatchOperationMetadata {
+
+ /** State enum. */
+ enum State {
+ STATE_UNSPECIFIED = 0,
+ PROCESSING = 1,
+ SUCCESSFUL = 2,
+ FAILED = 3,
+ CANCELLED = 4
+ }
+ }
+
+ /** Properties of a ProductSetPurgeConfig. */
+ interface IProductSetPurgeConfig {
+
+ /** ProductSetPurgeConfig productSetId */
+ productSetId?: (string|null);
+ }
+
+ /** Represents a ProductSetPurgeConfig. */
+ class ProductSetPurgeConfig implements IProductSetPurgeConfig {
+
+ /**
+ * Constructs a new ProductSetPurgeConfig.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p4beta1.IProductSetPurgeConfig);
+
+ /** ProductSetPurgeConfig productSetId. */
+ public productSetId: string;
+
+ /**
+ * Creates a new ProductSetPurgeConfig instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ProductSetPurgeConfig instance
+ */
+ public static create(properties?: google.cloud.vision.v1p4beta1.IProductSetPurgeConfig): google.cloud.vision.v1p4beta1.ProductSetPurgeConfig;
+
+ /**
+ * Encodes the specified ProductSetPurgeConfig message. Does not implicitly {@link google.cloud.vision.v1p4beta1.ProductSetPurgeConfig.verify|verify} messages.
+ * @param message ProductSetPurgeConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p4beta1.IProductSetPurgeConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ProductSetPurgeConfig message, length delimited. Does not implicitly {@link google.cloud.vision.v1p4beta1.ProductSetPurgeConfig.verify|verify} messages.
+ * @param message ProductSetPurgeConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p4beta1.IProductSetPurgeConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ProductSetPurgeConfig message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ProductSetPurgeConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p4beta1.ProductSetPurgeConfig;
+
+ /**
+ * Decodes a ProductSetPurgeConfig message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ProductSetPurgeConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p4beta1.ProductSetPurgeConfig;
+
+ /**
+ * Verifies a ProductSetPurgeConfig message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ProductSetPurgeConfig message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ProductSetPurgeConfig
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p4beta1.ProductSetPurgeConfig;
+
+ /**
+ * Creates a plain object from a ProductSetPurgeConfig message. Also converts values to other types if specified.
+ * @param message ProductSetPurgeConfig
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p4beta1.ProductSetPurgeConfig, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ProductSetPurgeConfig to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ProductSetPurgeConfig
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a PurgeProductsRequest. */
+ interface IPurgeProductsRequest {
+
+ /** PurgeProductsRequest productSetPurgeConfig */
+ productSetPurgeConfig?: (google.cloud.vision.v1p4beta1.IProductSetPurgeConfig|null);
+
+ /** PurgeProductsRequest deleteOrphanProducts */
+ deleteOrphanProducts?: (boolean|null);
+
+ /** PurgeProductsRequest parent */
+ parent?: (string|null);
+
+ /** PurgeProductsRequest force */
+ force?: (boolean|null);
+ }
+
+ /** Represents a PurgeProductsRequest. */
+ class PurgeProductsRequest implements IPurgeProductsRequest {
+
+ /**
+ * Constructs a new PurgeProductsRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p4beta1.IPurgeProductsRequest);
+
+ /** PurgeProductsRequest productSetPurgeConfig. */
+ public productSetPurgeConfig?: (google.cloud.vision.v1p4beta1.IProductSetPurgeConfig|null);
+
+ /** PurgeProductsRequest deleteOrphanProducts. */
+ public deleteOrphanProducts?: (boolean|null);
+
+ /** PurgeProductsRequest parent. */
+ public parent: string;
+
+ /** PurgeProductsRequest force. */
+ public force: boolean;
+
+ /** PurgeProductsRequest target. */
+ public target?: ("productSetPurgeConfig"|"deleteOrphanProducts");
+
+ /**
+ * Creates a new PurgeProductsRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns PurgeProductsRequest instance
+ */
+ public static create(properties?: google.cloud.vision.v1p4beta1.IPurgeProductsRequest): google.cloud.vision.v1p4beta1.PurgeProductsRequest;
+
+ /**
+ * Encodes the specified PurgeProductsRequest message. Does not implicitly {@link google.cloud.vision.v1p4beta1.PurgeProductsRequest.verify|verify} messages.
+ * @param message PurgeProductsRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p4beta1.IPurgeProductsRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified PurgeProductsRequest message, length delimited. Does not implicitly {@link google.cloud.vision.v1p4beta1.PurgeProductsRequest.verify|verify} messages.
+ * @param message PurgeProductsRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p4beta1.IPurgeProductsRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a PurgeProductsRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns PurgeProductsRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p4beta1.PurgeProductsRequest;
+
+ /**
+ * Decodes a PurgeProductsRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns PurgeProductsRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p4beta1.PurgeProductsRequest;
+
+ /**
+ * Verifies a PurgeProductsRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a PurgeProductsRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns PurgeProductsRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p4beta1.PurgeProductsRequest;
+
+ /**
+ * Creates a plain object from a PurgeProductsRequest message. Also converts values to other types if specified.
+ * @param message PurgeProductsRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p4beta1.PurgeProductsRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this PurgeProductsRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for PurgeProductsRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a TextAnnotation. */
+ interface ITextAnnotation {
+
+ /** TextAnnotation pages */
+ pages?: (google.cloud.vision.v1p4beta1.IPage[]|null);
+
+ /** TextAnnotation text */
+ text?: (string|null);
+ }
+
+ /** Represents a TextAnnotation. */
+ class TextAnnotation implements ITextAnnotation {
+
+ /**
+ * Constructs a new TextAnnotation.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p4beta1.ITextAnnotation);
+
+ /** TextAnnotation pages. */
+ public pages: google.cloud.vision.v1p4beta1.IPage[];
+
+ /** TextAnnotation text. */
+ public text: string;
+
+ /**
+ * Creates a new TextAnnotation instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns TextAnnotation instance
+ */
+ public static create(properties?: google.cloud.vision.v1p4beta1.ITextAnnotation): google.cloud.vision.v1p4beta1.TextAnnotation;
+
+ /**
+ * Encodes the specified TextAnnotation message. Does not implicitly {@link google.cloud.vision.v1p4beta1.TextAnnotation.verify|verify} messages.
+ * @param message TextAnnotation message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p4beta1.ITextAnnotation, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified TextAnnotation message, length delimited. Does not implicitly {@link google.cloud.vision.v1p4beta1.TextAnnotation.verify|verify} messages.
+ * @param message TextAnnotation message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p4beta1.ITextAnnotation, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a TextAnnotation message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns TextAnnotation
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p4beta1.TextAnnotation;
+
+ /**
+ * Decodes a TextAnnotation message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns TextAnnotation
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p4beta1.TextAnnotation;
+
+ /**
+ * Verifies a TextAnnotation message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a TextAnnotation message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns TextAnnotation
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p4beta1.TextAnnotation;
+
+ /**
+ * Creates a plain object from a TextAnnotation message. Also converts values to other types if specified.
+ * @param message TextAnnotation
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p4beta1.TextAnnotation, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this TextAnnotation to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for TextAnnotation
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace TextAnnotation {
+
+ /** Properties of a DetectedLanguage. */
+ interface IDetectedLanguage {
+
+ /** DetectedLanguage languageCode */
+ languageCode?: (string|null);
+
+ /** DetectedLanguage confidence */
+ confidence?: (number|null);
+ }
+
+ /** Represents a DetectedLanguage. */
+ class DetectedLanguage implements IDetectedLanguage {
+
+ /**
+ * Constructs a new DetectedLanguage.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p4beta1.TextAnnotation.IDetectedLanguage);
+
+ /** DetectedLanguage languageCode. */
+ public languageCode: string;
+
+ /** DetectedLanguage confidence. */
+ public confidence: number;
+
+ /**
+ * Creates a new DetectedLanguage instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns DetectedLanguage instance
+ */
+ public static create(properties?: google.cloud.vision.v1p4beta1.TextAnnotation.IDetectedLanguage): google.cloud.vision.v1p4beta1.TextAnnotation.DetectedLanguage;
+
+ /**
+ * Encodes the specified DetectedLanguage message. Does not implicitly {@link google.cloud.vision.v1p4beta1.TextAnnotation.DetectedLanguage.verify|verify} messages.
+ * @param message DetectedLanguage message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p4beta1.TextAnnotation.IDetectedLanguage, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified DetectedLanguage message, length delimited. Does not implicitly {@link google.cloud.vision.v1p4beta1.TextAnnotation.DetectedLanguage.verify|verify} messages.
+ * @param message DetectedLanguage message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p4beta1.TextAnnotation.IDetectedLanguage, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a DetectedLanguage message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns DetectedLanguage
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p4beta1.TextAnnotation.DetectedLanguage;
+
+ /**
+ * Decodes a DetectedLanguage message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns DetectedLanguage
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p4beta1.TextAnnotation.DetectedLanguage;
+
+ /**
+ * Verifies a DetectedLanguage message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a DetectedLanguage message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns DetectedLanguage
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p4beta1.TextAnnotation.DetectedLanguage;
+
+ /**
+ * Creates a plain object from a DetectedLanguage message. Also converts values to other types if specified.
+ * @param message DetectedLanguage
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p4beta1.TextAnnotation.DetectedLanguage, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this DetectedLanguage to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for DetectedLanguage
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a DetectedBreak. */
+ interface IDetectedBreak {
+
+ /** DetectedBreak type */
+ type?: (google.cloud.vision.v1p4beta1.TextAnnotation.DetectedBreak.BreakType|keyof typeof google.cloud.vision.v1p4beta1.TextAnnotation.DetectedBreak.BreakType|null);
+
+ /** DetectedBreak isPrefix */
+ isPrefix?: (boolean|null);
+ }
+
+ /** Represents a DetectedBreak. */
+ class DetectedBreak implements IDetectedBreak {
+
+ /**
+ * Constructs a new DetectedBreak.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p4beta1.TextAnnotation.IDetectedBreak);
+
+ /** DetectedBreak type. */
+ public type: (google.cloud.vision.v1p4beta1.TextAnnotation.DetectedBreak.BreakType|keyof typeof google.cloud.vision.v1p4beta1.TextAnnotation.DetectedBreak.BreakType);
+
+ /** DetectedBreak isPrefix. */
+ public isPrefix: boolean;
+
+ /**
+ * Creates a new DetectedBreak instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns DetectedBreak instance
+ */
+ public static create(properties?: google.cloud.vision.v1p4beta1.TextAnnotation.IDetectedBreak): google.cloud.vision.v1p4beta1.TextAnnotation.DetectedBreak;
+
+ /**
+ * Encodes the specified DetectedBreak message. Does not implicitly {@link google.cloud.vision.v1p4beta1.TextAnnotation.DetectedBreak.verify|verify} messages.
+ * @param message DetectedBreak message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p4beta1.TextAnnotation.IDetectedBreak, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified DetectedBreak message, length delimited. Does not implicitly {@link google.cloud.vision.v1p4beta1.TextAnnotation.DetectedBreak.verify|verify} messages.
+ * @param message DetectedBreak message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p4beta1.TextAnnotation.IDetectedBreak, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a DetectedBreak message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns DetectedBreak
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p4beta1.TextAnnotation.DetectedBreak;
+
+ /**
+ * Decodes a DetectedBreak message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns DetectedBreak
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p4beta1.TextAnnotation.DetectedBreak;
+
+ /**
+ * Verifies a DetectedBreak message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a DetectedBreak message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns DetectedBreak
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p4beta1.TextAnnotation.DetectedBreak;
+
+ /**
+ * Creates a plain object from a DetectedBreak message. Also converts values to other types if specified.
+ * @param message DetectedBreak
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p4beta1.TextAnnotation.DetectedBreak, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this DetectedBreak to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for DetectedBreak
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace DetectedBreak {
+
+ /** BreakType enum. */
+ enum BreakType {
+ UNKNOWN = 0,
+ SPACE = 1,
+ SURE_SPACE = 2,
+ EOL_SURE_SPACE = 3,
+ HYPHEN = 4,
+ LINE_BREAK = 5
+ }
+ }
+
+ /** Properties of a TextProperty. */
+ interface ITextProperty {
+
+ /** TextProperty detectedLanguages */
+ detectedLanguages?: (google.cloud.vision.v1p4beta1.TextAnnotation.IDetectedLanguage[]|null);
+
+ /** TextProperty detectedBreak */
+ detectedBreak?: (google.cloud.vision.v1p4beta1.TextAnnotation.IDetectedBreak|null);
+ }
+
+ /** Represents a TextProperty. */
+ class TextProperty implements ITextProperty {
+
+ /**
+ * Constructs a new TextProperty.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p4beta1.TextAnnotation.ITextProperty);
+
+ /** TextProperty detectedLanguages. */
+ public detectedLanguages: google.cloud.vision.v1p4beta1.TextAnnotation.IDetectedLanguage[];
+
+ /** TextProperty detectedBreak. */
+ public detectedBreak?: (google.cloud.vision.v1p4beta1.TextAnnotation.IDetectedBreak|null);
+
+ /**
+ * Creates a new TextProperty instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns TextProperty instance
+ */
+ public static create(properties?: google.cloud.vision.v1p4beta1.TextAnnotation.ITextProperty): google.cloud.vision.v1p4beta1.TextAnnotation.TextProperty;
+
+ /**
+ * Encodes the specified TextProperty message. Does not implicitly {@link google.cloud.vision.v1p4beta1.TextAnnotation.TextProperty.verify|verify} messages.
+ * @param message TextProperty message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p4beta1.TextAnnotation.ITextProperty, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified TextProperty message, length delimited. Does not implicitly {@link google.cloud.vision.v1p4beta1.TextAnnotation.TextProperty.verify|verify} messages.
+ * @param message TextProperty message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p4beta1.TextAnnotation.ITextProperty, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a TextProperty message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns TextProperty
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p4beta1.TextAnnotation.TextProperty;
+
+ /**
+ * Decodes a TextProperty message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns TextProperty
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p4beta1.TextAnnotation.TextProperty;
+
+ /**
+ * Verifies a TextProperty message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a TextProperty message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns TextProperty
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p4beta1.TextAnnotation.TextProperty;
+
+ /**
+ * Creates a plain object from a TextProperty message. Also converts values to other types if specified.
+ * @param message TextProperty
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p4beta1.TextAnnotation.TextProperty, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this TextProperty to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for TextProperty
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+ }
+
+ /** Properties of a Page. */
+ interface IPage {
+
+ /** Page property */
+ property?: (google.cloud.vision.v1p4beta1.TextAnnotation.ITextProperty|null);
+
+ /** Page width */
+ width?: (number|null);
+
+ /** Page height */
+ height?: (number|null);
+
+ /** Page blocks */
+ blocks?: (google.cloud.vision.v1p4beta1.IBlock[]|null);
+
+ /** Page confidence */
+ confidence?: (number|null);
+ }
+
+ /** Represents a Page. */
+ class Page implements IPage {
+
+ /**
+ * Constructs a new Page.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p4beta1.IPage);
+
+ /** Page property. */
+ public property?: (google.cloud.vision.v1p4beta1.TextAnnotation.ITextProperty|null);
+
+ /** Page width. */
+ public width: number;
+
+ /** Page height. */
+ public height: number;
+
+ /** Page blocks. */
+ public blocks: google.cloud.vision.v1p4beta1.IBlock[];
+
+ /** Page confidence. */
+ public confidence: number;
+
+ /**
+ * Creates a new Page instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Page instance
+ */
+ public static create(properties?: google.cloud.vision.v1p4beta1.IPage): google.cloud.vision.v1p4beta1.Page;
+
+ /**
+ * Encodes the specified Page message. Does not implicitly {@link google.cloud.vision.v1p4beta1.Page.verify|verify} messages.
+ * @param message Page message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p4beta1.IPage, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Page message, length delimited. Does not implicitly {@link google.cloud.vision.v1p4beta1.Page.verify|verify} messages.
+ * @param message Page message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p4beta1.IPage, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Page message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Page
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p4beta1.Page;
+
+ /**
+ * Decodes a Page message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Page
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p4beta1.Page;
+
+ /**
+ * Verifies a Page message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a Page message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Page
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p4beta1.Page;
+
+ /**
+ * Creates a plain object from a Page message. Also converts values to other types if specified.
+ * @param message Page
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p4beta1.Page, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Page to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Page
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a Block. */
+ interface IBlock {
+
+ /** Block property */
+ property?: (google.cloud.vision.v1p4beta1.TextAnnotation.ITextProperty|null);
+
+ /** Block boundingBox */
+ boundingBox?: (google.cloud.vision.v1p4beta1.IBoundingPoly|null);
+
+ /** Block paragraphs */
+ paragraphs?: (google.cloud.vision.v1p4beta1.IParagraph[]|null);
+
+ /** Block blockType */
+ blockType?: (google.cloud.vision.v1p4beta1.Block.BlockType|keyof typeof google.cloud.vision.v1p4beta1.Block.BlockType|null);
+
+ /** Block confidence */
+ confidence?: (number|null);
+ }
+
+ /** Represents a Block. */
+ class Block implements IBlock {
+
+ /**
+ * Constructs a new Block.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p4beta1.IBlock);
+
+ /** Block property. */
+ public property?: (google.cloud.vision.v1p4beta1.TextAnnotation.ITextProperty|null);
+
+ /** Block boundingBox. */
+ public boundingBox?: (google.cloud.vision.v1p4beta1.IBoundingPoly|null);
+
+ /** Block paragraphs. */
+ public paragraphs: google.cloud.vision.v1p4beta1.IParagraph[];
+
+ /** Block blockType. */
+ public blockType: (google.cloud.vision.v1p4beta1.Block.BlockType|keyof typeof google.cloud.vision.v1p4beta1.Block.BlockType);
+
+ /** Block confidence. */
+ public confidence: number;
+
+ /**
+ * Creates a new Block instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Block instance
+ */
+ public static create(properties?: google.cloud.vision.v1p4beta1.IBlock): google.cloud.vision.v1p4beta1.Block;
+
+ /**
+ * Encodes the specified Block message. Does not implicitly {@link google.cloud.vision.v1p4beta1.Block.verify|verify} messages.
+ * @param message Block message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p4beta1.IBlock, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Block message, length delimited. Does not implicitly {@link google.cloud.vision.v1p4beta1.Block.verify|verify} messages.
+ * @param message Block message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p4beta1.IBlock, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Block message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Block
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p4beta1.Block;
+
+ /**
+ * Decodes a Block message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Block
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p4beta1.Block;
+
+ /**
+ * Verifies a Block message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a Block message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Block
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p4beta1.Block;
+
+ /**
+ * Creates a plain object from a Block message. Also converts values to other types if specified.
+ * @param message Block
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p4beta1.Block, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Block to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Block
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace Block {
+
+ /** BlockType enum. */
+ enum BlockType {
+ UNKNOWN = 0,
+ TEXT = 1,
+ TABLE = 2,
+ PICTURE = 3,
+ RULER = 4,
+ BARCODE = 5
+ }
+ }
+
+ /** Properties of a Paragraph. */
+ interface IParagraph {
+
+ /** Paragraph property */
+ property?: (google.cloud.vision.v1p4beta1.TextAnnotation.ITextProperty|null);
+
+ /** Paragraph boundingBox */
+ boundingBox?: (google.cloud.vision.v1p4beta1.IBoundingPoly|null);
+
+ /** Paragraph words */
+ words?: (google.cloud.vision.v1p4beta1.IWord[]|null);
+
+ /** Paragraph confidence */
+ confidence?: (number|null);
+ }
+
+ /** Represents a Paragraph. */
+ class Paragraph implements IParagraph {
+
+ /**
+ * Constructs a new Paragraph.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p4beta1.IParagraph);
+
+ /** Paragraph property. */
+ public property?: (google.cloud.vision.v1p4beta1.TextAnnotation.ITextProperty|null);
+
+ /** Paragraph boundingBox. */
+ public boundingBox?: (google.cloud.vision.v1p4beta1.IBoundingPoly|null);
+
+ /** Paragraph words. */
+ public words: google.cloud.vision.v1p4beta1.IWord[];
+
+ /** Paragraph confidence. */
+ public confidence: number;
+
+ /**
+ * Creates a new Paragraph instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Paragraph instance
+ */
+ public static create(properties?: google.cloud.vision.v1p4beta1.IParagraph): google.cloud.vision.v1p4beta1.Paragraph;
+
+ /**
+ * Encodes the specified Paragraph message. Does not implicitly {@link google.cloud.vision.v1p4beta1.Paragraph.verify|verify} messages.
+ * @param message Paragraph message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p4beta1.IParagraph, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Paragraph message, length delimited. Does not implicitly {@link google.cloud.vision.v1p4beta1.Paragraph.verify|verify} messages.
+ * @param message Paragraph message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p4beta1.IParagraph, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Paragraph message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Paragraph
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p4beta1.Paragraph;
+
+ /**
+ * Decodes a Paragraph message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Paragraph
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p4beta1.Paragraph;
+
+ /**
+ * Verifies a Paragraph message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a Paragraph message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Paragraph
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p4beta1.Paragraph;
+
+ /**
+ * Creates a plain object from a Paragraph message. Also converts values to other types if specified.
+ * @param message Paragraph
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p4beta1.Paragraph, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Paragraph to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Paragraph
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a Word. */
+ interface IWord {
+
+ /** Word property */
+ property?: (google.cloud.vision.v1p4beta1.TextAnnotation.ITextProperty|null);
+
+ /** Word boundingBox */
+ boundingBox?: (google.cloud.vision.v1p4beta1.IBoundingPoly|null);
+
+ /** Word symbols */
+ symbols?: (google.cloud.vision.v1p4beta1.ISymbol[]|null);
+
+ /** Word confidence */
+ confidence?: (number|null);
+ }
+
+ /** Represents a Word. */
+ class Word implements IWord {
+
+ /**
+ * Constructs a new Word.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p4beta1.IWord);
+
+ /** Word property. */
+ public property?: (google.cloud.vision.v1p4beta1.TextAnnotation.ITextProperty|null);
+
+ /** Word boundingBox. */
+ public boundingBox?: (google.cloud.vision.v1p4beta1.IBoundingPoly|null);
+
+ /** Word symbols. */
+ public symbols: google.cloud.vision.v1p4beta1.ISymbol[];
+
+ /** Word confidence. */
+ public confidence: number;
+
+ /**
+ * Creates a new Word instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Word instance
+ */
+ public static create(properties?: google.cloud.vision.v1p4beta1.IWord): google.cloud.vision.v1p4beta1.Word;
+
+ /**
+ * Encodes the specified Word message. Does not implicitly {@link google.cloud.vision.v1p4beta1.Word.verify|verify} messages.
+ * @param message Word message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p4beta1.IWord, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Word message, length delimited. Does not implicitly {@link google.cloud.vision.v1p4beta1.Word.verify|verify} messages.
+ * @param message Word message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p4beta1.IWord, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Word message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Word
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p4beta1.Word;
+
+ /**
+ * Decodes a Word message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Word
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p4beta1.Word;
+
+ /**
+ * Verifies a Word message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a Word message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Word
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p4beta1.Word;
+
+ /**
+ * Creates a plain object from a Word message. Also converts values to other types if specified.
+ * @param message Word
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p4beta1.Word, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Word to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Word
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a Symbol. */
+ interface ISymbol {
+
+ /** Symbol property */
+ property?: (google.cloud.vision.v1p4beta1.TextAnnotation.ITextProperty|null);
+
+ /** Symbol boundingBox */
+ boundingBox?: (google.cloud.vision.v1p4beta1.IBoundingPoly|null);
+
+ /** Symbol text */
+ text?: (string|null);
+
+ /** Symbol confidence */
+ confidence?: (number|null);
+ }
+
+ /** Represents a Symbol. */
+ class Symbol implements ISymbol {
+
+ /**
+ * Constructs a new Symbol.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p4beta1.ISymbol);
+
+ /** Symbol property. */
+ public property?: (google.cloud.vision.v1p4beta1.TextAnnotation.ITextProperty|null);
+
+ /** Symbol boundingBox. */
+ public boundingBox?: (google.cloud.vision.v1p4beta1.IBoundingPoly|null);
+
+ /** Symbol text. */
+ public text: string;
+
+ /** Symbol confidence. */
+ public confidence: number;
+
+ /**
+ * Creates a new Symbol instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Symbol instance
+ */
+ public static create(properties?: google.cloud.vision.v1p4beta1.ISymbol): google.cloud.vision.v1p4beta1.Symbol;
+
+ /**
+ * Encodes the specified Symbol message. Does not implicitly {@link google.cloud.vision.v1p4beta1.Symbol.verify|verify} messages.
+ * @param message Symbol message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p4beta1.ISymbol, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Symbol message, length delimited. Does not implicitly {@link google.cloud.vision.v1p4beta1.Symbol.verify|verify} messages.
+ * @param message Symbol message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p4beta1.ISymbol, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Symbol message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Symbol
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p4beta1.Symbol;
+
+ /**
+ * Decodes a Symbol message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Symbol
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p4beta1.Symbol;
+
+ /**
+ * Verifies a Symbol message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a Symbol message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Symbol
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p4beta1.Symbol;
+
+ /**
+ * Creates a plain object from a Symbol message. Also converts values to other types if specified.
+ * @param message Symbol
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p4beta1.Symbol, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Symbol to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Symbol
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a WebDetection. */
+ interface IWebDetection {
+
+ /** WebDetection webEntities */
+ webEntities?: (google.cloud.vision.v1p4beta1.WebDetection.IWebEntity[]|null);
+
+ /** WebDetection fullMatchingImages */
+ fullMatchingImages?: (google.cloud.vision.v1p4beta1.WebDetection.IWebImage[]|null);
+
+ /** WebDetection partialMatchingImages */
+ partialMatchingImages?: (google.cloud.vision.v1p4beta1.WebDetection.IWebImage[]|null);
+
+ /** WebDetection pagesWithMatchingImages */
+ pagesWithMatchingImages?: (google.cloud.vision.v1p4beta1.WebDetection.IWebPage[]|null);
+
+ /** WebDetection visuallySimilarImages */
+ visuallySimilarImages?: (google.cloud.vision.v1p4beta1.WebDetection.IWebImage[]|null);
+
+ /** WebDetection bestGuessLabels */
+ bestGuessLabels?: (google.cloud.vision.v1p4beta1.WebDetection.IWebLabel[]|null);
+ }
+
+ /** Represents a WebDetection. */
+ class WebDetection implements IWebDetection {
+
+ /**
+ * Constructs a new WebDetection.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p4beta1.IWebDetection);
+
+ /** WebDetection webEntities. */
+ public webEntities: google.cloud.vision.v1p4beta1.WebDetection.IWebEntity[];
+
+ /** WebDetection fullMatchingImages. */
+ public fullMatchingImages: google.cloud.vision.v1p4beta1.WebDetection.IWebImage[];
+
+ /** WebDetection partialMatchingImages. */
+ public partialMatchingImages: google.cloud.vision.v1p4beta1.WebDetection.IWebImage[];
+
+ /** WebDetection pagesWithMatchingImages. */
+ public pagesWithMatchingImages: google.cloud.vision.v1p4beta1.WebDetection.IWebPage[];
+
+ /** WebDetection visuallySimilarImages. */
+ public visuallySimilarImages: google.cloud.vision.v1p4beta1.WebDetection.IWebImage[];
+
+ /** WebDetection bestGuessLabels. */
+ public bestGuessLabels: google.cloud.vision.v1p4beta1.WebDetection.IWebLabel[];
+
+ /**
+ * Creates a new WebDetection instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns WebDetection instance
+ */
+ public static create(properties?: google.cloud.vision.v1p4beta1.IWebDetection): google.cloud.vision.v1p4beta1.WebDetection;
+
+ /**
+ * Encodes the specified WebDetection message. Does not implicitly {@link google.cloud.vision.v1p4beta1.WebDetection.verify|verify} messages.
+ * @param message WebDetection message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p4beta1.IWebDetection, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified WebDetection message, length delimited. Does not implicitly {@link google.cloud.vision.v1p4beta1.WebDetection.verify|verify} messages.
+ * @param message WebDetection message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p4beta1.IWebDetection, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a WebDetection message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns WebDetection
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p4beta1.WebDetection;
+
+ /**
+ * Decodes a WebDetection message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns WebDetection
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p4beta1.WebDetection;
+
+ /**
+ * Verifies a WebDetection message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a WebDetection message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns WebDetection
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p4beta1.WebDetection;
+
+ /**
+ * Creates a plain object from a WebDetection message. Also converts values to other types if specified.
+ * @param message WebDetection
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p4beta1.WebDetection, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this WebDetection to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for WebDetection
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace WebDetection {
+
+ /** Properties of a WebEntity. */
+ interface IWebEntity {
+
+ /** WebEntity entityId */
+ entityId?: (string|null);
+
+ /** WebEntity score */
+ score?: (number|null);
+
+ /** WebEntity description */
+ description?: (string|null);
+ }
+
+ /** Represents a WebEntity. */
+ class WebEntity implements IWebEntity {
+
+ /**
+ * Constructs a new WebEntity.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p4beta1.WebDetection.IWebEntity);
+
+ /** WebEntity entityId. */
+ public entityId: string;
+
+ /** WebEntity score. */
+ public score: number;
+
+ /** WebEntity description. */
+ public description: string;
+
+ /**
+ * Creates a new WebEntity instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns WebEntity instance
+ */
+ public static create(properties?: google.cloud.vision.v1p4beta1.WebDetection.IWebEntity): google.cloud.vision.v1p4beta1.WebDetection.WebEntity;
+
+ /**
+ * Encodes the specified WebEntity message. Does not implicitly {@link google.cloud.vision.v1p4beta1.WebDetection.WebEntity.verify|verify} messages.
+ * @param message WebEntity message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p4beta1.WebDetection.IWebEntity, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified WebEntity message, length delimited. Does not implicitly {@link google.cloud.vision.v1p4beta1.WebDetection.WebEntity.verify|verify} messages.
+ * @param message WebEntity message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p4beta1.WebDetection.IWebEntity, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a WebEntity message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns WebEntity
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p4beta1.WebDetection.WebEntity;
+
+ /**
+ * Decodes a WebEntity message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns WebEntity
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p4beta1.WebDetection.WebEntity;
+
+ /**
+ * Verifies a WebEntity message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a WebEntity message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns WebEntity
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p4beta1.WebDetection.WebEntity;
+
+ /**
+ * Creates a plain object from a WebEntity message. Also converts values to other types if specified.
+ * @param message WebEntity
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p4beta1.WebDetection.WebEntity, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this WebEntity to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for WebEntity
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a WebImage. */
+ interface IWebImage {
+
+ /** WebImage url */
+ url?: (string|null);
+
+ /** WebImage score */
+ score?: (number|null);
+ }
+
+ /** Represents a WebImage. */
+ class WebImage implements IWebImage {
+
+ /**
+ * Constructs a new WebImage.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p4beta1.WebDetection.IWebImage);
+
+ /** WebImage url. */
+ public url: string;
+
+ /** WebImage score. */
+ public score: number;
+
+ /**
+ * Creates a new WebImage instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns WebImage instance
+ */
+ public static create(properties?: google.cloud.vision.v1p4beta1.WebDetection.IWebImage): google.cloud.vision.v1p4beta1.WebDetection.WebImage;
+
+ /**
+ * Encodes the specified WebImage message. Does not implicitly {@link google.cloud.vision.v1p4beta1.WebDetection.WebImage.verify|verify} messages.
+ * @param message WebImage message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p4beta1.WebDetection.IWebImage, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified WebImage message, length delimited. Does not implicitly {@link google.cloud.vision.v1p4beta1.WebDetection.WebImage.verify|verify} messages.
+ * @param message WebImage message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p4beta1.WebDetection.IWebImage, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a WebImage message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns WebImage
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p4beta1.WebDetection.WebImage;
+
+ /**
+ * Decodes a WebImage message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns WebImage
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p4beta1.WebDetection.WebImage;
+
+ /**
+ * Verifies a WebImage message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a WebImage message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns WebImage
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p4beta1.WebDetection.WebImage;
+
+ /**
+ * Creates a plain object from a WebImage message. Also converts values to other types if specified.
+ * @param message WebImage
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p4beta1.WebDetection.WebImage, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this WebImage to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for WebImage
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a WebPage. */
+ interface IWebPage {
+
+ /** WebPage url */
+ url?: (string|null);
+
+ /** WebPage score */
+ score?: (number|null);
+
+ /** WebPage pageTitle */
+ pageTitle?: (string|null);
+
+ /** WebPage fullMatchingImages */
+ fullMatchingImages?: (google.cloud.vision.v1p4beta1.WebDetection.IWebImage[]|null);
+
+ /** WebPage partialMatchingImages */
+ partialMatchingImages?: (google.cloud.vision.v1p4beta1.WebDetection.IWebImage[]|null);
+ }
+
+ /** Represents a WebPage. */
+ class WebPage implements IWebPage {
+
+ /**
+ * Constructs a new WebPage.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p4beta1.WebDetection.IWebPage);
+
+ /** WebPage url. */
+ public url: string;
+
+ /** WebPage score. */
+ public score: number;
+
+ /** WebPage pageTitle. */
+ public pageTitle: string;
+
+ /** WebPage fullMatchingImages. */
+ public fullMatchingImages: google.cloud.vision.v1p4beta1.WebDetection.IWebImage[];
+
+ /** WebPage partialMatchingImages. */
+ public partialMatchingImages: google.cloud.vision.v1p4beta1.WebDetection.IWebImage[];
+
+ /**
+ * Creates a new WebPage instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns WebPage instance
+ */
+ public static create(properties?: google.cloud.vision.v1p4beta1.WebDetection.IWebPage): google.cloud.vision.v1p4beta1.WebDetection.WebPage;
+
+ /**
+ * Encodes the specified WebPage message. Does not implicitly {@link google.cloud.vision.v1p4beta1.WebDetection.WebPage.verify|verify} messages.
+ * @param message WebPage message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p4beta1.WebDetection.IWebPage, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified WebPage message, length delimited. Does not implicitly {@link google.cloud.vision.v1p4beta1.WebDetection.WebPage.verify|verify} messages.
+ * @param message WebPage message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p4beta1.WebDetection.IWebPage, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a WebPage message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns WebPage
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p4beta1.WebDetection.WebPage;
+
+ /**
+ * Decodes a WebPage message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns WebPage
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p4beta1.WebDetection.WebPage;
+
+ /**
+ * Verifies a WebPage message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a WebPage message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns WebPage
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p4beta1.WebDetection.WebPage;
+
+ /**
+ * Creates a plain object from a WebPage message. Also converts values to other types if specified.
+ * @param message WebPage
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p4beta1.WebDetection.WebPage, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this WebPage to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for WebPage
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a WebLabel. */
+ interface IWebLabel {
+
+ /** WebLabel label */
+ label?: (string|null);
+
+ /** WebLabel languageCode */
+ languageCode?: (string|null);
+ }
+
+ /** Represents a WebLabel. */
+ class WebLabel implements IWebLabel {
+
+ /**
+ * Constructs a new WebLabel.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.vision.v1p4beta1.WebDetection.IWebLabel);
+
+ /** WebLabel label. */
+ public label: string;
+
+ /** WebLabel languageCode. */
+ public languageCode: string;
+
+ /**
+ * Creates a new WebLabel instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns WebLabel instance
+ */
+ public static create(properties?: google.cloud.vision.v1p4beta1.WebDetection.IWebLabel): google.cloud.vision.v1p4beta1.WebDetection.WebLabel;
+
+ /**
+ * Encodes the specified WebLabel message. Does not implicitly {@link google.cloud.vision.v1p4beta1.WebDetection.WebLabel.verify|verify} messages.
+ * @param message WebLabel message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.vision.v1p4beta1.WebDetection.IWebLabel, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified WebLabel message, length delimited. Does not implicitly {@link google.cloud.vision.v1p4beta1.WebDetection.WebLabel.verify|verify} messages.
+ * @param message WebLabel message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.vision.v1p4beta1.WebDetection.IWebLabel, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a WebLabel message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns WebLabel
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.vision.v1p4beta1.WebDetection.WebLabel;
+
+ /**
+ * Decodes a WebLabel message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns WebLabel
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.vision.v1p4beta1.WebDetection.WebLabel;
+
+ /**
+ * Verifies a WebLabel message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a WebLabel message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns WebLabel
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.vision.v1p4beta1.WebDetection.WebLabel;
+
+ /**
+ * Creates a plain object from a WebLabel message. Also converts values to other types if specified.
+ * @param message WebLabel
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.vision.v1p4beta1.WebDetection.WebLabel, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this WebLabel to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for WebLabel
+ * @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 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;
+ }
+
+ /** 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 a DoubleValue. */
+ interface IDoubleValue {
+
+ /** DoubleValue value */
+ value?: (number|null);
+ }
+
+ /** Represents a DoubleValue. */
+ class DoubleValue implements IDoubleValue {
+
+ /**
+ * Constructs a new DoubleValue.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.IDoubleValue);
+
+ /** DoubleValue value. */
+ public value: number;
+
+ /**
+ * Creates a new DoubleValue instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns DoubleValue instance
+ */
+ public static create(properties?: google.protobuf.IDoubleValue): google.protobuf.DoubleValue;
+
+ /**
+ * Encodes the specified DoubleValue message. Does not implicitly {@link google.protobuf.DoubleValue.verify|verify} messages.
+ * @param message DoubleValue message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.IDoubleValue, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified DoubleValue message, length delimited. Does not implicitly {@link google.protobuf.DoubleValue.verify|verify} messages.
+ * @param message DoubleValue message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.IDoubleValue, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a DoubleValue message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns DoubleValue
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.DoubleValue;
+
+ /**
+ * Decodes a DoubleValue message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns DoubleValue
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.DoubleValue;
+
+ /**
+ * Verifies a DoubleValue message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a DoubleValue message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns DoubleValue
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.DoubleValue;
+
+ /**
+ * Creates a plain object from a DoubleValue message. Also converts values to other types if specified.
+ * @param message DoubleValue
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.DoubleValue, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this DoubleValue to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for DoubleValue
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a FloatValue. */
+ interface IFloatValue {
+
+ /** FloatValue value */
+ value?: (number|null);
+ }
+
+ /** Represents a FloatValue. */
+ class FloatValue implements IFloatValue {
+
+ /**
+ * Constructs a new FloatValue.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.IFloatValue);
+
+ /** FloatValue value. */
+ public value: number;
+
+ /**
+ * Creates a new FloatValue instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns FloatValue instance
+ */
+ public static create(properties?: google.protobuf.IFloatValue): google.protobuf.FloatValue;
+
+ /**
+ * Encodes the specified FloatValue message. Does not implicitly {@link google.protobuf.FloatValue.verify|verify} messages.
+ * @param message FloatValue message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.IFloatValue, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified FloatValue message, length delimited. Does not implicitly {@link google.protobuf.FloatValue.verify|verify} messages.
+ * @param message FloatValue message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.IFloatValue, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a FloatValue message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns FloatValue
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.FloatValue;
+
+ /**
+ * Decodes a FloatValue message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns FloatValue
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.FloatValue;
+
+ /**
+ * Verifies a FloatValue message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a FloatValue message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns FloatValue
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.FloatValue;
+
+ /**
+ * Creates a plain object from a FloatValue message. Also converts values to other types if specified.
+ * @param message FloatValue
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.FloatValue, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this FloatValue to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for FloatValue
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an Int64Value. */
+ interface IInt64Value {
+
+ /** Int64Value value */
+ value?: (number|Long|string|null);
+ }
+
+ /** Represents an Int64Value. */
+ class Int64Value implements IInt64Value {
+
+ /**
+ * Constructs a new Int64Value.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.IInt64Value);
+
+ /** Int64Value value. */
+ public value: (number|Long|string);
+
+ /**
+ * Creates a new Int64Value instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Int64Value instance
+ */
+ public static create(properties?: google.protobuf.IInt64Value): google.protobuf.Int64Value;
+
+ /**
+ * Encodes the specified Int64Value message. Does not implicitly {@link google.protobuf.Int64Value.verify|verify} messages.
+ * @param message Int64Value message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.IInt64Value, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Int64Value message, length delimited. Does not implicitly {@link google.protobuf.Int64Value.verify|verify} messages.
+ * @param message Int64Value message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.IInt64Value, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an Int64Value message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Int64Value
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.Int64Value;
+
+ /**
+ * Decodes an Int64Value message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Int64Value
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.Int64Value;
+
+ /**
+ * Verifies an Int64Value message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates an Int64Value message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Int64Value
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.Int64Value;
+
+ /**
+ * Creates a plain object from an Int64Value message. Also converts values to other types if specified.
+ * @param message Int64Value
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.Int64Value, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Int64Value to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Int64Value
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a UInt64Value. */
+ interface IUInt64Value {
+
+ /** UInt64Value value */
+ value?: (number|Long|string|null);
+ }
+
+ /** Represents a UInt64Value. */
+ class UInt64Value implements IUInt64Value {
+
+ /**
+ * Constructs a new UInt64Value.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.IUInt64Value);
+
+ /** UInt64Value value. */
+ public value: (number|Long|string);
+
+ /**
+ * Creates a new UInt64Value instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns UInt64Value instance
+ */
+ public static create(properties?: google.protobuf.IUInt64Value): google.protobuf.UInt64Value;
+
+ /**
+ * Encodes the specified UInt64Value message. Does not implicitly {@link google.protobuf.UInt64Value.verify|verify} messages.
+ * @param message UInt64Value message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.IUInt64Value, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified UInt64Value message, length delimited. Does not implicitly {@link google.protobuf.UInt64Value.verify|verify} messages.
+ * @param message UInt64Value message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.IUInt64Value, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a UInt64Value message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns UInt64Value
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.UInt64Value;
+
+ /**
+ * Decodes a UInt64Value message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns UInt64Value
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.UInt64Value;
+
+ /**
+ * Verifies a UInt64Value message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a UInt64Value message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns UInt64Value
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.UInt64Value;
+
+ /**
+ * Creates a plain object from a UInt64Value message. Also converts values to other types if specified.
+ * @param message UInt64Value
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.UInt64Value, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this UInt64Value to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for UInt64Value
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an Int32Value. */
+ interface IInt32Value {
+
+ /** Int32Value value */
+ value?: (number|null);
+ }
+
+ /** Represents an Int32Value. */
+ class Int32Value implements IInt32Value {
+
+ /**
+ * Constructs a new Int32Value.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.IInt32Value);
+
+ /** Int32Value value. */
+ public value: number;
+
+ /**
+ * Creates a new Int32Value instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Int32Value instance
+ */
+ public static create(properties?: google.protobuf.IInt32Value): google.protobuf.Int32Value;
+
+ /**
+ * Encodes the specified Int32Value message. Does not implicitly {@link google.protobuf.Int32Value.verify|verify} messages.
+ * @param message Int32Value message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.IInt32Value, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Int32Value message, length delimited. Does not implicitly {@link google.protobuf.Int32Value.verify|verify} messages.
+ * @param message Int32Value message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.IInt32Value, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an Int32Value message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Int32Value
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.Int32Value;
+
+ /**
+ * Decodes an Int32Value message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Int32Value
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.Int32Value;
+
+ /**
+ * Verifies an Int32Value message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates an Int32Value message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Int32Value
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.Int32Value;
+
+ /**
+ * Creates a plain object from an Int32Value message. Also converts values to other types if specified.
+ * @param message Int32Value
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.Int32Value, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Int32Value to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Int32Value
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a UInt32Value. */
+ interface IUInt32Value {
+
+ /** UInt32Value value */
+ value?: (number|null);
+ }
+
+ /** Represents a UInt32Value. */
+ class UInt32Value implements IUInt32Value {
+
+ /**
+ * Constructs a new UInt32Value.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.IUInt32Value);
+
+ /** UInt32Value value. */
+ public value: number;
+
+ /**
+ * Creates a new UInt32Value instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns UInt32Value instance
+ */
+ public static create(properties?: google.protobuf.IUInt32Value): google.protobuf.UInt32Value;
+
+ /**
+ * Encodes the specified UInt32Value message. Does not implicitly {@link google.protobuf.UInt32Value.verify|verify} messages.
+ * @param message UInt32Value message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.IUInt32Value, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified UInt32Value message, length delimited. Does not implicitly {@link google.protobuf.UInt32Value.verify|verify} messages.
+ * @param message UInt32Value message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.IUInt32Value, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a UInt32Value message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns UInt32Value
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.UInt32Value;
+
+ /**
+ * Decodes a UInt32Value message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns UInt32Value
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.UInt32Value;
+
+ /**
+ * Verifies a UInt32Value message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a UInt32Value message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns UInt32Value
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.UInt32Value;
+
+ /**
+ * Creates a plain object from a UInt32Value message. Also converts values to other types if specified.
+ * @param message UInt32Value
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.UInt32Value, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this UInt32Value to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for UInt32Value
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a BoolValue. */
+ interface IBoolValue {
+
+ /** BoolValue value */
+ value?: (boolean|null);
+ }
+
+ /** Represents a BoolValue. */
+ class BoolValue implements IBoolValue {
+
+ /**
+ * Constructs a new BoolValue.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.IBoolValue);
+
+ /** BoolValue value. */
+ public value: boolean;
+
+ /**
+ * Creates a new BoolValue instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns BoolValue instance
+ */
+ public static create(properties?: google.protobuf.IBoolValue): google.protobuf.BoolValue;
+
+ /**
+ * Encodes the specified BoolValue message. Does not implicitly {@link google.protobuf.BoolValue.verify|verify} messages.
+ * @param message BoolValue message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.IBoolValue, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified BoolValue message, length delimited. Does not implicitly {@link google.protobuf.BoolValue.verify|verify} messages.
+ * @param message BoolValue message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.IBoolValue, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a BoolValue message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns BoolValue
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.BoolValue;
+
+ /**
+ * Decodes a BoolValue message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns BoolValue
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.BoolValue;
+
+ /**
+ * Verifies a BoolValue message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a BoolValue message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns BoolValue
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.BoolValue;
+
+ /**
+ * Creates a plain object from a BoolValue message. Also converts values to other types if specified.
+ * @param message BoolValue
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.BoolValue, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this BoolValue to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for BoolValue
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a StringValue. */
+ interface IStringValue {
+
+ /** StringValue value */
+ value?: (string|null);
+ }
+
+ /** Represents a StringValue. */
+ class StringValue implements IStringValue {
+
+ /**
+ * Constructs a new StringValue.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.IStringValue);
+
+ /** StringValue value. */
+ public value: string;
+
+ /**
+ * Creates a new StringValue instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns StringValue instance
+ */
+ public static create(properties?: google.protobuf.IStringValue): google.protobuf.StringValue;
+
+ /**
+ * Encodes the specified StringValue message. Does not implicitly {@link google.protobuf.StringValue.verify|verify} messages.
+ * @param message StringValue message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.IStringValue, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified StringValue message, length delimited. Does not implicitly {@link google.protobuf.StringValue.verify|verify} messages.
+ * @param message StringValue message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.IStringValue, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a StringValue message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns StringValue
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.StringValue;
+
+ /**
+ * Decodes a StringValue message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns StringValue
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.StringValue;
+
+ /**
+ * Verifies a StringValue message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a StringValue message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns StringValue
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.StringValue;
+
+ /**
+ * Creates a plain object from a StringValue message. Also converts values to other types if specified.
+ * @param message StringValue
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.StringValue, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this StringValue to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for StringValue
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a BytesValue. */
+ interface IBytesValue {
+
+ /** BytesValue value */
+ value?: (Uint8Array|string|null);
+ }
+
+ /** Represents a BytesValue. */
+ class BytesValue implements IBytesValue {
+
+ /**
+ * Constructs a new BytesValue.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.IBytesValue);
+
+ /** BytesValue value. */
+ public value: (Uint8Array|string);
+
+ /**
+ * Creates a new BytesValue instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns BytesValue instance
+ */
+ public static create(properties?: google.protobuf.IBytesValue): google.protobuf.BytesValue;
+
+ /**
+ * Encodes the specified BytesValue message. Does not implicitly {@link google.protobuf.BytesValue.verify|verify} messages.
+ * @param message BytesValue message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.IBytesValue, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified BytesValue message, length delimited. Does not implicitly {@link google.protobuf.BytesValue.verify|verify} messages.
+ * @param message BytesValue message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.IBytesValue, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a BytesValue message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns BytesValue
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.BytesValue;
+
+ /**
+ * Decodes a BytesValue message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns BytesValue
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.BytesValue;
+
+ /**
+ * Verifies a BytesValue message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a BytesValue message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns BytesValue
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.BytesValue;
+
+ /**
+ * Creates a plain object from a BytesValue message. Also converts values to other types if specified.
+ * @param message BytesValue
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.BytesValue, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this BytesValue to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for BytesValue
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+ }
+
+ /** Namespace 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;
+ }
+ }
+
+ /** Namespace type. */
+ namespace type {
+
+ /** Properties of a Color. */
+ interface IColor {
+
+ /** Color red */
+ red?: (number|null);
+
+ /** Color green */
+ green?: (number|null);
+
+ /** Color blue */
+ blue?: (number|null);
+
+ /** Color alpha */
+ alpha?: (google.protobuf.IFloatValue|null);
+ }
+
+ /** Represents a Color. */
+ class Color implements IColor {
+
+ /**
+ * Constructs a new Color.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.type.IColor);
+
+ /** Color red. */
+ public red: number;
+
+ /** Color green. */
+ public green: number;
+
+ /** Color blue. */
+ public blue: number;
+
+ /** Color alpha. */
+ public alpha?: (google.protobuf.IFloatValue|null);
+
+ /**
+ * Creates a new Color instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Color instance
+ */
+ public static create(properties?: google.type.IColor): google.type.Color;
+
+ /**
+ * Encodes the specified Color message. Does not implicitly {@link google.type.Color.verify|verify} messages.
+ * @param message Color message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.type.IColor, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Color message, length delimited. Does not implicitly {@link google.type.Color.verify|verify} messages.
+ * @param message Color message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.type.IColor, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Color message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Color
+ * @throws {Error} If the payload is not 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.Color;
+
+ /**
+ * Decodes a Color message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Color
+ * @throws {Error} If the payload 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.Color;
+
+ /**
+ * Verifies a Color message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a Color message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Color
+ */
+ public static fromObject(object: { [k: string]: any }): google.type.Color;
+
+ /**
+ * Creates a plain object from a Color message. Also converts values to other types if specified.
+ * @param message Color
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.type.Color, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Color to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Color
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a LatLng. */
+ interface ILatLng {
+
+ /** LatLng latitude */
+ latitude?: (number|null);
+
+ /** LatLng longitude */
+ longitude?: (number|null);
+ }
+
+ /** Represents a LatLng. */
+ class LatLng implements ILatLng {
+
+ /**
+ * Constructs a new LatLng.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.type.ILatLng);
+
+ /** LatLng latitude. */
+ public latitude: number;
+
+ /** LatLng longitude. */
+ public longitude: number;
+
+ /**
+ * Creates a new LatLng instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns LatLng instance
+ */
+ public static create(properties?: google.type.ILatLng): google.type.LatLng;
+
+ /**
+ * Encodes the specified LatLng message. Does not implicitly {@link google.type.LatLng.verify|verify} messages.
+ * @param message LatLng message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.type.ILatLng, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified LatLng message, length delimited. Does not implicitly {@link google.type.LatLng.verify|verify} messages.
+ * @param message LatLng message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.type.ILatLng, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a LatLng message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns LatLng
+ * @throws {Error} If the payload is not 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.LatLng;
+
+ /**
+ * Decodes a LatLng message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns LatLng
+ * @throws {Error} If the payload 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.LatLng;
+
+ /**
+ * Verifies a LatLng message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a LatLng message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns LatLng
+ */
+ public static fromObject(object: { [k: string]: any }): google.type.LatLng;
+
+ /**
+ * Creates a plain object from a LatLng message. Also converts values to other types if specified.
+ * @param message LatLng
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.type.LatLng, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this LatLng to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for LatLng
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+ }
+}
diff --git a/packages/google-cloud-vision/protos/protos.js b/packages/google-cloud-vision/protos/protos.js
new file mode 100644
index 00000000000..b3208d5e6b2
--- /dev/null
+++ b/packages/google-cloud-vision/protos/protos.js
@@ -0,0 +1,123702 @@
+// Copyright 2023 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_vision_protos || ($protobuf.roots._google_cloud_vision_protos = {});
+
+ $root.google = (function() {
+
+ /**
+ * Namespace google.
+ * @exports google
+ * @namespace
+ */
+ var google = {};
+
+ google.cloud = (function() {
+
+ /**
+ * Namespace cloud.
+ * @memberof google
+ * @namespace
+ */
+ var cloud = {};
+
+ cloud.vision = (function() {
+
+ /**
+ * Namespace vision.
+ * @memberof google.cloud
+ * @namespace
+ */
+ var vision = {};
+
+ vision.v1 = (function() {
+
+ /**
+ * Namespace v1.
+ * @memberof google.cloud.vision
+ * @namespace
+ */
+ var v1 = {};
+
+ v1.Vertex = (function() {
+
+ /**
+ * Properties of a Vertex.
+ * @memberof google.cloud.vision.v1
+ * @interface IVertex
+ * @property {number|null} [x] Vertex x
+ * @property {number|null} [y] Vertex y
+ */
+
+ /**
+ * Constructs a new Vertex.
+ * @memberof google.cloud.vision.v1
+ * @classdesc Represents a Vertex.
+ * @implements IVertex
+ * @constructor
+ * @param {google.cloud.vision.v1.IVertex=} [properties] Properties to set
+ */
+ function Vertex(properties) {
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * Vertex x.
+ * @member {number} x
+ * @memberof google.cloud.vision.v1.Vertex
+ * @instance
+ */
+ Vertex.prototype.x = 0;
+
+ /**
+ * Vertex y.
+ * @member {number} y
+ * @memberof google.cloud.vision.v1.Vertex
+ * @instance
+ */
+ Vertex.prototype.y = 0;
+
+ /**
+ * Creates a new Vertex instance using the specified properties.
+ * @function create
+ * @memberof google.cloud.vision.v1.Vertex
+ * @static
+ * @param {google.cloud.vision.v1.IVertex=} [properties] Properties to set
+ * @returns {google.cloud.vision.v1.Vertex} Vertex instance
+ */
+ Vertex.create = function create(properties) {
+ return new Vertex(properties);
+ };
+
+ /**
+ * Encodes the specified Vertex message. Does not implicitly {@link google.cloud.vision.v1.Vertex.verify|verify} messages.
+ * @function encode
+ * @memberof google.cloud.vision.v1.Vertex
+ * @static
+ * @param {google.cloud.vision.v1.IVertex} message Vertex message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ Vertex.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.x != null && Object.hasOwnProperty.call(message, "x"))
+ writer.uint32(/* id 1, wireType 0 =*/8).int32(message.x);
+ if (message.y != null && Object.hasOwnProperty.call(message, "y"))
+ writer.uint32(/* id 2, wireType 0 =*/16).int32(message.y);
+ return writer;
+ };
+
+ /**
+ * Encodes the specified Vertex message, length delimited. Does not implicitly {@link google.cloud.vision.v1.Vertex.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.cloud.vision.v1.Vertex
+ * @static
+ * @param {google.cloud.vision.v1.IVertex} message Vertex message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ Vertex.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a Vertex message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.cloud.vision.v1.Vertex
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.cloud.vision.v1.Vertex} Vertex
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ Vertex.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.vision.v1.Vertex();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.x = reader.int32();
+ break;
+ }
+ case 2: {
+ message.y = reader.int32();
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a Vertex message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.cloud.vision.v1.Vertex
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.cloud.vision.v1.Vertex} Vertex
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ Vertex.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a Vertex message.
+ * @function verify
+ * @memberof google.cloud.vision.v1.Vertex
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ Vertex.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.x != null && message.hasOwnProperty("x"))
+ if (!$util.isInteger(message.x))
+ return "x: integer expected";
+ if (message.y != null && message.hasOwnProperty("y"))
+ if (!$util.isInteger(message.y))
+ return "y: integer expected";
+ return null;
+ };
+
+ /**
+ * Creates a Vertex message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.cloud.vision.v1.Vertex
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.cloud.vision.v1.Vertex} Vertex
+ */
+ Vertex.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.cloud.vision.v1.Vertex)
+ return object;
+ var message = new $root.google.cloud.vision.v1.Vertex();
+ if (object.x != null)
+ message.x = object.x | 0;
+ if (object.y != null)
+ message.y = object.y | 0;
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a Vertex message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.cloud.vision.v1.Vertex
+ * @static
+ * @param {google.cloud.vision.v1.Vertex} message Vertex
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ Vertex.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.defaults) {
+ object.x = 0;
+ object.y = 0;
+ }
+ if (message.x != null && message.hasOwnProperty("x"))
+ object.x = message.x;
+ if (message.y != null && message.hasOwnProperty("y"))
+ object.y = message.y;
+ return object;
+ };
+
+ /**
+ * Converts this Vertex to JSON.
+ * @function toJSON
+ * @memberof google.cloud.vision.v1.Vertex
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ Vertex.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for Vertex
+ * @function getTypeUrl
+ * @memberof google.cloud.vision.v1.Vertex
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ Vertex.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.cloud.vision.v1.Vertex";
+ };
+
+ return Vertex;
+ })();
+
+ v1.NormalizedVertex = (function() {
+
+ /**
+ * Properties of a NormalizedVertex.
+ * @memberof google.cloud.vision.v1
+ * @interface INormalizedVertex
+ * @property {number|null} [x] NormalizedVertex x
+ * @property {number|null} [y] NormalizedVertex y
+ */
+
+ /**
+ * Constructs a new NormalizedVertex.
+ * @memberof google.cloud.vision.v1
+ * @classdesc Represents a NormalizedVertex.
+ * @implements INormalizedVertex
+ * @constructor
+ * @param {google.cloud.vision.v1.INormalizedVertex=} [properties] Properties to set
+ */
+ function NormalizedVertex(properties) {
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * NormalizedVertex x.
+ * @member {number} x
+ * @memberof google.cloud.vision.v1.NormalizedVertex
+ * @instance
+ */
+ NormalizedVertex.prototype.x = 0;
+
+ /**
+ * NormalizedVertex y.
+ * @member {number} y
+ * @memberof google.cloud.vision.v1.NormalizedVertex
+ * @instance
+ */
+ NormalizedVertex.prototype.y = 0;
+
+ /**
+ * Creates a new NormalizedVertex instance using the specified properties.
+ * @function create
+ * @memberof google.cloud.vision.v1.NormalizedVertex
+ * @static
+ * @param {google.cloud.vision.v1.INormalizedVertex=} [properties] Properties to set
+ * @returns {google.cloud.vision.v1.NormalizedVertex} NormalizedVertex instance
+ */
+ NormalizedVertex.create = function create(properties) {
+ return new NormalizedVertex(properties);
+ };
+
+ /**
+ * Encodes the specified NormalizedVertex message. Does not implicitly {@link google.cloud.vision.v1.NormalizedVertex.verify|verify} messages.
+ * @function encode
+ * @memberof google.cloud.vision.v1.NormalizedVertex
+ * @static
+ * @param {google.cloud.vision.v1.INormalizedVertex} message NormalizedVertex message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ NormalizedVertex.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.x != null && Object.hasOwnProperty.call(message, "x"))
+ writer.uint32(/* id 1, wireType 5 =*/13).float(message.x);
+ if (message.y != null && Object.hasOwnProperty.call(message, "y"))
+ writer.uint32(/* id 2, wireType 5 =*/21).float(message.y);
+ return writer;
+ };
+
+ /**
+ * Encodes the specified NormalizedVertex message, length delimited. Does not implicitly {@link google.cloud.vision.v1.NormalizedVertex.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.cloud.vision.v1.NormalizedVertex
+ * @static
+ * @param {google.cloud.vision.v1.INormalizedVertex} message NormalizedVertex message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ NormalizedVertex.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a NormalizedVertex message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.cloud.vision.v1.NormalizedVertex
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.cloud.vision.v1.NormalizedVertex} NormalizedVertex
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ NormalizedVertex.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.vision.v1.NormalizedVertex();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.x = reader.float();
+ break;
+ }
+ case 2: {
+ message.y = reader.float();
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a NormalizedVertex message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.cloud.vision.v1.NormalizedVertex
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.cloud.vision.v1.NormalizedVertex} NormalizedVertex
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ NormalizedVertex.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a NormalizedVertex message.
+ * @function verify
+ * @memberof google.cloud.vision.v1.NormalizedVertex
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ NormalizedVertex.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.x != null && message.hasOwnProperty("x"))
+ if (typeof message.x !== "number")
+ return "x: number expected";
+ if (message.y != null && message.hasOwnProperty("y"))
+ if (typeof message.y !== "number")
+ return "y: number expected";
+ return null;
+ };
+
+ /**
+ * Creates a NormalizedVertex message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.cloud.vision.v1.NormalizedVertex
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.cloud.vision.v1.NormalizedVertex} NormalizedVertex
+ */
+ NormalizedVertex.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.cloud.vision.v1.NormalizedVertex)
+ return object;
+ var message = new $root.google.cloud.vision.v1.NormalizedVertex();
+ if (object.x != null)
+ message.x = Number(object.x);
+ if (object.y != null)
+ message.y = Number(object.y);
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a NormalizedVertex message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.cloud.vision.v1.NormalizedVertex
+ * @static
+ * @param {google.cloud.vision.v1.NormalizedVertex} message NormalizedVertex
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ NormalizedVertex.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.defaults) {
+ object.x = 0;
+ object.y = 0;
+ }
+ if (message.x != null && message.hasOwnProperty("x"))
+ object.x = options.json && !isFinite(message.x) ? String(message.x) : message.x;
+ if (message.y != null && message.hasOwnProperty("y"))
+ object.y = options.json && !isFinite(message.y) ? String(message.y) : message.y;
+ return object;
+ };
+
+ /**
+ * Converts this NormalizedVertex to JSON.
+ * @function toJSON
+ * @memberof google.cloud.vision.v1.NormalizedVertex
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ NormalizedVertex.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for NormalizedVertex
+ * @function getTypeUrl
+ * @memberof google.cloud.vision.v1.NormalizedVertex
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ NormalizedVertex.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.cloud.vision.v1.NormalizedVertex";
+ };
+
+ return NormalizedVertex;
+ })();
+
+ v1.BoundingPoly = (function() {
+
+ /**
+ * Properties of a BoundingPoly.
+ * @memberof google.cloud.vision.v1
+ * @interface IBoundingPoly
+ * @property {Array.|null} [vertices] BoundingPoly vertices
+ * @property {Array.|null} [normalizedVertices] BoundingPoly normalizedVertices
+ */
+
+ /**
+ * Constructs a new BoundingPoly.
+ * @memberof google.cloud.vision.v1
+ * @classdesc Represents a BoundingPoly.
+ * @implements IBoundingPoly
+ * @constructor
+ * @param {google.cloud.vision.v1.IBoundingPoly=} [properties] Properties to set
+ */
+ function BoundingPoly(properties) {
+ this.vertices = [];
+ this.normalizedVertices = [];
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * BoundingPoly vertices.
+ * @member {Array.} vertices
+ * @memberof google.cloud.vision.v1.BoundingPoly
+ * @instance
+ */
+ BoundingPoly.prototype.vertices = $util.emptyArray;
+
+ /**
+ * BoundingPoly normalizedVertices.
+ * @member {Array.} normalizedVertices
+ * @memberof google.cloud.vision.v1.BoundingPoly
+ * @instance
+ */
+ BoundingPoly.prototype.normalizedVertices = $util.emptyArray;
+
+ /**
+ * Creates a new BoundingPoly instance using the specified properties.
+ * @function create
+ * @memberof google.cloud.vision.v1.BoundingPoly
+ * @static
+ * @param {google.cloud.vision.v1.IBoundingPoly=} [properties] Properties to set
+ * @returns {google.cloud.vision.v1.BoundingPoly} BoundingPoly instance
+ */
+ BoundingPoly.create = function create(properties) {
+ return new BoundingPoly(properties);
+ };
+
+ /**
+ * Encodes the specified BoundingPoly message. Does not implicitly {@link google.cloud.vision.v1.BoundingPoly.verify|verify} messages.
+ * @function encode
+ * @memberof google.cloud.vision.v1.BoundingPoly
+ * @static
+ * @param {google.cloud.vision.v1.IBoundingPoly} message BoundingPoly message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ BoundingPoly.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.vertices != null && message.vertices.length)
+ for (var i = 0; i < message.vertices.length; ++i)
+ $root.google.cloud.vision.v1.Vertex.encode(message.vertices[i], writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim();
+ if (message.normalizedVertices != null && message.normalizedVertices.length)
+ for (var i = 0; i < message.normalizedVertices.length; ++i)
+ $root.google.cloud.vision.v1.NormalizedVertex.encode(message.normalizedVertices[i], writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim();
+ return writer;
+ };
+
+ /**
+ * Encodes the specified BoundingPoly message, length delimited. Does not implicitly {@link google.cloud.vision.v1.BoundingPoly.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.cloud.vision.v1.BoundingPoly
+ * @static
+ * @param {google.cloud.vision.v1.IBoundingPoly} message BoundingPoly message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ BoundingPoly.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a BoundingPoly message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.cloud.vision.v1.BoundingPoly
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.cloud.vision.v1.BoundingPoly} BoundingPoly
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ BoundingPoly.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.vision.v1.BoundingPoly();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ if (!(message.vertices && message.vertices.length))
+ message.vertices = [];
+ message.vertices.push($root.google.cloud.vision.v1.Vertex.decode(reader, reader.uint32()));
+ break;
+ }
+ case 2: {
+ if (!(message.normalizedVertices && message.normalizedVertices.length))
+ message.normalizedVertices = [];
+ message.normalizedVertices.push($root.google.cloud.vision.v1.NormalizedVertex.decode(reader, reader.uint32()));
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a BoundingPoly message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.cloud.vision.v1.BoundingPoly
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.cloud.vision.v1.BoundingPoly} BoundingPoly
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ BoundingPoly.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a BoundingPoly message.
+ * @function verify
+ * @memberof google.cloud.vision.v1.BoundingPoly
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ BoundingPoly.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.vertices != null && message.hasOwnProperty("vertices")) {
+ if (!Array.isArray(message.vertices))
+ return "vertices: array expected";
+ for (var i = 0; i < message.vertices.length; ++i) {
+ var error = $root.google.cloud.vision.v1.Vertex.verify(message.vertices[i]);
+ if (error)
+ return "vertices." + error;
+ }
+ }
+ if (message.normalizedVertices != null && message.hasOwnProperty("normalizedVertices")) {
+ if (!Array.isArray(message.normalizedVertices))
+ return "normalizedVertices: array expected";
+ for (var i = 0; i < message.normalizedVertices.length; ++i) {
+ var error = $root.google.cloud.vision.v1.NormalizedVertex.verify(message.normalizedVertices[i]);
+ if (error)
+ return "normalizedVertices." + error;
+ }
+ }
+ return null;
+ };
+
+ /**
+ * Creates a BoundingPoly message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.cloud.vision.v1.BoundingPoly
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.cloud.vision.v1.BoundingPoly} BoundingPoly
+ */
+ BoundingPoly.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.cloud.vision.v1.BoundingPoly)
+ return object;
+ var message = new $root.google.cloud.vision.v1.BoundingPoly();
+ if (object.vertices) {
+ if (!Array.isArray(object.vertices))
+ throw TypeError(".google.cloud.vision.v1.BoundingPoly.vertices: array expected");
+ message.vertices = [];
+ for (var i = 0; i < object.vertices.length; ++i) {
+ if (typeof object.vertices[i] !== "object")
+ throw TypeError(".google.cloud.vision.v1.BoundingPoly.vertices: object expected");
+ message.vertices[i] = $root.google.cloud.vision.v1.Vertex.fromObject(object.vertices[i]);
+ }
+ }
+ if (object.normalizedVertices) {
+ if (!Array.isArray(object.normalizedVertices))
+ throw TypeError(".google.cloud.vision.v1.BoundingPoly.normalizedVertices: array expected");
+ message.normalizedVertices = [];
+ for (var i = 0; i < object.normalizedVertices.length; ++i) {
+ if (typeof object.normalizedVertices[i] !== "object")
+ throw TypeError(".google.cloud.vision.v1.BoundingPoly.normalizedVertices: object expected");
+ message.normalizedVertices[i] = $root.google.cloud.vision.v1.NormalizedVertex.fromObject(object.normalizedVertices[i]);
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a BoundingPoly message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.cloud.vision.v1.BoundingPoly
+ * @static
+ * @param {google.cloud.vision.v1.BoundingPoly} message BoundingPoly
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ BoundingPoly.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.arrays || options.defaults) {
+ object.vertices = [];
+ object.normalizedVertices = [];
+ }
+ if (message.vertices && message.vertices.length) {
+ object.vertices = [];
+ for (var j = 0; j < message.vertices.length; ++j)
+ object.vertices[j] = $root.google.cloud.vision.v1.Vertex.toObject(message.vertices[j], options);
+ }
+ if (message.normalizedVertices && message.normalizedVertices.length) {
+ object.normalizedVertices = [];
+ for (var j = 0; j < message.normalizedVertices.length; ++j)
+ object.normalizedVertices[j] = $root.google.cloud.vision.v1.NormalizedVertex.toObject(message.normalizedVertices[j], options);
+ }
+ return object;
+ };
+
+ /**
+ * Converts this BoundingPoly to JSON.
+ * @function toJSON
+ * @memberof google.cloud.vision.v1.BoundingPoly
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ BoundingPoly.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for BoundingPoly
+ * @function getTypeUrl
+ * @memberof google.cloud.vision.v1.BoundingPoly
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ BoundingPoly.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.cloud.vision.v1.BoundingPoly";
+ };
+
+ return BoundingPoly;
+ })();
+
+ v1.Position = (function() {
+
+ /**
+ * Properties of a Position.
+ * @memberof google.cloud.vision.v1
+ * @interface IPosition
+ * @property {number|null} [x] Position x
+ * @property {number|null} [y] Position y
+ * @property {number|null} [z] Position z
+ */
+
+ /**
+ * Constructs a new Position.
+ * @memberof google.cloud.vision.v1
+ * @classdesc Represents a Position.
+ * @implements IPosition
+ * @constructor
+ * @param {google.cloud.vision.v1.IPosition=} [properties] Properties to set
+ */
+ function Position(properties) {
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * Position x.
+ * @member {number} x
+ * @memberof google.cloud.vision.v1.Position
+ * @instance
+ */
+ Position.prototype.x = 0;
+
+ /**
+ * Position y.
+ * @member {number} y
+ * @memberof google.cloud.vision.v1.Position
+ * @instance
+ */
+ Position.prototype.y = 0;
+
+ /**
+ * Position z.
+ * @member {number} z
+ * @memberof google.cloud.vision.v1.Position
+ * @instance
+ */
+ Position.prototype.z = 0;
+
+ /**
+ * Creates a new Position instance using the specified properties.
+ * @function create
+ * @memberof google.cloud.vision.v1.Position
+ * @static
+ * @param {google.cloud.vision.v1.IPosition=} [properties] Properties to set
+ * @returns {google.cloud.vision.v1.Position} Position instance
+ */
+ Position.create = function create(properties) {
+ return new Position(properties);
+ };
+
+ /**
+ * Encodes the specified Position message. Does not implicitly {@link google.cloud.vision.v1.Position.verify|verify} messages.
+ * @function encode
+ * @memberof google.cloud.vision.v1.Position
+ * @static
+ * @param {google.cloud.vision.v1.IPosition} message Position message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ Position.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.x != null && Object.hasOwnProperty.call(message, "x"))
+ writer.uint32(/* id 1, wireType 5 =*/13).float(message.x);
+ if (message.y != null && Object.hasOwnProperty.call(message, "y"))
+ writer.uint32(/* id 2, wireType 5 =*/21).float(message.y);
+ if (message.z != null && Object.hasOwnProperty.call(message, "z"))
+ writer.uint32(/* id 3, wireType 5 =*/29).float(message.z);
+ return writer;
+ };
+
+ /**
+ * Encodes the specified Position message, length delimited. Does not implicitly {@link google.cloud.vision.v1.Position.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.cloud.vision.v1.Position
+ * @static
+ * @param {google.cloud.vision.v1.IPosition} message Position message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ Position.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a Position message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.cloud.vision.v1.Position
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.cloud.vision.v1.Position} Position
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ Position.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.vision.v1.Position();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.x = reader.float();
+ break;
+ }
+ case 2: {
+ message.y = reader.float();
+ break;
+ }
+ case 3: {
+ message.z = reader.float();
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a Position message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.cloud.vision.v1.Position
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.cloud.vision.v1.Position} Position
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ Position.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a Position message.
+ * @function verify
+ * @memberof google.cloud.vision.v1.Position
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ Position.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.x != null && message.hasOwnProperty("x"))
+ if (typeof message.x !== "number")
+ return "x: number expected";
+ if (message.y != null && message.hasOwnProperty("y"))
+ if (typeof message.y !== "number")
+ return "y: number expected";
+ if (message.z != null && message.hasOwnProperty("z"))
+ if (typeof message.z !== "number")
+ return "z: number expected";
+ return null;
+ };
+
+ /**
+ * Creates a Position message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.cloud.vision.v1.Position
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.cloud.vision.v1.Position} Position
+ */
+ Position.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.cloud.vision.v1.Position)
+ return object;
+ var message = new $root.google.cloud.vision.v1.Position();
+ if (object.x != null)
+ message.x = Number(object.x);
+ if (object.y != null)
+ message.y = Number(object.y);
+ if (object.z != null)
+ message.z = Number(object.z);
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a Position message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.cloud.vision.v1.Position
+ * @static
+ * @param {google.cloud.vision.v1.Position} message Position
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ Position.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.defaults) {
+ object.x = 0;
+ object.y = 0;
+ object.z = 0;
+ }
+ if (message.x != null && message.hasOwnProperty("x"))
+ object.x = options.json && !isFinite(message.x) ? String(message.x) : message.x;
+ if (message.y != null && message.hasOwnProperty("y"))
+ object.y = options.json && !isFinite(message.y) ? String(message.y) : message.y;
+ if (message.z != null && message.hasOwnProperty("z"))
+ object.z = options.json && !isFinite(message.z) ? String(message.z) : message.z;
+ return object;
+ };
+
+ /**
+ * Converts this Position to JSON.
+ * @function toJSON
+ * @memberof google.cloud.vision.v1.Position
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ Position.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for Position
+ * @function getTypeUrl
+ * @memberof google.cloud.vision.v1.Position
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ Position.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.cloud.vision.v1.Position";
+ };
+
+ return Position;
+ })();
+
+ v1.ImageAnnotator = (function() {
+
+ /**
+ * Constructs a new ImageAnnotator service.
+ * @memberof google.cloud.vision.v1
+ * @classdesc Represents an ImageAnnotator
+ * @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 ImageAnnotator(rpcImpl, requestDelimited, responseDelimited) {
+ $protobuf.rpc.Service.call(this, rpcImpl, requestDelimited, responseDelimited);
+ }
+
+ (ImageAnnotator.prototype = Object.create($protobuf.rpc.Service.prototype)).constructor = ImageAnnotator;
+
+ /**
+ * Creates new ImageAnnotator service using the specified rpc implementation.
+ * @function create
+ * @memberof google.cloud.vision.v1.ImageAnnotator
+ * @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 {ImageAnnotator} RPC service. Useful where requests and/or responses are streamed.
+ */
+ ImageAnnotator.create = function create(rpcImpl, requestDelimited, responseDelimited) {
+ return new this(rpcImpl, requestDelimited, responseDelimited);
+ };
+
+ /**
+ * Callback as used by {@link google.cloud.vision.v1.ImageAnnotator|batchAnnotateImages}.
+ * @memberof google.cloud.vision.v1.ImageAnnotator
+ * @typedef BatchAnnotateImagesCallback
+ * @type {function}
+ * @param {Error|null} error Error, if any
+ * @param {google.cloud.vision.v1.BatchAnnotateImagesResponse} [response] BatchAnnotateImagesResponse
+ */
+
+ /**
+ * Calls BatchAnnotateImages.
+ * @function batchAnnotateImages
+ * @memberof google.cloud.vision.v1.ImageAnnotator
+ * @instance
+ * @param {google.cloud.vision.v1.IBatchAnnotateImagesRequest} request BatchAnnotateImagesRequest message or plain object
+ * @param {google.cloud.vision.v1.ImageAnnotator.BatchAnnotateImagesCallback} callback Node-style callback called with the error, if any, and BatchAnnotateImagesResponse
+ * @returns {undefined}
+ * @variation 1
+ */
+ Object.defineProperty(ImageAnnotator.prototype.batchAnnotateImages = function batchAnnotateImages(request, callback) {
+ return this.rpcCall(batchAnnotateImages, $root.google.cloud.vision.v1.BatchAnnotateImagesRequest, $root.google.cloud.vision.v1.BatchAnnotateImagesResponse, request, callback);
+ }, "name", { value: "BatchAnnotateImages" });
+
+ /**
+ * Calls BatchAnnotateImages.
+ * @function batchAnnotateImages
+ * @memberof google.cloud.vision.v1.ImageAnnotator
+ * @instance
+ * @param {google.cloud.vision.v1.IBatchAnnotateImagesRequest} request BatchAnnotateImagesRequest message or plain object
+ * @returns {Promise} Promise
+ * @variation 2
+ */
+
+ /**
+ * Callback as used by {@link google.cloud.vision.v1.ImageAnnotator|batchAnnotateFiles}.
+ * @memberof google.cloud.vision.v1.ImageAnnotator
+ * @typedef BatchAnnotateFilesCallback
+ * @type {function}
+ * @param {Error|null} error Error, if any
+ * @param {google.cloud.vision.v1.BatchAnnotateFilesResponse} [response] BatchAnnotateFilesResponse
+ */
+
+ /**
+ * Calls BatchAnnotateFiles.
+ * @function batchAnnotateFiles
+ * @memberof google.cloud.vision.v1.ImageAnnotator
+ * @instance
+ * @param {google.cloud.vision.v1.IBatchAnnotateFilesRequest} request BatchAnnotateFilesRequest message or plain object
+ * @param {google.cloud.vision.v1.ImageAnnotator.BatchAnnotateFilesCallback} callback Node-style callback called with the error, if any, and BatchAnnotateFilesResponse
+ * @returns {undefined}
+ * @variation 1
+ */
+ Object.defineProperty(ImageAnnotator.prototype.batchAnnotateFiles = function batchAnnotateFiles(request, callback) {
+ return this.rpcCall(batchAnnotateFiles, $root.google.cloud.vision.v1.BatchAnnotateFilesRequest, $root.google.cloud.vision.v1.BatchAnnotateFilesResponse, request, callback);
+ }, "name", { value: "BatchAnnotateFiles" });
+
+ /**
+ * Calls BatchAnnotateFiles.
+ * @function batchAnnotateFiles
+ * @memberof google.cloud.vision.v1.ImageAnnotator
+ * @instance
+ * @param {google.cloud.vision.v1.IBatchAnnotateFilesRequest} request BatchAnnotateFilesRequest message or plain object
+ * @returns {Promise} Promise
+ * @variation 2
+ */
+
+ /**
+ * Callback as used by {@link google.cloud.vision.v1.ImageAnnotator|asyncBatchAnnotateImages}.
+ * @memberof google.cloud.vision.v1.ImageAnnotator
+ * @typedef AsyncBatchAnnotateImagesCallback
+ * @type {function}
+ * @param {Error|null} error Error, if any
+ * @param {google.longrunning.Operation} [response] Operation
+ */
+
+ /**
+ * Calls AsyncBatchAnnotateImages.
+ * @function asyncBatchAnnotateImages
+ * @memberof google.cloud.vision.v1.ImageAnnotator
+ * @instance
+ * @param {google.cloud.vision.v1.IAsyncBatchAnnotateImagesRequest} request AsyncBatchAnnotateImagesRequest message or plain object
+ * @param {google.cloud.vision.v1.ImageAnnotator.AsyncBatchAnnotateImagesCallback} callback Node-style callback called with the error, if any, and Operation
+ * @returns {undefined}
+ * @variation 1
+ */
+ Object.defineProperty(ImageAnnotator.prototype.asyncBatchAnnotateImages = function asyncBatchAnnotateImages(request, callback) {
+ return this.rpcCall(asyncBatchAnnotateImages, $root.google.cloud.vision.v1.AsyncBatchAnnotateImagesRequest, $root.google.longrunning.Operation, request, callback);
+ }, "name", { value: "AsyncBatchAnnotateImages" });
+
+ /**
+ * Calls AsyncBatchAnnotateImages.
+ * @function asyncBatchAnnotateImages
+ * @memberof google.cloud.vision.v1.ImageAnnotator
+ * @instance
+ * @param {google.cloud.vision.v1.IAsyncBatchAnnotateImagesRequest} request AsyncBatchAnnotateImagesRequest message or plain object
+ * @returns {Promise} Promise
+ * @variation 2
+ */
+
+ /**
+ * Callback as used by {@link google.cloud.vision.v1.ImageAnnotator|asyncBatchAnnotateFiles}.
+ * @memberof google.cloud.vision.v1.ImageAnnotator
+ * @typedef AsyncBatchAnnotateFilesCallback
+ * @type {function}
+ * @param {Error|null} error Error, if any
+ * @param {google.longrunning.Operation} [response] Operation
+ */
+
+ /**
+ * Calls AsyncBatchAnnotateFiles.
+ * @function asyncBatchAnnotateFiles
+ * @memberof google.cloud.vision.v1.ImageAnnotator
+ * @instance
+ * @param {google.cloud.vision.v1.IAsyncBatchAnnotateFilesRequest} request AsyncBatchAnnotateFilesRequest message or plain object
+ * @param {google.cloud.vision.v1.ImageAnnotator.AsyncBatchAnnotateFilesCallback} callback Node-style callback called with the error, if any, and Operation
+ * @returns {undefined}
+ * @variation 1
+ */
+ Object.defineProperty(ImageAnnotator.prototype.asyncBatchAnnotateFiles = function asyncBatchAnnotateFiles(request, callback) {
+ return this.rpcCall(asyncBatchAnnotateFiles, $root.google.cloud.vision.v1.AsyncBatchAnnotateFilesRequest, $root.google.longrunning.Operation, request, callback);
+ }, "name", { value: "AsyncBatchAnnotateFiles" });
+
+ /**
+ * Calls AsyncBatchAnnotateFiles.
+ * @function asyncBatchAnnotateFiles
+ * @memberof google.cloud.vision.v1.ImageAnnotator
+ * @instance
+ * @param {google.cloud.vision.v1.IAsyncBatchAnnotateFilesRequest} request AsyncBatchAnnotateFilesRequest message or plain object
+ * @returns {Promise} Promise
+ * @variation 2
+ */
+
+ return ImageAnnotator;
+ })();
+
+ /**
+ * Likelihood enum.
+ * @name google.cloud.vision.v1.Likelihood
+ * @enum {number}
+ * @property {number} UNKNOWN=0 UNKNOWN value
+ * @property {number} VERY_UNLIKELY=1 VERY_UNLIKELY value
+ * @property {number} UNLIKELY=2 UNLIKELY value
+ * @property {number} POSSIBLE=3 POSSIBLE value
+ * @property {number} LIKELY=4 LIKELY value
+ * @property {number} VERY_LIKELY=5 VERY_LIKELY value
+ */
+ v1.Likelihood = (function() {
+ var valuesById = {}, values = Object.create(valuesById);
+ values[valuesById[0] = "UNKNOWN"] = 0;
+ values[valuesById[1] = "VERY_UNLIKELY"] = 1;
+ values[valuesById[2] = "UNLIKELY"] = 2;
+ values[valuesById[3] = "POSSIBLE"] = 3;
+ values[valuesById[4] = "LIKELY"] = 4;
+ values[valuesById[5] = "VERY_LIKELY"] = 5;
+ return values;
+ })();
+
+ v1.Feature = (function() {
+
+ /**
+ * Properties of a Feature.
+ * @memberof google.cloud.vision.v1
+ * @interface IFeature
+ * @property {google.cloud.vision.v1.Feature.Type|null} [type] Feature type
+ * @property {number|null} [maxResults] Feature maxResults
+ * @property {string|null} [model] Feature model
+ */
+
+ /**
+ * Constructs a new Feature.
+ * @memberof google.cloud.vision.v1
+ * @classdesc Represents a Feature.
+ * @implements IFeature
+ * @constructor
+ * @param {google.cloud.vision.v1.IFeature=} [properties] Properties to set
+ */
+ function Feature(properties) {
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * Feature type.
+ * @member {google.cloud.vision.v1.Feature.Type} type
+ * @memberof google.cloud.vision.v1.Feature
+ * @instance
+ */
+ Feature.prototype.type = 0;
+
+ /**
+ * Feature maxResults.
+ * @member {number} maxResults
+ * @memberof google.cloud.vision.v1.Feature
+ * @instance
+ */
+ Feature.prototype.maxResults = 0;
+
+ /**
+ * Feature model.
+ * @member {string} model
+ * @memberof google.cloud.vision.v1.Feature
+ * @instance
+ */
+ Feature.prototype.model = "";
+
+ /**
+ * Creates a new Feature instance using the specified properties.
+ * @function create
+ * @memberof google.cloud.vision.v1.Feature
+ * @static
+ * @param {google.cloud.vision.v1.IFeature=} [properties] Properties to set
+ * @returns {google.cloud.vision.v1.Feature} Feature instance
+ */
+ Feature.create = function create(properties) {
+ return new Feature(properties);
+ };
+
+ /**
+ * Encodes the specified Feature message. Does not implicitly {@link google.cloud.vision.v1.Feature.verify|verify} messages.
+ * @function encode
+ * @memberof google.cloud.vision.v1.Feature
+ * @static
+ * @param {google.cloud.vision.v1.IFeature} message Feature message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ Feature.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.type != null && Object.hasOwnProperty.call(message, "type"))
+ writer.uint32(/* id 1, wireType 0 =*/8).int32(message.type);
+ if (message.maxResults != null && Object.hasOwnProperty.call(message, "maxResults"))
+ writer.uint32(/* id 2, wireType 0 =*/16).int32(message.maxResults);
+ if (message.model != null && Object.hasOwnProperty.call(message, "model"))
+ writer.uint32(/* id 3, wireType 2 =*/26).string(message.model);
+ return writer;
+ };
+
+ /**
+ * Encodes the specified Feature message, length delimited. Does not implicitly {@link google.cloud.vision.v1.Feature.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.cloud.vision.v1.Feature
+ * @static
+ * @param {google.cloud.vision.v1.IFeature} message Feature message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ Feature.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a Feature message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.cloud.vision.v1.Feature
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.cloud.vision.v1.Feature} Feature
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ Feature.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.vision.v1.Feature();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.type = reader.int32();
+ break;
+ }
+ case 2: {
+ message.maxResults = reader.int32();
+ break;
+ }
+ case 3: {
+ message.model = reader.string();
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a Feature message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.cloud.vision.v1.Feature
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.cloud.vision.v1.Feature} Feature
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ Feature.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a Feature message.
+ * @function verify
+ * @memberof google.cloud.vision.v1.Feature
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ Feature.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.type != null && message.hasOwnProperty("type"))
+ switch (message.type) {
+ default:
+ return "type: enum value expected";
+ case 0:
+ case 1:
+ case 2:
+ case 3:
+ case 4:
+ case 5:
+ case 11:
+ case 6:
+ case 7:
+ case 9:
+ case 10:
+ case 12:
+ case 19:
+ break;
+ }
+ if (message.maxResults != null && message.hasOwnProperty("maxResults"))
+ if (!$util.isInteger(message.maxResults))
+ return "maxResults: integer expected";
+ if (message.model != null && message.hasOwnProperty("model"))
+ if (!$util.isString(message.model))
+ return "model: string expected";
+ return null;
+ };
+
+ /**
+ * Creates a Feature message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.cloud.vision.v1.Feature
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.cloud.vision.v1.Feature} Feature
+ */
+ Feature.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.cloud.vision.v1.Feature)
+ return object;
+ var message = new $root.google.cloud.vision.v1.Feature();
+ switch (object.type) {
+ default:
+ if (typeof object.type === "number") {
+ message.type = object.type;
+ break;
+ }
+ break;
+ case "TYPE_UNSPECIFIED":
+ case 0:
+ message.type = 0;
+ break;
+ case "FACE_DETECTION":
+ case 1:
+ message.type = 1;
+ break;
+ case "LANDMARK_DETECTION":
+ case 2:
+ message.type = 2;
+ break;
+ case "LOGO_DETECTION":
+ case 3:
+ message.type = 3;
+ break;
+ case "LABEL_DETECTION":
+ case 4:
+ message.type = 4;
+ break;
+ case "TEXT_DETECTION":
+ case 5:
+ message.type = 5;
+ break;
+ case "DOCUMENT_TEXT_DETECTION":
+ case 11:
+ message.type = 11;
+ break;
+ case "SAFE_SEARCH_DETECTION":
+ case 6:
+ message.type = 6;
+ break;
+ case "IMAGE_PROPERTIES":
+ case 7:
+ message.type = 7;
+ break;
+ case "CROP_HINTS":
+ case 9:
+ message.type = 9;
+ break;
+ case "WEB_DETECTION":
+ case 10:
+ message.type = 10;
+ break;
+ case "PRODUCT_SEARCH":
+ case 12:
+ message.type = 12;
+ break;
+ case "OBJECT_LOCALIZATION":
+ case 19:
+ message.type = 19;
+ break;
+ }
+ if (object.maxResults != null)
+ message.maxResults = object.maxResults | 0;
+ if (object.model != null)
+ message.model = String(object.model);
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a Feature message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.cloud.vision.v1.Feature
+ * @static
+ * @param {google.cloud.vision.v1.Feature} message Feature
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ Feature.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.defaults) {
+ object.type = options.enums === String ? "TYPE_UNSPECIFIED" : 0;
+ object.maxResults = 0;
+ object.model = "";
+ }
+ if (message.type != null && message.hasOwnProperty("type"))
+ object.type = options.enums === String ? $root.google.cloud.vision.v1.Feature.Type[message.type] === undefined ? message.type : $root.google.cloud.vision.v1.Feature.Type[message.type] : message.type;
+ if (message.maxResults != null && message.hasOwnProperty("maxResults"))
+ object.maxResults = message.maxResults;
+ if (message.model != null && message.hasOwnProperty("model"))
+ object.model = message.model;
+ return object;
+ };
+
+ /**
+ * Converts this Feature to JSON.
+ * @function toJSON
+ * @memberof google.cloud.vision.v1.Feature
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ Feature.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for Feature
+ * @function getTypeUrl
+ * @memberof google.cloud.vision.v1.Feature
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ Feature.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.cloud.vision.v1.Feature";
+ };
+
+ /**
+ * Type enum.
+ * @name google.cloud.vision.v1.Feature.Type
+ * @enum {number}
+ * @property {number} TYPE_UNSPECIFIED=0 TYPE_UNSPECIFIED value
+ * @property {number} FACE_DETECTION=1 FACE_DETECTION value
+ * @property {number} LANDMARK_DETECTION=2 LANDMARK_DETECTION value
+ * @property {number} LOGO_DETECTION=3 LOGO_DETECTION value
+ * @property {number} LABEL_DETECTION=4 LABEL_DETECTION value
+ * @property {number} TEXT_DETECTION=5 TEXT_DETECTION value
+ * @property {number} DOCUMENT_TEXT_DETECTION=11 DOCUMENT_TEXT_DETECTION value
+ * @property {number} SAFE_SEARCH_DETECTION=6 SAFE_SEARCH_DETECTION value
+ * @property {number} IMAGE_PROPERTIES=7 IMAGE_PROPERTIES value
+ * @property {number} CROP_HINTS=9 CROP_HINTS value
+ * @property {number} WEB_DETECTION=10 WEB_DETECTION value
+ * @property {number} PRODUCT_SEARCH=12 PRODUCT_SEARCH value
+ * @property {number} OBJECT_LOCALIZATION=19 OBJECT_LOCALIZATION value
+ */
+ Feature.Type = (function() {
+ var valuesById = {}, values = Object.create(valuesById);
+ values[valuesById[0] = "TYPE_UNSPECIFIED"] = 0;
+ values[valuesById[1] = "FACE_DETECTION"] = 1;
+ values[valuesById[2] = "LANDMARK_DETECTION"] = 2;
+ values[valuesById[3] = "LOGO_DETECTION"] = 3;
+ values[valuesById[4] = "LABEL_DETECTION"] = 4;
+ values[valuesById[5] = "TEXT_DETECTION"] = 5;
+ values[valuesById[11] = "DOCUMENT_TEXT_DETECTION"] = 11;
+ values[valuesById[6] = "SAFE_SEARCH_DETECTION"] = 6;
+ values[valuesById[7] = "IMAGE_PROPERTIES"] = 7;
+ values[valuesById[9] = "CROP_HINTS"] = 9;
+ values[valuesById[10] = "WEB_DETECTION"] = 10;
+ values[valuesById[12] = "PRODUCT_SEARCH"] = 12;
+ values[valuesById[19] = "OBJECT_LOCALIZATION"] = 19;
+ return values;
+ })();
+
+ return Feature;
+ })();
+
+ v1.ImageSource = (function() {
+
+ /**
+ * Properties of an ImageSource.
+ * @memberof google.cloud.vision.v1
+ * @interface IImageSource
+ * @property {string|null} [gcsImageUri] ImageSource gcsImageUri
+ * @property {string|null} [imageUri] ImageSource imageUri
+ */
+
+ /**
+ * Constructs a new ImageSource.
+ * @memberof google.cloud.vision.v1
+ * @classdesc Represents an ImageSource.
+ * @implements IImageSource
+ * @constructor
+ * @param {google.cloud.vision.v1.IImageSource=} [properties] Properties to set
+ */
+ function ImageSource(properties) {
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * ImageSource gcsImageUri.
+ * @member {string} gcsImageUri
+ * @memberof google.cloud.vision.v1.ImageSource
+ * @instance
+ */
+ ImageSource.prototype.gcsImageUri = "";
+
+ /**
+ * ImageSource imageUri.
+ * @member {string} imageUri
+ * @memberof google.cloud.vision.v1.ImageSource
+ * @instance
+ */
+ ImageSource.prototype.imageUri = "";
+
+ /**
+ * Creates a new ImageSource instance using the specified properties.
+ * @function create
+ * @memberof google.cloud.vision.v1.ImageSource
+ * @static
+ * @param {google.cloud.vision.v1.IImageSource=} [properties] Properties to set
+ * @returns {google.cloud.vision.v1.ImageSource} ImageSource instance
+ */
+ ImageSource.create = function create(properties) {
+ return new ImageSource(properties);
+ };
+
+ /**
+ * Encodes the specified ImageSource message. Does not implicitly {@link google.cloud.vision.v1.ImageSource.verify|verify} messages.
+ * @function encode
+ * @memberof google.cloud.vision.v1.ImageSource
+ * @static
+ * @param {google.cloud.vision.v1.IImageSource} message ImageSource message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ ImageSource.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.gcsImageUri != null && Object.hasOwnProperty.call(message, "gcsImageUri"))
+ writer.uint32(/* id 1, wireType 2 =*/10).string(message.gcsImageUri);
+ if (message.imageUri != null && Object.hasOwnProperty.call(message, "imageUri"))
+ writer.uint32(/* id 2, wireType 2 =*/18).string(message.imageUri);
+ return writer;
+ };
+
+ /**
+ * Encodes the specified ImageSource message, length delimited. Does not implicitly {@link google.cloud.vision.v1.ImageSource.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.cloud.vision.v1.ImageSource
+ * @static
+ * @param {google.cloud.vision.v1.IImageSource} message ImageSource message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ ImageSource.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes an ImageSource message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.cloud.vision.v1.ImageSource
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.cloud.vision.v1.ImageSource} ImageSource
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ ImageSource.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.vision.v1.ImageSource();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.gcsImageUri = reader.string();
+ break;
+ }
+ case 2: {
+ message.imageUri = reader.string();
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes an ImageSource message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.cloud.vision.v1.ImageSource
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.cloud.vision.v1.ImageSource} ImageSource
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ ImageSource.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies an ImageSource message.
+ * @function verify
+ * @memberof google.cloud.vision.v1.ImageSource
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ ImageSource.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.gcsImageUri != null && message.hasOwnProperty("gcsImageUri"))
+ if (!$util.isString(message.gcsImageUri))
+ return "gcsImageUri: string expected";
+ if (message.imageUri != null && message.hasOwnProperty("imageUri"))
+ if (!$util.isString(message.imageUri))
+ return "imageUri: string expected";
+ return null;
+ };
+
+ /**
+ * Creates an ImageSource message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.cloud.vision.v1.ImageSource
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.cloud.vision.v1.ImageSource} ImageSource
+ */
+ ImageSource.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.cloud.vision.v1.ImageSource)
+ return object;
+ var message = new $root.google.cloud.vision.v1.ImageSource();
+ if (object.gcsImageUri != null)
+ message.gcsImageUri = String(object.gcsImageUri);
+ if (object.imageUri != null)
+ message.imageUri = String(object.imageUri);
+ return message;
+ };
+
+ /**
+ * Creates a plain object from an ImageSource message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.cloud.vision.v1.ImageSource
+ * @static
+ * @param {google.cloud.vision.v1.ImageSource} message ImageSource
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ ImageSource.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.defaults) {
+ object.gcsImageUri = "";
+ object.imageUri = "";
+ }
+ if (message.gcsImageUri != null && message.hasOwnProperty("gcsImageUri"))
+ object.gcsImageUri = message.gcsImageUri;
+ if (message.imageUri != null && message.hasOwnProperty("imageUri"))
+ object.imageUri = message.imageUri;
+ return object;
+ };
+
+ /**
+ * Converts this ImageSource to JSON.
+ * @function toJSON
+ * @memberof google.cloud.vision.v1.ImageSource
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ ImageSource.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for ImageSource
+ * @function getTypeUrl
+ * @memberof google.cloud.vision.v1.ImageSource
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ ImageSource.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.cloud.vision.v1.ImageSource";
+ };
+
+ return ImageSource;
+ })();
+
+ v1.Image = (function() {
+
+ /**
+ * Properties of an Image.
+ * @memberof google.cloud.vision.v1
+ * @interface IImage
+ * @property {Uint8Array|null} [content] Image content
+ * @property {google.cloud.vision.v1.IImageSource|null} [source] Image source
+ */
+
+ /**
+ * Constructs a new Image.
+ * @memberof google.cloud.vision.v1
+ * @classdesc Represents an Image.
+ * @implements IImage
+ * @constructor
+ * @param {google.cloud.vision.v1.IImage=} [properties] Properties to set
+ */
+ function Image(properties) {
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * Image content.
+ * @member {Uint8Array} content
+ * @memberof google.cloud.vision.v1.Image
+ * @instance
+ */
+ Image.prototype.content = $util.newBuffer([]);
+
+ /**
+ * Image source.
+ * @member {google.cloud.vision.v1.IImageSource|null|undefined} source
+ * @memberof google.cloud.vision.v1.Image
+ * @instance
+ */
+ Image.prototype.source = null;
+
+ /**
+ * Creates a new Image instance using the specified properties.
+ * @function create
+ * @memberof google.cloud.vision.v1.Image
+ * @static
+ * @param {google.cloud.vision.v1.IImage=} [properties] Properties to set
+ * @returns {google.cloud.vision.v1.Image} Image instance
+ */
+ Image.create = function create(properties) {
+ return new Image(properties);
+ };
+
+ /**
+ * Encodes the specified Image message. Does not implicitly {@link google.cloud.vision.v1.Image.verify|verify} messages.
+ * @function encode
+ * @memberof google.cloud.vision.v1.Image
+ * @static
+ * @param {google.cloud.vision.v1.IImage} message Image message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ Image.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.content != null && Object.hasOwnProperty.call(message, "content"))
+ writer.uint32(/* id 1, wireType 2 =*/10).bytes(message.content);
+ if (message.source != null && Object.hasOwnProperty.call(message, "source"))
+ $root.google.cloud.vision.v1.ImageSource.encode(message.source, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim();
+ return writer;
+ };
+
+ /**
+ * Encodes the specified Image message, length delimited. Does not implicitly {@link google.cloud.vision.v1.Image.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.cloud.vision.v1.Image
+ * @static
+ * @param {google.cloud.vision.v1.IImage} message Image message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ Image.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes an Image message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.cloud.vision.v1.Image
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.cloud.vision.v1.Image} Image
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ Image.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.vision.v1.Image();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.content = reader.bytes();
+ break;
+ }
+ case 2: {
+ message.source = $root.google.cloud.vision.v1.ImageSource.decode(reader, reader.uint32());
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes an Image message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.cloud.vision.v1.Image
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.cloud.vision.v1.Image} Image
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ Image.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies an Image message.
+ * @function verify
+ * @memberof google.cloud.vision.v1.Image
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ Image.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.content != null && message.hasOwnProperty("content"))
+ if (!(message.content && typeof message.content.length === "number" || $util.isString(message.content)))
+ return "content: buffer expected";
+ if (message.source != null && message.hasOwnProperty("source")) {
+ var error = $root.google.cloud.vision.v1.ImageSource.verify(message.source);
+ if (error)
+ return "source." + error;
+ }
+ return null;
+ };
+
+ /**
+ * Creates an Image message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.cloud.vision.v1.Image
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.cloud.vision.v1.Image} Image
+ */
+ Image.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.cloud.vision.v1.Image)
+ return object;
+ var message = new $root.google.cloud.vision.v1.Image();
+ if (object.content != null)
+ if (typeof object.content === "string")
+ $util.base64.decode(object.content, message.content = $util.newBuffer($util.base64.length(object.content)), 0);
+ else if (object.content.length >= 0)
+ message.content = object.content;
+ if (object.source != null) {
+ if (typeof object.source !== "object")
+ throw TypeError(".google.cloud.vision.v1.Image.source: object expected");
+ message.source = $root.google.cloud.vision.v1.ImageSource.fromObject(object.source);
+ }
+ return message;
+ };
+
+ /**
+ * Creates a plain object from an Image message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.cloud.vision.v1.Image
+ * @static
+ * @param {google.cloud.vision.v1.Image} message Image
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ Image.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.defaults) {
+ if (options.bytes === String)
+ object.content = "";
+ else {
+ object.content = [];
+ if (options.bytes !== Array)
+ object.content = $util.newBuffer(object.content);
+ }
+ object.source = null;
+ }
+ if (message.content != null && message.hasOwnProperty("content"))
+ object.content = options.bytes === String ? $util.base64.encode(message.content, 0, message.content.length) : options.bytes === Array ? Array.prototype.slice.call(message.content) : message.content;
+ if (message.source != null && message.hasOwnProperty("source"))
+ object.source = $root.google.cloud.vision.v1.ImageSource.toObject(message.source, options);
+ return object;
+ };
+
+ /**
+ * Converts this Image to JSON.
+ * @function toJSON
+ * @memberof google.cloud.vision.v1.Image
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ Image.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for Image
+ * @function getTypeUrl
+ * @memberof google.cloud.vision.v1.Image
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ Image.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.cloud.vision.v1.Image";
+ };
+
+ return Image;
+ })();
+
+ v1.FaceAnnotation = (function() {
+
+ /**
+ * Properties of a FaceAnnotation.
+ * @memberof google.cloud.vision.v1
+ * @interface IFaceAnnotation
+ * @property {google.cloud.vision.v1.IBoundingPoly|null} [boundingPoly] FaceAnnotation boundingPoly
+ * @property {google.cloud.vision.v1.IBoundingPoly|null} [fdBoundingPoly] FaceAnnotation fdBoundingPoly
+ * @property {Array.|null} [landmarks] FaceAnnotation landmarks
+ * @property {number|null} [rollAngle] FaceAnnotation rollAngle
+ * @property {number|null} [panAngle] FaceAnnotation panAngle
+ * @property {number|null} [tiltAngle] FaceAnnotation tiltAngle
+ * @property {number|null} [detectionConfidence] FaceAnnotation detectionConfidence
+ * @property {number|null} [landmarkingConfidence] FaceAnnotation landmarkingConfidence
+ * @property {google.cloud.vision.v1.Likelihood|null} [joyLikelihood] FaceAnnotation joyLikelihood
+ * @property {google.cloud.vision.v1.Likelihood|null} [sorrowLikelihood] FaceAnnotation sorrowLikelihood
+ * @property {google.cloud.vision.v1.Likelihood|null} [angerLikelihood] FaceAnnotation angerLikelihood
+ * @property {google.cloud.vision.v1.Likelihood|null} [surpriseLikelihood] FaceAnnotation surpriseLikelihood
+ * @property {google.cloud.vision.v1.Likelihood|null} [underExposedLikelihood] FaceAnnotation underExposedLikelihood
+ * @property {google.cloud.vision.v1.Likelihood|null} [blurredLikelihood] FaceAnnotation blurredLikelihood
+ * @property {google.cloud.vision.v1.Likelihood|null} [headwearLikelihood] FaceAnnotation headwearLikelihood
+ */
+
+ /**
+ * Constructs a new FaceAnnotation.
+ * @memberof google.cloud.vision.v1
+ * @classdesc Represents a FaceAnnotation.
+ * @implements IFaceAnnotation
+ * @constructor
+ * @param {google.cloud.vision.v1.IFaceAnnotation=} [properties] Properties to set
+ */
+ function FaceAnnotation(properties) {
+ this.landmarks = [];
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * FaceAnnotation boundingPoly.
+ * @member {google.cloud.vision.v1.IBoundingPoly|null|undefined} boundingPoly
+ * @memberof google.cloud.vision.v1.FaceAnnotation
+ * @instance
+ */
+ FaceAnnotation.prototype.boundingPoly = null;
+
+ /**
+ * FaceAnnotation fdBoundingPoly.
+ * @member {google.cloud.vision.v1.IBoundingPoly|null|undefined} fdBoundingPoly
+ * @memberof google.cloud.vision.v1.FaceAnnotation
+ * @instance
+ */
+ FaceAnnotation.prototype.fdBoundingPoly = null;
+
+ /**
+ * FaceAnnotation landmarks.
+ * @member {Array.} landmarks
+ * @memberof google.cloud.vision.v1.FaceAnnotation
+ * @instance
+ */
+ FaceAnnotation.prototype.landmarks = $util.emptyArray;
+
+ /**
+ * FaceAnnotation rollAngle.
+ * @member {number} rollAngle
+ * @memberof google.cloud.vision.v1.FaceAnnotation
+ * @instance
+ */
+ FaceAnnotation.prototype.rollAngle = 0;
+
+ /**
+ * FaceAnnotation panAngle.
+ * @member {number} panAngle
+ * @memberof google.cloud.vision.v1.FaceAnnotation
+ * @instance
+ */
+ FaceAnnotation.prototype.panAngle = 0;
+
+ /**
+ * FaceAnnotation tiltAngle.
+ * @member {number} tiltAngle
+ * @memberof google.cloud.vision.v1.FaceAnnotation
+ * @instance
+ */
+ FaceAnnotation.prototype.tiltAngle = 0;
+
+ /**
+ * FaceAnnotation detectionConfidence.
+ * @member {number} detectionConfidence
+ * @memberof google.cloud.vision.v1.FaceAnnotation
+ * @instance
+ */
+ FaceAnnotation.prototype.detectionConfidence = 0;
+
+ /**
+ * FaceAnnotation landmarkingConfidence.
+ * @member {number} landmarkingConfidence
+ * @memberof google.cloud.vision.v1.FaceAnnotation
+ * @instance
+ */
+ FaceAnnotation.prototype.landmarkingConfidence = 0;
+
+ /**
+ * FaceAnnotation joyLikelihood.
+ * @member {google.cloud.vision.v1.Likelihood} joyLikelihood
+ * @memberof google.cloud.vision.v1.FaceAnnotation
+ * @instance
+ */
+ FaceAnnotation.prototype.joyLikelihood = 0;
+
+ /**
+ * FaceAnnotation sorrowLikelihood.
+ * @member {google.cloud.vision.v1.Likelihood} sorrowLikelihood
+ * @memberof google.cloud.vision.v1.FaceAnnotation
+ * @instance
+ */
+ FaceAnnotation.prototype.sorrowLikelihood = 0;
+
+ /**
+ * FaceAnnotation angerLikelihood.
+ * @member {google.cloud.vision.v1.Likelihood} angerLikelihood
+ * @memberof google.cloud.vision.v1.FaceAnnotation
+ * @instance
+ */
+ FaceAnnotation.prototype.angerLikelihood = 0;
+
+ /**
+ * FaceAnnotation surpriseLikelihood.
+ * @member {google.cloud.vision.v1.Likelihood} surpriseLikelihood
+ * @memberof google.cloud.vision.v1.FaceAnnotation
+ * @instance
+ */
+ FaceAnnotation.prototype.surpriseLikelihood = 0;
+
+ /**
+ * FaceAnnotation underExposedLikelihood.
+ * @member {google.cloud.vision.v1.Likelihood} underExposedLikelihood
+ * @memberof google.cloud.vision.v1.FaceAnnotation
+ * @instance
+ */
+ FaceAnnotation.prototype.underExposedLikelihood = 0;
+
+ /**
+ * FaceAnnotation blurredLikelihood.
+ * @member {google.cloud.vision.v1.Likelihood} blurredLikelihood
+ * @memberof google.cloud.vision.v1.FaceAnnotation
+ * @instance
+ */
+ FaceAnnotation.prototype.blurredLikelihood = 0;
+
+ /**
+ * FaceAnnotation headwearLikelihood.
+ * @member {google.cloud.vision.v1.Likelihood} headwearLikelihood
+ * @memberof google.cloud.vision.v1.FaceAnnotation
+ * @instance
+ */
+ FaceAnnotation.prototype.headwearLikelihood = 0;
+
+ /**
+ * Creates a new FaceAnnotation instance using the specified properties.
+ * @function create
+ * @memberof google.cloud.vision.v1.FaceAnnotation
+ * @static
+ * @param {google.cloud.vision.v1.IFaceAnnotation=} [properties] Properties to set
+ * @returns {google.cloud.vision.v1.FaceAnnotation} FaceAnnotation instance
+ */
+ FaceAnnotation.create = function create(properties) {
+ return new FaceAnnotation(properties);
+ };
+
+ /**
+ * Encodes the specified FaceAnnotation message. Does not implicitly {@link google.cloud.vision.v1.FaceAnnotation.verify|verify} messages.
+ * @function encode
+ * @memberof google.cloud.vision.v1.FaceAnnotation
+ * @static
+ * @param {google.cloud.vision.v1.IFaceAnnotation} message FaceAnnotation message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ FaceAnnotation.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.boundingPoly != null && Object.hasOwnProperty.call(message, "boundingPoly"))
+ $root.google.cloud.vision.v1.BoundingPoly.encode(message.boundingPoly, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim();
+ if (message.fdBoundingPoly != null && Object.hasOwnProperty.call(message, "fdBoundingPoly"))
+ $root.google.cloud.vision.v1.BoundingPoly.encode(message.fdBoundingPoly, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim();
+ if (message.landmarks != null && message.landmarks.length)
+ for (var i = 0; i < message.landmarks.length; ++i)
+ $root.google.cloud.vision.v1.FaceAnnotation.Landmark.encode(message.landmarks[i], writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim();
+ if (message.rollAngle != null && Object.hasOwnProperty.call(message, "rollAngle"))
+ writer.uint32(/* id 4, wireType 5 =*/37).float(message.rollAngle);
+ if (message.panAngle != null && Object.hasOwnProperty.call(message, "panAngle"))
+ writer.uint32(/* id 5, wireType 5 =*/45).float(message.panAngle);
+ if (message.tiltAngle != null && Object.hasOwnProperty.call(message, "tiltAngle"))
+ writer.uint32(/* id 6, wireType 5 =*/53).float(message.tiltAngle);
+ if (message.detectionConfidence != null && Object.hasOwnProperty.call(message, "detectionConfidence"))
+ writer.uint32(/* id 7, wireType 5 =*/61).float(message.detectionConfidence);
+ if (message.landmarkingConfidence != null && Object.hasOwnProperty.call(message, "landmarkingConfidence"))
+ writer.uint32(/* id 8, wireType 5 =*/69).float(message.landmarkingConfidence);
+ if (message.joyLikelihood != null && Object.hasOwnProperty.call(message, "joyLikelihood"))
+ writer.uint32(/* id 9, wireType 0 =*/72).int32(message.joyLikelihood);
+ if (message.sorrowLikelihood != null && Object.hasOwnProperty.call(message, "sorrowLikelihood"))
+ writer.uint32(/* id 10, wireType 0 =*/80).int32(message.sorrowLikelihood);
+ if (message.angerLikelihood != null && Object.hasOwnProperty.call(message, "angerLikelihood"))
+ writer.uint32(/* id 11, wireType 0 =*/88).int32(message.angerLikelihood);
+ if (message.surpriseLikelihood != null && Object.hasOwnProperty.call(message, "surpriseLikelihood"))
+ writer.uint32(/* id 12, wireType 0 =*/96).int32(message.surpriseLikelihood);
+ if (message.underExposedLikelihood != null && Object.hasOwnProperty.call(message, "underExposedLikelihood"))
+ writer.uint32(/* id 13, wireType 0 =*/104).int32(message.underExposedLikelihood);
+ if (message.blurredLikelihood != null && Object.hasOwnProperty.call(message, "blurredLikelihood"))
+ writer.uint32(/* id 14, wireType 0 =*/112).int32(message.blurredLikelihood);
+ if (message.headwearLikelihood != null && Object.hasOwnProperty.call(message, "headwearLikelihood"))
+ writer.uint32(/* id 15, wireType 0 =*/120).int32(message.headwearLikelihood);
+ return writer;
+ };
+
+ /**
+ * Encodes the specified FaceAnnotation message, length delimited. Does not implicitly {@link google.cloud.vision.v1.FaceAnnotation.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.cloud.vision.v1.FaceAnnotation
+ * @static
+ * @param {google.cloud.vision.v1.IFaceAnnotation} message FaceAnnotation message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ FaceAnnotation.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a FaceAnnotation message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.cloud.vision.v1.FaceAnnotation
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.cloud.vision.v1.FaceAnnotation} FaceAnnotation
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ FaceAnnotation.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.vision.v1.FaceAnnotation();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.boundingPoly = $root.google.cloud.vision.v1.BoundingPoly.decode(reader, reader.uint32());
+ break;
+ }
+ case 2: {
+ message.fdBoundingPoly = $root.google.cloud.vision.v1.BoundingPoly.decode(reader, reader.uint32());
+ break;
+ }
+ case 3: {
+ if (!(message.landmarks && message.landmarks.length))
+ message.landmarks = [];
+ message.landmarks.push($root.google.cloud.vision.v1.FaceAnnotation.Landmark.decode(reader, reader.uint32()));
+ break;
+ }
+ case 4: {
+ message.rollAngle = reader.float();
+ break;
+ }
+ case 5: {
+ message.panAngle = reader.float();
+ break;
+ }
+ case 6: {
+ message.tiltAngle = reader.float();
+ break;
+ }
+ case 7: {
+ message.detectionConfidence = reader.float();
+ break;
+ }
+ case 8: {
+ message.landmarkingConfidence = reader.float();
+ break;
+ }
+ case 9: {
+ message.joyLikelihood = reader.int32();
+ break;
+ }
+ case 10: {
+ message.sorrowLikelihood = reader.int32();
+ break;
+ }
+ case 11: {
+ message.angerLikelihood = reader.int32();
+ break;
+ }
+ case 12: {
+ message.surpriseLikelihood = reader.int32();
+ break;
+ }
+ case 13: {
+ message.underExposedLikelihood = reader.int32();
+ break;
+ }
+ case 14: {
+ message.blurredLikelihood = reader.int32();
+ break;
+ }
+ case 15: {
+ message.headwearLikelihood = reader.int32();
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a FaceAnnotation message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.cloud.vision.v1.FaceAnnotation
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.cloud.vision.v1.FaceAnnotation} FaceAnnotation
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ FaceAnnotation.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a FaceAnnotation message.
+ * @function verify
+ * @memberof google.cloud.vision.v1.FaceAnnotation
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ FaceAnnotation.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.boundingPoly != null && message.hasOwnProperty("boundingPoly")) {
+ var error = $root.google.cloud.vision.v1.BoundingPoly.verify(message.boundingPoly);
+ if (error)
+ return "boundingPoly." + error;
+ }
+ if (message.fdBoundingPoly != null && message.hasOwnProperty("fdBoundingPoly")) {
+ var error = $root.google.cloud.vision.v1.BoundingPoly.verify(message.fdBoundingPoly);
+ if (error)
+ return "fdBoundingPoly." + error;
+ }
+ if (message.landmarks != null && message.hasOwnProperty("landmarks")) {
+ if (!Array.isArray(message.landmarks))
+ return "landmarks: array expected";
+ for (var i = 0; i < message.landmarks.length; ++i) {
+ var error = $root.google.cloud.vision.v1.FaceAnnotation.Landmark.verify(message.landmarks[i]);
+ if (error)
+ return "landmarks." + error;
+ }
+ }
+ if (message.rollAngle != null && message.hasOwnProperty("rollAngle"))
+ if (typeof message.rollAngle !== "number")
+ return "rollAngle: number expected";
+ if (message.panAngle != null && message.hasOwnProperty("panAngle"))
+ if (typeof message.panAngle !== "number")
+ return "panAngle: number expected";
+ if (message.tiltAngle != null && message.hasOwnProperty("tiltAngle"))
+ if (typeof message.tiltAngle !== "number")
+ return "tiltAngle: number expected";
+ if (message.detectionConfidence != null && message.hasOwnProperty("detectionConfidence"))
+ if (typeof message.detectionConfidence !== "number")
+ return "detectionConfidence: number expected";
+ if (message.landmarkingConfidence != null && message.hasOwnProperty("landmarkingConfidence"))
+ if (typeof message.landmarkingConfidence !== "number")
+ return "landmarkingConfidence: number expected";
+ if (message.joyLikelihood != null && message.hasOwnProperty("joyLikelihood"))
+ switch (message.joyLikelihood) {
+ default:
+ return "joyLikelihood: enum value expected";
+ case 0:
+ case 1:
+ case 2:
+ case 3:
+ case 4:
+ case 5:
+ break;
+ }
+ if (message.sorrowLikelihood != null && message.hasOwnProperty("sorrowLikelihood"))
+ switch (message.sorrowLikelihood) {
+ default:
+ return "sorrowLikelihood: enum value expected";
+ case 0:
+ case 1:
+ case 2:
+ case 3:
+ case 4:
+ case 5:
+ break;
+ }
+ if (message.angerLikelihood != null && message.hasOwnProperty("angerLikelihood"))
+ switch (message.angerLikelihood) {
+ default:
+ return "angerLikelihood: enum value expected";
+ case 0:
+ case 1:
+ case 2:
+ case 3:
+ case 4:
+ case 5:
+ break;
+ }
+ if (message.surpriseLikelihood != null && message.hasOwnProperty("surpriseLikelihood"))
+ switch (message.surpriseLikelihood) {
+ default:
+ return "surpriseLikelihood: enum value expected";
+ case 0:
+ case 1:
+ case 2:
+ case 3:
+ case 4:
+ case 5:
+ break;
+ }
+ if (message.underExposedLikelihood != null && message.hasOwnProperty("underExposedLikelihood"))
+ switch (message.underExposedLikelihood) {
+ default:
+ return "underExposedLikelihood: enum value expected";
+ case 0:
+ case 1:
+ case 2:
+ case 3:
+ case 4:
+ case 5:
+ break;
+ }
+ if (message.blurredLikelihood != null && message.hasOwnProperty("blurredLikelihood"))
+ switch (message.blurredLikelihood) {
+ default:
+ return "blurredLikelihood: enum value expected";
+ case 0:
+ case 1:
+ case 2:
+ case 3:
+ case 4:
+ case 5:
+ break;
+ }
+ if (message.headwearLikelihood != null && message.hasOwnProperty("headwearLikelihood"))
+ switch (message.headwearLikelihood) {
+ default:
+ return "headwearLikelihood: enum value expected";
+ case 0:
+ case 1:
+ case 2:
+ case 3:
+ case 4:
+ case 5:
+ break;
+ }
+ return null;
+ };
+
+ /**
+ * Creates a FaceAnnotation message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.cloud.vision.v1.FaceAnnotation
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.cloud.vision.v1.FaceAnnotation} FaceAnnotation
+ */
+ FaceAnnotation.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.cloud.vision.v1.FaceAnnotation)
+ return object;
+ var message = new $root.google.cloud.vision.v1.FaceAnnotation();
+ if (object.boundingPoly != null) {
+ if (typeof object.boundingPoly !== "object")
+ throw TypeError(".google.cloud.vision.v1.FaceAnnotation.boundingPoly: object expected");
+ message.boundingPoly = $root.google.cloud.vision.v1.BoundingPoly.fromObject(object.boundingPoly);
+ }
+ if (object.fdBoundingPoly != null) {
+ if (typeof object.fdBoundingPoly !== "object")
+ throw TypeError(".google.cloud.vision.v1.FaceAnnotation.fdBoundingPoly: object expected");
+ message.fdBoundingPoly = $root.google.cloud.vision.v1.BoundingPoly.fromObject(object.fdBoundingPoly);
+ }
+ if (object.landmarks) {
+ if (!Array.isArray(object.landmarks))
+ throw TypeError(".google.cloud.vision.v1.FaceAnnotation.landmarks: array expected");
+ message.landmarks = [];
+ for (var i = 0; i < object.landmarks.length; ++i) {
+ if (typeof object.landmarks[i] !== "object")
+ throw TypeError(".google.cloud.vision.v1.FaceAnnotation.landmarks: object expected");
+ message.landmarks[i] = $root.google.cloud.vision.v1.FaceAnnotation.Landmark.fromObject(object.landmarks[i]);
+ }
+ }
+ if (object.rollAngle != null)
+ message.rollAngle = Number(object.rollAngle);
+ if (object.panAngle != null)
+ message.panAngle = Number(object.panAngle);
+ if (object.tiltAngle != null)
+ message.tiltAngle = Number(object.tiltAngle);
+ if (object.detectionConfidence != null)
+ message.detectionConfidence = Number(object.detectionConfidence);
+ if (object.landmarkingConfidence != null)
+ message.landmarkingConfidence = Number(object.landmarkingConfidence);
+ switch (object.joyLikelihood) {
+ default:
+ if (typeof object.joyLikelihood === "number") {
+ message.joyLikelihood = object.joyLikelihood;
+ break;
+ }
+ break;
+ case "UNKNOWN":
+ case 0:
+ message.joyLikelihood = 0;
+ break;
+ case "VERY_UNLIKELY":
+ case 1:
+ message.joyLikelihood = 1;
+ break;
+ case "UNLIKELY":
+ case 2:
+ message.joyLikelihood = 2;
+ break;
+ case "POSSIBLE":
+ case 3:
+ message.joyLikelihood = 3;
+ break;
+ case "LIKELY":
+ case 4:
+ message.joyLikelihood = 4;
+ break;
+ case "VERY_LIKELY":
+ case 5:
+ message.joyLikelihood = 5;
+ break;
+ }
+ switch (object.sorrowLikelihood) {
+ default:
+ if (typeof object.sorrowLikelihood === "number") {
+ message.sorrowLikelihood = object.sorrowLikelihood;
+ break;
+ }
+ break;
+ case "UNKNOWN":
+ case 0:
+ message.sorrowLikelihood = 0;
+ break;
+ case "VERY_UNLIKELY":
+ case 1:
+ message.sorrowLikelihood = 1;
+ break;
+ case "UNLIKELY":
+ case 2:
+ message.sorrowLikelihood = 2;
+ break;
+ case "POSSIBLE":
+ case 3:
+ message.sorrowLikelihood = 3;
+ break;
+ case "LIKELY":
+ case 4:
+ message.sorrowLikelihood = 4;
+ break;
+ case "VERY_LIKELY":
+ case 5:
+ message.sorrowLikelihood = 5;
+ break;
+ }
+ switch (object.angerLikelihood) {
+ default:
+ if (typeof object.angerLikelihood === "number") {
+ message.angerLikelihood = object.angerLikelihood;
+ break;
+ }
+ break;
+ case "UNKNOWN":
+ case 0:
+ message.angerLikelihood = 0;
+ break;
+ case "VERY_UNLIKELY":
+ case 1:
+ message.angerLikelihood = 1;
+ break;
+ case "UNLIKELY":
+ case 2:
+ message.angerLikelihood = 2;
+ break;
+ case "POSSIBLE":
+ case 3:
+ message.angerLikelihood = 3;
+ break;
+ case "LIKELY":
+ case 4:
+ message.angerLikelihood = 4;
+ break;
+ case "VERY_LIKELY":
+ case 5:
+ message.angerLikelihood = 5;
+ break;
+ }
+ switch (object.surpriseLikelihood) {
+ default:
+ if (typeof object.surpriseLikelihood === "number") {
+ message.surpriseLikelihood = object.surpriseLikelihood;
+ break;
+ }
+ break;
+ case "UNKNOWN":
+ case 0:
+ message.surpriseLikelihood = 0;
+ break;
+ case "VERY_UNLIKELY":
+ case 1:
+ message.surpriseLikelihood = 1;
+ break;
+ case "UNLIKELY":
+ case 2:
+ message.surpriseLikelihood = 2;
+ break;
+ case "POSSIBLE":
+ case 3:
+ message.surpriseLikelihood = 3;
+ break;
+ case "LIKELY":
+ case 4:
+ message.surpriseLikelihood = 4;
+ break;
+ case "VERY_LIKELY":
+ case 5:
+ message.surpriseLikelihood = 5;
+ break;
+ }
+ switch (object.underExposedLikelihood) {
+ default:
+ if (typeof object.underExposedLikelihood === "number") {
+ message.underExposedLikelihood = object.underExposedLikelihood;
+ break;
+ }
+ break;
+ case "UNKNOWN":
+ case 0:
+ message.underExposedLikelihood = 0;
+ break;
+ case "VERY_UNLIKELY":
+ case 1:
+ message.underExposedLikelihood = 1;
+ break;
+ case "UNLIKELY":
+ case 2:
+ message.underExposedLikelihood = 2;
+ break;
+ case "POSSIBLE":
+ case 3:
+ message.underExposedLikelihood = 3;
+ break;
+ case "LIKELY":
+ case 4:
+ message.underExposedLikelihood = 4;
+ break;
+ case "VERY_LIKELY":
+ case 5:
+ message.underExposedLikelihood = 5;
+ break;
+ }
+ switch (object.blurredLikelihood) {
+ default:
+ if (typeof object.blurredLikelihood === "number") {
+ message.blurredLikelihood = object.blurredLikelihood;
+ break;
+ }
+ break;
+ case "UNKNOWN":
+ case 0:
+ message.blurredLikelihood = 0;
+ break;
+ case "VERY_UNLIKELY":
+ case 1:
+ message.blurredLikelihood = 1;
+ break;
+ case "UNLIKELY":
+ case 2:
+ message.blurredLikelihood = 2;
+ break;
+ case "POSSIBLE":
+ case 3:
+ message.blurredLikelihood = 3;
+ break;
+ case "LIKELY":
+ case 4:
+ message.blurredLikelihood = 4;
+ break;
+ case "VERY_LIKELY":
+ case 5:
+ message.blurredLikelihood = 5;
+ break;
+ }
+ switch (object.headwearLikelihood) {
+ default:
+ if (typeof object.headwearLikelihood === "number") {
+ message.headwearLikelihood = object.headwearLikelihood;
+ break;
+ }
+ break;
+ case "UNKNOWN":
+ case 0:
+ message.headwearLikelihood = 0;
+ break;
+ case "VERY_UNLIKELY":
+ case 1:
+ message.headwearLikelihood = 1;
+ break;
+ case "UNLIKELY":
+ case 2:
+ message.headwearLikelihood = 2;
+ break;
+ case "POSSIBLE":
+ case 3:
+ message.headwearLikelihood = 3;
+ break;
+ case "LIKELY":
+ case 4:
+ message.headwearLikelihood = 4;
+ break;
+ case "VERY_LIKELY":
+ case 5:
+ message.headwearLikelihood = 5;
+ break;
+ }
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a FaceAnnotation message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.cloud.vision.v1.FaceAnnotation
+ * @static
+ * @param {google.cloud.vision.v1.FaceAnnotation} message FaceAnnotation
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ FaceAnnotation.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.arrays || options.defaults)
+ object.landmarks = [];
+ if (options.defaults) {
+ object.boundingPoly = null;
+ object.fdBoundingPoly = null;
+ object.rollAngle = 0;
+ object.panAngle = 0;
+ object.tiltAngle = 0;
+ object.detectionConfidence = 0;
+ object.landmarkingConfidence = 0;
+ object.joyLikelihood = options.enums === String ? "UNKNOWN" : 0;
+ object.sorrowLikelihood = options.enums === String ? "UNKNOWN" : 0;
+ object.angerLikelihood = options.enums === String ? "UNKNOWN" : 0;
+ object.surpriseLikelihood = options.enums === String ? "UNKNOWN" : 0;
+ object.underExposedLikelihood = options.enums === String ? "UNKNOWN" : 0;
+ object.blurredLikelihood = options.enums === String ? "UNKNOWN" : 0;
+ object.headwearLikelihood = options.enums === String ? "UNKNOWN" : 0;
+ }
+ if (message.boundingPoly != null && message.hasOwnProperty("boundingPoly"))
+ object.boundingPoly = $root.google.cloud.vision.v1.BoundingPoly.toObject(message.boundingPoly, options);
+ if (message.fdBoundingPoly != null && message.hasOwnProperty("fdBoundingPoly"))
+ object.fdBoundingPoly = $root.google.cloud.vision.v1.BoundingPoly.toObject(message.fdBoundingPoly, options);
+ if (message.landmarks && message.landmarks.length) {
+ object.landmarks = [];
+ for (var j = 0; j < message.landmarks.length; ++j)
+ object.landmarks[j] = $root.google.cloud.vision.v1.FaceAnnotation.Landmark.toObject(message.landmarks[j], options);
+ }
+ if (message.rollAngle != null && message.hasOwnProperty("rollAngle"))
+ object.rollAngle = options.json && !isFinite(message.rollAngle) ? String(message.rollAngle) : message.rollAngle;
+ if (message.panAngle != null && message.hasOwnProperty("panAngle"))
+ object.panAngle = options.json && !isFinite(message.panAngle) ? String(message.panAngle) : message.panAngle;
+ if (message.tiltAngle != null && message.hasOwnProperty("tiltAngle"))
+ object.tiltAngle = options.json && !isFinite(message.tiltAngle) ? String(message.tiltAngle) : message.tiltAngle;
+ if (message.detectionConfidence != null && message.hasOwnProperty("detectionConfidence"))
+ object.detectionConfidence = options.json && !isFinite(message.detectionConfidence) ? String(message.detectionConfidence) : message.detectionConfidence;
+ if (message.landmarkingConfidence != null && message.hasOwnProperty("landmarkingConfidence"))
+ object.landmarkingConfidence = options.json && !isFinite(message.landmarkingConfidence) ? String(message.landmarkingConfidence) : message.landmarkingConfidence;
+ if (message.joyLikelihood != null && message.hasOwnProperty("joyLikelihood"))
+ object.joyLikelihood = options.enums === String ? $root.google.cloud.vision.v1.Likelihood[message.joyLikelihood] === undefined ? message.joyLikelihood : $root.google.cloud.vision.v1.Likelihood[message.joyLikelihood] : message.joyLikelihood;
+ if (message.sorrowLikelihood != null && message.hasOwnProperty("sorrowLikelihood"))
+ object.sorrowLikelihood = options.enums === String ? $root.google.cloud.vision.v1.Likelihood[message.sorrowLikelihood] === undefined ? message.sorrowLikelihood : $root.google.cloud.vision.v1.Likelihood[message.sorrowLikelihood] : message.sorrowLikelihood;
+ if (message.angerLikelihood != null && message.hasOwnProperty("angerLikelihood"))
+ object.angerLikelihood = options.enums === String ? $root.google.cloud.vision.v1.Likelihood[message.angerLikelihood] === undefined ? message.angerLikelihood : $root.google.cloud.vision.v1.Likelihood[message.angerLikelihood] : message.angerLikelihood;
+ if (message.surpriseLikelihood != null && message.hasOwnProperty("surpriseLikelihood"))
+ object.surpriseLikelihood = options.enums === String ? $root.google.cloud.vision.v1.Likelihood[message.surpriseLikelihood] === undefined ? message.surpriseLikelihood : $root.google.cloud.vision.v1.Likelihood[message.surpriseLikelihood] : message.surpriseLikelihood;
+ if (message.underExposedLikelihood != null && message.hasOwnProperty("underExposedLikelihood"))
+ object.underExposedLikelihood = options.enums === String ? $root.google.cloud.vision.v1.Likelihood[message.underExposedLikelihood] === undefined ? message.underExposedLikelihood : $root.google.cloud.vision.v1.Likelihood[message.underExposedLikelihood] : message.underExposedLikelihood;
+ if (message.blurredLikelihood != null && message.hasOwnProperty("blurredLikelihood"))
+ object.blurredLikelihood = options.enums === String ? $root.google.cloud.vision.v1.Likelihood[message.blurredLikelihood] === undefined ? message.blurredLikelihood : $root.google.cloud.vision.v1.Likelihood[message.blurredLikelihood] : message.blurredLikelihood;
+ if (message.headwearLikelihood != null && message.hasOwnProperty("headwearLikelihood"))
+ object.headwearLikelihood = options.enums === String ? $root.google.cloud.vision.v1.Likelihood[message.headwearLikelihood] === undefined ? message.headwearLikelihood : $root.google.cloud.vision.v1.Likelihood[message.headwearLikelihood] : message.headwearLikelihood;
+ return object;
+ };
+
+ /**
+ * Converts this FaceAnnotation to JSON.
+ * @function toJSON
+ * @memberof google.cloud.vision.v1.FaceAnnotation
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ FaceAnnotation.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for FaceAnnotation
+ * @function getTypeUrl
+ * @memberof google.cloud.vision.v1.FaceAnnotation
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ FaceAnnotation.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.cloud.vision.v1.FaceAnnotation";
+ };
+
+ FaceAnnotation.Landmark = (function() {
+
+ /**
+ * Properties of a Landmark.
+ * @memberof google.cloud.vision.v1.FaceAnnotation
+ * @interface ILandmark
+ * @property {google.cloud.vision.v1.FaceAnnotation.Landmark.Type|null} [type] Landmark type
+ * @property {google.cloud.vision.v1.IPosition|null} [position] Landmark position
+ */
+
+ /**
+ * Constructs a new Landmark.
+ * @memberof google.cloud.vision.v1.FaceAnnotation
+ * @classdesc Represents a Landmark.
+ * @implements ILandmark
+ * @constructor
+ * @param {google.cloud.vision.v1.FaceAnnotation.ILandmark=} [properties] Properties to set
+ */
+ function Landmark(properties) {
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * Landmark type.
+ * @member {google.cloud.vision.v1.FaceAnnotation.Landmark.Type} type
+ * @memberof google.cloud.vision.v1.FaceAnnotation.Landmark
+ * @instance
+ */
+ Landmark.prototype.type = 0;
+
+ /**
+ * Landmark position.
+ * @member {google.cloud.vision.v1.IPosition|null|undefined} position
+ * @memberof google.cloud.vision.v1.FaceAnnotation.Landmark
+ * @instance
+ */
+ Landmark.prototype.position = null;
+
+ /**
+ * Creates a new Landmark instance using the specified properties.
+ * @function create
+ * @memberof google.cloud.vision.v1.FaceAnnotation.Landmark
+ * @static
+ * @param {google.cloud.vision.v1.FaceAnnotation.ILandmark=} [properties] Properties to set
+ * @returns {google.cloud.vision.v1.FaceAnnotation.Landmark} Landmark instance
+ */
+ Landmark.create = function create(properties) {
+ return new Landmark(properties);
+ };
+
+ /**
+ * Encodes the specified Landmark message. Does not implicitly {@link google.cloud.vision.v1.FaceAnnotation.Landmark.verify|verify} messages.
+ * @function encode
+ * @memberof google.cloud.vision.v1.FaceAnnotation.Landmark
+ * @static
+ * @param {google.cloud.vision.v1.FaceAnnotation.ILandmark} message Landmark message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ Landmark.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.type != null && Object.hasOwnProperty.call(message, "type"))
+ writer.uint32(/* id 3, wireType 0 =*/24).int32(message.type);
+ if (message.position != null && Object.hasOwnProperty.call(message, "position"))
+ $root.google.cloud.vision.v1.Position.encode(message.position, writer.uint32(/* id 4, wireType 2 =*/34).fork()).ldelim();
+ return writer;
+ };
+
+ /**
+ * Encodes the specified Landmark message, length delimited. Does not implicitly {@link google.cloud.vision.v1.FaceAnnotation.Landmark.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.cloud.vision.v1.FaceAnnotation.Landmark
+ * @static
+ * @param {google.cloud.vision.v1.FaceAnnotation.ILandmark} message Landmark message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ Landmark.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a Landmark message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.cloud.vision.v1.FaceAnnotation.Landmark
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.cloud.vision.v1.FaceAnnotation.Landmark} Landmark
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ Landmark.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.vision.v1.FaceAnnotation.Landmark();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 3: {
+ message.type = reader.int32();
+ break;
+ }
+ case 4: {
+ message.position = $root.google.cloud.vision.v1.Position.decode(reader, reader.uint32());
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a Landmark message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.cloud.vision.v1.FaceAnnotation.Landmark
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.cloud.vision.v1.FaceAnnotation.Landmark} Landmark
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ Landmark.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a Landmark message.
+ * @function verify
+ * @memberof google.cloud.vision.v1.FaceAnnotation.Landmark
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ Landmark.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.type != null && message.hasOwnProperty("type"))
+ switch (message.type) {
+ default:
+ return "type: enum value expected";
+ case 0:
+ case 1:
+ case 2:
+ case 3:
+ case 4:
+ case 5:
+ case 6:
+ case 7:
+ case 8:
+ case 9:
+ case 10:
+ case 11:
+ case 12:
+ case 13:
+ case 14:
+ case 15:
+ case 16:
+ case 17:
+ case 18:
+ case 19:
+ case 20:
+ case 21:
+ case 22:
+ case 23:
+ case 24:
+ case 25:
+ case 26:
+ case 27:
+ case 28:
+ case 29:
+ case 30:
+ case 31:
+ case 32:
+ case 33:
+ case 34:
+ case 35:
+ case 36:
+ break;
+ }
+ if (message.position != null && message.hasOwnProperty("position")) {
+ var error = $root.google.cloud.vision.v1.Position.verify(message.position);
+ if (error)
+ return "position." + error;
+ }
+ return null;
+ };
+
+ /**
+ * Creates a Landmark message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.cloud.vision.v1.FaceAnnotation.Landmark
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.cloud.vision.v1.FaceAnnotation.Landmark} Landmark
+ */
+ Landmark.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.cloud.vision.v1.FaceAnnotation.Landmark)
+ return object;
+ var message = new $root.google.cloud.vision.v1.FaceAnnotation.Landmark();
+ switch (object.type) {
+ default:
+ if (typeof object.type === "number") {
+ message.type = object.type;
+ break;
+ }
+ break;
+ case "UNKNOWN_LANDMARK":
+ case 0:
+ message.type = 0;
+ break;
+ case "LEFT_EYE":
+ case 1:
+ message.type = 1;
+ break;
+ case "RIGHT_EYE":
+ case 2:
+ message.type = 2;
+ break;
+ case "LEFT_OF_LEFT_EYEBROW":
+ case 3:
+ message.type = 3;
+ break;
+ case "RIGHT_OF_LEFT_EYEBROW":
+ case 4:
+ message.type = 4;
+ break;
+ case "LEFT_OF_RIGHT_EYEBROW":
+ case 5:
+ message.type = 5;
+ break;
+ case "RIGHT_OF_RIGHT_EYEBROW":
+ case 6:
+ message.type = 6;
+ break;
+ case "MIDPOINT_BETWEEN_EYES":
+ case 7:
+ message.type = 7;
+ break;
+ case "NOSE_TIP":
+ case 8:
+ message.type = 8;
+ break;
+ case "UPPER_LIP":
+ case 9:
+ message.type = 9;
+ break;
+ case "LOWER_LIP":
+ case 10:
+ message.type = 10;
+ break;
+ case "MOUTH_LEFT":
+ case 11:
+ message.type = 11;
+ break;
+ case "MOUTH_RIGHT":
+ case 12:
+ message.type = 12;
+ break;
+ case "MOUTH_CENTER":
+ case 13:
+ message.type = 13;
+ break;
+ case "NOSE_BOTTOM_RIGHT":
+ case 14:
+ message.type = 14;
+ break;
+ case "NOSE_BOTTOM_LEFT":
+ case 15:
+ message.type = 15;
+ break;
+ case "NOSE_BOTTOM_CENTER":
+ case 16:
+ message.type = 16;
+ break;
+ case "LEFT_EYE_TOP_BOUNDARY":
+ case 17:
+ message.type = 17;
+ break;
+ case "LEFT_EYE_RIGHT_CORNER":
+ case 18:
+ message.type = 18;
+ break;
+ case "LEFT_EYE_BOTTOM_BOUNDARY":
+ case 19:
+ message.type = 19;
+ break;
+ case "LEFT_EYE_LEFT_CORNER":
+ case 20:
+ message.type = 20;
+ break;
+ case "RIGHT_EYE_TOP_BOUNDARY":
+ case 21:
+ message.type = 21;
+ break;
+ case "RIGHT_EYE_RIGHT_CORNER":
+ case 22:
+ message.type = 22;
+ break;
+ case "RIGHT_EYE_BOTTOM_BOUNDARY":
+ case 23:
+ message.type = 23;
+ break;
+ case "RIGHT_EYE_LEFT_CORNER":
+ case 24:
+ message.type = 24;
+ break;
+ case "LEFT_EYEBROW_UPPER_MIDPOINT":
+ case 25:
+ message.type = 25;
+ break;
+ case "RIGHT_EYEBROW_UPPER_MIDPOINT":
+ case 26:
+ message.type = 26;
+ break;
+ case "LEFT_EAR_TRAGION":
+ case 27:
+ message.type = 27;
+ break;
+ case "RIGHT_EAR_TRAGION":
+ case 28:
+ message.type = 28;
+ break;
+ case "LEFT_EYE_PUPIL":
+ case 29:
+ message.type = 29;
+ break;
+ case "RIGHT_EYE_PUPIL":
+ case 30:
+ message.type = 30;
+ break;
+ case "FOREHEAD_GLABELLA":
+ case 31:
+ message.type = 31;
+ break;
+ case "CHIN_GNATHION":
+ case 32:
+ message.type = 32;
+ break;
+ case "CHIN_LEFT_GONION":
+ case 33:
+ message.type = 33;
+ break;
+ case "CHIN_RIGHT_GONION":
+ case 34:
+ message.type = 34;
+ break;
+ case "LEFT_CHEEK_CENTER":
+ case 35:
+ message.type = 35;
+ break;
+ case "RIGHT_CHEEK_CENTER":
+ case 36:
+ message.type = 36;
+ break;
+ }
+ if (object.position != null) {
+ if (typeof object.position !== "object")
+ throw TypeError(".google.cloud.vision.v1.FaceAnnotation.Landmark.position: object expected");
+ message.position = $root.google.cloud.vision.v1.Position.fromObject(object.position);
+ }
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a Landmark message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.cloud.vision.v1.FaceAnnotation.Landmark
+ * @static
+ * @param {google.cloud.vision.v1.FaceAnnotation.Landmark} message Landmark
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ Landmark.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.defaults) {
+ object.type = options.enums === String ? "UNKNOWN_LANDMARK" : 0;
+ object.position = null;
+ }
+ if (message.type != null && message.hasOwnProperty("type"))
+ object.type = options.enums === String ? $root.google.cloud.vision.v1.FaceAnnotation.Landmark.Type[message.type] === undefined ? message.type : $root.google.cloud.vision.v1.FaceAnnotation.Landmark.Type[message.type] : message.type;
+ if (message.position != null && message.hasOwnProperty("position"))
+ object.position = $root.google.cloud.vision.v1.Position.toObject(message.position, options);
+ return object;
+ };
+
+ /**
+ * Converts this Landmark to JSON.
+ * @function toJSON
+ * @memberof google.cloud.vision.v1.FaceAnnotation.Landmark
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ Landmark.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for Landmark
+ * @function getTypeUrl
+ * @memberof google.cloud.vision.v1.FaceAnnotation.Landmark
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ Landmark.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.cloud.vision.v1.FaceAnnotation.Landmark";
+ };
+
+ /**
+ * Type enum.
+ * @name google.cloud.vision.v1.FaceAnnotation.Landmark.Type
+ * @enum {number}
+ * @property {number} UNKNOWN_LANDMARK=0 UNKNOWN_LANDMARK value
+ * @property {number} LEFT_EYE=1 LEFT_EYE value
+ * @property {number} RIGHT_EYE=2 RIGHT_EYE value
+ * @property {number} LEFT_OF_LEFT_EYEBROW=3 LEFT_OF_LEFT_EYEBROW value
+ * @property {number} RIGHT_OF_LEFT_EYEBROW=4 RIGHT_OF_LEFT_EYEBROW value
+ * @property {number} LEFT_OF_RIGHT_EYEBROW=5 LEFT_OF_RIGHT_EYEBROW value
+ * @property {number} RIGHT_OF_RIGHT_EYEBROW=6 RIGHT_OF_RIGHT_EYEBROW value
+ * @property {number} MIDPOINT_BETWEEN_EYES=7 MIDPOINT_BETWEEN_EYES value
+ * @property {number} NOSE_TIP=8 NOSE_TIP value
+ * @property {number} UPPER_LIP=9 UPPER_LIP value
+ * @property {number} LOWER_LIP=10 LOWER_LIP value
+ * @property {number} MOUTH_LEFT=11 MOUTH_LEFT value
+ * @property {number} MOUTH_RIGHT=12 MOUTH_RIGHT value
+ * @property {number} MOUTH_CENTER=13 MOUTH_CENTER value
+ * @property {number} NOSE_BOTTOM_RIGHT=14 NOSE_BOTTOM_RIGHT value
+ * @property {number} NOSE_BOTTOM_LEFT=15 NOSE_BOTTOM_LEFT value
+ * @property {number} NOSE_BOTTOM_CENTER=16 NOSE_BOTTOM_CENTER value
+ * @property {number} LEFT_EYE_TOP_BOUNDARY=17 LEFT_EYE_TOP_BOUNDARY value
+ * @property {number} LEFT_EYE_RIGHT_CORNER=18 LEFT_EYE_RIGHT_CORNER value
+ * @property {number} LEFT_EYE_BOTTOM_BOUNDARY=19 LEFT_EYE_BOTTOM_BOUNDARY value
+ * @property {number} LEFT_EYE_LEFT_CORNER=20 LEFT_EYE_LEFT_CORNER value
+ * @property {number} RIGHT_EYE_TOP_BOUNDARY=21 RIGHT_EYE_TOP_BOUNDARY value
+ * @property {number} RIGHT_EYE_RIGHT_CORNER=22 RIGHT_EYE_RIGHT_CORNER value
+ * @property {number} RIGHT_EYE_BOTTOM_BOUNDARY=23 RIGHT_EYE_BOTTOM_BOUNDARY value
+ * @property {number} RIGHT_EYE_LEFT_CORNER=24 RIGHT_EYE_LEFT_CORNER value
+ * @property {number} LEFT_EYEBROW_UPPER_MIDPOINT=25 LEFT_EYEBROW_UPPER_MIDPOINT value
+ * @property {number} RIGHT_EYEBROW_UPPER_MIDPOINT=26 RIGHT_EYEBROW_UPPER_MIDPOINT value
+ * @property {number} LEFT_EAR_TRAGION=27 LEFT_EAR_TRAGION value
+ * @property {number} RIGHT_EAR_TRAGION=28 RIGHT_EAR_TRAGION value
+ * @property {number} LEFT_EYE_PUPIL=29 LEFT_EYE_PUPIL value
+ * @property {number} RIGHT_EYE_PUPIL=30 RIGHT_EYE_PUPIL value
+ * @property {number} FOREHEAD_GLABELLA=31 FOREHEAD_GLABELLA value
+ * @property {number} CHIN_GNATHION=32 CHIN_GNATHION value
+ * @property {number} CHIN_LEFT_GONION=33 CHIN_LEFT_GONION value
+ * @property {number} CHIN_RIGHT_GONION=34 CHIN_RIGHT_GONION value
+ * @property {number} LEFT_CHEEK_CENTER=35 LEFT_CHEEK_CENTER value
+ * @property {number} RIGHT_CHEEK_CENTER=36 RIGHT_CHEEK_CENTER value
+ */
+ Landmark.Type = (function() {
+ var valuesById = {}, values = Object.create(valuesById);
+ values[valuesById[0] = "UNKNOWN_LANDMARK"] = 0;
+ values[valuesById[1] = "LEFT_EYE"] = 1;
+ values[valuesById[2] = "RIGHT_EYE"] = 2;
+ values[valuesById[3] = "LEFT_OF_LEFT_EYEBROW"] = 3;
+ values[valuesById[4] = "RIGHT_OF_LEFT_EYEBROW"] = 4;
+ values[valuesById[5] = "LEFT_OF_RIGHT_EYEBROW"] = 5;
+ values[valuesById[6] = "RIGHT_OF_RIGHT_EYEBROW"] = 6;
+ values[valuesById[7] = "MIDPOINT_BETWEEN_EYES"] = 7;
+ values[valuesById[8] = "NOSE_TIP"] = 8;
+ values[valuesById[9] = "UPPER_LIP"] = 9;
+ values[valuesById[10] = "LOWER_LIP"] = 10;
+ values[valuesById[11] = "MOUTH_LEFT"] = 11;
+ values[valuesById[12] = "MOUTH_RIGHT"] = 12;
+ values[valuesById[13] = "MOUTH_CENTER"] = 13;
+ values[valuesById[14] = "NOSE_BOTTOM_RIGHT"] = 14;
+ values[valuesById[15] = "NOSE_BOTTOM_LEFT"] = 15;
+ values[valuesById[16] = "NOSE_BOTTOM_CENTER"] = 16;
+ values[valuesById[17] = "LEFT_EYE_TOP_BOUNDARY"] = 17;
+ values[valuesById[18] = "LEFT_EYE_RIGHT_CORNER"] = 18;
+ values[valuesById[19] = "LEFT_EYE_BOTTOM_BOUNDARY"] = 19;
+ values[valuesById[20] = "LEFT_EYE_LEFT_CORNER"] = 20;
+ values[valuesById[21] = "RIGHT_EYE_TOP_BOUNDARY"] = 21;
+ values[valuesById[22] = "RIGHT_EYE_RIGHT_CORNER"] = 22;
+ values[valuesById[23] = "RIGHT_EYE_BOTTOM_BOUNDARY"] = 23;
+ values[valuesById[24] = "RIGHT_EYE_LEFT_CORNER"] = 24;
+ values[valuesById[25] = "LEFT_EYEBROW_UPPER_MIDPOINT"] = 25;
+ values[valuesById[26] = "RIGHT_EYEBROW_UPPER_MIDPOINT"] = 26;
+ values[valuesById[27] = "LEFT_EAR_TRAGION"] = 27;
+ values[valuesById[28] = "RIGHT_EAR_TRAGION"] = 28;
+ values[valuesById[29] = "LEFT_EYE_PUPIL"] = 29;
+ values[valuesById[30] = "RIGHT_EYE_PUPIL"] = 30;
+ values[valuesById[31] = "FOREHEAD_GLABELLA"] = 31;
+ values[valuesById[32] = "CHIN_GNATHION"] = 32;
+ values[valuesById[33] = "CHIN_LEFT_GONION"] = 33;
+ values[valuesById[34] = "CHIN_RIGHT_GONION"] = 34;
+ values[valuesById[35] = "LEFT_CHEEK_CENTER"] = 35;
+ values[valuesById[36] = "RIGHT_CHEEK_CENTER"] = 36;
+ return values;
+ })();
+
+ return Landmark;
+ })();
+
+ return FaceAnnotation;
+ })();
+
+ v1.LocationInfo = (function() {
+
+ /**
+ * Properties of a LocationInfo.
+ * @memberof google.cloud.vision.v1
+ * @interface ILocationInfo
+ * @property {google.type.ILatLng|null} [latLng] LocationInfo latLng
+ */
+
+ /**
+ * Constructs a new LocationInfo.
+ * @memberof google.cloud.vision.v1
+ * @classdesc Represents a LocationInfo.
+ * @implements ILocationInfo
+ * @constructor
+ * @param {google.cloud.vision.v1.ILocationInfo=} [properties] Properties to set
+ */
+ function LocationInfo(properties) {
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * LocationInfo latLng.
+ * @member {google.type.ILatLng|null|undefined} latLng
+ * @memberof google.cloud.vision.v1.LocationInfo
+ * @instance
+ */
+ LocationInfo.prototype.latLng = null;
+
+ /**
+ * Creates a new LocationInfo instance using the specified properties.
+ * @function create
+ * @memberof google.cloud.vision.v1.LocationInfo
+ * @static
+ * @param {google.cloud.vision.v1.ILocationInfo=} [properties] Properties to set
+ * @returns {google.cloud.vision.v1.LocationInfo} LocationInfo instance
+ */
+ LocationInfo.create = function create(properties) {
+ return new LocationInfo(properties);
+ };
+
+ /**
+ * Encodes the specified LocationInfo message. Does not implicitly {@link google.cloud.vision.v1.LocationInfo.verify|verify} messages.
+ * @function encode
+ * @memberof google.cloud.vision.v1.LocationInfo
+ * @static
+ * @param {google.cloud.vision.v1.ILocationInfo} message LocationInfo message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ LocationInfo.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.latLng != null && Object.hasOwnProperty.call(message, "latLng"))
+ $root.google.type.LatLng.encode(message.latLng, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim();
+ return writer;
+ };
+
+ /**
+ * Encodes the specified LocationInfo message, length delimited. Does not implicitly {@link google.cloud.vision.v1.LocationInfo.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.cloud.vision.v1.LocationInfo
+ * @static
+ * @param {google.cloud.vision.v1.ILocationInfo} message LocationInfo message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ LocationInfo.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a LocationInfo message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.cloud.vision.v1.LocationInfo
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.cloud.vision.v1.LocationInfo} LocationInfo
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ LocationInfo.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.vision.v1.LocationInfo();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.latLng = $root.google.type.LatLng.decode(reader, reader.uint32());
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a LocationInfo message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.cloud.vision.v1.LocationInfo
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.cloud.vision.v1.LocationInfo} LocationInfo
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ LocationInfo.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a LocationInfo message.
+ * @function verify
+ * @memberof google.cloud.vision.v1.LocationInfo
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ LocationInfo.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.latLng != null && message.hasOwnProperty("latLng")) {
+ var error = $root.google.type.LatLng.verify(message.latLng);
+ if (error)
+ return "latLng." + error;
+ }
+ return null;
+ };
+
+ /**
+ * Creates a LocationInfo message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.cloud.vision.v1.LocationInfo
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.cloud.vision.v1.LocationInfo} LocationInfo
+ */
+ LocationInfo.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.cloud.vision.v1.LocationInfo)
+ return object;
+ var message = new $root.google.cloud.vision.v1.LocationInfo();
+ if (object.latLng != null) {
+ if (typeof object.latLng !== "object")
+ throw TypeError(".google.cloud.vision.v1.LocationInfo.latLng: object expected");
+ message.latLng = $root.google.type.LatLng.fromObject(object.latLng);
+ }
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a LocationInfo message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.cloud.vision.v1.LocationInfo
+ * @static
+ * @param {google.cloud.vision.v1.LocationInfo} message LocationInfo
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ LocationInfo.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.defaults)
+ object.latLng = null;
+ if (message.latLng != null && message.hasOwnProperty("latLng"))
+ object.latLng = $root.google.type.LatLng.toObject(message.latLng, options);
+ return object;
+ };
+
+ /**
+ * Converts this LocationInfo to JSON.
+ * @function toJSON
+ * @memberof google.cloud.vision.v1.LocationInfo
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ LocationInfo.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for LocationInfo
+ * @function getTypeUrl
+ * @memberof google.cloud.vision.v1.LocationInfo
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ LocationInfo.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.cloud.vision.v1.LocationInfo";
+ };
+
+ return LocationInfo;
+ })();
+
+ v1.Property = (function() {
+
+ /**
+ * Properties of a Property.
+ * @memberof google.cloud.vision.v1
+ * @interface IProperty
+ * @property {string|null} [name] Property name
+ * @property {string|null} [value] Property value
+ * @property {number|Long|null} [uint64Value] Property uint64Value
+ */
+
+ /**
+ * Constructs a new Property.
+ * @memberof google.cloud.vision.v1
+ * @classdesc Represents a Property.
+ * @implements IProperty
+ * @constructor
+ * @param {google.cloud.vision.v1.IProperty=} [properties] Properties to set
+ */
+ function Property(properties) {
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * Property name.
+ * @member {string} name
+ * @memberof google.cloud.vision.v1.Property
+ * @instance
+ */
+ Property.prototype.name = "";
+
+ /**
+ * Property value.
+ * @member {string} value
+ * @memberof google.cloud.vision.v1.Property
+ * @instance
+ */
+ Property.prototype.value = "";
+
+ /**
+ * Property uint64Value.
+ * @member {number|Long} uint64Value
+ * @memberof google.cloud.vision.v1.Property
+ * @instance
+ */
+ Property.prototype.uint64Value = $util.Long ? $util.Long.fromBits(0,0,true) : 0;
+
+ /**
+ * Creates a new Property instance using the specified properties.
+ * @function create
+ * @memberof google.cloud.vision.v1.Property
+ * @static
+ * @param {google.cloud.vision.v1.IProperty=} [properties] Properties to set
+ * @returns {google.cloud.vision.v1.Property} Property instance
+ */
+ Property.create = function create(properties) {
+ return new Property(properties);
+ };
+
+ /**
+ * Encodes the specified Property message. Does not implicitly {@link google.cloud.vision.v1.Property.verify|verify} messages.
+ * @function encode
+ * @memberof google.cloud.vision.v1.Property
+ * @static
+ * @param {google.cloud.vision.v1.IProperty} message Property message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ Property.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.name != null && Object.hasOwnProperty.call(message, "name"))
+ writer.uint32(/* id 1, wireType 2 =*/10).string(message.name);
+ if (message.value != null && Object.hasOwnProperty.call(message, "value"))
+ writer.uint32(/* id 2, wireType 2 =*/18).string(message.value);
+ if (message.uint64Value != null && Object.hasOwnProperty.call(message, "uint64Value"))
+ writer.uint32(/* id 3, wireType 0 =*/24).uint64(message.uint64Value);
+ return writer;
+ };
+
+ /**
+ * Encodes the specified Property message, length delimited. Does not implicitly {@link google.cloud.vision.v1.Property.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.cloud.vision.v1.Property
+ * @static
+ * @param {google.cloud.vision.v1.IProperty} message Property message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ Property.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a Property message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.cloud.vision.v1.Property
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.cloud.vision.v1.Property} Property
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ Property.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.vision.v1.Property();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.name = reader.string();
+ break;
+ }
+ case 2: {
+ message.value = reader.string();
+ break;
+ }
+ case 3: {
+ message.uint64Value = reader.uint64();
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a Property message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.cloud.vision.v1.Property
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.cloud.vision.v1.Property} Property
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ Property.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a Property message.
+ * @function verify
+ * @memberof google.cloud.vision.v1.Property
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ Property.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.name != null && message.hasOwnProperty("name"))
+ if (!$util.isString(message.name))
+ return "name: string expected";
+ if (message.value != null && message.hasOwnProperty("value"))
+ if (!$util.isString(message.value))
+ return "value: string expected";
+ if (message.uint64Value != null && message.hasOwnProperty("uint64Value"))
+ if (!$util.isInteger(message.uint64Value) && !(message.uint64Value && $util.isInteger(message.uint64Value.low) && $util.isInteger(message.uint64Value.high)))
+ return "uint64Value: integer|Long expected";
+ return null;
+ };
+
+ /**
+ * Creates a Property message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.cloud.vision.v1.Property
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.cloud.vision.v1.Property} Property
+ */
+ Property.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.cloud.vision.v1.Property)
+ return object;
+ var message = new $root.google.cloud.vision.v1.Property();
+ if (object.name != null)
+ message.name = String(object.name);
+ if (object.value != null)
+ message.value = String(object.value);
+ if (object.uint64Value != null)
+ if ($util.Long)
+ (message.uint64Value = $util.Long.fromValue(object.uint64Value)).unsigned = true;
+ else if (typeof object.uint64Value === "string")
+ message.uint64Value = parseInt(object.uint64Value, 10);
+ else if (typeof object.uint64Value === "number")
+ message.uint64Value = object.uint64Value;
+ else if (typeof object.uint64Value === "object")
+ message.uint64Value = new $util.LongBits(object.uint64Value.low >>> 0, object.uint64Value.high >>> 0).toNumber(true);
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a Property message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.cloud.vision.v1.Property
+ * @static
+ * @param {google.cloud.vision.v1.Property} message Property
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ Property.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.defaults) {
+ object.name = "";
+ object.value = "";
+ if ($util.Long) {
+ var long = new $util.Long(0, 0, true);
+ object.uint64Value = options.longs === String ? long.toString() : options.longs === Number ? long.toNumber() : long;
+ } else
+ object.uint64Value = options.longs === String ? "0" : 0;
+ }
+ if (message.name != null && message.hasOwnProperty("name"))
+ object.name = message.name;
+ if (message.value != null && message.hasOwnProperty("value"))
+ object.value = message.value;
+ if (message.uint64Value != null && message.hasOwnProperty("uint64Value"))
+ if (typeof message.uint64Value === "number")
+ object.uint64Value = options.longs === String ? String(message.uint64Value) : message.uint64Value;
+ else
+ object.uint64Value = options.longs === String ? $util.Long.prototype.toString.call(message.uint64Value) : options.longs === Number ? new $util.LongBits(message.uint64Value.low >>> 0, message.uint64Value.high >>> 0).toNumber(true) : message.uint64Value;
+ return object;
+ };
+
+ /**
+ * Converts this Property to JSON.
+ * @function toJSON
+ * @memberof google.cloud.vision.v1.Property
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ Property.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for Property
+ * @function getTypeUrl
+ * @memberof google.cloud.vision.v1.Property
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ Property.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.cloud.vision.v1.Property";
+ };
+
+ return Property;
+ })();
+
+ v1.EntityAnnotation = (function() {
+
+ /**
+ * Properties of an EntityAnnotation.
+ * @memberof google.cloud.vision.v1
+ * @interface IEntityAnnotation
+ * @property {string|null} [mid] EntityAnnotation mid
+ * @property {string|null} [locale] EntityAnnotation locale
+ * @property {string|null} [description] EntityAnnotation description
+ * @property {number|null} [score] EntityAnnotation score
+ * @property {number|null} [confidence] EntityAnnotation confidence
+ * @property {number|null} [topicality] EntityAnnotation topicality
+ * @property {google.cloud.vision.v1.IBoundingPoly|null} [boundingPoly] EntityAnnotation boundingPoly
+ * @property {Array.|null} [locations] EntityAnnotation locations
+ * @property {Array.|null} [properties] EntityAnnotation properties
+ */
+
+ /**
+ * Constructs a new EntityAnnotation.
+ * @memberof google.cloud.vision.v1
+ * @classdesc Represents an EntityAnnotation.
+ * @implements IEntityAnnotation
+ * @constructor
+ * @param {google.cloud.vision.v1.IEntityAnnotation=} [properties] Properties to set
+ */
+ function EntityAnnotation(properties) {
+ this.locations = [];
+ this.properties = [];
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * EntityAnnotation mid.
+ * @member {string} mid
+ * @memberof google.cloud.vision.v1.EntityAnnotation
+ * @instance
+ */
+ EntityAnnotation.prototype.mid = "";
+
+ /**
+ * EntityAnnotation locale.
+ * @member {string} locale
+ * @memberof google.cloud.vision.v1.EntityAnnotation
+ * @instance
+ */
+ EntityAnnotation.prototype.locale = "";
+
+ /**
+ * EntityAnnotation description.
+ * @member {string} description
+ * @memberof google.cloud.vision.v1.EntityAnnotation
+ * @instance
+ */
+ EntityAnnotation.prototype.description = "";
+
+ /**
+ * EntityAnnotation score.
+ * @member {number} score
+ * @memberof google.cloud.vision.v1.EntityAnnotation
+ * @instance
+ */
+ EntityAnnotation.prototype.score = 0;
+
+ /**
+ * EntityAnnotation confidence.
+ * @member {number} confidence
+ * @memberof google.cloud.vision.v1.EntityAnnotation
+ * @instance
+ */
+ EntityAnnotation.prototype.confidence = 0;
+
+ /**
+ * EntityAnnotation topicality.
+ * @member {number} topicality
+ * @memberof google.cloud.vision.v1.EntityAnnotation
+ * @instance
+ */
+ EntityAnnotation.prototype.topicality = 0;
+
+ /**
+ * EntityAnnotation boundingPoly.
+ * @member {google.cloud.vision.v1.IBoundingPoly|null|undefined} boundingPoly
+ * @memberof google.cloud.vision.v1.EntityAnnotation
+ * @instance
+ */
+ EntityAnnotation.prototype.boundingPoly = null;
+
+ /**
+ * EntityAnnotation locations.
+ * @member {Array.} locations
+ * @memberof google.cloud.vision.v1.EntityAnnotation
+ * @instance
+ */
+ EntityAnnotation.prototype.locations = $util.emptyArray;
+
+ /**
+ * EntityAnnotation properties.
+ * @member {Array.} properties
+ * @memberof google.cloud.vision.v1.EntityAnnotation
+ * @instance
+ */
+ EntityAnnotation.prototype.properties = $util.emptyArray;
+
+ /**
+ * Creates a new EntityAnnotation instance using the specified properties.
+ * @function create
+ * @memberof google.cloud.vision.v1.EntityAnnotation
+ * @static
+ * @param {google.cloud.vision.v1.IEntityAnnotation=} [properties] Properties to set
+ * @returns {google.cloud.vision.v1.EntityAnnotation} EntityAnnotation instance
+ */
+ EntityAnnotation.create = function create(properties) {
+ return new EntityAnnotation(properties);
+ };
+
+ /**
+ * Encodes the specified EntityAnnotation message. Does not implicitly {@link google.cloud.vision.v1.EntityAnnotation.verify|verify} messages.
+ * @function encode
+ * @memberof google.cloud.vision.v1.EntityAnnotation
+ * @static
+ * @param {google.cloud.vision.v1.IEntityAnnotation} message EntityAnnotation message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ EntityAnnotation.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.mid != null && Object.hasOwnProperty.call(message, "mid"))
+ writer.uint32(/* id 1, wireType 2 =*/10).string(message.mid);
+ if (message.locale != null && Object.hasOwnProperty.call(message, "locale"))
+ writer.uint32(/* id 2, wireType 2 =*/18).string(message.locale);
+ if (message.description != null && Object.hasOwnProperty.call(message, "description"))
+ writer.uint32(/* id 3, wireType 2 =*/26).string(message.description);
+ if (message.score != null && Object.hasOwnProperty.call(message, "score"))
+ writer.uint32(/* id 4, wireType 5 =*/37).float(message.score);
+ if (message.confidence != null && Object.hasOwnProperty.call(message, "confidence"))
+ writer.uint32(/* id 5, wireType 5 =*/45).float(message.confidence);
+ if (message.topicality != null && Object.hasOwnProperty.call(message, "topicality"))
+ writer.uint32(/* id 6, wireType 5 =*/53).float(message.topicality);
+ if (message.boundingPoly != null && Object.hasOwnProperty.call(message, "boundingPoly"))
+ $root.google.cloud.vision.v1.BoundingPoly.encode(message.boundingPoly, writer.uint32(/* id 7, wireType 2 =*/58).fork()).ldelim();
+ if (message.locations != null && message.locations.length)
+ for (var i = 0; i < message.locations.length; ++i)
+ $root.google.cloud.vision.v1.LocationInfo.encode(message.locations[i], writer.uint32(/* id 8, wireType 2 =*/66).fork()).ldelim();
+ if (message.properties != null && message.properties.length)
+ for (var i = 0; i < message.properties.length; ++i)
+ $root.google.cloud.vision.v1.Property.encode(message.properties[i], writer.uint32(/* id 9, wireType 2 =*/74).fork()).ldelim();
+ return writer;
+ };
+
+ /**
+ * Encodes the specified EntityAnnotation message, length delimited. Does not implicitly {@link google.cloud.vision.v1.EntityAnnotation.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.cloud.vision.v1.EntityAnnotation
+ * @static
+ * @param {google.cloud.vision.v1.IEntityAnnotation} message EntityAnnotation message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ EntityAnnotation.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes an EntityAnnotation message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.cloud.vision.v1.EntityAnnotation
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.cloud.vision.v1.EntityAnnotation} EntityAnnotation
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ EntityAnnotation.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.vision.v1.EntityAnnotation();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.mid = reader.string();
+ break;
+ }
+ case 2: {
+ message.locale = reader.string();
+ break;
+ }
+ case 3: {
+ message.description = reader.string();
+ break;
+ }
+ case 4: {
+ message.score = reader.float();
+ break;
+ }
+ case 5: {
+ message.confidence = reader.float();
+ break;
+ }
+ case 6: {
+ message.topicality = reader.float();
+ break;
+ }
+ case 7: {
+ message.boundingPoly = $root.google.cloud.vision.v1.BoundingPoly.decode(reader, reader.uint32());
+ break;
+ }
+ case 8: {
+ if (!(message.locations && message.locations.length))
+ message.locations = [];
+ message.locations.push($root.google.cloud.vision.v1.LocationInfo.decode(reader, reader.uint32()));
+ break;
+ }
+ case 9: {
+ if (!(message.properties && message.properties.length))
+ message.properties = [];
+ message.properties.push($root.google.cloud.vision.v1.Property.decode(reader, reader.uint32()));
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes an EntityAnnotation message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.cloud.vision.v1.EntityAnnotation
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.cloud.vision.v1.EntityAnnotation} EntityAnnotation
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ EntityAnnotation.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies an EntityAnnotation message.
+ * @function verify
+ * @memberof google.cloud.vision.v1.EntityAnnotation
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ EntityAnnotation.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.mid != null && message.hasOwnProperty("mid"))
+ if (!$util.isString(message.mid))
+ return "mid: string expected";
+ if (message.locale != null && message.hasOwnProperty("locale"))
+ if (!$util.isString(message.locale))
+ return "locale: string expected";
+ if (message.description != null && message.hasOwnProperty("description"))
+ if (!$util.isString(message.description))
+ return "description: string expected";
+ if (message.score != null && message.hasOwnProperty("score"))
+ if (typeof message.score !== "number")
+ return "score: number expected";
+ if (message.confidence != null && message.hasOwnProperty("confidence"))
+ if (typeof message.confidence !== "number")
+ return "confidence: number expected";
+ if (message.topicality != null && message.hasOwnProperty("topicality"))
+ if (typeof message.topicality !== "number")
+ return "topicality: number expected";
+ if (message.boundingPoly != null && message.hasOwnProperty("boundingPoly")) {
+ var error = $root.google.cloud.vision.v1.BoundingPoly.verify(message.boundingPoly);
+ if (error)
+ return "boundingPoly." + error;
+ }
+ if (message.locations != null && message.hasOwnProperty("locations")) {
+ if (!Array.isArray(message.locations))
+ return "locations: array expected";
+ for (var i = 0; i < message.locations.length; ++i) {
+ var error = $root.google.cloud.vision.v1.LocationInfo.verify(message.locations[i]);
+ if (error)
+ return "locations." + error;
+ }
+ }
+ if (message.properties != null && message.hasOwnProperty("properties")) {
+ if (!Array.isArray(message.properties))
+ return "properties: array expected";
+ for (var i = 0; i < message.properties.length; ++i) {
+ var error = $root.google.cloud.vision.v1.Property.verify(message.properties[i]);
+ if (error)
+ return "properties." + error;
+ }
+ }
+ return null;
+ };
+
+ /**
+ * Creates an EntityAnnotation message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.cloud.vision.v1.EntityAnnotation
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.cloud.vision.v1.EntityAnnotation} EntityAnnotation
+ */
+ EntityAnnotation.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.cloud.vision.v1.EntityAnnotation)
+ return object;
+ var message = new $root.google.cloud.vision.v1.EntityAnnotation();
+ if (object.mid != null)
+ message.mid = String(object.mid);
+ if (object.locale != null)
+ message.locale = String(object.locale);
+ if (object.description != null)
+ message.description = String(object.description);
+ if (object.score != null)
+ message.score = Number(object.score);
+ if (object.confidence != null)
+ message.confidence = Number(object.confidence);
+ if (object.topicality != null)
+ message.topicality = Number(object.topicality);
+ if (object.boundingPoly != null) {
+ if (typeof object.boundingPoly !== "object")
+ throw TypeError(".google.cloud.vision.v1.EntityAnnotation.boundingPoly: object expected");
+ message.boundingPoly = $root.google.cloud.vision.v1.BoundingPoly.fromObject(object.boundingPoly);
+ }
+ if (object.locations) {
+ if (!Array.isArray(object.locations))
+ throw TypeError(".google.cloud.vision.v1.EntityAnnotation.locations: array expected");
+ message.locations = [];
+ for (var i = 0; i < object.locations.length; ++i) {
+ if (typeof object.locations[i] !== "object")
+ throw TypeError(".google.cloud.vision.v1.EntityAnnotation.locations: object expected");
+ message.locations[i] = $root.google.cloud.vision.v1.LocationInfo.fromObject(object.locations[i]);
+ }
+ }
+ if (object.properties) {
+ if (!Array.isArray(object.properties))
+ throw TypeError(".google.cloud.vision.v1.EntityAnnotation.properties: array expected");
+ message.properties = [];
+ for (var i = 0; i < object.properties.length; ++i) {
+ if (typeof object.properties[i] !== "object")
+ throw TypeError(".google.cloud.vision.v1.EntityAnnotation.properties: object expected");
+ message.properties[i] = $root.google.cloud.vision.v1.Property.fromObject(object.properties[i]);
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Creates a plain object from an EntityAnnotation message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.cloud.vision.v1.EntityAnnotation
+ * @static
+ * @param {google.cloud.vision.v1.EntityAnnotation} message EntityAnnotation
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ EntityAnnotation.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.arrays || options.defaults) {
+ object.locations = [];
+ object.properties = [];
+ }
+ if (options.defaults) {
+ object.mid = "";
+ object.locale = "";
+ object.description = "";
+ object.score = 0;
+ object.confidence = 0;
+ object.topicality = 0;
+ object.boundingPoly = null;
+ }
+ if (message.mid != null && message.hasOwnProperty("mid"))
+ object.mid = message.mid;
+ if (message.locale != null && message.hasOwnProperty("locale"))
+ object.locale = message.locale;
+ if (message.description != null && message.hasOwnProperty("description"))
+ object.description = message.description;
+ if (message.score != null && message.hasOwnProperty("score"))
+ object.score = options.json && !isFinite(message.score) ? String(message.score) : message.score;
+ if (message.confidence != null && message.hasOwnProperty("confidence"))
+ object.confidence = options.json && !isFinite(message.confidence) ? String(message.confidence) : message.confidence;
+ if (message.topicality != null && message.hasOwnProperty("topicality"))
+ object.topicality = options.json && !isFinite(message.topicality) ? String(message.topicality) : message.topicality;
+ if (message.boundingPoly != null && message.hasOwnProperty("boundingPoly"))
+ object.boundingPoly = $root.google.cloud.vision.v1.BoundingPoly.toObject(message.boundingPoly, options);
+ if (message.locations && message.locations.length) {
+ object.locations = [];
+ for (var j = 0; j < message.locations.length; ++j)
+ object.locations[j] = $root.google.cloud.vision.v1.LocationInfo.toObject(message.locations[j], options);
+ }
+ if (message.properties && message.properties.length) {
+ object.properties = [];
+ for (var j = 0; j < message.properties.length; ++j)
+ object.properties[j] = $root.google.cloud.vision.v1.Property.toObject(message.properties[j], options);
+ }
+ return object;
+ };
+
+ /**
+ * Converts this EntityAnnotation to JSON.
+ * @function toJSON
+ * @memberof google.cloud.vision.v1.EntityAnnotation
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ EntityAnnotation.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for EntityAnnotation
+ * @function getTypeUrl
+ * @memberof google.cloud.vision.v1.EntityAnnotation
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ EntityAnnotation.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.cloud.vision.v1.EntityAnnotation";
+ };
+
+ return EntityAnnotation;
+ })();
+
+ v1.LocalizedObjectAnnotation = (function() {
+
+ /**
+ * Properties of a LocalizedObjectAnnotation.
+ * @memberof google.cloud.vision.v1
+ * @interface ILocalizedObjectAnnotation
+ * @property {string|null} [mid] LocalizedObjectAnnotation mid
+ * @property {string|null} [languageCode] LocalizedObjectAnnotation languageCode
+ * @property {string|null} [name] LocalizedObjectAnnotation name
+ * @property {number|null} [score] LocalizedObjectAnnotation score
+ * @property {google.cloud.vision.v1.IBoundingPoly|null} [boundingPoly] LocalizedObjectAnnotation boundingPoly
+ */
+
+ /**
+ * Constructs a new LocalizedObjectAnnotation.
+ * @memberof google.cloud.vision.v1
+ * @classdesc Represents a LocalizedObjectAnnotation.
+ * @implements ILocalizedObjectAnnotation
+ * @constructor
+ * @param {google.cloud.vision.v1.ILocalizedObjectAnnotation=} [properties] Properties to set
+ */
+ function LocalizedObjectAnnotation(properties) {
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * LocalizedObjectAnnotation mid.
+ * @member {string} mid
+ * @memberof google.cloud.vision.v1.LocalizedObjectAnnotation
+ * @instance
+ */
+ LocalizedObjectAnnotation.prototype.mid = "";
+
+ /**
+ * LocalizedObjectAnnotation languageCode.
+ * @member {string} languageCode
+ * @memberof google.cloud.vision.v1.LocalizedObjectAnnotation
+ * @instance
+ */
+ LocalizedObjectAnnotation.prototype.languageCode = "";
+
+ /**
+ * LocalizedObjectAnnotation name.
+ * @member {string} name
+ * @memberof google.cloud.vision.v1.LocalizedObjectAnnotation
+ * @instance
+ */
+ LocalizedObjectAnnotation.prototype.name = "";
+
+ /**
+ * LocalizedObjectAnnotation score.
+ * @member {number} score
+ * @memberof google.cloud.vision.v1.LocalizedObjectAnnotation
+ * @instance
+ */
+ LocalizedObjectAnnotation.prototype.score = 0;
+
+ /**
+ * LocalizedObjectAnnotation boundingPoly.
+ * @member {google.cloud.vision.v1.IBoundingPoly|null|undefined} boundingPoly
+ * @memberof google.cloud.vision.v1.LocalizedObjectAnnotation
+ * @instance
+ */
+ LocalizedObjectAnnotation.prototype.boundingPoly = null;
+
+ /**
+ * Creates a new LocalizedObjectAnnotation instance using the specified properties.
+ * @function create
+ * @memberof google.cloud.vision.v1.LocalizedObjectAnnotation
+ * @static
+ * @param {google.cloud.vision.v1.ILocalizedObjectAnnotation=} [properties] Properties to set
+ * @returns {google.cloud.vision.v1.LocalizedObjectAnnotation} LocalizedObjectAnnotation instance
+ */
+ LocalizedObjectAnnotation.create = function create(properties) {
+ return new LocalizedObjectAnnotation(properties);
+ };
+
+ /**
+ * Encodes the specified LocalizedObjectAnnotation message. Does not implicitly {@link google.cloud.vision.v1.LocalizedObjectAnnotation.verify|verify} messages.
+ * @function encode
+ * @memberof google.cloud.vision.v1.LocalizedObjectAnnotation
+ * @static
+ * @param {google.cloud.vision.v1.ILocalizedObjectAnnotation} message LocalizedObjectAnnotation message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ LocalizedObjectAnnotation.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.mid != null && Object.hasOwnProperty.call(message, "mid"))
+ writer.uint32(/* id 1, wireType 2 =*/10).string(message.mid);
+ if (message.languageCode != null && Object.hasOwnProperty.call(message, "languageCode"))
+ writer.uint32(/* id 2, wireType 2 =*/18).string(message.languageCode);
+ if (message.name != null && Object.hasOwnProperty.call(message, "name"))
+ writer.uint32(/* id 3, wireType 2 =*/26).string(message.name);
+ if (message.score != null && Object.hasOwnProperty.call(message, "score"))
+ writer.uint32(/* id 4, wireType 5 =*/37).float(message.score);
+ if (message.boundingPoly != null && Object.hasOwnProperty.call(message, "boundingPoly"))
+ $root.google.cloud.vision.v1.BoundingPoly.encode(message.boundingPoly, writer.uint32(/* id 5, wireType 2 =*/42).fork()).ldelim();
+ return writer;
+ };
+
+ /**
+ * Encodes the specified LocalizedObjectAnnotation message, length delimited. Does not implicitly {@link google.cloud.vision.v1.LocalizedObjectAnnotation.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.cloud.vision.v1.LocalizedObjectAnnotation
+ * @static
+ * @param {google.cloud.vision.v1.ILocalizedObjectAnnotation} message LocalizedObjectAnnotation message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ LocalizedObjectAnnotation.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a LocalizedObjectAnnotation message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.cloud.vision.v1.LocalizedObjectAnnotation
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.cloud.vision.v1.LocalizedObjectAnnotation} LocalizedObjectAnnotation
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ LocalizedObjectAnnotation.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.vision.v1.LocalizedObjectAnnotation();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.mid = reader.string();
+ break;
+ }
+ case 2: {
+ message.languageCode = reader.string();
+ break;
+ }
+ case 3: {
+ message.name = reader.string();
+ break;
+ }
+ case 4: {
+ message.score = reader.float();
+ break;
+ }
+ case 5: {
+ message.boundingPoly = $root.google.cloud.vision.v1.BoundingPoly.decode(reader, reader.uint32());
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a LocalizedObjectAnnotation message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.cloud.vision.v1.LocalizedObjectAnnotation
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.cloud.vision.v1.LocalizedObjectAnnotation} LocalizedObjectAnnotation
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ LocalizedObjectAnnotation.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a LocalizedObjectAnnotation message.
+ * @function verify
+ * @memberof google.cloud.vision.v1.LocalizedObjectAnnotation
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ LocalizedObjectAnnotation.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.mid != null && message.hasOwnProperty("mid"))
+ if (!$util.isString(message.mid))
+ return "mid: string expected";
+ if (message.languageCode != null && message.hasOwnProperty("languageCode"))
+ if (!$util.isString(message.languageCode))
+ return "languageCode: string expected";
+ if (message.name != null && message.hasOwnProperty("name"))
+ if (!$util.isString(message.name))
+ return "name: string expected";
+ if (message.score != null && message.hasOwnProperty("score"))
+ if (typeof message.score !== "number")
+ return "score: number expected";
+ if (message.boundingPoly != null && message.hasOwnProperty("boundingPoly")) {
+ var error = $root.google.cloud.vision.v1.BoundingPoly.verify(message.boundingPoly);
+ if (error)
+ return "boundingPoly." + error;
+ }
+ return null;
+ };
+
+ /**
+ * Creates a LocalizedObjectAnnotation message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.cloud.vision.v1.LocalizedObjectAnnotation
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.cloud.vision.v1.LocalizedObjectAnnotation} LocalizedObjectAnnotation
+ */
+ LocalizedObjectAnnotation.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.cloud.vision.v1.LocalizedObjectAnnotation)
+ return object;
+ var message = new $root.google.cloud.vision.v1.LocalizedObjectAnnotation();
+ if (object.mid != null)
+ message.mid = String(object.mid);
+ if (object.languageCode != null)
+ message.languageCode = String(object.languageCode);
+ if (object.name != null)
+ message.name = String(object.name);
+ if (object.score != null)
+ message.score = Number(object.score);
+ if (object.boundingPoly != null) {
+ if (typeof object.boundingPoly !== "object")
+ throw TypeError(".google.cloud.vision.v1.LocalizedObjectAnnotation.boundingPoly: object expected");
+ message.boundingPoly = $root.google.cloud.vision.v1.BoundingPoly.fromObject(object.boundingPoly);
+ }
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a LocalizedObjectAnnotation message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.cloud.vision.v1.LocalizedObjectAnnotation
+ * @static
+ * @param {google.cloud.vision.v1.LocalizedObjectAnnotation} message LocalizedObjectAnnotation
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ LocalizedObjectAnnotation.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.defaults) {
+ object.mid = "";
+ object.languageCode = "";
+ object.name = "";
+ object.score = 0;
+ object.boundingPoly = null;
+ }
+ if (message.mid != null && message.hasOwnProperty("mid"))
+ object.mid = message.mid;
+ if (message.languageCode != null && message.hasOwnProperty("languageCode"))
+ object.languageCode = message.languageCode;
+ if (message.name != null && message.hasOwnProperty("name"))
+ object.name = message.name;
+ if (message.score != null && message.hasOwnProperty("score"))
+ object.score = options.json && !isFinite(message.score) ? String(message.score) : message.score;
+ if (message.boundingPoly != null && message.hasOwnProperty("boundingPoly"))
+ object.boundingPoly = $root.google.cloud.vision.v1.BoundingPoly.toObject(message.boundingPoly, options);
+ return object;
+ };
+
+ /**
+ * Converts this LocalizedObjectAnnotation to JSON.
+ * @function toJSON
+ * @memberof google.cloud.vision.v1.LocalizedObjectAnnotation
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ LocalizedObjectAnnotation.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for LocalizedObjectAnnotation
+ * @function getTypeUrl
+ * @memberof google.cloud.vision.v1.LocalizedObjectAnnotation
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ LocalizedObjectAnnotation.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.cloud.vision.v1.LocalizedObjectAnnotation";
+ };
+
+ return LocalizedObjectAnnotation;
+ })();
+
+ v1.SafeSearchAnnotation = (function() {
+
+ /**
+ * Properties of a SafeSearchAnnotation.
+ * @memberof google.cloud.vision.v1
+ * @interface ISafeSearchAnnotation
+ * @property {google.cloud.vision.v1.Likelihood|null} [adult] SafeSearchAnnotation adult
+ * @property {google.cloud.vision.v1.Likelihood|null} [spoof] SafeSearchAnnotation spoof
+ * @property {google.cloud.vision.v1.Likelihood|null} [medical] SafeSearchAnnotation medical
+ * @property {google.cloud.vision.v1.Likelihood|null} [violence] SafeSearchAnnotation violence
+ * @property {google.cloud.vision.v1.Likelihood|null} [racy] SafeSearchAnnotation racy
+ */
+
+ /**
+ * Constructs a new SafeSearchAnnotation.
+ * @memberof google.cloud.vision.v1
+ * @classdesc Represents a SafeSearchAnnotation.
+ * @implements ISafeSearchAnnotation
+ * @constructor
+ * @param {google.cloud.vision.v1.ISafeSearchAnnotation=} [properties] Properties to set
+ */
+ function SafeSearchAnnotation(properties) {
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * SafeSearchAnnotation adult.
+ * @member {google.cloud.vision.v1.Likelihood} adult
+ * @memberof google.cloud.vision.v1.SafeSearchAnnotation
+ * @instance
+ */
+ SafeSearchAnnotation.prototype.adult = 0;
+
+ /**
+ * SafeSearchAnnotation spoof.
+ * @member {google.cloud.vision.v1.Likelihood} spoof
+ * @memberof google.cloud.vision.v1.SafeSearchAnnotation
+ * @instance
+ */
+ SafeSearchAnnotation.prototype.spoof = 0;
+
+ /**
+ * SafeSearchAnnotation medical.
+ * @member {google.cloud.vision.v1.Likelihood} medical
+ * @memberof google.cloud.vision.v1.SafeSearchAnnotation
+ * @instance
+ */
+ SafeSearchAnnotation.prototype.medical = 0;
+
+ /**
+ * SafeSearchAnnotation violence.
+ * @member {google.cloud.vision.v1.Likelihood} violence
+ * @memberof google.cloud.vision.v1.SafeSearchAnnotation
+ * @instance
+ */
+ SafeSearchAnnotation.prototype.violence = 0;
+
+ /**
+ * SafeSearchAnnotation racy.
+ * @member {google.cloud.vision.v1.Likelihood} racy
+ * @memberof google.cloud.vision.v1.SafeSearchAnnotation
+ * @instance
+ */
+ SafeSearchAnnotation.prototype.racy = 0;
+
+ /**
+ * Creates a new SafeSearchAnnotation instance using the specified properties.
+ * @function create
+ * @memberof google.cloud.vision.v1.SafeSearchAnnotation
+ * @static
+ * @param {google.cloud.vision.v1.ISafeSearchAnnotation=} [properties] Properties to set
+ * @returns {google.cloud.vision.v1.SafeSearchAnnotation} SafeSearchAnnotation instance
+ */
+ SafeSearchAnnotation.create = function create(properties) {
+ return new SafeSearchAnnotation(properties);
+ };
+
+ /**
+ * Encodes the specified SafeSearchAnnotation message. Does not implicitly {@link google.cloud.vision.v1.SafeSearchAnnotation.verify|verify} messages.
+ * @function encode
+ * @memberof google.cloud.vision.v1.SafeSearchAnnotation
+ * @static
+ * @param {google.cloud.vision.v1.ISafeSearchAnnotation} message SafeSearchAnnotation message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ SafeSearchAnnotation.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.adult != null && Object.hasOwnProperty.call(message, "adult"))
+ writer.uint32(/* id 1, wireType 0 =*/8).int32(message.adult);
+ if (message.spoof != null && Object.hasOwnProperty.call(message, "spoof"))
+ writer.uint32(/* id 2, wireType 0 =*/16).int32(message.spoof);
+ if (message.medical != null && Object.hasOwnProperty.call(message, "medical"))
+ writer.uint32(/* id 3, wireType 0 =*/24).int32(message.medical);
+ if (message.violence != null && Object.hasOwnProperty.call(message, "violence"))
+ writer.uint32(/* id 4, wireType 0 =*/32).int32(message.violence);
+ if (message.racy != null && Object.hasOwnProperty.call(message, "racy"))
+ writer.uint32(/* id 9, wireType 0 =*/72).int32(message.racy);
+ return writer;
+ };
+
+ /**
+ * Encodes the specified SafeSearchAnnotation message, length delimited. Does not implicitly {@link google.cloud.vision.v1.SafeSearchAnnotation.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.cloud.vision.v1.SafeSearchAnnotation
+ * @static
+ * @param {google.cloud.vision.v1.ISafeSearchAnnotation} message SafeSearchAnnotation message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ SafeSearchAnnotation.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a SafeSearchAnnotation message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.cloud.vision.v1.SafeSearchAnnotation
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.cloud.vision.v1.SafeSearchAnnotation} SafeSearchAnnotation
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ SafeSearchAnnotation.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.vision.v1.SafeSearchAnnotation();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.adult = reader.int32();
+ break;
+ }
+ case 2: {
+ message.spoof = reader.int32();
+ break;
+ }
+ case 3: {
+ message.medical = reader.int32();
+ break;
+ }
+ case 4: {
+ message.violence = reader.int32();
+ break;
+ }
+ case 9: {
+ message.racy = reader.int32();
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a SafeSearchAnnotation message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.cloud.vision.v1.SafeSearchAnnotation
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.cloud.vision.v1.SafeSearchAnnotation} SafeSearchAnnotation
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ SafeSearchAnnotation.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a SafeSearchAnnotation message.
+ * @function verify
+ * @memberof google.cloud.vision.v1.SafeSearchAnnotation
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ SafeSearchAnnotation.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.adult != null && message.hasOwnProperty("adult"))
+ switch (message.adult) {
+ default:
+ return "adult: enum value expected";
+ case 0:
+ case 1:
+ case 2:
+ case 3:
+ case 4:
+ case 5:
+ break;
+ }
+ if (message.spoof != null && message.hasOwnProperty("spoof"))
+ switch (message.spoof) {
+ default:
+ return "spoof: enum value expected";
+ case 0:
+ case 1:
+ case 2:
+ case 3:
+ case 4:
+ case 5:
+ break;
+ }
+ if (message.medical != null && message.hasOwnProperty("medical"))
+ switch (message.medical) {
+ default:
+ return "medical: enum value expected";
+ case 0:
+ case 1:
+ case 2:
+ case 3:
+ case 4:
+ case 5:
+ break;
+ }
+ if (message.violence != null && message.hasOwnProperty("violence"))
+ switch (message.violence) {
+ default:
+ return "violence: enum value expected";
+ case 0:
+ case 1:
+ case 2:
+ case 3:
+ case 4:
+ case 5:
+ break;
+ }
+ if (message.racy != null && message.hasOwnProperty("racy"))
+ switch (message.racy) {
+ default:
+ return "racy: enum value expected";
+ case 0:
+ case 1:
+ case 2:
+ case 3:
+ case 4:
+ case 5:
+ break;
+ }
+ return null;
+ };
+
+ /**
+ * Creates a SafeSearchAnnotation message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.cloud.vision.v1.SafeSearchAnnotation
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.cloud.vision.v1.SafeSearchAnnotation} SafeSearchAnnotation
+ */
+ SafeSearchAnnotation.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.cloud.vision.v1.SafeSearchAnnotation)
+ return object;
+ var message = new $root.google.cloud.vision.v1.SafeSearchAnnotation();
+ switch (object.adult) {
+ default:
+ if (typeof object.adult === "number") {
+ message.adult = object.adult;
+ break;
+ }
+ break;
+ case "UNKNOWN":
+ case 0:
+ message.adult = 0;
+ break;
+ case "VERY_UNLIKELY":
+ case 1:
+ message.adult = 1;
+ break;
+ case "UNLIKELY":
+ case 2:
+ message.adult = 2;
+ break;
+ case "POSSIBLE":
+ case 3:
+ message.adult = 3;
+ break;
+ case "LIKELY":
+ case 4:
+ message.adult = 4;
+ break;
+ case "VERY_LIKELY":
+ case 5:
+ message.adult = 5;
+ break;
+ }
+ switch (object.spoof) {
+ default:
+ if (typeof object.spoof === "number") {
+ message.spoof = object.spoof;
+ break;
+ }
+ break;
+ case "UNKNOWN":
+ case 0:
+ message.spoof = 0;
+ break;
+ case "VERY_UNLIKELY":
+ case 1:
+ message.spoof = 1;
+ break;
+ case "UNLIKELY":
+ case 2:
+ message.spoof = 2;
+ break;
+ case "POSSIBLE":
+ case 3:
+ message.spoof = 3;
+ break;
+ case "LIKELY":
+ case 4:
+ message.spoof = 4;
+ break;
+ case "VERY_LIKELY":
+ case 5:
+ message.spoof = 5;
+ break;
+ }
+ switch (object.medical) {
+ default:
+ if (typeof object.medical === "number") {
+ message.medical = object.medical;
+ break;
+ }
+ break;
+ case "UNKNOWN":
+ case 0:
+ message.medical = 0;
+ break;
+ case "VERY_UNLIKELY":
+ case 1:
+ message.medical = 1;
+ break;
+ case "UNLIKELY":
+ case 2:
+ message.medical = 2;
+ break;
+ case "POSSIBLE":
+ case 3:
+ message.medical = 3;
+ break;
+ case "LIKELY":
+ case 4:
+ message.medical = 4;
+ break;
+ case "VERY_LIKELY":
+ case 5:
+ message.medical = 5;
+ break;
+ }
+ switch (object.violence) {
+ default:
+ if (typeof object.violence === "number") {
+ message.violence = object.violence;
+ break;
+ }
+ break;
+ case "UNKNOWN":
+ case 0:
+ message.violence = 0;
+ break;
+ case "VERY_UNLIKELY":
+ case 1:
+ message.violence = 1;
+ break;
+ case "UNLIKELY":
+ case 2:
+ message.violence = 2;
+ break;
+ case "POSSIBLE":
+ case 3:
+ message.violence = 3;
+ break;
+ case "LIKELY":
+ case 4:
+ message.violence = 4;
+ break;
+ case "VERY_LIKELY":
+ case 5:
+ message.violence = 5;
+ break;
+ }
+ switch (object.racy) {
+ default:
+ if (typeof object.racy === "number") {
+ message.racy = object.racy;
+ break;
+ }
+ break;
+ case "UNKNOWN":
+ case 0:
+ message.racy = 0;
+ break;
+ case "VERY_UNLIKELY":
+ case 1:
+ message.racy = 1;
+ break;
+ case "UNLIKELY":
+ case 2:
+ message.racy = 2;
+ break;
+ case "POSSIBLE":
+ case 3:
+ message.racy = 3;
+ break;
+ case "LIKELY":
+ case 4:
+ message.racy = 4;
+ break;
+ case "VERY_LIKELY":
+ case 5:
+ message.racy = 5;
+ break;
+ }
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a SafeSearchAnnotation message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.cloud.vision.v1.SafeSearchAnnotation
+ * @static
+ * @param {google.cloud.vision.v1.SafeSearchAnnotation} message SafeSearchAnnotation
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ SafeSearchAnnotation.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.defaults) {
+ object.adult = options.enums === String ? "UNKNOWN" : 0;
+ object.spoof = options.enums === String ? "UNKNOWN" : 0;
+ object.medical = options.enums === String ? "UNKNOWN" : 0;
+ object.violence = options.enums === String ? "UNKNOWN" : 0;
+ object.racy = options.enums === String ? "UNKNOWN" : 0;
+ }
+ if (message.adult != null && message.hasOwnProperty("adult"))
+ object.adult = options.enums === String ? $root.google.cloud.vision.v1.Likelihood[message.adult] === undefined ? message.adult : $root.google.cloud.vision.v1.Likelihood[message.adult] : message.adult;
+ if (message.spoof != null && message.hasOwnProperty("spoof"))
+ object.spoof = options.enums === String ? $root.google.cloud.vision.v1.Likelihood[message.spoof] === undefined ? message.spoof : $root.google.cloud.vision.v1.Likelihood[message.spoof] : message.spoof;
+ if (message.medical != null && message.hasOwnProperty("medical"))
+ object.medical = options.enums === String ? $root.google.cloud.vision.v1.Likelihood[message.medical] === undefined ? message.medical : $root.google.cloud.vision.v1.Likelihood[message.medical] : message.medical;
+ if (message.violence != null && message.hasOwnProperty("violence"))
+ object.violence = options.enums === String ? $root.google.cloud.vision.v1.Likelihood[message.violence] === undefined ? message.violence : $root.google.cloud.vision.v1.Likelihood[message.violence] : message.violence;
+ if (message.racy != null && message.hasOwnProperty("racy"))
+ object.racy = options.enums === String ? $root.google.cloud.vision.v1.Likelihood[message.racy] === undefined ? message.racy : $root.google.cloud.vision.v1.Likelihood[message.racy] : message.racy;
+ return object;
+ };
+
+ /**
+ * Converts this SafeSearchAnnotation to JSON.
+ * @function toJSON
+ * @memberof google.cloud.vision.v1.SafeSearchAnnotation
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ SafeSearchAnnotation.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for SafeSearchAnnotation
+ * @function getTypeUrl
+ * @memberof google.cloud.vision.v1.SafeSearchAnnotation
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ SafeSearchAnnotation.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.cloud.vision.v1.SafeSearchAnnotation";
+ };
+
+ return SafeSearchAnnotation;
+ })();
+
+ v1.LatLongRect = (function() {
+
+ /**
+ * Properties of a LatLongRect.
+ * @memberof google.cloud.vision.v1
+ * @interface ILatLongRect
+ * @property {google.type.ILatLng|null} [minLatLng] LatLongRect minLatLng
+ * @property {google.type.ILatLng|null} [maxLatLng] LatLongRect maxLatLng
+ */
+
+ /**
+ * Constructs a new LatLongRect.
+ * @memberof google.cloud.vision.v1
+ * @classdesc Represents a LatLongRect.
+ * @implements ILatLongRect
+ * @constructor
+ * @param {google.cloud.vision.v1.ILatLongRect=} [properties] Properties to set
+ */
+ function LatLongRect(properties) {
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * LatLongRect minLatLng.
+ * @member {google.type.ILatLng|null|undefined} minLatLng
+ * @memberof google.cloud.vision.v1.LatLongRect
+ * @instance
+ */
+ LatLongRect.prototype.minLatLng = null;
+
+ /**
+ * LatLongRect maxLatLng.
+ * @member {google.type.ILatLng|null|undefined} maxLatLng
+ * @memberof google.cloud.vision.v1.LatLongRect
+ * @instance
+ */
+ LatLongRect.prototype.maxLatLng = null;
+
+ /**
+ * Creates a new LatLongRect instance using the specified properties.
+ * @function create
+ * @memberof google.cloud.vision.v1.LatLongRect
+ * @static
+ * @param {google.cloud.vision.v1.ILatLongRect=} [properties] Properties to set
+ * @returns {google.cloud.vision.v1.LatLongRect} LatLongRect instance
+ */
+ LatLongRect.create = function create(properties) {
+ return new LatLongRect(properties);
+ };
+
+ /**
+ * Encodes the specified LatLongRect message. Does not implicitly {@link google.cloud.vision.v1.LatLongRect.verify|verify} messages.
+ * @function encode
+ * @memberof google.cloud.vision.v1.LatLongRect
+ * @static
+ * @param {google.cloud.vision.v1.ILatLongRect} message LatLongRect message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ LatLongRect.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.minLatLng != null && Object.hasOwnProperty.call(message, "minLatLng"))
+ $root.google.type.LatLng.encode(message.minLatLng, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim();
+ if (message.maxLatLng != null && Object.hasOwnProperty.call(message, "maxLatLng"))
+ $root.google.type.LatLng.encode(message.maxLatLng, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim();
+ return writer;
+ };
+
+ /**
+ * Encodes the specified LatLongRect message, length delimited. Does not implicitly {@link google.cloud.vision.v1.LatLongRect.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.cloud.vision.v1.LatLongRect
+ * @static
+ * @param {google.cloud.vision.v1.ILatLongRect} message LatLongRect message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ LatLongRect.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a LatLongRect message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.cloud.vision.v1.LatLongRect
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.cloud.vision.v1.LatLongRect} LatLongRect
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ LatLongRect.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.vision.v1.LatLongRect();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.minLatLng = $root.google.type.LatLng.decode(reader, reader.uint32());
+ break;
+ }
+ case 2: {
+ message.maxLatLng = $root.google.type.LatLng.decode(reader, reader.uint32());
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a LatLongRect message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.cloud.vision.v1.LatLongRect
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.cloud.vision.v1.LatLongRect} LatLongRect
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ LatLongRect.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a LatLongRect message.
+ * @function verify
+ * @memberof google.cloud.vision.v1.LatLongRect
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ LatLongRect.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.minLatLng != null && message.hasOwnProperty("minLatLng")) {
+ var error = $root.google.type.LatLng.verify(message.minLatLng);
+ if (error)
+ return "minLatLng." + error;
+ }
+ if (message.maxLatLng != null && message.hasOwnProperty("maxLatLng")) {
+ var error = $root.google.type.LatLng.verify(message.maxLatLng);
+ if (error)
+ return "maxLatLng." + error;
+ }
+ return null;
+ };
+
+ /**
+ * Creates a LatLongRect message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.cloud.vision.v1.LatLongRect
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.cloud.vision.v1.LatLongRect} LatLongRect
+ */
+ LatLongRect.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.cloud.vision.v1.LatLongRect)
+ return object;
+ var message = new $root.google.cloud.vision.v1.LatLongRect();
+ if (object.minLatLng != null) {
+ if (typeof object.minLatLng !== "object")
+ throw TypeError(".google.cloud.vision.v1.LatLongRect.minLatLng: object expected");
+ message.minLatLng = $root.google.type.LatLng.fromObject(object.minLatLng);
+ }
+ if (object.maxLatLng != null) {
+ if (typeof object.maxLatLng !== "object")
+ throw TypeError(".google.cloud.vision.v1.LatLongRect.maxLatLng: object expected");
+ message.maxLatLng = $root.google.type.LatLng.fromObject(object.maxLatLng);
+ }
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a LatLongRect message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.cloud.vision.v1.LatLongRect
+ * @static
+ * @param {google.cloud.vision.v1.LatLongRect} message LatLongRect
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ LatLongRect.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.defaults) {
+ object.minLatLng = null;
+ object.maxLatLng = null;
+ }
+ if (message.minLatLng != null && message.hasOwnProperty("minLatLng"))
+ object.minLatLng = $root.google.type.LatLng.toObject(message.minLatLng, options);
+ if (message.maxLatLng != null && message.hasOwnProperty("maxLatLng"))
+ object.maxLatLng = $root.google.type.LatLng.toObject(message.maxLatLng, options);
+ return object;
+ };
+
+ /**
+ * Converts this LatLongRect to JSON.
+ * @function toJSON
+ * @memberof google.cloud.vision.v1.LatLongRect
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ LatLongRect.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for LatLongRect
+ * @function getTypeUrl
+ * @memberof google.cloud.vision.v1.LatLongRect
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ LatLongRect.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.cloud.vision.v1.LatLongRect";
+ };
+
+ return LatLongRect;
+ })();
+
+ v1.ColorInfo = (function() {
+
+ /**
+ * Properties of a ColorInfo.
+ * @memberof google.cloud.vision.v1
+ * @interface IColorInfo
+ * @property {google.type.IColor|null} [color] ColorInfo color
+ * @property {number|null} [score] ColorInfo score
+ * @property {number|null} [pixelFraction] ColorInfo pixelFraction
+ */
+
+ /**
+ * Constructs a new ColorInfo.
+ * @memberof google.cloud.vision.v1
+ * @classdesc Represents a ColorInfo.
+ * @implements IColorInfo
+ * @constructor
+ * @param {google.cloud.vision.v1.IColorInfo=} [properties] Properties to set
+ */
+ function ColorInfo(properties) {
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * ColorInfo color.
+ * @member {google.type.IColor|null|undefined} color
+ * @memberof google.cloud.vision.v1.ColorInfo
+ * @instance
+ */
+ ColorInfo.prototype.color = null;
+
+ /**
+ * ColorInfo score.
+ * @member {number} score
+ * @memberof google.cloud.vision.v1.ColorInfo
+ * @instance
+ */
+ ColorInfo.prototype.score = 0;
+
+ /**
+ * ColorInfo pixelFraction.
+ * @member {number} pixelFraction
+ * @memberof google.cloud.vision.v1.ColorInfo
+ * @instance
+ */
+ ColorInfo.prototype.pixelFraction = 0;
+
+ /**
+ * Creates a new ColorInfo instance using the specified properties.
+ * @function create
+ * @memberof google.cloud.vision.v1.ColorInfo
+ * @static
+ * @param {google.cloud.vision.v1.IColorInfo=} [properties] Properties to set
+ * @returns {google.cloud.vision.v1.ColorInfo} ColorInfo instance
+ */
+ ColorInfo.create = function create(properties) {
+ return new ColorInfo(properties);
+ };
+
+ /**
+ * Encodes the specified ColorInfo message. Does not implicitly {@link google.cloud.vision.v1.ColorInfo.verify|verify} messages.
+ * @function encode
+ * @memberof google.cloud.vision.v1.ColorInfo
+ * @static
+ * @param {google.cloud.vision.v1.IColorInfo} message ColorInfo message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ ColorInfo.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.color != null && Object.hasOwnProperty.call(message, "color"))
+ $root.google.type.Color.encode(message.color, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim();
+ if (message.score != null && Object.hasOwnProperty.call(message, "score"))
+ writer.uint32(/* id 2, wireType 5 =*/21).float(message.score);
+ if (message.pixelFraction != null && Object.hasOwnProperty.call(message, "pixelFraction"))
+ writer.uint32(/* id 3, wireType 5 =*/29).float(message.pixelFraction);
+ return writer;
+ };
+
+ /**
+ * Encodes the specified ColorInfo message, length delimited. Does not implicitly {@link google.cloud.vision.v1.ColorInfo.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.cloud.vision.v1.ColorInfo
+ * @static
+ * @param {google.cloud.vision.v1.IColorInfo} message ColorInfo message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ ColorInfo.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a ColorInfo message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.cloud.vision.v1.ColorInfo
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.cloud.vision.v1.ColorInfo} ColorInfo
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ ColorInfo.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.vision.v1.ColorInfo();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.color = $root.google.type.Color.decode(reader, reader.uint32());
+ break;
+ }
+ case 2: {
+ message.score = reader.float();
+ break;
+ }
+ case 3: {
+ message.pixelFraction = reader.float();
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a ColorInfo message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.cloud.vision.v1.ColorInfo
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.cloud.vision.v1.ColorInfo} ColorInfo
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ ColorInfo.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a ColorInfo message.
+ * @function verify
+ * @memberof google.cloud.vision.v1.ColorInfo
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ ColorInfo.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.color != null && message.hasOwnProperty("color")) {
+ var error = $root.google.type.Color.verify(message.color);
+ if (error)
+ return "color." + error;
+ }
+ if (message.score != null && message.hasOwnProperty("score"))
+ if (typeof message.score !== "number")
+ return "score: number expected";
+ if (message.pixelFraction != null && message.hasOwnProperty("pixelFraction"))
+ if (typeof message.pixelFraction !== "number")
+ return "pixelFraction: number expected";
+ return null;
+ };
+
+ /**
+ * Creates a ColorInfo message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.cloud.vision.v1.ColorInfo
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.cloud.vision.v1.ColorInfo} ColorInfo
+ */
+ ColorInfo.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.cloud.vision.v1.ColorInfo)
+ return object;
+ var message = new $root.google.cloud.vision.v1.ColorInfo();
+ if (object.color != null) {
+ if (typeof object.color !== "object")
+ throw TypeError(".google.cloud.vision.v1.ColorInfo.color: object expected");
+ message.color = $root.google.type.Color.fromObject(object.color);
+ }
+ if (object.score != null)
+ message.score = Number(object.score);
+ if (object.pixelFraction != null)
+ message.pixelFraction = Number(object.pixelFraction);
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a ColorInfo message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.cloud.vision.v1.ColorInfo
+ * @static
+ * @param {google.cloud.vision.v1.ColorInfo} message ColorInfo
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ ColorInfo.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.defaults) {
+ object.color = null;
+ object.score = 0;
+ object.pixelFraction = 0;
+ }
+ if (message.color != null && message.hasOwnProperty("color"))
+ object.color = $root.google.type.Color.toObject(message.color, options);
+ if (message.score != null && message.hasOwnProperty("score"))
+ object.score = options.json && !isFinite(message.score) ? String(message.score) : message.score;
+ if (message.pixelFraction != null && message.hasOwnProperty("pixelFraction"))
+ object.pixelFraction = options.json && !isFinite(message.pixelFraction) ? String(message.pixelFraction) : message.pixelFraction;
+ return object;
+ };
+
+ /**
+ * Converts this ColorInfo to JSON.
+ * @function toJSON
+ * @memberof google.cloud.vision.v1.ColorInfo
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ ColorInfo.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for ColorInfo
+ * @function getTypeUrl
+ * @memberof google.cloud.vision.v1.ColorInfo
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ ColorInfo.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.cloud.vision.v1.ColorInfo";
+ };
+
+ return ColorInfo;
+ })();
+
+ v1.DominantColorsAnnotation = (function() {
+
+ /**
+ * Properties of a DominantColorsAnnotation.
+ * @memberof google.cloud.vision.v1
+ * @interface IDominantColorsAnnotation
+ * @property {Array.|null} [colors] DominantColorsAnnotation colors
+ */
+
+ /**
+ * Constructs a new DominantColorsAnnotation.
+ * @memberof google.cloud.vision.v1
+ * @classdesc Represents a DominantColorsAnnotation.
+ * @implements IDominantColorsAnnotation
+ * @constructor
+ * @param {google.cloud.vision.v1.IDominantColorsAnnotation=} [properties] Properties to set
+ */
+ function DominantColorsAnnotation(properties) {
+ this.colors = [];
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * DominantColorsAnnotation colors.
+ * @member {Array.} colors
+ * @memberof google.cloud.vision.v1.DominantColorsAnnotation
+ * @instance
+ */
+ DominantColorsAnnotation.prototype.colors = $util.emptyArray;
+
+ /**
+ * Creates a new DominantColorsAnnotation instance using the specified properties.
+ * @function create
+ * @memberof google.cloud.vision.v1.DominantColorsAnnotation
+ * @static
+ * @param {google.cloud.vision.v1.IDominantColorsAnnotation=} [properties] Properties to set
+ * @returns {google.cloud.vision.v1.DominantColorsAnnotation} DominantColorsAnnotation instance
+ */
+ DominantColorsAnnotation.create = function create(properties) {
+ return new DominantColorsAnnotation(properties);
+ };
+
+ /**
+ * Encodes the specified DominantColorsAnnotation message. Does not implicitly {@link google.cloud.vision.v1.DominantColorsAnnotation.verify|verify} messages.
+ * @function encode
+ * @memberof google.cloud.vision.v1.DominantColorsAnnotation
+ * @static
+ * @param {google.cloud.vision.v1.IDominantColorsAnnotation} message DominantColorsAnnotation message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ DominantColorsAnnotation.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.colors != null && message.colors.length)
+ for (var i = 0; i < message.colors.length; ++i)
+ $root.google.cloud.vision.v1.ColorInfo.encode(message.colors[i], writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim();
+ return writer;
+ };
+
+ /**
+ * Encodes the specified DominantColorsAnnotation message, length delimited. Does not implicitly {@link google.cloud.vision.v1.DominantColorsAnnotation.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.cloud.vision.v1.DominantColorsAnnotation
+ * @static
+ * @param {google.cloud.vision.v1.IDominantColorsAnnotation} message DominantColorsAnnotation message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ DominantColorsAnnotation.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a DominantColorsAnnotation message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.cloud.vision.v1.DominantColorsAnnotation
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.cloud.vision.v1.DominantColorsAnnotation} DominantColorsAnnotation
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ DominantColorsAnnotation.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.vision.v1.DominantColorsAnnotation();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ if (!(message.colors && message.colors.length))
+ message.colors = [];
+ message.colors.push($root.google.cloud.vision.v1.ColorInfo.decode(reader, reader.uint32()));
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a DominantColorsAnnotation message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.cloud.vision.v1.DominantColorsAnnotation
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.cloud.vision.v1.DominantColorsAnnotation} DominantColorsAnnotation
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ DominantColorsAnnotation.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a DominantColorsAnnotation message.
+ * @function verify
+ * @memberof google.cloud.vision.v1.DominantColorsAnnotation
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ DominantColorsAnnotation.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.colors != null && message.hasOwnProperty("colors")) {
+ if (!Array.isArray(message.colors))
+ return "colors: array expected";
+ for (var i = 0; i < message.colors.length; ++i) {
+ var error = $root.google.cloud.vision.v1.ColorInfo.verify(message.colors[i]);
+ if (error)
+ return "colors." + error;
+ }
+ }
+ return null;
+ };
+
+ /**
+ * Creates a DominantColorsAnnotation message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.cloud.vision.v1.DominantColorsAnnotation
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.cloud.vision.v1.DominantColorsAnnotation} DominantColorsAnnotation
+ */
+ DominantColorsAnnotation.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.cloud.vision.v1.DominantColorsAnnotation)
+ return object;
+ var message = new $root.google.cloud.vision.v1.DominantColorsAnnotation();
+ if (object.colors) {
+ if (!Array.isArray(object.colors))
+ throw TypeError(".google.cloud.vision.v1.DominantColorsAnnotation.colors: array expected");
+ message.colors = [];
+ for (var i = 0; i < object.colors.length; ++i) {
+ if (typeof object.colors[i] !== "object")
+ throw TypeError(".google.cloud.vision.v1.DominantColorsAnnotation.colors: object expected");
+ message.colors[i] = $root.google.cloud.vision.v1.ColorInfo.fromObject(object.colors[i]);
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a DominantColorsAnnotation message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.cloud.vision.v1.DominantColorsAnnotation
+ * @static
+ * @param {google.cloud.vision.v1.DominantColorsAnnotation} message DominantColorsAnnotation
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ DominantColorsAnnotation.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.arrays || options.defaults)
+ object.colors = [];
+ if (message.colors && message.colors.length) {
+ object.colors = [];
+ for (var j = 0; j < message.colors.length; ++j)
+ object.colors[j] = $root.google.cloud.vision.v1.ColorInfo.toObject(message.colors[j], options);
+ }
+ return object;
+ };
+
+ /**
+ * Converts this DominantColorsAnnotation to JSON.
+ * @function toJSON
+ * @memberof google.cloud.vision.v1.DominantColorsAnnotation
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ DominantColorsAnnotation.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for DominantColorsAnnotation
+ * @function getTypeUrl
+ * @memberof google.cloud.vision.v1.DominantColorsAnnotation
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ DominantColorsAnnotation.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.cloud.vision.v1.DominantColorsAnnotation";
+ };
+
+ return DominantColorsAnnotation;
+ })();
+
+ v1.ImageProperties = (function() {
+
+ /**
+ * Properties of an ImageProperties.
+ * @memberof google.cloud.vision.v1
+ * @interface IImageProperties
+ * @property {google.cloud.vision.v1.IDominantColorsAnnotation|null} [dominantColors] ImageProperties dominantColors
+ */
+
+ /**
+ * Constructs a new ImageProperties.
+ * @memberof google.cloud.vision.v1
+ * @classdesc Represents an ImageProperties.
+ * @implements IImageProperties
+ * @constructor
+ * @param {google.cloud.vision.v1.IImageProperties=} [properties] Properties to set
+ */
+ function ImageProperties(properties) {
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * ImageProperties dominantColors.
+ * @member {google.cloud.vision.v1.IDominantColorsAnnotation|null|undefined} dominantColors
+ * @memberof google.cloud.vision.v1.ImageProperties
+ * @instance
+ */
+ ImageProperties.prototype.dominantColors = null;
+
+ /**
+ * Creates a new ImageProperties instance using the specified properties.
+ * @function create
+ * @memberof google.cloud.vision.v1.ImageProperties
+ * @static
+ * @param {google.cloud.vision.v1.IImageProperties=} [properties] Properties to set
+ * @returns {google.cloud.vision.v1.ImageProperties} ImageProperties instance
+ */
+ ImageProperties.create = function create(properties) {
+ return new ImageProperties(properties);
+ };
+
+ /**
+ * Encodes the specified ImageProperties message. Does not implicitly {@link google.cloud.vision.v1.ImageProperties.verify|verify} messages.
+ * @function encode
+ * @memberof google.cloud.vision.v1.ImageProperties
+ * @static
+ * @param {google.cloud.vision.v1.IImageProperties} message ImageProperties message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ ImageProperties.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.dominantColors != null && Object.hasOwnProperty.call(message, "dominantColors"))
+ $root.google.cloud.vision.v1.DominantColorsAnnotation.encode(message.dominantColors, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim();
+ return writer;
+ };
+
+ /**
+ * Encodes the specified ImageProperties message, length delimited. Does not implicitly {@link google.cloud.vision.v1.ImageProperties.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.cloud.vision.v1.ImageProperties
+ * @static
+ * @param {google.cloud.vision.v1.IImageProperties} message ImageProperties message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ ImageProperties.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes an ImageProperties message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.cloud.vision.v1.ImageProperties
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.cloud.vision.v1.ImageProperties} ImageProperties
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ ImageProperties.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.vision.v1.ImageProperties();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.dominantColors = $root.google.cloud.vision.v1.DominantColorsAnnotation.decode(reader, reader.uint32());
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes an ImageProperties message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.cloud.vision.v1.ImageProperties
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.cloud.vision.v1.ImageProperties} ImageProperties
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ ImageProperties.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies an ImageProperties message.
+ * @function verify
+ * @memberof google.cloud.vision.v1.ImageProperties
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ ImageProperties.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.dominantColors != null && message.hasOwnProperty("dominantColors")) {
+ var error = $root.google.cloud.vision.v1.DominantColorsAnnotation.verify(message.dominantColors);
+ if (error)
+ return "dominantColors." + error;
+ }
+ return null;
+ };
+
+ /**
+ * Creates an ImageProperties message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.cloud.vision.v1.ImageProperties
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.cloud.vision.v1.ImageProperties} ImageProperties
+ */
+ ImageProperties.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.cloud.vision.v1.ImageProperties)
+ return object;
+ var message = new $root.google.cloud.vision.v1.ImageProperties();
+ if (object.dominantColors != null) {
+ if (typeof object.dominantColors !== "object")
+ throw TypeError(".google.cloud.vision.v1.ImageProperties.dominantColors: object expected");
+ message.dominantColors = $root.google.cloud.vision.v1.DominantColorsAnnotation.fromObject(object.dominantColors);
+ }
+ return message;
+ };
+
+ /**
+ * Creates a plain object from an ImageProperties message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.cloud.vision.v1.ImageProperties
+ * @static
+ * @param {google.cloud.vision.v1.ImageProperties} message ImageProperties
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ ImageProperties.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.defaults)
+ object.dominantColors = null;
+ if (message.dominantColors != null && message.hasOwnProperty("dominantColors"))
+ object.dominantColors = $root.google.cloud.vision.v1.DominantColorsAnnotation.toObject(message.dominantColors, options);
+ return object;
+ };
+
+ /**
+ * Converts this ImageProperties to JSON.
+ * @function toJSON
+ * @memberof google.cloud.vision.v1.ImageProperties
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ ImageProperties.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for ImageProperties
+ * @function getTypeUrl
+ * @memberof google.cloud.vision.v1.ImageProperties
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ ImageProperties.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.cloud.vision.v1.ImageProperties";
+ };
+
+ return ImageProperties;
+ })();
+
+ v1.CropHint = (function() {
+
+ /**
+ * Properties of a CropHint.
+ * @memberof google.cloud.vision.v1
+ * @interface ICropHint
+ * @property {google.cloud.vision.v1.IBoundingPoly|null} [boundingPoly] CropHint boundingPoly
+ * @property {number|null} [confidence] CropHint confidence
+ * @property {number|null} [importanceFraction] CropHint importanceFraction
+ */
+
+ /**
+ * Constructs a new CropHint.
+ * @memberof google.cloud.vision.v1
+ * @classdesc Represents a CropHint.
+ * @implements ICropHint
+ * @constructor
+ * @param {google.cloud.vision.v1.ICropHint=} [properties] Properties to set
+ */
+ function CropHint(properties) {
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * CropHint boundingPoly.
+ * @member {google.cloud.vision.v1.IBoundingPoly|null|undefined} boundingPoly
+ * @memberof google.cloud.vision.v1.CropHint
+ * @instance
+ */
+ CropHint.prototype.boundingPoly = null;
+
+ /**
+ * CropHint confidence.
+ * @member {number} confidence
+ * @memberof google.cloud.vision.v1.CropHint
+ * @instance
+ */
+ CropHint.prototype.confidence = 0;
+
+ /**
+ * CropHint importanceFraction.
+ * @member {number} importanceFraction
+ * @memberof google.cloud.vision.v1.CropHint
+ * @instance
+ */
+ CropHint.prototype.importanceFraction = 0;
+
+ /**
+ * Creates a new CropHint instance using the specified properties.
+ * @function create
+ * @memberof google.cloud.vision.v1.CropHint
+ * @static
+ * @param {google.cloud.vision.v1.ICropHint=} [properties] Properties to set
+ * @returns {google.cloud.vision.v1.CropHint} CropHint instance
+ */
+ CropHint.create = function create(properties) {
+ return new CropHint(properties);
+ };
+
+ /**
+ * Encodes the specified CropHint message. Does not implicitly {@link google.cloud.vision.v1.CropHint.verify|verify} messages.
+ * @function encode
+ * @memberof google.cloud.vision.v1.CropHint
+ * @static
+ * @param {google.cloud.vision.v1.ICropHint} message CropHint message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ CropHint.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.boundingPoly != null && Object.hasOwnProperty.call(message, "boundingPoly"))
+ $root.google.cloud.vision.v1.BoundingPoly.encode(message.boundingPoly, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim();
+ if (message.confidence != null && Object.hasOwnProperty.call(message, "confidence"))
+ writer.uint32(/* id 2, wireType 5 =*/21).float(message.confidence);
+ if (message.importanceFraction != null && Object.hasOwnProperty.call(message, "importanceFraction"))
+ writer.uint32(/* id 3, wireType 5 =*/29).float(message.importanceFraction);
+ return writer;
+ };
+
+ /**
+ * Encodes the specified CropHint message, length delimited. Does not implicitly {@link google.cloud.vision.v1.CropHint.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.cloud.vision.v1.CropHint
+ * @static
+ * @param {google.cloud.vision.v1.ICropHint} message CropHint message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ CropHint.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a CropHint message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.cloud.vision.v1.CropHint
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.cloud.vision.v1.CropHint} CropHint
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ CropHint.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.vision.v1.CropHint();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.boundingPoly = $root.google.cloud.vision.v1.BoundingPoly.decode(reader, reader.uint32());
+ break;
+ }
+ case 2: {
+ message.confidence = reader.float();
+ break;
+ }
+ case 3: {
+ message.importanceFraction = reader.float();
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a CropHint message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.cloud.vision.v1.CropHint
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.cloud.vision.v1.CropHint} CropHint
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ CropHint.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a CropHint message.
+ * @function verify
+ * @memberof google.cloud.vision.v1.CropHint
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ CropHint.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.boundingPoly != null && message.hasOwnProperty("boundingPoly")) {
+ var error = $root.google.cloud.vision.v1.BoundingPoly.verify(message.boundingPoly);
+ if (error)
+ return "boundingPoly." + error;
+ }
+ if (message.confidence != null && message.hasOwnProperty("confidence"))
+ if (typeof message.confidence !== "number")
+ return "confidence: number expected";
+ if (message.importanceFraction != null && message.hasOwnProperty("importanceFraction"))
+ if (typeof message.importanceFraction !== "number")
+ return "importanceFraction: number expected";
+ return null;
+ };
+
+ /**
+ * Creates a CropHint message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.cloud.vision.v1.CropHint
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.cloud.vision.v1.CropHint} CropHint
+ */
+ CropHint.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.cloud.vision.v1.CropHint)
+ return object;
+ var message = new $root.google.cloud.vision.v1.CropHint();
+ if (object.boundingPoly != null) {
+ if (typeof object.boundingPoly !== "object")
+ throw TypeError(".google.cloud.vision.v1.CropHint.boundingPoly: object expected");
+ message.boundingPoly = $root.google.cloud.vision.v1.BoundingPoly.fromObject(object.boundingPoly);
+ }
+ if (object.confidence != null)
+ message.confidence = Number(object.confidence);
+ if (object.importanceFraction != null)
+ message.importanceFraction = Number(object.importanceFraction);
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a CropHint message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.cloud.vision.v1.CropHint
+ * @static
+ * @param {google.cloud.vision.v1.CropHint} message CropHint
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ CropHint.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.defaults) {
+ object.boundingPoly = null;
+ object.confidence = 0;
+ object.importanceFraction = 0;
+ }
+ if (message.boundingPoly != null && message.hasOwnProperty("boundingPoly"))
+ object.boundingPoly = $root.google.cloud.vision.v1.BoundingPoly.toObject(message.boundingPoly, options);
+ if (message.confidence != null && message.hasOwnProperty("confidence"))
+ object.confidence = options.json && !isFinite(message.confidence) ? String(message.confidence) : message.confidence;
+ if (message.importanceFraction != null && message.hasOwnProperty("importanceFraction"))
+ object.importanceFraction = options.json && !isFinite(message.importanceFraction) ? String(message.importanceFraction) : message.importanceFraction;
+ return object;
+ };
+
+ /**
+ * Converts this CropHint to JSON.
+ * @function toJSON
+ * @memberof google.cloud.vision.v1.CropHint
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ CropHint.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for CropHint
+ * @function getTypeUrl
+ * @memberof google.cloud.vision.v1.CropHint
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ CropHint.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.cloud.vision.v1.CropHint";
+ };
+
+ return CropHint;
+ })();
+
+ v1.CropHintsAnnotation = (function() {
+
+ /**
+ * Properties of a CropHintsAnnotation.
+ * @memberof google.cloud.vision.v1
+ * @interface ICropHintsAnnotation
+ * @property {Array.|null} [cropHints] CropHintsAnnotation cropHints
+ */
+
+ /**
+ * Constructs a new CropHintsAnnotation.
+ * @memberof google.cloud.vision.v1
+ * @classdesc Represents a CropHintsAnnotation.
+ * @implements ICropHintsAnnotation
+ * @constructor
+ * @param {google.cloud.vision.v1.ICropHintsAnnotation=} [properties] Properties to set
+ */
+ function CropHintsAnnotation(properties) {
+ this.cropHints = [];
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * CropHintsAnnotation cropHints.
+ * @member {Array.} cropHints
+ * @memberof google.cloud.vision.v1.CropHintsAnnotation
+ * @instance
+ */
+ CropHintsAnnotation.prototype.cropHints = $util.emptyArray;
+
+ /**
+ * Creates a new CropHintsAnnotation instance using the specified properties.
+ * @function create
+ * @memberof google.cloud.vision.v1.CropHintsAnnotation
+ * @static
+ * @param {google.cloud.vision.v1.ICropHintsAnnotation=} [properties] Properties to set
+ * @returns {google.cloud.vision.v1.CropHintsAnnotation} CropHintsAnnotation instance
+ */
+ CropHintsAnnotation.create = function create(properties) {
+ return new CropHintsAnnotation(properties);
+ };
+
+ /**
+ * Encodes the specified CropHintsAnnotation message. Does not implicitly {@link google.cloud.vision.v1.CropHintsAnnotation.verify|verify} messages.
+ * @function encode
+ * @memberof google.cloud.vision.v1.CropHintsAnnotation
+ * @static
+ * @param {google.cloud.vision.v1.ICropHintsAnnotation} message CropHintsAnnotation message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ CropHintsAnnotation.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.cropHints != null && message.cropHints.length)
+ for (var i = 0; i < message.cropHints.length; ++i)
+ $root.google.cloud.vision.v1.CropHint.encode(message.cropHints[i], writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim();
+ return writer;
+ };
+
+ /**
+ * Encodes the specified CropHintsAnnotation message, length delimited. Does not implicitly {@link google.cloud.vision.v1.CropHintsAnnotation.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.cloud.vision.v1.CropHintsAnnotation
+ * @static
+ * @param {google.cloud.vision.v1.ICropHintsAnnotation} message CropHintsAnnotation message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ CropHintsAnnotation.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a CropHintsAnnotation message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.cloud.vision.v1.CropHintsAnnotation
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.cloud.vision.v1.CropHintsAnnotation} CropHintsAnnotation
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ CropHintsAnnotation.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.vision.v1.CropHintsAnnotation();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ if (!(message.cropHints && message.cropHints.length))
+ message.cropHints = [];
+ message.cropHints.push($root.google.cloud.vision.v1.CropHint.decode(reader, reader.uint32()));
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a CropHintsAnnotation message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.cloud.vision.v1.CropHintsAnnotation
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.cloud.vision.v1.CropHintsAnnotation} CropHintsAnnotation
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ CropHintsAnnotation.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a CropHintsAnnotation message.
+ * @function verify
+ * @memberof google.cloud.vision.v1.CropHintsAnnotation
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ CropHintsAnnotation.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.cropHints != null && message.hasOwnProperty("cropHints")) {
+ if (!Array.isArray(message.cropHints))
+ return "cropHints: array expected";
+ for (var i = 0; i < message.cropHints.length; ++i) {
+ var error = $root.google.cloud.vision.v1.CropHint.verify(message.cropHints[i]);
+ if (error)
+ return "cropHints." + error;
+ }
+ }
+ return null;
+ };
+
+ /**
+ * Creates a CropHintsAnnotation message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.cloud.vision.v1.CropHintsAnnotation
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.cloud.vision.v1.CropHintsAnnotation} CropHintsAnnotation
+ */
+ CropHintsAnnotation.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.cloud.vision.v1.CropHintsAnnotation)
+ return object;
+ var message = new $root.google.cloud.vision.v1.CropHintsAnnotation();
+ if (object.cropHints) {
+ if (!Array.isArray(object.cropHints))
+ throw TypeError(".google.cloud.vision.v1.CropHintsAnnotation.cropHints: array expected");
+ message.cropHints = [];
+ for (var i = 0; i < object.cropHints.length; ++i) {
+ if (typeof object.cropHints[i] !== "object")
+ throw TypeError(".google.cloud.vision.v1.CropHintsAnnotation.cropHints: object expected");
+ message.cropHints[i] = $root.google.cloud.vision.v1.CropHint.fromObject(object.cropHints[i]);
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a CropHintsAnnotation message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.cloud.vision.v1.CropHintsAnnotation
+ * @static
+ * @param {google.cloud.vision.v1.CropHintsAnnotation} message CropHintsAnnotation
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ CropHintsAnnotation.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.arrays || options.defaults)
+ object.cropHints = [];
+ if (message.cropHints && message.cropHints.length) {
+ object.cropHints = [];
+ for (var j = 0; j < message.cropHints.length; ++j)
+ object.cropHints[j] = $root.google.cloud.vision.v1.CropHint.toObject(message.cropHints[j], options);
+ }
+ return object;
+ };
+
+ /**
+ * Converts this CropHintsAnnotation to JSON.
+ * @function toJSON
+ * @memberof google.cloud.vision.v1.CropHintsAnnotation
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ CropHintsAnnotation.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for CropHintsAnnotation
+ * @function getTypeUrl
+ * @memberof google.cloud.vision.v1.CropHintsAnnotation
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ CropHintsAnnotation.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.cloud.vision.v1.CropHintsAnnotation";
+ };
+
+ return CropHintsAnnotation;
+ })();
+
+ v1.CropHintsParams = (function() {
+
+ /**
+ * Properties of a CropHintsParams.
+ * @memberof google.cloud.vision.v1
+ * @interface ICropHintsParams
+ * @property {Array.|null} [aspectRatios] CropHintsParams aspectRatios
+ */
+
+ /**
+ * Constructs a new CropHintsParams.
+ * @memberof google.cloud.vision.v1
+ * @classdesc Represents a CropHintsParams.
+ * @implements ICropHintsParams
+ * @constructor
+ * @param {google.cloud.vision.v1.ICropHintsParams=} [properties] Properties to set
+ */
+ function CropHintsParams(properties) {
+ this.aspectRatios = [];
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * CropHintsParams aspectRatios.
+ * @member {Array.} aspectRatios
+ * @memberof google.cloud.vision.v1.CropHintsParams
+ * @instance
+ */
+ CropHintsParams.prototype.aspectRatios = $util.emptyArray;
+
+ /**
+ * Creates a new CropHintsParams instance using the specified properties.
+ * @function create
+ * @memberof google.cloud.vision.v1.CropHintsParams
+ * @static
+ * @param {google.cloud.vision.v1.ICropHintsParams=} [properties] Properties to set
+ * @returns {google.cloud.vision.v1.CropHintsParams} CropHintsParams instance
+ */
+ CropHintsParams.create = function create(properties) {
+ return new CropHintsParams(properties);
+ };
+
+ /**
+ * Encodes the specified CropHintsParams message. Does not implicitly {@link google.cloud.vision.v1.CropHintsParams.verify|verify} messages.
+ * @function encode
+ * @memberof google.cloud.vision.v1.CropHintsParams
+ * @static
+ * @param {google.cloud.vision.v1.ICropHintsParams} message CropHintsParams message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ CropHintsParams.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.aspectRatios != null && message.aspectRatios.length) {
+ writer.uint32(/* id 1, wireType 2 =*/10).fork();
+ for (var i = 0; i < message.aspectRatios.length; ++i)
+ writer.float(message.aspectRatios[i]);
+ writer.ldelim();
+ }
+ return writer;
+ };
+
+ /**
+ * Encodes the specified CropHintsParams message, length delimited. Does not implicitly {@link google.cloud.vision.v1.CropHintsParams.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.cloud.vision.v1.CropHintsParams
+ * @static
+ * @param {google.cloud.vision.v1.ICropHintsParams} message CropHintsParams message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ CropHintsParams.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a CropHintsParams message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.cloud.vision.v1.CropHintsParams
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.cloud.vision.v1.CropHintsParams} CropHintsParams
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ CropHintsParams.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.vision.v1.CropHintsParams();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ if (!(message.aspectRatios && message.aspectRatios.length))
+ message.aspectRatios = [];
+ if ((tag & 7) === 2) {
+ var end2 = reader.uint32() + reader.pos;
+ while (reader.pos < end2)
+ message.aspectRatios.push(reader.float());
+ } else
+ message.aspectRatios.push(reader.float());
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a CropHintsParams message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.cloud.vision.v1.CropHintsParams
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.cloud.vision.v1.CropHintsParams} CropHintsParams
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ CropHintsParams.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a CropHintsParams message.
+ * @function verify
+ * @memberof google.cloud.vision.v1.CropHintsParams
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ CropHintsParams.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.aspectRatios != null && message.hasOwnProperty("aspectRatios")) {
+ if (!Array.isArray(message.aspectRatios))
+ return "aspectRatios: array expected";
+ for (var i = 0; i < message.aspectRatios.length; ++i)
+ if (typeof message.aspectRatios[i] !== "number")
+ return "aspectRatios: number[] expected";
+ }
+ return null;
+ };
+
+ /**
+ * Creates a CropHintsParams message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.cloud.vision.v1.CropHintsParams
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.cloud.vision.v1.CropHintsParams} CropHintsParams
+ */
+ CropHintsParams.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.cloud.vision.v1.CropHintsParams)
+ return object;
+ var message = new $root.google.cloud.vision.v1.CropHintsParams();
+ if (object.aspectRatios) {
+ if (!Array.isArray(object.aspectRatios))
+ throw TypeError(".google.cloud.vision.v1.CropHintsParams.aspectRatios: array expected");
+ message.aspectRatios = [];
+ for (var i = 0; i < object.aspectRatios.length; ++i)
+ message.aspectRatios[i] = Number(object.aspectRatios[i]);
+ }
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a CropHintsParams message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.cloud.vision.v1.CropHintsParams
+ * @static
+ * @param {google.cloud.vision.v1.CropHintsParams} message CropHintsParams
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ CropHintsParams.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.arrays || options.defaults)
+ object.aspectRatios = [];
+ if (message.aspectRatios && message.aspectRatios.length) {
+ object.aspectRatios = [];
+ for (var j = 0; j < message.aspectRatios.length; ++j)
+ object.aspectRatios[j] = options.json && !isFinite(message.aspectRatios[j]) ? String(message.aspectRatios[j]) : message.aspectRatios[j];
+ }
+ return object;
+ };
+
+ /**
+ * Converts this CropHintsParams to JSON.
+ * @function toJSON
+ * @memberof google.cloud.vision.v1.CropHintsParams
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ CropHintsParams.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for CropHintsParams
+ * @function getTypeUrl
+ * @memberof google.cloud.vision.v1.CropHintsParams
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ CropHintsParams.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.cloud.vision.v1.CropHintsParams";
+ };
+
+ return CropHintsParams;
+ })();
+
+ v1.WebDetectionParams = (function() {
+
+ /**
+ * Properties of a WebDetectionParams.
+ * @memberof google.cloud.vision.v1
+ * @interface IWebDetectionParams
+ * @property {boolean|null} [includeGeoResults] WebDetectionParams includeGeoResults
+ */
+
+ /**
+ * Constructs a new WebDetectionParams.
+ * @memberof google.cloud.vision.v1
+ * @classdesc Represents a WebDetectionParams.
+ * @implements IWebDetectionParams
+ * @constructor
+ * @param {google.cloud.vision.v1.IWebDetectionParams=} [properties] Properties to set
+ */
+ function WebDetectionParams(properties) {
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * WebDetectionParams includeGeoResults.
+ * @member {boolean} includeGeoResults
+ * @memberof google.cloud.vision.v1.WebDetectionParams
+ * @instance
+ */
+ WebDetectionParams.prototype.includeGeoResults = false;
+
+ /**
+ * Creates a new WebDetectionParams instance using the specified properties.
+ * @function create
+ * @memberof google.cloud.vision.v1.WebDetectionParams
+ * @static
+ * @param {google.cloud.vision.v1.IWebDetectionParams=} [properties] Properties to set
+ * @returns {google.cloud.vision.v1.WebDetectionParams} WebDetectionParams instance
+ */
+ WebDetectionParams.create = function create(properties) {
+ return new WebDetectionParams(properties);
+ };
+
+ /**
+ * Encodes the specified WebDetectionParams message. Does not implicitly {@link google.cloud.vision.v1.WebDetectionParams.verify|verify} messages.
+ * @function encode
+ * @memberof google.cloud.vision.v1.WebDetectionParams
+ * @static
+ * @param {google.cloud.vision.v1.IWebDetectionParams} message WebDetectionParams message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ WebDetectionParams.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.includeGeoResults != null && Object.hasOwnProperty.call(message, "includeGeoResults"))
+ writer.uint32(/* id 2, wireType 0 =*/16).bool(message.includeGeoResults);
+ return writer;
+ };
+
+ /**
+ * Encodes the specified WebDetectionParams message, length delimited. Does not implicitly {@link google.cloud.vision.v1.WebDetectionParams.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.cloud.vision.v1.WebDetectionParams
+ * @static
+ * @param {google.cloud.vision.v1.IWebDetectionParams} message WebDetectionParams message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ WebDetectionParams.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a WebDetectionParams message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.cloud.vision.v1.WebDetectionParams
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.cloud.vision.v1.WebDetectionParams} WebDetectionParams
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ WebDetectionParams.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.vision.v1.WebDetectionParams();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 2: {
+ message.includeGeoResults = reader.bool();
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a WebDetectionParams message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.cloud.vision.v1.WebDetectionParams
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.cloud.vision.v1.WebDetectionParams} WebDetectionParams
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ WebDetectionParams.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a WebDetectionParams message.
+ * @function verify
+ * @memberof google.cloud.vision.v1.WebDetectionParams
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ WebDetectionParams.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.includeGeoResults != null && message.hasOwnProperty("includeGeoResults"))
+ if (typeof message.includeGeoResults !== "boolean")
+ return "includeGeoResults: boolean expected";
+ return null;
+ };
+
+ /**
+ * Creates a WebDetectionParams message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.cloud.vision.v1.WebDetectionParams
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.cloud.vision.v1.WebDetectionParams} WebDetectionParams
+ */
+ WebDetectionParams.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.cloud.vision.v1.WebDetectionParams)
+ return object;
+ var message = new $root.google.cloud.vision.v1.WebDetectionParams();
+ if (object.includeGeoResults != null)
+ message.includeGeoResults = Boolean(object.includeGeoResults);
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a WebDetectionParams message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.cloud.vision.v1.WebDetectionParams
+ * @static
+ * @param {google.cloud.vision.v1.WebDetectionParams} message WebDetectionParams
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ WebDetectionParams.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.defaults)
+ object.includeGeoResults = false;
+ if (message.includeGeoResults != null && message.hasOwnProperty("includeGeoResults"))
+ object.includeGeoResults = message.includeGeoResults;
+ return object;
+ };
+
+ /**
+ * Converts this WebDetectionParams to JSON.
+ * @function toJSON
+ * @memberof google.cloud.vision.v1.WebDetectionParams
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ WebDetectionParams.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for WebDetectionParams
+ * @function getTypeUrl
+ * @memberof google.cloud.vision.v1.WebDetectionParams
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ WebDetectionParams.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.cloud.vision.v1.WebDetectionParams";
+ };
+
+ return WebDetectionParams;
+ })();
+
+ v1.TextDetectionParams = (function() {
+
+ /**
+ * Properties of a TextDetectionParams.
+ * @memberof google.cloud.vision.v1
+ * @interface ITextDetectionParams
+ * @property {boolean|null} [enableTextDetectionConfidenceScore] TextDetectionParams enableTextDetectionConfidenceScore
+ * @property {Array.|null} [advancedOcrOptions] TextDetectionParams advancedOcrOptions
+ */
+
+ /**
+ * Constructs a new TextDetectionParams.
+ * @memberof google.cloud.vision.v1
+ * @classdesc Represents a TextDetectionParams.
+ * @implements ITextDetectionParams
+ * @constructor
+ * @param {google.cloud.vision.v1.ITextDetectionParams=} [properties] Properties to set
+ */
+ function TextDetectionParams(properties) {
+ this.advancedOcrOptions = [];
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * TextDetectionParams enableTextDetectionConfidenceScore.
+ * @member {boolean} enableTextDetectionConfidenceScore
+ * @memberof google.cloud.vision.v1.TextDetectionParams
+ * @instance
+ */
+ TextDetectionParams.prototype.enableTextDetectionConfidenceScore = false;
+
+ /**
+ * TextDetectionParams advancedOcrOptions.
+ * @member {Array.} advancedOcrOptions
+ * @memberof google.cloud.vision.v1.TextDetectionParams
+ * @instance
+ */
+ TextDetectionParams.prototype.advancedOcrOptions = $util.emptyArray;
+
+ /**
+ * Creates a new TextDetectionParams instance using the specified properties.
+ * @function create
+ * @memberof google.cloud.vision.v1.TextDetectionParams
+ * @static
+ * @param {google.cloud.vision.v1.ITextDetectionParams=} [properties] Properties to set
+ * @returns {google.cloud.vision.v1.TextDetectionParams} TextDetectionParams instance
+ */
+ TextDetectionParams.create = function create(properties) {
+ return new TextDetectionParams(properties);
+ };
+
+ /**
+ * Encodes the specified TextDetectionParams message. Does not implicitly {@link google.cloud.vision.v1.TextDetectionParams.verify|verify} messages.
+ * @function encode
+ * @memberof google.cloud.vision.v1.TextDetectionParams
+ * @static
+ * @param {google.cloud.vision.v1.ITextDetectionParams} message TextDetectionParams message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ TextDetectionParams.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.enableTextDetectionConfidenceScore != null && Object.hasOwnProperty.call(message, "enableTextDetectionConfidenceScore"))
+ writer.uint32(/* id 9, wireType 0 =*/72).bool(message.enableTextDetectionConfidenceScore);
+ if (message.advancedOcrOptions != null && message.advancedOcrOptions.length)
+ for (var i = 0; i < message.advancedOcrOptions.length; ++i)
+ writer.uint32(/* id 11, wireType 2 =*/90).string(message.advancedOcrOptions[i]);
+ return writer;
+ };
+
+ /**
+ * Encodes the specified TextDetectionParams message, length delimited. Does not implicitly {@link google.cloud.vision.v1.TextDetectionParams.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.cloud.vision.v1.TextDetectionParams
+ * @static
+ * @param {google.cloud.vision.v1.ITextDetectionParams} message TextDetectionParams message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ TextDetectionParams.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a TextDetectionParams message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.cloud.vision.v1.TextDetectionParams
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.cloud.vision.v1.TextDetectionParams} TextDetectionParams
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ TextDetectionParams.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.vision.v1.TextDetectionParams();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 9: {
+ message.enableTextDetectionConfidenceScore = reader.bool();
+ break;
+ }
+ case 11: {
+ if (!(message.advancedOcrOptions && message.advancedOcrOptions.length))
+ message.advancedOcrOptions = [];
+ message.advancedOcrOptions.push(reader.string());
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a TextDetectionParams message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.cloud.vision.v1.TextDetectionParams
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.cloud.vision.v1.TextDetectionParams} TextDetectionParams
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ TextDetectionParams.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a TextDetectionParams message.
+ * @function verify
+ * @memberof google.cloud.vision.v1.TextDetectionParams
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ TextDetectionParams.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.enableTextDetectionConfidenceScore != null && message.hasOwnProperty("enableTextDetectionConfidenceScore"))
+ if (typeof message.enableTextDetectionConfidenceScore !== "boolean")
+ return "enableTextDetectionConfidenceScore: boolean expected";
+ if (message.advancedOcrOptions != null && message.hasOwnProperty("advancedOcrOptions")) {
+ if (!Array.isArray(message.advancedOcrOptions))
+ return "advancedOcrOptions: array expected";
+ for (var i = 0; i < message.advancedOcrOptions.length; ++i)
+ if (!$util.isString(message.advancedOcrOptions[i]))
+ return "advancedOcrOptions: string[] expected";
+ }
+ return null;
+ };
+
+ /**
+ * Creates a TextDetectionParams message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.cloud.vision.v1.TextDetectionParams
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.cloud.vision.v1.TextDetectionParams} TextDetectionParams
+ */
+ TextDetectionParams.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.cloud.vision.v1.TextDetectionParams)
+ return object;
+ var message = new $root.google.cloud.vision.v1.TextDetectionParams();
+ if (object.enableTextDetectionConfidenceScore != null)
+ message.enableTextDetectionConfidenceScore = Boolean(object.enableTextDetectionConfidenceScore);
+ if (object.advancedOcrOptions) {
+ if (!Array.isArray(object.advancedOcrOptions))
+ throw TypeError(".google.cloud.vision.v1.TextDetectionParams.advancedOcrOptions: array expected");
+ message.advancedOcrOptions = [];
+ for (var i = 0; i < object.advancedOcrOptions.length; ++i)
+ message.advancedOcrOptions[i] = String(object.advancedOcrOptions[i]);
+ }
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a TextDetectionParams message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.cloud.vision.v1.TextDetectionParams
+ * @static
+ * @param {google.cloud.vision.v1.TextDetectionParams} message TextDetectionParams
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ TextDetectionParams.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.arrays || options.defaults)
+ object.advancedOcrOptions = [];
+ if (options.defaults)
+ object.enableTextDetectionConfidenceScore = false;
+ if (message.enableTextDetectionConfidenceScore != null && message.hasOwnProperty("enableTextDetectionConfidenceScore"))
+ object.enableTextDetectionConfidenceScore = message.enableTextDetectionConfidenceScore;
+ if (message.advancedOcrOptions && message.advancedOcrOptions.length) {
+ object.advancedOcrOptions = [];
+ for (var j = 0; j < message.advancedOcrOptions.length; ++j)
+ object.advancedOcrOptions[j] = message.advancedOcrOptions[j];
+ }
+ return object;
+ };
+
+ /**
+ * Converts this TextDetectionParams to JSON.
+ * @function toJSON
+ * @memberof google.cloud.vision.v1.TextDetectionParams
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ TextDetectionParams.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for TextDetectionParams
+ * @function getTypeUrl
+ * @memberof google.cloud.vision.v1.TextDetectionParams
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ TextDetectionParams.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.cloud.vision.v1.TextDetectionParams";
+ };
+
+ return TextDetectionParams;
+ })();
+
+ v1.ImageContext = (function() {
+
+ /**
+ * Properties of an ImageContext.
+ * @memberof google.cloud.vision.v1
+ * @interface IImageContext
+ * @property {google.cloud.vision.v1.ILatLongRect|null} [latLongRect] ImageContext latLongRect
+ * @property {Array.|null} [languageHints] ImageContext languageHints
+ * @property {google.cloud.vision.v1.ICropHintsParams|null} [cropHintsParams] ImageContext cropHintsParams
+ * @property {google.cloud.vision.v1.IProductSearchParams|null} [productSearchParams] ImageContext productSearchParams
+ * @property {google.cloud.vision.v1.IWebDetectionParams|null} [webDetectionParams] ImageContext webDetectionParams
+ * @property {google.cloud.vision.v1.ITextDetectionParams|null} [textDetectionParams] ImageContext textDetectionParams
+ */
+
+ /**
+ * Constructs a new ImageContext.
+ * @memberof google.cloud.vision.v1
+ * @classdesc Represents an ImageContext.
+ * @implements IImageContext
+ * @constructor
+ * @param {google.cloud.vision.v1.IImageContext=} [properties] Properties to set
+ */
+ function ImageContext(properties) {
+ this.languageHints = [];
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * ImageContext latLongRect.
+ * @member {google.cloud.vision.v1.ILatLongRect|null|undefined} latLongRect
+ * @memberof google.cloud.vision.v1.ImageContext
+ * @instance
+ */
+ ImageContext.prototype.latLongRect = null;
+
+ /**
+ * ImageContext languageHints.
+ * @member {Array.} languageHints
+ * @memberof google.cloud.vision.v1.ImageContext
+ * @instance
+ */
+ ImageContext.prototype.languageHints = $util.emptyArray;
+
+ /**
+ * ImageContext cropHintsParams.
+ * @member {google.cloud.vision.v1.ICropHintsParams|null|undefined} cropHintsParams
+ * @memberof google.cloud.vision.v1.ImageContext
+ * @instance
+ */
+ ImageContext.prototype.cropHintsParams = null;
+
+ /**
+ * ImageContext productSearchParams.
+ * @member {google.cloud.vision.v1.IProductSearchParams|null|undefined} productSearchParams
+ * @memberof google.cloud.vision.v1.ImageContext
+ * @instance
+ */
+ ImageContext.prototype.productSearchParams = null;
+
+ /**
+ * ImageContext webDetectionParams.
+ * @member {google.cloud.vision.v1.IWebDetectionParams|null|undefined} webDetectionParams
+ * @memberof google.cloud.vision.v1.ImageContext
+ * @instance
+ */
+ ImageContext.prototype.webDetectionParams = null;
+
+ /**
+ * ImageContext textDetectionParams.
+ * @member {google.cloud.vision.v1.ITextDetectionParams|null|undefined} textDetectionParams
+ * @memberof google.cloud.vision.v1.ImageContext
+ * @instance
+ */
+ ImageContext.prototype.textDetectionParams = null;
+
+ /**
+ * Creates a new ImageContext instance using the specified properties.
+ * @function create
+ * @memberof google.cloud.vision.v1.ImageContext
+ * @static
+ * @param {google.cloud.vision.v1.IImageContext=} [properties] Properties to set
+ * @returns {google.cloud.vision.v1.ImageContext} ImageContext instance
+ */
+ ImageContext.create = function create(properties) {
+ return new ImageContext(properties);
+ };
+
+ /**
+ * Encodes the specified ImageContext message. Does not implicitly {@link google.cloud.vision.v1.ImageContext.verify|verify} messages.
+ * @function encode
+ * @memberof google.cloud.vision.v1.ImageContext
+ * @static
+ * @param {google.cloud.vision.v1.IImageContext} message ImageContext message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ ImageContext.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.latLongRect != null && Object.hasOwnProperty.call(message, "latLongRect"))
+ $root.google.cloud.vision.v1.LatLongRect.encode(message.latLongRect, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim();
+ if (message.languageHints != null && message.languageHints.length)
+ for (var i = 0; i < message.languageHints.length; ++i)
+ writer.uint32(/* id 2, wireType 2 =*/18).string(message.languageHints[i]);
+ if (message.cropHintsParams != null && Object.hasOwnProperty.call(message, "cropHintsParams"))
+ $root.google.cloud.vision.v1.CropHintsParams.encode(message.cropHintsParams, writer.uint32(/* id 4, wireType 2 =*/34).fork()).ldelim();
+ if (message.productSearchParams != null && Object.hasOwnProperty.call(message, "productSearchParams"))
+ $root.google.cloud.vision.v1.ProductSearchParams.encode(message.productSearchParams, writer.uint32(/* id 5, wireType 2 =*/42).fork()).ldelim();
+ if (message.webDetectionParams != null && Object.hasOwnProperty.call(message, "webDetectionParams"))
+ $root.google.cloud.vision.v1.WebDetectionParams.encode(message.webDetectionParams, writer.uint32(/* id 6, wireType 2 =*/50).fork()).ldelim();
+ if (message.textDetectionParams != null && Object.hasOwnProperty.call(message, "textDetectionParams"))
+ $root.google.cloud.vision.v1.TextDetectionParams.encode(message.textDetectionParams, writer.uint32(/* id 12, wireType 2 =*/98).fork()).ldelim();
+ return writer;
+ };
+
+ /**
+ * Encodes the specified ImageContext message, length delimited. Does not implicitly {@link google.cloud.vision.v1.ImageContext.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.cloud.vision.v1.ImageContext
+ * @static
+ * @param {google.cloud.vision.v1.IImageContext} message ImageContext message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ ImageContext.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes an ImageContext message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.cloud.vision.v1.ImageContext
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.cloud.vision.v1.ImageContext} ImageContext
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ ImageContext.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.vision.v1.ImageContext();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.latLongRect = $root.google.cloud.vision.v1.LatLongRect.decode(reader, reader.uint32());
+ break;
+ }
+ case 2: {
+ if (!(message.languageHints && message.languageHints.length))
+ message.languageHints = [];
+ message.languageHints.push(reader.string());
+ break;
+ }
+ case 4: {
+ message.cropHintsParams = $root.google.cloud.vision.v1.CropHintsParams.decode(reader, reader.uint32());
+ break;
+ }
+ case 5: {
+ message.productSearchParams = $root.google.cloud.vision.v1.ProductSearchParams.decode(reader, reader.uint32());
+ break;
+ }
+ case 6: {
+ message.webDetectionParams = $root.google.cloud.vision.v1.WebDetectionParams.decode(reader, reader.uint32());
+ break;
+ }
+ case 12: {
+ message.textDetectionParams = $root.google.cloud.vision.v1.TextDetectionParams.decode(reader, reader.uint32());
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes an ImageContext message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.cloud.vision.v1.ImageContext
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.cloud.vision.v1.ImageContext} ImageContext
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ ImageContext.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies an ImageContext message.
+ * @function verify
+ * @memberof google.cloud.vision.v1.ImageContext
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ ImageContext.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.latLongRect != null && message.hasOwnProperty("latLongRect")) {
+ var error = $root.google.cloud.vision.v1.LatLongRect.verify(message.latLongRect);
+ if (error)
+ return "latLongRect." + error;
+ }
+ if (message.languageHints != null && message.hasOwnProperty("languageHints")) {
+ if (!Array.isArray(message.languageHints))
+ return "languageHints: array expected";
+ for (var i = 0; i < message.languageHints.length; ++i)
+ if (!$util.isString(message.languageHints[i]))
+ return "languageHints: string[] expected";
+ }
+ if (message.cropHintsParams != null && message.hasOwnProperty("cropHintsParams")) {
+ var error = $root.google.cloud.vision.v1.CropHintsParams.verify(message.cropHintsParams);
+ if (error)
+ return "cropHintsParams." + error;
+ }
+ if (message.productSearchParams != null && message.hasOwnProperty("productSearchParams")) {
+ var error = $root.google.cloud.vision.v1.ProductSearchParams.verify(message.productSearchParams);
+ if (error)
+ return "productSearchParams." + error;
+ }
+ if (message.webDetectionParams != null && message.hasOwnProperty("webDetectionParams")) {
+ var error = $root.google.cloud.vision.v1.WebDetectionParams.verify(message.webDetectionParams);
+ if (error)
+ return "webDetectionParams." + error;
+ }
+ if (message.textDetectionParams != null && message.hasOwnProperty("textDetectionParams")) {
+ var error = $root.google.cloud.vision.v1.TextDetectionParams.verify(message.textDetectionParams);
+ if (error)
+ return "textDetectionParams." + error;
+ }
+ return null;
+ };
+
+ /**
+ * Creates an ImageContext message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.cloud.vision.v1.ImageContext
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.cloud.vision.v1.ImageContext} ImageContext
+ */
+ ImageContext.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.cloud.vision.v1.ImageContext)
+ return object;
+ var message = new $root.google.cloud.vision.v1.ImageContext();
+ if (object.latLongRect != null) {
+ if (typeof object.latLongRect !== "object")
+ throw TypeError(".google.cloud.vision.v1.ImageContext.latLongRect: object expected");
+ message.latLongRect = $root.google.cloud.vision.v1.LatLongRect.fromObject(object.latLongRect);
+ }
+ if (object.languageHints) {
+ if (!Array.isArray(object.languageHints))
+ throw TypeError(".google.cloud.vision.v1.ImageContext.languageHints: array expected");
+ message.languageHints = [];
+ for (var i = 0; i < object.languageHints.length; ++i)
+ message.languageHints[i] = String(object.languageHints[i]);
+ }
+ if (object.cropHintsParams != null) {
+ if (typeof object.cropHintsParams !== "object")
+ throw TypeError(".google.cloud.vision.v1.ImageContext.cropHintsParams: object expected");
+ message.cropHintsParams = $root.google.cloud.vision.v1.CropHintsParams.fromObject(object.cropHintsParams);
+ }
+ if (object.productSearchParams != null) {
+ if (typeof object.productSearchParams !== "object")
+ throw TypeError(".google.cloud.vision.v1.ImageContext.productSearchParams: object expected");
+ message.productSearchParams = $root.google.cloud.vision.v1.ProductSearchParams.fromObject(object.productSearchParams);
+ }
+ if (object.webDetectionParams != null) {
+ if (typeof object.webDetectionParams !== "object")
+ throw TypeError(".google.cloud.vision.v1.ImageContext.webDetectionParams: object expected");
+ message.webDetectionParams = $root.google.cloud.vision.v1.WebDetectionParams.fromObject(object.webDetectionParams);
+ }
+ if (object.textDetectionParams != null) {
+ if (typeof object.textDetectionParams !== "object")
+ throw TypeError(".google.cloud.vision.v1.ImageContext.textDetectionParams: object expected");
+ message.textDetectionParams = $root.google.cloud.vision.v1.TextDetectionParams.fromObject(object.textDetectionParams);
+ }
+ return message;
+ };
+
+ /**
+ * Creates a plain object from an ImageContext message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.cloud.vision.v1.ImageContext
+ * @static
+ * @param {google.cloud.vision.v1.ImageContext} message ImageContext
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ ImageContext.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.arrays || options.defaults)
+ object.languageHints = [];
+ if (options.defaults) {
+ object.latLongRect = null;
+ object.cropHintsParams = null;
+ object.productSearchParams = null;
+ object.webDetectionParams = null;
+ object.textDetectionParams = null;
+ }
+ if (message.latLongRect != null && message.hasOwnProperty("latLongRect"))
+ object.latLongRect = $root.google.cloud.vision.v1.LatLongRect.toObject(message.latLongRect, options);
+ if (message.languageHints && message.languageHints.length) {
+ object.languageHints = [];
+ for (var j = 0; j < message.languageHints.length; ++j)
+ object.languageHints[j] = message.languageHints[j];
+ }
+ if (message.cropHintsParams != null && message.hasOwnProperty("cropHintsParams"))
+ object.cropHintsParams = $root.google.cloud.vision.v1.CropHintsParams.toObject(message.cropHintsParams, options);
+ if (message.productSearchParams != null && message.hasOwnProperty("productSearchParams"))
+ object.productSearchParams = $root.google.cloud.vision.v1.ProductSearchParams.toObject(message.productSearchParams, options);
+ if (message.webDetectionParams != null && message.hasOwnProperty("webDetectionParams"))
+ object.webDetectionParams = $root.google.cloud.vision.v1.WebDetectionParams.toObject(message.webDetectionParams, options);
+ if (message.textDetectionParams != null && message.hasOwnProperty("textDetectionParams"))
+ object.textDetectionParams = $root.google.cloud.vision.v1.TextDetectionParams.toObject(message.textDetectionParams, options);
+ return object;
+ };
+
+ /**
+ * Converts this ImageContext to JSON.
+ * @function toJSON
+ * @memberof google.cloud.vision.v1.ImageContext
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ ImageContext.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for ImageContext
+ * @function getTypeUrl
+ * @memberof google.cloud.vision.v1.ImageContext
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ ImageContext.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.cloud.vision.v1.ImageContext";
+ };
+
+ return ImageContext;
+ })();
+
+ v1.AnnotateImageRequest = (function() {
+
+ /**
+ * Properties of an AnnotateImageRequest.
+ * @memberof google.cloud.vision.v1
+ * @interface IAnnotateImageRequest
+ * @property {google.cloud.vision.v1.IImage|null} [image] AnnotateImageRequest image
+ * @property {Array.|null} [features] AnnotateImageRequest features
+ * @property {google.cloud.vision.v1.IImageContext|null} [imageContext] AnnotateImageRequest imageContext
+ */
+
+ /**
+ * Constructs a new AnnotateImageRequest.
+ * @memberof google.cloud.vision.v1
+ * @classdesc Represents an AnnotateImageRequest.
+ * @implements IAnnotateImageRequest
+ * @constructor
+ * @param {google.cloud.vision.v1.IAnnotateImageRequest=} [properties] Properties to set
+ */
+ function AnnotateImageRequest(properties) {
+ this.features = [];
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * AnnotateImageRequest image.
+ * @member {google.cloud.vision.v1.IImage|null|undefined} image
+ * @memberof google.cloud.vision.v1.AnnotateImageRequest
+ * @instance
+ */
+ AnnotateImageRequest.prototype.image = null;
+
+ /**
+ * AnnotateImageRequest features.
+ * @member {Array.} features
+ * @memberof google.cloud.vision.v1.AnnotateImageRequest
+ * @instance
+ */
+ AnnotateImageRequest.prototype.features = $util.emptyArray;
+
+ /**
+ * AnnotateImageRequest imageContext.
+ * @member {google.cloud.vision.v1.IImageContext|null|undefined} imageContext
+ * @memberof google.cloud.vision.v1.AnnotateImageRequest
+ * @instance
+ */
+ AnnotateImageRequest.prototype.imageContext = null;
+
+ /**
+ * Creates a new AnnotateImageRequest instance using the specified properties.
+ * @function create
+ * @memberof google.cloud.vision.v1.AnnotateImageRequest
+ * @static
+ * @param {google.cloud.vision.v1.IAnnotateImageRequest=} [properties] Properties to set
+ * @returns {google.cloud.vision.v1.AnnotateImageRequest} AnnotateImageRequest instance
+ */
+ AnnotateImageRequest.create = function create(properties) {
+ return new AnnotateImageRequest(properties);
+ };
+
+ /**
+ * Encodes the specified AnnotateImageRequest message. Does not implicitly {@link google.cloud.vision.v1.AnnotateImageRequest.verify|verify} messages.
+ * @function encode
+ * @memberof google.cloud.vision.v1.AnnotateImageRequest
+ * @static
+ * @param {google.cloud.vision.v1.IAnnotateImageRequest} message AnnotateImageRequest message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ AnnotateImageRequest.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.image != null && Object.hasOwnProperty.call(message, "image"))
+ $root.google.cloud.vision.v1.Image.encode(message.image, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim();
+ if (message.features != null && message.features.length)
+ for (var i = 0; i < message.features.length; ++i)
+ $root.google.cloud.vision.v1.Feature.encode(message.features[i], writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim();
+ if (message.imageContext != null && Object.hasOwnProperty.call(message, "imageContext"))
+ $root.google.cloud.vision.v1.ImageContext.encode(message.imageContext, writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim();
+ return writer;
+ };
+
+ /**
+ * Encodes the specified AnnotateImageRequest message, length delimited. Does not implicitly {@link google.cloud.vision.v1.AnnotateImageRequest.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.cloud.vision.v1.AnnotateImageRequest
+ * @static
+ * @param {google.cloud.vision.v1.IAnnotateImageRequest} message AnnotateImageRequest message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ AnnotateImageRequest.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes an AnnotateImageRequest message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.cloud.vision.v1.AnnotateImageRequest
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.cloud.vision.v1.AnnotateImageRequest} AnnotateImageRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ AnnotateImageRequest.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.vision.v1.AnnotateImageRequest();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.image = $root.google.cloud.vision.v1.Image.decode(reader, reader.uint32());
+ break;
+ }
+ case 2: {
+ if (!(message.features && message.features.length))
+ message.features = [];
+ message.features.push($root.google.cloud.vision.v1.Feature.decode(reader, reader.uint32()));
+ break;
+ }
+ case 3: {
+ message.imageContext = $root.google.cloud.vision.v1.ImageContext.decode(reader, reader.uint32());
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes an AnnotateImageRequest message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.cloud.vision.v1.AnnotateImageRequest
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.cloud.vision.v1.AnnotateImageRequest} AnnotateImageRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ AnnotateImageRequest.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies an AnnotateImageRequest message.
+ * @function verify
+ * @memberof google.cloud.vision.v1.AnnotateImageRequest
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ AnnotateImageRequest.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.image != null && message.hasOwnProperty("image")) {
+ var error = $root.google.cloud.vision.v1.Image.verify(message.image);
+ if (error)
+ return "image." + error;
+ }
+ if (message.features != null && message.hasOwnProperty("features")) {
+ if (!Array.isArray(message.features))
+ return "features: array expected";
+ for (var i = 0; i < message.features.length; ++i) {
+ var error = $root.google.cloud.vision.v1.Feature.verify(message.features[i]);
+ if (error)
+ return "features." + error;
+ }
+ }
+ if (message.imageContext != null && message.hasOwnProperty("imageContext")) {
+ var error = $root.google.cloud.vision.v1.ImageContext.verify(message.imageContext);
+ if (error)
+ return "imageContext." + error;
+ }
+ return null;
+ };
+
+ /**
+ * Creates an AnnotateImageRequest message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.cloud.vision.v1.AnnotateImageRequest
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.cloud.vision.v1.AnnotateImageRequest} AnnotateImageRequest
+ */
+ AnnotateImageRequest.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.cloud.vision.v1.AnnotateImageRequest)
+ return object;
+ var message = new $root.google.cloud.vision.v1.AnnotateImageRequest();
+ if (object.image != null) {
+ if (typeof object.image !== "object")
+ throw TypeError(".google.cloud.vision.v1.AnnotateImageRequest.image: object expected");
+ message.image = $root.google.cloud.vision.v1.Image.fromObject(object.image);
+ }
+ if (object.features) {
+ if (!Array.isArray(object.features))
+ throw TypeError(".google.cloud.vision.v1.AnnotateImageRequest.features: array expected");
+ message.features = [];
+ for (var i = 0; i < object.features.length; ++i) {
+ if (typeof object.features[i] !== "object")
+ throw TypeError(".google.cloud.vision.v1.AnnotateImageRequest.features: object expected");
+ message.features[i] = $root.google.cloud.vision.v1.Feature.fromObject(object.features[i]);
+ }
+ }
+ if (object.imageContext != null) {
+ if (typeof object.imageContext !== "object")
+ throw TypeError(".google.cloud.vision.v1.AnnotateImageRequest.imageContext: object expected");
+ message.imageContext = $root.google.cloud.vision.v1.ImageContext.fromObject(object.imageContext);
+ }
+ return message;
+ };
+
+ /**
+ * Creates a plain object from an AnnotateImageRequest message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.cloud.vision.v1.AnnotateImageRequest
+ * @static
+ * @param {google.cloud.vision.v1.AnnotateImageRequest} message AnnotateImageRequest
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ AnnotateImageRequest.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.arrays || options.defaults)
+ object.features = [];
+ if (options.defaults) {
+ object.image = null;
+ object.imageContext = null;
+ }
+ if (message.image != null && message.hasOwnProperty("image"))
+ object.image = $root.google.cloud.vision.v1.Image.toObject(message.image, options);
+ if (message.features && message.features.length) {
+ object.features = [];
+ for (var j = 0; j < message.features.length; ++j)
+ object.features[j] = $root.google.cloud.vision.v1.Feature.toObject(message.features[j], options);
+ }
+ if (message.imageContext != null && message.hasOwnProperty("imageContext"))
+ object.imageContext = $root.google.cloud.vision.v1.ImageContext.toObject(message.imageContext, options);
+ return object;
+ };
+
+ /**
+ * Converts this AnnotateImageRequest to JSON.
+ * @function toJSON
+ * @memberof google.cloud.vision.v1.AnnotateImageRequest
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ AnnotateImageRequest.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for AnnotateImageRequest
+ * @function getTypeUrl
+ * @memberof google.cloud.vision.v1.AnnotateImageRequest
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ AnnotateImageRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.cloud.vision.v1.AnnotateImageRequest";
+ };
+
+ return AnnotateImageRequest;
+ })();
+
+ v1.ImageAnnotationContext = (function() {
+
+ /**
+ * Properties of an ImageAnnotationContext.
+ * @memberof google.cloud.vision.v1
+ * @interface IImageAnnotationContext
+ * @property {string|null} [uri] ImageAnnotationContext uri
+ * @property {number|null} [pageNumber] ImageAnnotationContext pageNumber
+ */
+
+ /**
+ * Constructs a new ImageAnnotationContext.
+ * @memberof google.cloud.vision.v1
+ * @classdesc Represents an ImageAnnotationContext.
+ * @implements IImageAnnotationContext
+ * @constructor
+ * @param {google.cloud.vision.v1.IImageAnnotationContext=} [properties] Properties to set
+ */
+ function ImageAnnotationContext(properties) {
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * ImageAnnotationContext uri.
+ * @member {string} uri
+ * @memberof google.cloud.vision.v1.ImageAnnotationContext
+ * @instance
+ */
+ ImageAnnotationContext.prototype.uri = "";
+
+ /**
+ * ImageAnnotationContext pageNumber.
+ * @member {number} pageNumber
+ * @memberof google.cloud.vision.v1.ImageAnnotationContext
+ * @instance
+ */
+ ImageAnnotationContext.prototype.pageNumber = 0;
+
+ /**
+ * Creates a new ImageAnnotationContext instance using the specified properties.
+ * @function create
+ * @memberof google.cloud.vision.v1.ImageAnnotationContext
+ * @static
+ * @param {google.cloud.vision.v1.IImageAnnotationContext=} [properties] Properties to set
+ * @returns {google.cloud.vision.v1.ImageAnnotationContext} ImageAnnotationContext instance
+ */
+ ImageAnnotationContext.create = function create(properties) {
+ return new ImageAnnotationContext(properties);
+ };
+
+ /**
+ * Encodes the specified ImageAnnotationContext message. Does not implicitly {@link google.cloud.vision.v1.ImageAnnotationContext.verify|verify} messages.
+ * @function encode
+ * @memberof google.cloud.vision.v1.ImageAnnotationContext
+ * @static
+ * @param {google.cloud.vision.v1.IImageAnnotationContext} message ImageAnnotationContext message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ ImageAnnotationContext.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.uri != null && Object.hasOwnProperty.call(message, "uri"))
+ writer.uint32(/* id 1, wireType 2 =*/10).string(message.uri);
+ if (message.pageNumber != null && Object.hasOwnProperty.call(message, "pageNumber"))
+ writer.uint32(/* id 2, wireType 0 =*/16).int32(message.pageNumber);
+ return writer;
+ };
+
+ /**
+ * Encodes the specified ImageAnnotationContext message, length delimited. Does not implicitly {@link google.cloud.vision.v1.ImageAnnotationContext.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.cloud.vision.v1.ImageAnnotationContext
+ * @static
+ * @param {google.cloud.vision.v1.IImageAnnotationContext} message ImageAnnotationContext message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ ImageAnnotationContext.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes an ImageAnnotationContext message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.cloud.vision.v1.ImageAnnotationContext
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.cloud.vision.v1.ImageAnnotationContext} ImageAnnotationContext
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ ImageAnnotationContext.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.vision.v1.ImageAnnotationContext();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.uri = reader.string();
+ break;
+ }
+ case 2: {
+ message.pageNumber = reader.int32();
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes an ImageAnnotationContext message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.cloud.vision.v1.ImageAnnotationContext
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.cloud.vision.v1.ImageAnnotationContext} ImageAnnotationContext
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ ImageAnnotationContext.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies an ImageAnnotationContext message.
+ * @function verify
+ * @memberof google.cloud.vision.v1.ImageAnnotationContext
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ ImageAnnotationContext.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.uri != null && message.hasOwnProperty("uri"))
+ if (!$util.isString(message.uri))
+ return "uri: string expected";
+ if (message.pageNumber != null && message.hasOwnProperty("pageNumber"))
+ if (!$util.isInteger(message.pageNumber))
+ return "pageNumber: integer expected";
+ return null;
+ };
+
+ /**
+ * Creates an ImageAnnotationContext message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.cloud.vision.v1.ImageAnnotationContext
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.cloud.vision.v1.ImageAnnotationContext} ImageAnnotationContext
+ */
+ ImageAnnotationContext.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.cloud.vision.v1.ImageAnnotationContext)
+ return object;
+ var message = new $root.google.cloud.vision.v1.ImageAnnotationContext();
+ if (object.uri != null)
+ message.uri = String(object.uri);
+ if (object.pageNumber != null)
+ message.pageNumber = object.pageNumber | 0;
+ return message;
+ };
+
+ /**
+ * Creates a plain object from an ImageAnnotationContext message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.cloud.vision.v1.ImageAnnotationContext
+ * @static
+ * @param {google.cloud.vision.v1.ImageAnnotationContext} message ImageAnnotationContext
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ ImageAnnotationContext.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.defaults) {
+ object.uri = "";
+ object.pageNumber = 0;
+ }
+ if (message.uri != null && message.hasOwnProperty("uri"))
+ object.uri = message.uri;
+ if (message.pageNumber != null && message.hasOwnProperty("pageNumber"))
+ object.pageNumber = message.pageNumber;
+ return object;
+ };
+
+ /**
+ * Converts this ImageAnnotationContext to JSON.
+ * @function toJSON
+ * @memberof google.cloud.vision.v1.ImageAnnotationContext
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ ImageAnnotationContext.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for ImageAnnotationContext
+ * @function getTypeUrl
+ * @memberof google.cloud.vision.v1.ImageAnnotationContext
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ ImageAnnotationContext.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.cloud.vision.v1.ImageAnnotationContext";
+ };
+
+ return ImageAnnotationContext;
+ })();
+
+ v1.AnnotateImageResponse = (function() {
+
+ /**
+ * Properties of an AnnotateImageResponse.
+ * @memberof google.cloud.vision.v1
+ * @interface IAnnotateImageResponse
+ * @property {Array.|null} [faceAnnotations] AnnotateImageResponse faceAnnotations
+ * @property {Array.|null} [landmarkAnnotations] AnnotateImageResponse landmarkAnnotations
+ * @property {Array.|null} [logoAnnotations] AnnotateImageResponse logoAnnotations
+ * @property {Array.|null} [labelAnnotations] AnnotateImageResponse labelAnnotations
+ * @property {Array.|null} [localizedObjectAnnotations] AnnotateImageResponse localizedObjectAnnotations
+ * @property {Array.|null} [textAnnotations] AnnotateImageResponse textAnnotations
+ * @property {google.cloud.vision.v1.ITextAnnotation|null} [fullTextAnnotation] AnnotateImageResponse fullTextAnnotation
+ * @property {google.cloud.vision.v1.ISafeSearchAnnotation|null} [safeSearchAnnotation] AnnotateImageResponse safeSearchAnnotation
+ * @property {google.cloud.vision.v1.IImageProperties|null} [imagePropertiesAnnotation] AnnotateImageResponse imagePropertiesAnnotation
+ * @property {google.cloud.vision.v1.ICropHintsAnnotation|null} [cropHintsAnnotation] AnnotateImageResponse cropHintsAnnotation
+ * @property {google.cloud.vision.v1.IWebDetection|null} [webDetection] AnnotateImageResponse webDetection
+ * @property {google.cloud.vision.v1.IProductSearchResults|null} [productSearchResults] AnnotateImageResponse productSearchResults
+ * @property {google.rpc.IStatus|null} [error] AnnotateImageResponse error
+ * @property {google.cloud.vision.v1.IImageAnnotationContext|null} [context] AnnotateImageResponse context
+ */
+
+ /**
+ * Constructs a new AnnotateImageResponse.
+ * @memberof google.cloud.vision.v1
+ * @classdesc Represents an AnnotateImageResponse.
+ * @implements IAnnotateImageResponse
+ * @constructor
+ * @param {google.cloud.vision.v1.IAnnotateImageResponse=} [properties] Properties to set
+ */
+ function AnnotateImageResponse(properties) {
+ this.faceAnnotations = [];
+ this.landmarkAnnotations = [];
+ this.logoAnnotations = [];
+ this.labelAnnotations = [];
+ this.localizedObjectAnnotations = [];
+ this.textAnnotations = [];
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * AnnotateImageResponse faceAnnotations.
+ * @member {Array.} faceAnnotations
+ * @memberof google.cloud.vision.v1.AnnotateImageResponse
+ * @instance
+ */
+ AnnotateImageResponse.prototype.faceAnnotations = $util.emptyArray;
+
+ /**
+ * AnnotateImageResponse landmarkAnnotations.
+ * @member {Array.} landmarkAnnotations
+ * @memberof google.cloud.vision.v1.AnnotateImageResponse
+ * @instance
+ */
+ AnnotateImageResponse.prototype.landmarkAnnotations = $util.emptyArray;
+
+ /**
+ * AnnotateImageResponse logoAnnotations.
+ * @member {Array.} logoAnnotations
+ * @memberof google.cloud.vision.v1.AnnotateImageResponse
+ * @instance
+ */
+ AnnotateImageResponse.prototype.logoAnnotations = $util.emptyArray;
+
+ /**
+ * AnnotateImageResponse labelAnnotations.
+ * @member {Array.} labelAnnotations
+ * @memberof google.cloud.vision.v1.AnnotateImageResponse
+ * @instance
+ */
+ AnnotateImageResponse.prototype.labelAnnotations = $util.emptyArray;
+
+ /**
+ * AnnotateImageResponse localizedObjectAnnotations.
+ * @member {Array.} localizedObjectAnnotations
+ * @memberof google.cloud.vision.v1.AnnotateImageResponse
+ * @instance
+ */
+ AnnotateImageResponse.prototype.localizedObjectAnnotations = $util.emptyArray;
+
+ /**
+ * AnnotateImageResponse textAnnotations.
+ * @member {Array.} textAnnotations
+ * @memberof google.cloud.vision.v1.AnnotateImageResponse
+ * @instance
+ */
+ AnnotateImageResponse.prototype.textAnnotations = $util.emptyArray;
+
+ /**
+ * AnnotateImageResponse fullTextAnnotation.
+ * @member {google.cloud.vision.v1.ITextAnnotation|null|undefined} fullTextAnnotation
+ * @memberof google.cloud.vision.v1.AnnotateImageResponse
+ * @instance
+ */
+ AnnotateImageResponse.prototype.fullTextAnnotation = null;
+
+ /**
+ * AnnotateImageResponse safeSearchAnnotation.
+ * @member {google.cloud.vision.v1.ISafeSearchAnnotation|null|undefined} safeSearchAnnotation
+ * @memberof google.cloud.vision.v1.AnnotateImageResponse
+ * @instance
+ */
+ AnnotateImageResponse.prototype.safeSearchAnnotation = null;
+
+ /**
+ * AnnotateImageResponse imagePropertiesAnnotation.
+ * @member {google.cloud.vision.v1.IImageProperties|null|undefined} imagePropertiesAnnotation
+ * @memberof google.cloud.vision.v1.AnnotateImageResponse
+ * @instance
+ */
+ AnnotateImageResponse.prototype.imagePropertiesAnnotation = null;
+
+ /**
+ * AnnotateImageResponse cropHintsAnnotation.
+ * @member {google.cloud.vision.v1.ICropHintsAnnotation|null|undefined} cropHintsAnnotation
+ * @memberof google.cloud.vision.v1.AnnotateImageResponse
+ * @instance
+ */
+ AnnotateImageResponse.prototype.cropHintsAnnotation = null;
+
+ /**
+ * AnnotateImageResponse webDetection.
+ * @member {google.cloud.vision.v1.IWebDetection|null|undefined} webDetection
+ * @memberof google.cloud.vision.v1.AnnotateImageResponse
+ * @instance
+ */
+ AnnotateImageResponse.prototype.webDetection = null;
+
+ /**
+ * AnnotateImageResponse productSearchResults.
+ * @member {google.cloud.vision.v1.IProductSearchResults|null|undefined} productSearchResults
+ * @memberof google.cloud.vision.v1.AnnotateImageResponse
+ * @instance
+ */
+ AnnotateImageResponse.prototype.productSearchResults = null;
+
+ /**
+ * AnnotateImageResponse error.
+ * @member {google.rpc.IStatus|null|undefined} error
+ * @memberof google.cloud.vision.v1.AnnotateImageResponse
+ * @instance
+ */
+ AnnotateImageResponse.prototype.error = null;
+
+ /**
+ * AnnotateImageResponse context.
+ * @member {google.cloud.vision.v1.IImageAnnotationContext|null|undefined} context
+ * @memberof google.cloud.vision.v1.AnnotateImageResponse
+ * @instance
+ */
+ AnnotateImageResponse.prototype.context = null;
+
+ /**
+ * Creates a new AnnotateImageResponse instance using the specified properties.
+ * @function create
+ * @memberof google.cloud.vision.v1.AnnotateImageResponse
+ * @static
+ * @param {google.cloud.vision.v1.IAnnotateImageResponse=} [properties] Properties to set
+ * @returns {google.cloud.vision.v1.AnnotateImageResponse} AnnotateImageResponse instance
+ */
+ AnnotateImageResponse.create = function create(properties) {
+ return new AnnotateImageResponse(properties);
+ };
+
+ /**
+ * Encodes the specified AnnotateImageResponse message. Does not implicitly {@link google.cloud.vision.v1.AnnotateImageResponse.verify|verify} messages.
+ * @function encode
+ * @memberof google.cloud.vision.v1.AnnotateImageResponse
+ * @static
+ * @param {google.cloud.vision.v1.IAnnotateImageResponse} message AnnotateImageResponse message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ AnnotateImageResponse.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.faceAnnotations != null && message.faceAnnotations.length)
+ for (var i = 0; i < message.faceAnnotations.length; ++i)
+ $root.google.cloud.vision.v1.FaceAnnotation.encode(message.faceAnnotations[i], writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim();
+ if (message.landmarkAnnotations != null && message.landmarkAnnotations.length)
+ for (var i = 0; i < message.landmarkAnnotations.length; ++i)
+ $root.google.cloud.vision.v1.EntityAnnotation.encode(message.landmarkAnnotations[i], writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim();
+ if (message.logoAnnotations != null && message.logoAnnotations.length)
+ for (var i = 0; i < message.logoAnnotations.length; ++i)
+ $root.google.cloud.vision.v1.EntityAnnotation.encode(message.logoAnnotations[i], writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim();
+ if (message.labelAnnotations != null && message.labelAnnotations.length)
+ for (var i = 0; i < message.labelAnnotations.length; ++i)
+ $root.google.cloud.vision.v1.EntityAnnotation.encode(message.labelAnnotations[i], writer.uint32(/* id 4, wireType 2 =*/34).fork()).ldelim();
+ if (message.textAnnotations != null && message.textAnnotations.length)
+ for (var i = 0; i < message.textAnnotations.length; ++i)
+ $root.google.cloud.vision.v1.EntityAnnotation.encode(message.textAnnotations[i], writer.uint32(/* id 5, wireType 2 =*/42).fork()).ldelim();
+ if (message.safeSearchAnnotation != null && Object.hasOwnProperty.call(message, "safeSearchAnnotation"))
+ $root.google.cloud.vision.v1.SafeSearchAnnotation.encode(message.safeSearchAnnotation, writer.uint32(/* id 6, wireType 2 =*/50).fork()).ldelim();
+ if (message.imagePropertiesAnnotation != null && Object.hasOwnProperty.call(message, "imagePropertiesAnnotation"))
+ $root.google.cloud.vision.v1.ImageProperties.encode(message.imagePropertiesAnnotation, writer.uint32(/* id 8, wireType 2 =*/66).fork()).ldelim();
+ if (message.error != null && Object.hasOwnProperty.call(message, "error"))
+ $root.google.rpc.Status.encode(message.error, writer.uint32(/* id 9, wireType 2 =*/74).fork()).ldelim();
+ if (message.cropHintsAnnotation != null && Object.hasOwnProperty.call(message, "cropHintsAnnotation"))
+ $root.google.cloud.vision.v1.CropHintsAnnotation.encode(message.cropHintsAnnotation, writer.uint32(/* id 11, wireType 2 =*/90).fork()).ldelim();
+ if (message.fullTextAnnotation != null && Object.hasOwnProperty.call(message, "fullTextAnnotation"))
+ $root.google.cloud.vision.v1.TextAnnotation.encode(message.fullTextAnnotation, writer.uint32(/* id 12, wireType 2 =*/98).fork()).ldelim();
+ if (message.webDetection != null && Object.hasOwnProperty.call(message, "webDetection"))
+ $root.google.cloud.vision.v1.WebDetection.encode(message.webDetection, writer.uint32(/* id 13, wireType 2 =*/106).fork()).ldelim();
+ if (message.productSearchResults != null && Object.hasOwnProperty.call(message, "productSearchResults"))
+ $root.google.cloud.vision.v1.ProductSearchResults.encode(message.productSearchResults, writer.uint32(/* id 14, wireType 2 =*/114).fork()).ldelim();
+ if (message.context != null && Object.hasOwnProperty.call(message, "context"))
+ $root.google.cloud.vision.v1.ImageAnnotationContext.encode(message.context, writer.uint32(/* id 21, wireType 2 =*/170).fork()).ldelim();
+ if (message.localizedObjectAnnotations != null && message.localizedObjectAnnotations.length)
+ for (var i = 0; i < message.localizedObjectAnnotations.length; ++i)
+ $root.google.cloud.vision.v1.LocalizedObjectAnnotation.encode(message.localizedObjectAnnotations[i], writer.uint32(/* id 22, wireType 2 =*/178).fork()).ldelim();
+ return writer;
+ };
+
+ /**
+ * Encodes the specified AnnotateImageResponse message, length delimited. Does not implicitly {@link google.cloud.vision.v1.AnnotateImageResponse.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.cloud.vision.v1.AnnotateImageResponse
+ * @static
+ * @param {google.cloud.vision.v1.IAnnotateImageResponse} message AnnotateImageResponse message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ AnnotateImageResponse.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes an AnnotateImageResponse message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.cloud.vision.v1.AnnotateImageResponse
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.cloud.vision.v1.AnnotateImageResponse} AnnotateImageResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ AnnotateImageResponse.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.vision.v1.AnnotateImageResponse();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ if (!(message.faceAnnotations && message.faceAnnotations.length))
+ message.faceAnnotations = [];
+ message.faceAnnotations.push($root.google.cloud.vision.v1.FaceAnnotation.decode(reader, reader.uint32()));
+ break;
+ }
+ case 2: {
+ if (!(message.landmarkAnnotations && message.landmarkAnnotations.length))
+ message.landmarkAnnotations = [];
+ message.landmarkAnnotations.push($root.google.cloud.vision.v1.EntityAnnotation.decode(reader, reader.uint32()));
+ break;
+ }
+ case 3: {
+ if (!(message.logoAnnotations && message.logoAnnotations.length))
+ message.logoAnnotations = [];
+ message.logoAnnotations.push($root.google.cloud.vision.v1.EntityAnnotation.decode(reader, reader.uint32()));
+ break;
+ }
+ case 4: {
+ if (!(message.labelAnnotations && message.labelAnnotations.length))
+ message.labelAnnotations = [];
+ message.labelAnnotations.push($root.google.cloud.vision.v1.EntityAnnotation.decode(reader, reader.uint32()));
+ break;
+ }
+ case 22: {
+ if (!(message.localizedObjectAnnotations && message.localizedObjectAnnotations.length))
+ message.localizedObjectAnnotations = [];
+ message.localizedObjectAnnotations.push($root.google.cloud.vision.v1.LocalizedObjectAnnotation.decode(reader, reader.uint32()));
+ break;
+ }
+ case 5: {
+ if (!(message.textAnnotations && message.textAnnotations.length))
+ message.textAnnotations = [];
+ message.textAnnotations.push($root.google.cloud.vision.v1.EntityAnnotation.decode(reader, reader.uint32()));
+ break;
+ }
+ case 12: {
+ message.fullTextAnnotation = $root.google.cloud.vision.v1.TextAnnotation.decode(reader, reader.uint32());
+ break;
+ }
+ case 6: {
+ message.safeSearchAnnotation = $root.google.cloud.vision.v1.SafeSearchAnnotation.decode(reader, reader.uint32());
+ break;
+ }
+ case 8: {
+ message.imagePropertiesAnnotation = $root.google.cloud.vision.v1.ImageProperties.decode(reader, reader.uint32());
+ break;
+ }
+ case 11: {
+ message.cropHintsAnnotation = $root.google.cloud.vision.v1.CropHintsAnnotation.decode(reader, reader.uint32());
+ break;
+ }
+ case 13: {
+ message.webDetection = $root.google.cloud.vision.v1.WebDetection.decode(reader, reader.uint32());
+ break;
+ }
+ case 14: {
+ message.productSearchResults = $root.google.cloud.vision.v1.ProductSearchResults.decode(reader, reader.uint32());
+ break;
+ }
+ case 9: {
+ message.error = $root.google.rpc.Status.decode(reader, reader.uint32());
+ break;
+ }
+ case 21: {
+ message.context = $root.google.cloud.vision.v1.ImageAnnotationContext.decode(reader, reader.uint32());
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes an AnnotateImageResponse message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.cloud.vision.v1.AnnotateImageResponse
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.cloud.vision.v1.AnnotateImageResponse} AnnotateImageResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ AnnotateImageResponse.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies an AnnotateImageResponse message.
+ * @function verify
+ * @memberof google.cloud.vision.v1.AnnotateImageResponse
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ AnnotateImageResponse.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.faceAnnotations != null && message.hasOwnProperty("faceAnnotations")) {
+ if (!Array.isArray(message.faceAnnotations))
+ return "faceAnnotations: array expected";
+ for (var i = 0; i < message.faceAnnotations.length; ++i) {
+ var error = $root.google.cloud.vision.v1.FaceAnnotation.verify(message.faceAnnotations[i]);
+ if (error)
+ return "faceAnnotations." + error;
+ }
+ }
+ if (message.landmarkAnnotations != null && message.hasOwnProperty("landmarkAnnotations")) {
+ if (!Array.isArray(message.landmarkAnnotations))
+ return "landmarkAnnotations: array expected";
+ for (var i = 0; i < message.landmarkAnnotations.length; ++i) {
+ var error = $root.google.cloud.vision.v1.EntityAnnotation.verify(message.landmarkAnnotations[i]);
+ if (error)
+ return "landmarkAnnotations." + error;
+ }
+ }
+ if (message.logoAnnotations != null && message.hasOwnProperty("logoAnnotations")) {
+ if (!Array.isArray(message.logoAnnotations))
+ return "logoAnnotations: array expected";
+ for (var i = 0; i < message.logoAnnotations.length; ++i) {
+ var error = $root.google.cloud.vision.v1.EntityAnnotation.verify(message.logoAnnotations[i]);
+ if (error)
+ return "logoAnnotations." + error;
+ }
+ }
+ if (message.labelAnnotations != null && message.hasOwnProperty("labelAnnotations")) {
+ if (!Array.isArray(message.labelAnnotations))
+ return "labelAnnotations: array expected";
+ for (var i = 0; i < message.labelAnnotations.length; ++i) {
+ var error = $root.google.cloud.vision.v1.EntityAnnotation.verify(message.labelAnnotations[i]);
+ if (error)
+ return "labelAnnotations." + error;
+ }
+ }
+ if (message.localizedObjectAnnotations != null && message.hasOwnProperty("localizedObjectAnnotations")) {
+ if (!Array.isArray(message.localizedObjectAnnotations))
+ return "localizedObjectAnnotations: array expected";
+ for (var i = 0; i < message.localizedObjectAnnotations.length; ++i) {
+ var error = $root.google.cloud.vision.v1.LocalizedObjectAnnotation.verify(message.localizedObjectAnnotations[i]);
+ if (error)
+ return "localizedObjectAnnotations." + error;
+ }
+ }
+ if (message.textAnnotations != null && message.hasOwnProperty("textAnnotations")) {
+ if (!Array.isArray(message.textAnnotations))
+ return "textAnnotations: array expected";
+ for (var i = 0; i < message.textAnnotations.length; ++i) {
+ var error = $root.google.cloud.vision.v1.EntityAnnotation.verify(message.textAnnotations[i]);
+ if (error)
+ return "textAnnotations." + error;
+ }
+ }
+ if (message.fullTextAnnotation != null && message.hasOwnProperty("fullTextAnnotation")) {
+ var error = $root.google.cloud.vision.v1.TextAnnotation.verify(message.fullTextAnnotation);
+ if (error)
+ return "fullTextAnnotation." + error;
+ }
+ if (message.safeSearchAnnotation != null && message.hasOwnProperty("safeSearchAnnotation")) {
+ var error = $root.google.cloud.vision.v1.SafeSearchAnnotation.verify(message.safeSearchAnnotation);
+ if (error)
+ return "safeSearchAnnotation." + error;
+ }
+ if (message.imagePropertiesAnnotation != null && message.hasOwnProperty("imagePropertiesAnnotation")) {
+ var error = $root.google.cloud.vision.v1.ImageProperties.verify(message.imagePropertiesAnnotation);
+ if (error)
+ return "imagePropertiesAnnotation." + error;
+ }
+ if (message.cropHintsAnnotation != null && message.hasOwnProperty("cropHintsAnnotation")) {
+ var error = $root.google.cloud.vision.v1.CropHintsAnnotation.verify(message.cropHintsAnnotation);
+ if (error)
+ return "cropHintsAnnotation." + error;
+ }
+ if (message.webDetection != null && message.hasOwnProperty("webDetection")) {
+ var error = $root.google.cloud.vision.v1.WebDetection.verify(message.webDetection);
+ if (error)
+ return "webDetection." + error;
+ }
+ if (message.productSearchResults != null && message.hasOwnProperty("productSearchResults")) {
+ var error = $root.google.cloud.vision.v1.ProductSearchResults.verify(message.productSearchResults);
+ if (error)
+ return "productSearchResults." + error;
+ }
+ if (message.error != null && message.hasOwnProperty("error")) {
+ var error = $root.google.rpc.Status.verify(message.error);
+ if (error)
+ return "error." + error;
+ }
+ if (message.context != null && message.hasOwnProperty("context")) {
+ var error = $root.google.cloud.vision.v1.ImageAnnotationContext.verify(message.context);
+ if (error)
+ return "context." + error;
+ }
+ return null;
+ };
+
+ /**
+ * Creates an AnnotateImageResponse message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.cloud.vision.v1.AnnotateImageResponse
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.cloud.vision.v1.AnnotateImageResponse} AnnotateImageResponse
+ */
+ AnnotateImageResponse.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.cloud.vision.v1.AnnotateImageResponse)
+ return object;
+ var message = new $root.google.cloud.vision.v1.AnnotateImageResponse();
+ if (object.faceAnnotations) {
+ if (!Array.isArray(object.faceAnnotations))
+ throw TypeError(".google.cloud.vision.v1.AnnotateImageResponse.faceAnnotations: array expected");
+ message.faceAnnotations = [];
+ for (var i = 0; i < object.faceAnnotations.length; ++i) {
+ if (typeof object.faceAnnotations[i] !== "object")
+ throw TypeError(".google.cloud.vision.v1.AnnotateImageResponse.faceAnnotations: object expected");
+ message.faceAnnotations[i] = $root.google.cloud.vision.v1.FaceAnnotation.fromObject(object.faceAnnotations[i]);
+ }
+ }
+ if (object.landmarkAnnotations) {
+ if (!Array.isArray(object.landmarkAnnotations))
+ throw TypeError(".google.cloud.vision.v1.AnnotateImageResponse.landmarkAnnotations: array expected");
+ message.landmarkAnnotations = [];
+ for (var i = 0; i < object.landmarkAnnotations.length; ++i) {
+ if (typeof object.landmarkAnnotations[i] !== "object")
+ throw TypeError(".google.cloud.vision.v1.AnnotateImageResponse.landmarkAnnotations: object expected");
+ message.landmarkAnnotations[i] = $root.google.cloud.vision.v1.EntityAnnotation.fromObject(object.landmarkAnnotations[i]);
+ }
+ }
+ if (object.logoAnnotations) {
+ if (!Array.isArray(object.logoAnnotations))
+ throw TypeError(".google.cloud.vision.v1.AnnotateImageResponse.logoAnnotations: array expected");
+ message.logoAnnotations = [];
+ for (var i = 0; i < object.logoAnnotations.length; ++i) {
+ if (typeof object.logoAnnotations[i] !== "object")
+ throw TypeError(".google.cloud.vision.v1.AnnotateImageResponse.logoAnnotations: object expected");
+ message.logoAnnotations[i] = $root.google.cloud.vision.v1.EntityAnnotation.fromObject(object.logoAnnotations[i]);
+ }
+ }
+ if (object.labelAnnotations) {
+ if (!Array.isArray(object.labelAnnotations))
+ throw TypeError(".google.cloud.vision.v1.AnnotateImageResponse.labelAnnotations: array expected");
+ message.labelAnnotations = [];
+ for (var i = 0; i < object.labelAnnotations.length; ++i) {
+ if (typeof object.labelAnnotations[i] !== "object")
+ throw TypeError(".google.cloud.vision.v1.AnnotateImageResponse.labelAnnotations: object expected");
+ message.labelAnnotations[i] = $root.google.cloud.vision.v1.EntityAnnotation.fromObject(object.labelAnnotations[i]);
+ }
+ }
+ if (object.localizedObjectAnnotations) {
+ if (!Array.isArray(object.localizedObjectAnnotations))
+ throw TypeError(".google.cloud.vision.v1.AnnotateImageResponse.localizedObjectAnnotations: array expected");
+ message.localizedObjectAnnotations = [];
+ for (var i = 0; i < object.localizedObjectAnnotations.length; ++i) {
+ if (typeof object.localizedObjectAnnotations[i] !== "object")
+ throw TypeError(".google.cloud.vision.v1.AnnotateImageResponse.localizedObjectAnnotations: object expected");
+ message.localizedObjectAnnotations[i] = $root.google.cloud.vision.v1.LocalizedObjectAnnotation.fromObject(object.localizedObjectAnnotations[i]);
+ }
+ }
+ if (object.textAnnotations) {
+ if (!Array.isArray(object.textAnnotations))
+ throw TypeError(".google.cloud.vision.v1.AnnotateImageResponse.textAnnotations: array expected");
+ message.textAnnotations = [];
+ for (var i = 0; i < object.textAnnotations.length; ++i) {
+ if (typeof object.textAnnotations[i] !== "object")
+ throw TypeError(".google.cloud.vision.v1.AnnotateImageResponse.textAnnotations: object expected");
+ message.textAnnotations[i] = $root.google.cloud.vision.v1.EntityAnnotation.fromObject(object.textAnnotations[i]);
+ }
+ }
+ if (object.fullTextAnnotation != null) {
+ if (typeof object.fullTextAnnotation !== "object")
+ throw TypeError(".google.cloud.vision.v1.AnnotateImageResponse.fullTextAnnotation: object expected");
+ message.fullTextAnnotation = $root.google.cloud.vision.v1.TextAnnotation.fromObject(object.fullTextAnnotation);
+ }
+ if (object.safeSearchAnnotation != null) {
+ if (typeof object.safeSearchAnnotation !== "object")
+ throw TypeError(".google.cloud.vision.v1.AnnotateImageResponse.safeSearchAnnotation: object expected");
+ message.safeSearchAnnotation = $root.google.cloud.vision.v1.SafeSearchAnnotation.fromObject(object.safeSearchAnnotation);
+ }
+ if (object.imagePropertiesAnnotation != null) {
+ if (typeof object.imagePropertiesAnnotation !== "object")
+ throw TypeError(".google.cloud.vision.v1.AnnotateImageResponse.imagePropertiesAnnotation: object expected");
+ message.imagePropertiesAnnotation = $root.google.cloud.vision.v1.ImageProperties.fromObject(object.imagePropertiesAnnotation);
+ }
+ if (object.cropHintsAnnotation != null) {
+ if (typeof object.cropHintsAnnotation !== "object")
+ throw TypeError(".google.cloud.vision.v1.AnnotateImageResponse.cropHintsAnnotation: object expected");
+ message.cropHintsAnnotation = $root.google.cloud.vision.v1.CropHintsAnnotation.fromObject(object.cropHintsAnnotation);
+ }
+ if (object.webDetection != null) {
+ if (typeof object.webDetection !== "object")
+ throw TypeError(".google.cloud.vision.v1.AnnotateImageResponse.webDetection: object expected");
+ message.webDetection = $root.google.cloud.vision.v1.WebDetection.fromObject(object.webDetection);
+ }
+ if (object.productSearchResults != null) {
+ if (typeof object.productSearchResults !== "object")
+ throw TypeError(".google.cloud.vision.v1.AnnotateImageResponse.productSearchResults: object expected");
+ message.productSearchResults = $root.google.cloud.vision.v1.ProductSearchResults.fromObject(object.productSearchResults);
+ }
+ if (object.error != null) {
+ if (typeof object.error !== "object")
+ throw TypeError(".google.cloud.vision.v1.AnnotateImageResponse.error: object expected");
+ message.error = $root.google.rpc.Status.fromObject(object.error);
+ }
+ if (object.context != null) {
+ if (typeof object.context !== "object")
+ throw TypeError(".google.cloud.vision.v1.AnnotateImageResponse.context: object expected");
+ message.context = $root.google.cloud.vision.v1.ImageAnnotationContext.fromObject(object.context);
+ }
+ return message;
+ };
+
+ /**
+ * Creates a plain object from an AnnotateImageResponse message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.cloud.vision.v1.AnnotateImageResponse
+ * @static
+ * @param {google.cloud.vision.v1.AnnotateImageResponse} message AnnotateImageResponse
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ AnnotateImageResponse.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.arrays || options.defaults) {
+ object.faceAnnotations = [];
+ object.landmarkAnnotations = [];
+ object.logoAnnotations = [];
+ object.labelAnnotations = [];
+ object.textAnnotations = [];
+ object.localizedObjectAnnotations = [];
+ }
+ if (options.defaults) {
+ object.safeSearchAnnotation = null;
+ object.imagePropertiesAnnotation = null;
+ object.error = null;
+ object.cropHintsAnnotation = null;
+ object.fullTextAnnotation = null;
+ object.webDetection = null;
+ object.productSearchResults = null;
+ object.context = null;
+ }
+ if (message.faceAnnotations && message.faceAnnotations.length) {
+ object.faceAnnotations = [];
+ for (var j = 0; j < message.faceAnnotations.length; ++j)
+ object.faceAnnotations[j] = $root.google.cloud.vision.v1.FaceAnnotation.toObject(message.faceAnnotations[j], options);
+ }
+ if (message.landmarkAnnotations && message.landmarkAnnotations.length) {
+ object.landmarkAnnotations = [];
+ for (var j = 0; j < message.landmarkAnnotations.length; ++j)
+ object.landmarkAnnotations[j] = $root.google.cloud.vision.v1.EntityAnnotation.toObject(message.landmarkAnnotations[j], options);
+ }
+ if (message.logoAnnotations && message.logoAnnotations.length) {
+ object.logoAnnotations = [];
+ for (var j = 0; j < message.logoAnnotations.length; ++j)
+ object.logoAnnotations[j] = $root.google.cloud.vision.v1.EntityAnnotation.toObject(message.logoAnnotations[j], options);
+ }
+ if (message.labelAnnotations && message.labelAnnotations.length) {
+ object.labelAnnotations = [];
+ for (var j = 0; j < message.labelAnnotations.length; ++j)
+ object.labelAnnotations[j] = $root.google.cloud.vision.v1.EntityAnnotation.toObject(message.labelAnnotations[j], options);
+ }
+ if (message.textAnnotations && message.textAnnotations.length) {
+ object.textAnnotations = [];
+ for (var j = 0; j < message.textAnnotations.length; ++j)
+ object.textAnnotations[j] = $root.google.cloud.vision.v1.EntityAnnotation.toObject(message.textAnnotations[j], options);
+ }
+ if (message.safeSearchAnnotation != null && message.hasOwnProperty("safeSearchAnnotation"))
+ object.safeSearchAnnotation = $root.google.cloud.vision.v1.SafeSearchAnnotation.toObject(message.safeSearchAnnotation, options);
+ if (message.imagePropertiesAnnotation != null && message.hasOwnProperty("imagePropertiesAnnotation"))
+ object.imagePropertiesAnnotation = $root.google.cloud.vision.v1.ImageProperties.toObject(message.imagePropertiesAnnotation, options);
+ if (message.error != null && message.hasOwnProperty("error"))
+ object.error = $root.google.rpc.Status.toObject(message.error, options);
+ if (message.cropHintsAnnotation != null && message.hasOwnProperty("cropHintsAnnotation"))
+ object.cropHintsAnnotation = $root.google.cloud.vision.v1.CropHintsAnnotation.toObject(message.cropHintsAnnotation, options);
+ if (message.fullTextAnnotation != null && message.hasOwnProperty("fullTextAnnotation"))
+ object.fullTextAnnotation = $root.google.cloud.vision.v1.TextAnnotation.toObject(message.fullTextAnnotation, options);
+ if (message.webDetection != null && message.hasOwnProperty("webDetection"))
+ object.webDetection = $root.google.cloud.vision.v1.WebDetection.toObject(message.webDetection, options);
+ if (message.productSearchResults != null && message.hasOwnProperty("productSearchResults"))
+ object.productSearchResults = $root.google.cloud.vision.v1.ProductSearchResults.toObject(message.productSearchResults, options);
+ if (message.context != null && message.hasOwnProperty("context"))
+ object.context = $root.google.cloud.vision.v1.ImageAnnotationContext.toObject(message.context, options);
+ if (message.localizedObjectAnnotations && message.localizedObjectAnnotations.length) {
+ object.localizedObjectAnnotations = [];
+ for (var j = 0; j < message.localizedObjectAnnotations.length; ++j)
+ object.localizedObjectAnnotations[j] = $root.google.cloud.vision.v1.LocalizedObjectAnnotation.toObject(message.localizedObjectAnnotations[j], options);
+ }
+ return object;
+ };
+
+ /**
+ * Converts this AnnotateImageResponse to JSON.
+ * @function toJSON
+ * @memberof google.cloud.vision.v1.AnnotateImageResponse
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ AnnotateImageResponse.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for AnnotateImageResponse
+ * @function getTypeUrl
+ * @memberof google.cloud.vision.v1.AnnotateImageResponse
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ AnnotateImageResponse.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.cloud.vision.v1.AnnotateImageResponse";
+ };
+
+ return AnnotateImageResponse;
+ })();
+
+ v1.BatchAnnotateImagesRequest = (function() {
+
+ /**
+ * Properties of a BatchAnnotateImagesRequest.
+ * @memberof google.cloud.vision.v1
+ * @interface IBatchAnnotateImagesRequest
+ * @property {Array.|null} [requests] BatchAnnotateImagesRequest requests
+ * @property {string|null} [parent] BatchAnnotateImagesRequest parent
+ */
+
+ /**
+ * Constructs a new BatchAnnotateImagesRequest.
+ * @memberof google.cloud.vision.v1
+ * @classdesc Represents a BatchAnnotateImagesRequest.
+ * @implements IBatchAnnotateImagesRequest
+ * @constructor
+ * @param {google.cloud.vision.v1.IBatchAnnotateImagesRequest=} [properties] Properties to set
+ */
+ function BatchAnnotateImagesRequest(properties) {
+ this.requests = [];
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * BatchAnnotateImagesRequest requests.
+ * @member {Array.} requests
+ * @memberof google.cloud.vision.v1.BatchAnnotateImagesRequest
+ * @instance
+ */
+ BatchAnnotateImagesRequest.prototype.requests = $util.emptyArray;
+
+ /**
+ * BatchAnnotateImagesRequest parent.
+ * @member {string} parent
+ * @memberof google.cloud.vision.v1.BatchAnnotateImagesRequest
+ * @instance
+ */
+ BatchAnnotateImagesRequest.prototype.parent = "";
+
+ /**
+ * Creates a new BatchAnnotateImagesRequest instance using the specified properties.
+ * @function create
+ * @memberof google.cloud.vision.v1.BatchAnnotateImagesRequest
+ * @static
+ * @param {google.cloud.vision.v1.IBatchAnnotateImagesRequest=} [properties] Properties to set
+ * @returns {google.cloud.vision.v1.BatchAnnotateImagesRequest} BatchAnnotateImagesRequest instance
+ */
+ BatchAnnotateImagesRequest.create = function create(properties) {
+ return new BatchAnnotateImagesRequest(properties);
+ };
+
+ /**
+ * Encodes the specified BatchAnnotateImagesRequest message. Does not implicitly {@link google.cloud.vision.v1.BatchAnnotateImagesRequest.verify|verify} messages.
+ * @function encode
+ * @memberof google.cloud.vision.v1.BatchAnnotateImagesRequest
+ * @static
+ * @param {google.cloud.vision.v1.IBatchAnnotateImagesRequest} message BatchAnnotateImagesRequest message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ BatchAnnotateImagesRequest.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.requests != null && message.requests.length)
+ for (var i = 0; i < message.requests.length; ++i)
+ $root.google.cloud.vision.v1.AnnotateImageRequest.encode(message.requests[i], writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim();
+ if (message.parent != null && Object.hasOwnProperty.call(message, "parent"))
+ writer.uint32(/* id 4, wireType 2 =*/34).string(message.parent);
+ return writer;
+ };
+
+ /**
+ * Encodes the specified BatchAnnotateImagesRequest message, length delimited. Does not implicitly {@link google.cloud.vision.v1.BatchAnnotateImagesRequest.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.cloud.vision.v1.BatchAnnotateImagesRequest
+ * @static
+ * @param {google.cloud.vision.v1.IBatchAnnotateImagesRequest} message BatchAnnotateImagesRequest message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ BatchAnnotateImagesRequest.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a BatchAnnotateImagesRequest message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.cloud.vision.v1.BatchAnnotateImagesRequest
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.cloud.vision.v1.BatchAnnotateImagesRequest} BatchAnnotateImagesRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ BatchAnnotateImagesRequest.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.vision.v1.BatchAnnotateImagesRequest();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ if (!(message.requests && message.requests.length))
+ message.requests = [];
+ message.requests.push($root.google.cloud.vision.v1.AnnotateImageRequest.decode(reader, reader.uint32()));
+ break;
+ }
+ case 4: {
+ message.parent = reader.string();
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a BatchAnnotateImagesRequest message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.cloud.vision.v1.BatchAnnotateImagesRequest
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.cloud.vision.v1.BatchAnnotateImagesRequest} BatchAnnotateImagesRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ BatchAnnotateImagesRequest.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a BatchAnnotateImagesRequest message.
+ * @function verify
+ * @memberof google.cloud.vision.v1.BatchAnnotateImagesRequest
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ BatchAnnotateImagesRequest.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.requests != null && message.hasOwnProperty("requests")) {
+ if (!Array.isArray(message.requests))
+ return "requests: array expected";
+ for (var i = 0; i < message.requests.length; ++i) {
+ var error = $root.google.cloud.vision.v1.AnnotateImageRequest.verify(message.requests[i]);
+ if (error)
+ return "requests." + error;
+ }
+ }
+ if (message.parent != null && message.hasOwnProperty("parent"))
+ if (!$util.isString(message.parent))
+ return "parent: string expected";
+ return null;
+ };
+
+ /**
+ * Creates a BatchAnnotateImagesRequest message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.cloud.vision.v1.BatchAnnotateImagesRequest
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.cloud.vision.v1.BatchAnnotateImagesRequest} BatchAnnotateImagesRequest
+ */
+ BatchAnnotateImagesRequest.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.cloud.vision.v1.BatchAnnotateImagesRequest)
+ return object;
+ var message = new $root.google.cloud.vision.v1.BatchAnnotateImagesRequest();
+ if (object.requests) {
+ if (!Array.isArray(object.requests))
+ throw TypeError(".google.cloud.vision.v1.BatchAnnotateImagesRequest.requests: array expected");
+ message.requests = [];
+ for (var i = 0; i < object.requests.length; ++i) {
+ if (typeof object.requests[i] !== "object")
+ throw TypeError(".google.cloud.vision.v1.BatchAnnotateImagesRequest.requests: object expected");
+ message.requests[i] = $root.google.cloud.vision.v1.AnnotateImageRequest.fromObject(object.requests[i]);
+ }
+ }
+ if (object.parent != null)
+ message.parent = String(object.parent);
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a BatchAnnotateImagesRequest message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.cloud.vision.v1.BatchAnnotateImagesRequest
+ * @static
+ * @param {google.cloud.vision.v1.BatchAnnotateImagesRequest} message BatchAnnotateImagesRequest
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ BatchAnnotateImagesRequest.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.arrays || options.defaults)
+ object.requests = [];
+ if (options.defaults)
+ object.parent = "";
+ if (message.requests && message.requests.length) {
+ object.requests = [];
+ for (var j = 0; j < message.requests.length; ++j)
+ object.requests[j] = $root.google.cloud.vision.v1.AnnotateImageRequest.toObject(message.requests[j], options);
+ }
+ if (message.parent != null && message.hasOwnProperty("parent"))
+ object.parent = message.parent;
+ return object;
+ };
+
+ /**
+ * Converts this BatchAnnotateImagesRequest to JSON.
+ * @function toJSON
+ * @memberof google.cloud.vision.v1.BatchAnnotateImagesRequest
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ BatchAnnotateImagesRequest.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for BatchAnnotateImagesRequest
+ * @function getTypeUrl
+ * @memberof google.cloud.vision.v1.BatchAnnotateImagesRequest
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ BatchAnnotateImagesRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.cloud.vision.v1.BatchAnnotateImagesRequest";
+ };
+
+ return BatchAnnotateImagesRequest;
+ })();
+
+ v1.BatchAnnotateImagesResponse = (function() {
+
+ /**
+ * Properties of a BatchAnnotateImagesResponse.
+ * @memberof google.cloud.vision.v1
+ * @interface IBatchAnnotateImagesResponse
+ * @property {Array.|null} [responses] BatchAnnotateImagesResponse responses
+ */
+
+ /**
+ * Constructs a new BatchAnnotateImagesResponse.
+ * @memberof google.cloud.vision.v1
+ * @classdesc Represents a BatchAnnotateImagesResponse.
+ * @implements IBatchAnnotateImagesResponse
+ * @constructor
+ * @param {google.cloud.vision.v1.IBatchAnnotateImagesResponse=} [properties] Properties to set
+ */
+ function BatchAnnotateImagesResponse(properties) {
+ this.responses = [];
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * BatchAnnotateImagesResponse responses.
+ * @member {Array.} responses
+ * @memberof google.cloud.vision.v1.BatchAnnotateImagesResponse
+ * @instance
+ */
+ BatchAnnotateImagesResponse.prototype.responses = $util.emptyArray;
+
+ /**
+ * Creates a new BatchAnnotateImagesResponse instance using the specified properties.
+ * @function create
+ * @memberof google.cloud.vision.v1.BatchAnnotateImagesResponse
+ * @static
+ * @param {google.cloud.vision.v1.IBatchAnnotateImagesResponse=} [properties] Properties to set
+ * @returns {google.cloud.vision.v1.BatchAnnotateImagesResponse} BatchAnnotateImagesResponse instance
+ */
+ BatchAnnotateImagesResponse.create = function create(properties) {
+ return new BatchAnnotateImagesResponse(properties);
+ };
+
+ /**
+ * Encodes the specified BatchAnnotateImagesResponse message. Does not implicitly {@link google.cloud.vision.v1.BatchAnnotateImagesResponse.verify|verify} messages.
+ * @function encode
+ * @memberof google.cloud.vision.v1.BatchAnnotateImagesResponse
+ * @static
+ * @param {google.cloud.vision.v1.IBatchAnnotateImagesResponse} message BatchAnnotateImagesResponse message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ BatchAnnotateImagesResponse.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.responses != null && message.responses.length)
+ for (var i = 0; i < message.responses.length; ++i)
+ $root.google.cloud.vision.v1.AnnotateImageResponse.encode(message.responses[i], writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim();
+ return writer;
+ };
+
+ /**
+ * Encodes the specified BatchAnnotateImagesResponse message, length delimited. Does not implicitly {@link google.cloud.vision.v1.BatchAnnotateImagesResponse.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.cloud.vision.v1.BatchAnnotateImagesResponse
+ * @static
+ * @param {google.cloud.vision.v1.IBatchAnnotateImagesResponse} message BatchAnnotateImagesResponse message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ BatchAnnotateImagesResponse.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a BatchAnnotateImagesResponse message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.cloud.vision.v1.BatchAnnotateImagesResponse
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.cloud.vision.v1.BatchAnnotateImagesResponse} BatchAnnotateImagesResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ BatchAnnotateImagesResponse.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.vision.v1.BatchAnnotateImagesResponse();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ if (!(message.responses && message.responses.length))
+ message.responses = [];
+ message.responses.push($root.google.cloud.vision.v1.AnnotateImageResponse.decode(reader, reader.uint32()));
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a BatchAnnotateImagesResponse message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.cloud.vision.v1.BatchAnnotateImagesResponse
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.cloud.vision.v1.BatchAnnotateImagesResponse} BatchAnnotateImagesResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ BatchAnnotateImagesResponse.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a BatchAnnotateImagesResponse message.
+ * @function verify
+ * @memberof google.cloud.vision.v1.BatchAnnotateImagesResponse
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ BatchAnnotateImagesResponse.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.responses != null && message.hasOwnProperty("responses")) {
+ if (!Array.isArray(message.responses))
+ return "responses: array expected";
+ for (var i = 0; i < message.responses.length; ++i) {
+ var error = $root.google.cloud.vision.v1.AnnotateImageResponse.verify(message.responses[i]);
+ if (error)
+ return "responses." + error;
+ }
+ }
+ return null;
+ };
+
+ /**
+ * Creates a BatchAnnotateImagesResponse message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.cloud.vision.v1.BatchAnnotateImagesResponse
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.cloud.vision.v1.BatchAnnotateImagesResponse} BatchAnnotateImagesResponse
+ */
+ BatchAnnotateImagesResponse.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.cloud.vision.v1.BatchAnnotateImagesResponse)
+ return object;
+ var message = new $root.google.cloud.vision.v1.BatchAnnotateImagesResponse();
+ if (object.responses) {
+ if (!Array.isArray(object.responses))
+ throw TypeError(".google.cloud.vision.v1.BatchAnnotateImagesResponse.responses: array expected");
+ message.responses = [];
+ for (var i = 0; i < object.responses.length; ++i) {
+ if (typeof object.responses[i] !== "object")
+ throw TypeError(".google.cloud.vision.v1.BatchAnnotateImagesResponse.responses: object expected");
+ message.responses[i] = $root.google.cloud.vision.v1.AnnotateImageResponse.fromObject(object.responses[i]);
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a BatchAnnotateImagesResponse message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.cloud.vision.v1.BatchAnnotateImagesResponse
+ * @static
+ * @param {google.cloud.vision.v1.BatchAnnotateImagesResponse} message BatchAnnotateImagesResponse
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ BatchAnnotateImagesResponse.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.arrays || options.defaults)
+ object.responses = [];
+ if (message.responses && message.responses.length) {
+ object.responses = [];
+ for (var j = 0; j < message.responses.length; ++j)
+ object.responses[j] = $root.google.cloud.vision.v1.AnnotateImageResponse.toObject(message.responses[j], options);
+ }
+ return object;
+ };
+
+ /**
+ * Converts this BatchAnnotateImagesResponse to JSON.
+ * @function toJSON
+ * @memberof google.cloud.vision.v1.BatchAnnotateImagesResponse
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ BatchAnnotateImagesResponse.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for BatchAnnotateImagesResponse
+ * @function getTypeUrl
+ * @memberof google.cloud.vision.v1.BatchAnnotateImagesResponse
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ BatchAnnotateImagesResponse.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.cloud.vision.v1.BatchAnnotateImagesResponse";
+ };
+
+ return BatchAnnotateImagesResponse;
+ })();
+
+ v1.AnnotateFileRequest = (function() {
+
+ /**
+ * Properties of an AnnotateFileRequest.
+ * @memberof google.cloud.vision.v1
+ * @interface IAnnotateFileRequest
+ * @property {google.cloud.vision.v1.IInputConfig|null} [inputConfig] AnnotateFileRequest inputConfig
+ * @property {Array.|null} [features] AnnotateFileRequest features
+ * @property {google.cloud.vision.v1.IImageContext|null} [imageContext] AnnotateFileRequest imageContext
+ * @property {Array.|null} [pages] AnnotateFileRequest pages
+ */
+
+ /**
+ * Constructs a new AnnotateFileRequest.
+ * @memberof google.cloud.vision.v1
+ * @classdesc Represents an AnnotateFileRequest.
+ * @implements IAnnotateFileRequest
+ * @constructor
+ * @param {google.cloud.vision.v1.IAnnotateFileRequest=} [properties] Properties to set
+ */
+ function AnnotateFileRequest(properties) {
+ this.features = [];
+ this.pages = [];
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * AnnotateFileRequest inputConfig.
+ * @member {google.cloud.vision.v1.IInputConfig|null|undefined} inputConfig
+ * @memberof google.cloud.vision.v1.AnnotateFileRequest
+ * @instance
+ */
+ AnnotateFileRequest.prototype.inputConfig = null;
+
+ /**
+ * AnnotateFileRequest features.
+ * @member {Array.} features
+ * @memberof google.cloud.vision.v1.AnnotateFileRequest
+ * @instance
+ */
+ AnnotateFileRequest.prototype.features = $util.emptyArray;
+
+ /**
+ * AnnotateFileRequest imageContext.
+ * @member {google.cloud.vision.v1.IImageContext|null|undefined} imageContext
+ * @memberof google.cloud.vision.v1.AnnotateFileRequest
+ * @instance
+ */
+ AnnotateFileRequest.prototype.imageContext = null;
+
+ /**
+ * AnnotateFileRequest pages.
+ * @member {Array.} pages
+ * @memberof google.cloud.vision.v1.AnnotateFileRequest
+ * @instance
+ */
+ AnnotateFileRequest.prototype.pages = $util.emptyArray;
+
+ /**
+ * Creates a new AnnotateFileRequest instance using the specified properties.
+ * @function create
+ * @memberof google.cloud.vision.v1.AnnotateFileRequest
+ * @static
+ * @param {google.cloud.vision.v1.IAnnotateFileRequest=} [properties] Properties to set
+ * @returns {google.cloud.vision.v1.AnnotateFileRequest} AnnotateFileRequest instance
+ */
+ AnnotateFileRequest.create = function create(properties) {
+ return new AnnotateFileRequest(properties);
+ };
+
+ /**
+ * Encodes the specified AnnotateFileRequest message. Does not implicitly {@link google.cloud.vision.v1.AnnotateFileRequest.verify|verify} messages.
+ * @function encode
+ * @memberof google.cloud.vision.v1.AnnotateFileRequest
+ * @static
+ * @param {google.cloud.vision.v1.IAnnotateFileRequest} message AnnotateFileRequest message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ AnnotateFileRequest.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.inputConfig != null && Object.hasOwnProperty.call(message, "inputConfig"))
+ $root.google.cloud.vision.v1.InputConfig.encode(message.inputConfig, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim();
+ if (message.features != null && message.features.length)
+ for (var i = 0; i < message.features.length; ++i)
+ $root.google.cloud.vision.v1.Feature.encode(message.features[i], writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim();
+ if (message.imageContext != null && Object.hasOwnProperty.call(message, "imageContext"))
+ $root.google.cloud.vision.v1.ImageContext.encode(message.imageContext, writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim();
+ if (message.pages != null && message.pages.length) {
+ writer.uint32(/* id 4, wireType 2 =*/34).fork();
+ for (var i = 0; i < message.pages.length; ++i)
+ writer.int32(message.pages[i]);
+ writer.ldelim();
+ }
+ return writer;
+ };
+
+ /**
+ * Encodes the specified AnnotateFileRequest message, length delimited. Does not implicitly {@link google.cloud.vision.v1.AnnotateFileRequest.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.cloud.vision.v1.AnnotateFileRequest
+ * @static
+ * @param {google.cloud.vision.v1.IAnnotateFileRequest} message AnnotateFileRequest message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ AnnotateFileRequest.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes an AnnotateFileRequest message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.cloud.vision.v1.AnnotateFileRequest
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.cloud.vision.v1.AnnotateFileRequest} AnnotateFileRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ AnnotateFileRequest.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.vision.v1.AnnotateFileRequest();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.inputConfig = $root.google.cloud.vision.v1.InputConfig.decode(reader, reader.uint32());
+ break;
+ }
+ case 2: {
+ if (!(message.features && message.features.length))
+ message.features = [];
+ message.features.push($root.google.cloud.vision.v1.Feature.decode(reader, reader.uint32()));
+ break;
+ }
+ case 3: {
+ message.imageContext = $root.google.cloud.vision.v1.ImageContext.decode(reader, reader.uint32());
+ break;
+ }
+ case 4: {
+ if (!(message.pages && message.pages.length))
+ message.pages = [];
+ if ((tag & 7) === 2) {
+ var end2 = reader.uint32() + reader.pos;
+ while (reader.pos < end2)
+ message.pages.push(reader.int32());
+ } else
+ message.pages.push(reader.int32());
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes an AnnotateFileRequest message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.cloud.vision.v1.AnnotateFileRequest
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.cloud.vision.v1.AnnotateFileRequest} AnnotateFileRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ AnnotateFileRequest.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies an AnnotateFileRequest message.
+ * @function verify
+ * @memberof google.cloud.vision.v1.AnnotateFileRequest
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ AnnotateFileRequest.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.inputConfig != null && message.hasOwnProperty("inputConfig")) {
+ var error = $root.google.cloud.vision.v1.InputConfig.verify(message.inputConfig);
+ if (error)
+ return "inputConfig." + error;
+ }
+ if (message.features != null && message.hasOwnProperty("features")) {
+ if (!Array.isArray(message.features))
+ return "features: array expected";
+ for (var i = 0; i < message.features.length; ++i) {
+ var error = $root.google.cloud.vision.v1.Feature.verify(message.features[i]);
+ if (error)
+ return "features." + error;
+ }
+ }
+ if (message.imageContext != null && message.hasOwnProperty("imageContext")) {
+ var error = $root.google.cloud.vision.v1.ImageContext.verify(message.imageContext);
+ if (error)
+ return "imageContext." + error;
+ }
+ if (message.pages != null && message.hasOwnProperty("pages")) {
+ if (!Array.isArray(message.pages))
+ return "pages: array expected";
+ for (var i = 0; i < message.pages.length; ++i)
+ if (!$util.isInteger(message.pages[i]))
+ return "pages: integer[] expected";
+ }
+ return null;
+ };
+
+ /**
+ * Creates an AnnotateFileRequest message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.cloud.vision.v1.AnnotateFileRequest
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.cloud.vision.v1.AnnotateFileRequest} AnnotateFileRequest
+ */
+ AnnotateFileRequest.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.cloud.vision.v1.AnnotateFileRequest)
+ return object;
+ var message = new $root.google.cloud.vision.v1.AnnotateFileRequest();
+ if (object.inputConfig != null) {
+ if (typeof object.inputConfig !== "object")
+ throw TypeError(".google.cloud.vision.v1.AnnotateFileRequest.inputConfig: object expected");
+ message.inputConfig = $root.google.cloud.vision.v1.InputConfig.fromObject(object.inputConfig);
+ }
+ if (object.features) {
+ if (!Array.isArray(object.features))
+ throw TypeError(".google.cloud.vision.v1.AnnotateFileRequest.features: array expected");
+ message.features = [];
+ for (var i = 0; i < object.features.length; ++i) {
+ if (typeof object.features[i] !== "object")
+ throw TypeError(".google.cloud.vision.v1.AnnotateFileRequest.features: object expected");
+ message.features[i] = $root.google.cloud.vision.v1.Feature.fromObject(object.features[i]);
+ }
+ }
+ if (object.imageContext != null) {
+ if (typeof object.imageContext !== "object")
+ throw TypeError(".google.cloud.vision.v1.AnnotateFileRequest.imageContext: object expected");
+ message.imageContext = $root.google.cloud.vision.v1.ImageContext.fromObject(object.imageContext);
+ }
+ if (object.pages) {
+ if (!Array.isArray(object.pages))
+ throw TypeError(".google.cloud.vision.v1.AnnotateFileRequest.pages: array expected");
+ message.pages = [];
+ for (var i = 0; i < object.pages.length; ++i)
+ message.pages[i] = object.pages[i] | 0;
+ }
+ return message;
+ };
+
+ /**
+ * Creates a plain object from an AnnotateFileRequest message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.cloud.vision.v1.AnnotateFileRequest
+ * @static
+ * @param {google.cloud.vision.v1.AnnotateFileRequest} message AnnotateFileRequest
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ AnnotateFileRequest.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.arrays || options.defaults) {
+ object.features = [];
+ object.pages = [];
+ }
+ if (options.defaults) {
+ object.inputConfig = null;
+ object.imageContext = null;
+ }
+ if (message.inputConfig != null && message.hasOwnProperty("inputConfig"))
+ object.inputConfig = $root.google.cloud.vision.v1.InputConfig.toObject(message.inputConfig, options);
+ if (message.features && message.features.length) {
+ object.features = [];
+ for (var j = 0; j < message.features.length; ++j)
+ object.features[j] = $root.google.cloud.vision.v1.Feature.toObject(message.features[j], options);
+ }
+ if (message.imageContext != null && message.hasOwnProperty("imageContext"))
+ object.imageContext = $root.google.cloud.vision.v1.ImageContext.toObject(message.imageContext, options);
+ if (message.pages && message.pages.length) {
+ object.pages = [];
+ for (var j = 0; j < message.pages.length; ++j)
+ object.pages[j] = message.pages[j];
+ }
+ return object;
+ };
+
+ /**
+ * Converts this AnnotateFileRequest to JSON.
+ * @function toJSON
+ * @memberof google.cloud.vision.v1.AnnotateFileRequest
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ AnnotateFileRequest.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for AnnotateFileRequest
+ * @function getTypeUrl
+ * @memberof google.cloud.vision.v1.AnnotateFileRequest
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ AnnotateFileRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.cloud.vision.v1.AnnotateFileRequest";
+ };
+
+ return AnnotateFileRequest;
+ })();
+
+ v1.AnnotateFileResponse = (function() {
+
+ /**
+ * Properties of an AnnotateFileResponse.
+ * @memberof google.cloud.vision.v1
+ * @interface IAnnotateFileResponse
+ * @property {google.cloud.vision.v1.IInputConfig|null} [inputConfig] AnnotateFileResponse inputConfig
+ * @property {Array.|null} [responses] AnnotateFileResponse responses
+ * @property {number|null} [totalPages] AnnotateFileResponse totalPages
+ * @property {google.rpc.IStatus|null} [error] AnnotateFileResponse error
+ */
+
+ /**
+ * Constructs a new AnnotateFileResponse.
+ * @memberof google.cloud.vision.v1
+ * @classdesc Represents an AnnotateFileResponse.
+ * @implements IAnnotateFileResponse
+ * @constructor
+ * @param {google.cloud.vision.v1.IAnnotateFileResponse=} [properties] Properties to set
+ */
+ function AnnotateFileResponse(properties) {
+ this.responses = [];
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * AnnotateFileResponse inputConfig.
+ * @member {google.cloud.vision.v1.IInputConfig|null|undefined} inputConfig
+ * @memberof google.cloud.vision.v1.AnnotateFileResponse
+ * @instance
+ */
+ AnnotateFileResponse.prototype.inputConfig = null;
+
+ /**
+ * AnnotateFileResponse responses.
+ * @member {Array.} responses
+ * @memberof google.cloud.vision.v1.AnnotateFileResponse
+ * @instance
+ */
+ AnnotateFileResponse.prototype.responses = $util.emptyArray;
+
+ /**
+ * AnnotateFileResponse totalPages.
+ * @member {number} totalPages
+ * @memberof google.cloud.vision.v1.AnnotateFileResponse
+ * @instance
+ */
+ AnnotateFileResponse.prototype.totalPages = 0;
+
+ /**
+ * AnnotateFileResponse error.
+ * @member {google.rpc.IStatus|null|undefined} error
+ * @memberof google.cloud.vision.v1.AnnotateFileResponse
+ * @instance
+ */
+ AnnotateFileResponse.prototype.error = null;
+
+ /**
+ * Creates a new AnnotateFileResponse instance using the specified properties.
+ * @function create
+ * @memberof google.cloud.vision.v1.AnnotateFileResponse
+ * @static
+ * @param {google.cloud.vision.v1.IAnnotateFileResponse=} [properties] Properties to set
+ * @returns {google.cloud.vision.v1.AnnotateFileResponse} AnnotateFileResponse instance
+ */
+ AnnotateFileResponse.create = function create(properties) {
+ return new AnnotateFileResponse(properties);
+ };
+
+ /**
+ * Encodes the specified AnnotateFileResponse message. Does not implicitly {@link google.cloud.vision.v1.AnnotateFileResponse.verify|verify} messages.
+ * @function encode
+ * @memberof google.cloud.vision.v1.AnnotateFileResponse
+ * @static
+ * @param {google.cloud.vision.v1.IAnnotateFileResponse} message AnnotateFileResponse message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ AnnotateFileResponse.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.inputConfig != null && Object.hasOwnProperty.call(message, "inputConfig"))
+ $root.google.cloud.vision.v1.InputConfig.encode(message.inputConfig, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim();
+ if (message.responses != null && message.responses.length)
+ for (var i = 0; i < message.responses.length; ++i)
+ $root.google.cloud.vision.v1.AnnotateImageResponse.encode(message.responses[i], writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim();
+ if (message.totalPages != null && Object.hasOwnProperty.call(message, "totalPages"))
+ writer.uint32(/* id 3, wireType 0 =*/24).int32(message.totalPages);
+ if (message.error != null && Object.hasOwnProperty.call(message, "error"))
+ $root.google.rpc.Status.encode(message.error, writer.uint32(/* id 4, wireType 2 =*/34).fork()).ldelim();
+ return writer;
+ };
+
+ /**
+ * Encodes the specified AnnotateFileResponse message, length delimited. Does not implicitly {@link google.cloud.vision.v1.AnnotateFileResponse.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.cloud.vision.v1.AnnotateFileResponse
+ * @static
+ * @param {google.cloud.vision.v1.IAnnotateFileResponse} message AnnotateFileResponse message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ AnnotateFileResponse.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes an AnnotateFileResponse message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.cloud.vision.v1.AnnotateFileResponse
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.cloud.vision.v1.AnnotateFileResponse} AnnotateFileResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ AnnotateFileResponse.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.vision.v1.AnnotateFileResponse();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.inputConfig = $root.google.cloud.vision.v1.InputConfig.decode(reader, reader.uint32());
+ break;
+ }
+ case 2: {
+ if (!(message.responses && message.responses.length))
+ message.responses = [];
+ message.responses.push($root.google.cloud.vision.v1.AnnotateImageResponse.decode(reader, reader.uint32()));
+ break;
+ }
+ case 3: {
+ message.totalPages = reader.int32();
+ break;
+ }
+ case 4: {
+ message.error = $root.google.rpc.Status.decode(reader, reader.uint32());
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes an AnnotateFileResponse message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.cloud.vision.v1.AnnotateFileResponse
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.cloud.vision.v1.AnnotateFileResponse} AnnotateFileResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ AnnotateFileResponse.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies an AnnotateFileResponse message.
+ * @function verify
+ * @memberof google.cloud.vision.v1.AnnotateFileResponse
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ AnnotateFileResponse.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.inputConfig != null && message.hasOwnProperty("inputConfig")) {
+ var error = $root.google.cloud.vision.v1.InputConfig.verify(message.inputConfig);
+ if (error)
+ return "inputConfig." + error;
+ }
+ if (message.responses != null && message.hasOwnProperty("responses")) {
+ if (!Array.isArray(message.responses))
+ return "responses: array expected";
+ for (var i = 0; i < message.responses.length; ++i) {
+ var error = $root.google.cloud.vision.v1.AnnotateImageResponse.verify(message.responses[i]);
+ if (error)
+ return "responses." + error;
+ }
+ }
+ if (message.totalPages != null && message.hasOwnProperty("totalPages"))
+ if (!$util.isInteger(message.totalPages))
+ return "totalPages: integer expected";
+ if (message.error != null && message.hasOwnProperty("error")) {
+ var error = $root.google.rpc.Status.verify(message.error);
+ if (error)
+ return "error." + error;
+ }
+ return null;
+ };
+
+ /**
+ * Creates an AnnotateFileResponse message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.cloud.vision.v1.AnnotateFileResponse
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.cloud.vision.v1.AnnotateFileResponse} AnnotateFileResponse
+ */
+ AnnotateFileResponse.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.cloud.vision.v1.AnnotateFileResponse)
+ return object;
+ var message = new $root.google.cloud.vision.v1.AnnotateFileResponse();
+ if (object.inputConfig != null) {
+ if (typeof object.inputConfig !== "object")
+ throw TypeError(".google.cloud.vision.v1.AnnotateFileResponse.inputConfig: object expected");
+ message.inputConfig = $root.google.cloud.vision.v1.InputConfig.fromObject(object.inputConfig);
+ }
+ if (object.responses) {
+ if (!Array.isArray(object.responses))
+ throw TypeError(".google.cloud.vision.v1.AnnotateFileResponse.responses: array expected");
+ message.responses = [];
+ for (var i = 0; i < object.responses.length; ++i) {
+ if (typeof object.responses[i] !== "object")
+ throw TypeError(".google.cloud.vision.v1.AnnotateFileResponse.responses: object expected");
+ message.responses[i] = $root.google.cloud.vision.v1.AnnotateImageResponse.fromObject(object.responses[i]);
+ }
+ }
+ if (object.totalPages != null)
+ message.totalPages = object.totalPages | 0;
+ if (object.error != null) {
+ if (typeof object.error !== "object")
+ throw TypeError(".google.cloud.vision.v1.AnnotateFileResponse.error: object expected");
+ message.error = $root.google.rpc.Status.fromObject(object.error);
+ }
+ return message;
+ };
+
+ /**
+ * Creates a plain object from an AnnotateFileResponse message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.cloud.vision.v1.AnnotateFileResponse
+ * @static
+ * @param {google.cloud.vision.v1.AnnotateFileResponse} message AnnotateFileResponse
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ AnnotateFileResponse.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.arrays || options.defaults)
+ object.responses = [];
+ if (options.defaults) {
+ object.inputConfig = null;
+ object.totalPages = 0;
+ object.error = null;
+ }
+ if (message.inputConfig != null && message.hasOwnProperty("inputConfig"))
+ object.inputConfig = $root.google.cloud.vision.v1.InputConfig.toObject(message.inputConfig, options);
+ if (message.responses && message.responses.length) {
+ object.responses = [];
+ for (var j = 0; j < message.responses.length; ++j)
+ object.responses[j] = $root.google.cloud.vision.v1.AnnotateImageResponse.toObject(message.responses[j], options);
+ }
+ if (message.totalPages != null && message.hasOwnProperty("totalPages"))
+ object.totalPages = message.totalPages;
+ if (message.error != null && message.hasOwnProperty("error"))
+ object.error = $root.google.rpc.Status.toObject(message.error, options);
+ return object;
+ };
+
+ /**
+ * Converts this AnnotateFileResponse to JSON.
+ * @function toJSON
+ * @memberof google.cloud.vision.v1.AnnotateFileResponse
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ AnnotateFileResponse.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for AnnotateFileResponse
+ * @function getTypeUrl
+ * @memberof google.cloud.vision.v1.AnnotateFileResponse
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ AnnotateFileResponse.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.cloud.vision.v1.AnnotateFileResponse";
+ };
+
+ return AnnotateFileResponse;
+ })();
+
+ v1.BatchAnnotateFilesRequest = (function() {
+
+ /**
+ * Properties of a BatchAnnotateFilesRequest.
+ * @memberof google.cloud.vision.v1
+ * @interface IBatchAnnotateFilesRequest
+ * @property {Array.|null} [requests] BatchAnnotateFilesRequest requests
+ * @property {string|null} [parent] BatchAnnotateFilesRequest parent
+ */
+
+ /**
+ * Constructs a new BatchAnnotateFilesRequest.
+ * @memberof google.cloud.vision.v1
+ * @classdesc Represents a BatchAnnotateFilesRequest.
+ * @implements IBatchAnnotateFilesRequest
+ * @constructor
+ * @param {google.cloud.vision.v1.IBatchAnnotateFilesRequest=} [properties] Properties to set
+ */
+ function BatchAnnotateFilesRequest(properties) {
+ this.requests = [];
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * BatchAnnotateFilesRequest requests.
+ * @member {Array.} requests
+ * @memberof google.cloud.vision.v1.BatchAnnotateFilesRequest
+ * @instance
+ */
+ BatchAnnotateFilesRequest.prototype.requests = $util.emptyArray;
+
+ /**
+ * BatchAnnotateFilesRequest parent.
+ * @member {string} parent
+ * @memberof google.cloud.vision.v1.BatchAnnotateFilesRequest
+ * @instance
+ */
+ BatchAnnotateFilesRequest.prototype.parent = "";
+
+ /**
+ * Creates a new BatchAnnotateFilesRequest instance using the specified properties.
+ * @function create
+ * @memberof google.cloud.vision.v1.BatchAnnotateFilesRequest
+ * @static
+ * @param {google.cloud.vision.v1.IBatchAnnotateFilesRequest=} [properties] Properties to set
+ * @returns {google.cloud.vision.v1.BatchAnnotateFilesRequest} BatchAnnotateFilesRequest instance
+ */
+ BatchAnnotateFilesRequest.create = function create(properties) {
+ return new BatchAnnotateFilesRequest(properties);
+ };
+
+ /**
+ * Encodes the specified BatchAnnotateFilesRequest message. Does not implicitly {@link google.cloud.vision.v1.BatchAnnotateFilesRequest.verify|verify} messages.
+ * @function encode
+ * @memberof google.cloud.vision.v1.BatchAnnotateFilesRequest
+ * @static
+ * @param {google.cloud.vision.v1.IBatchAnnotateFilesRequest} message BatchAnnotateFilesRequest message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ BatchAnnotateFilesRequest.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.requests != null && message.requests.length)
+ for (var i = 0; i < message.requests.length; ++i)
+ $root.google.cloud.vision.v1.AnnotateFileRequest.encode(message.requests[i], writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim();
+ if (message.parent != null && Object.hasOwnProperty.call(message, "parent"))
+ writer.uint32(/* id 3, wireType 2 =*/26).string(message.parent);
+ return writer;
+ };
+
+ /**
+ * Encodes the specified BatchAnnotateFilesRequest message, length delimited. Does not implicitly {@link google.cloud.vision.v1.BatchAnnotateFilesRequest.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.cloud.vision.v1.BatchAnnotateFilesRequest
+ * @static
+ * @param {google.cloud.vision.v1.IBatchAnnotateFilesRequest} message BatchAnnotateFilesRequest message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ BatchAnnotateFilesRequest.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a BatchAnnotateFilesRequest message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.cloud.vision.v1.BatchAnnotateFilesRequest
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.cloud.vision.v1.BatchAnnotateFilesRequest} BatchAnnotateFilesRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ BatchAnnotateFilesRequest.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.vision.v1.BatchAnnotateFilesRequest();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ if (!(message.requests && message.requests.length))
+ message.requests = [];
+ message.requests.push($root.google.cloud.vision.v1.AnnotateFileRequest.decode(reader, reader.uint32()));
+ break;
+ }
+ case 3: {
+ message.parent = reader.string();
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a BatchAnnotateFilesRequest message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.cloud.vision.v1.BatchAnnotateFilesRequest
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.cloud.vision.v1.BatchAnnotateFilesRequest} BatchAnnotateFilesRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ BatchAnnotateFilesRequest.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a BatchAnnotateFilesRequest message.
+ * @function verify
+ * @memberof google.cloud.vision.v1.BatchAnnotateFilesRequest
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ BatchAnnotateFilesRequest.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.requests != null && message.hasOwnProperty("requests")) {
+ if (!Array.isArray(message.requests))
+ return "requests: array expected";
+ for (var i = 0; i < message.requests.length; ++i) {
+ var error = $root.google.cloud.vision.v1.AnnotateFileRequest.verify(message.requests[i]);
+ if (error)
+ return "requests." + error;
+ }
+ }
+ if (message.parent != null && message.hasOwnProperty("parent"))
+ if (!$util.isString(message.parent))
+ return "parent: string expected";
+ return null;
+ };
+
+ /**
+ * Creates a BatchAnnotateFilesRequest message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.cloud.vision.v1.BatchAnnotateFilesRequest
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.cloud.vision.v1.BatchAnnotateFilesRequest} BatchAnnotateFilesRequest
+ */
+ BatchAnnotateFilesRequest.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.cloud.vision.v1.BatchAnnotateFilesRequest)
+ return object;
+ var message = new $root.google.cloud.vision.v1.BatchAnnotateFilesRequest();
+ if (object.requests) {
+ if (!Array.isArray(object.requests))
+ throw TypeError(".google.cloud.vision.v1.BatchAnnotateFilesRequest.requests: array expected");
+ message.requests = [];
+ for (var i = 0; i < object.requests.length; ++i) {
+ if (typeof object.requests[i] !== "object")
+ throw TypeError(".google.cloud.vision.v1.BatchAnnotateFilesRequest.requests: object expected");
+ message.requests[i] = $root.google.cloud.vision.v1.AnnotateFileRequest.fromObject(object.requests[i]);
+ }
+ }
+ if (object.parent != null)
+ message.parent = String(object.parent);
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a BatchAnnotateFilesRequest message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.cloud.vision.v1.BatchAnnotateFilesRequest
+ * @static
+ * @param {google.cloud.vision.v1.BatchAnnotateFilesRequest} message BatchAnnotateFilesRequest
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ BatchAnnotateFilesRequest.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.arrays || options.defaults)
+ object.requests = [];
+ if (options.defaults)
+ object.parent = "";
+ if (message.requests && message.requests.length) {
+ object.requests = [];
+ for (var j = 0; j < message.requests.length; ++j)
+ object.requests[j] = $root.google.cloud.vision.v1.AnnotateFileRequest.toObject(message.requests[j], options);
+ }
+ if (message.parent != null && message.hasOwnProperty("parent"))
+ object.parent = message.parent;
+ return object;
+ };
+
+ /**
+ * Converts this BatchAnnotateFilesRequest to JSON.
+ * @function toJSON
+ * @memberof google.cloud.vision.v1.BatchAnnotateFilesRequest
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ BatchAnnotateFilesRequest.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for BatchAnnotateFilesRequest
+ * @function getTypeUrl
+ * @memberof google.cloud.vision.v1.BatchAnnotateFilesRequest
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ BatchAnnotateFilesRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.cloud.vision.v1.BatchAnnotateFilesRequest";
+ };
+
+ return BatchAnnotateFilesRequest;
+ })();
+
+ v1.BatchAnnotateFilesResponse = (function() {
+
+ /**
+ * Properties of a BatchAnnotateFilesResponse.
+ * @memberof google.cloud.vision.v1
+ * @interface IBatchAnnotateFilesResponse
+ * @property {Array.|null} [responses] BatchAnnotateFilesResponse responses
+ */
+
+ /**
+ * Constructs a new BatchAnnotateFilesResponse.
+ * @memberof google.cloud.vision.v1
+ * @classdesc Represents a BatchAnnotateFilesResponse.
+ * @implements IBatchAnnotateFilesResponse
+ * @constructor
+ * @param {google.cloud.vision.v1.IBatchAnnotateFilesResponse=} [properties] Properties to set
+ */
+ function BatchAnnotateFilesResponse(properties) {
+ this.responses = [];
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * BatchAnnotateFilesResponse responses.
+ * @member {Array.} responses
+ * @memberof google.cloud.vision.v1.BatchAnnotateFilesResponse
+ * @instance
+ */
+ BatchAnnotateFilesResponse.prototype.responses = $util.emptyArray;
+
+ /**
+ * Creates a new BatchAnnotateFilesResponse instance using the specified properties.
+ * @function create
+ * @memberof google.cloud.vision.v1.BatchAnnotateFilesResponse
+ * @static
+ * @param {google.cloud.vision.v1.IBatchAnnotateFilesResponse=} [properties] Properties to set
+ * @returns {google.cloud.vision.v1.BatchAnnotateFilesResponse} BatchAnnotateFilesResponse instance
+ */
+ BatchAnnotateFilesResponse.create = function create(properties) {
+ return new BatchAnnotateFilesResponse(properties);
+ };
+
+ /**
+ * Encodes the specified BatchAnnotateFilesResponse message. Does not implicitly {@link google.cloud.vision.v1.BatchAnnotateFilesResponse.verify|verify} messages.
+ * @function encode
+ * @memberof google.cloud.vision.v1.BatchAnnotateFilesResponse
+ * @static
+ * @param {google.cloud.vision.v1.IBatchAnnotateFilesResponse} message BatchAnnotateFilesResponse message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ BatchAnnotateFilesResponse.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.responses != null && message.responses.length)
+ for (var i = 0; i < message.responses.length; ++i)
+ $root.google.cloud.vision.v1.AnnotateFileResponse.encode(message.responses[i], writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim();
+ return writer;
+ };
+
+ /**
+ * Encodes the specified BatchAnnotateFilesResponse message, length delimited. Does not implicitly {@link google.cloud.vision.v1.BatchAnnotateFilesResponse.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.cloud.vision.v1.BatchAnnotateFilesResponse
+ * @static
+ * @param {google.cloud.vision.v1.IBatchAnnotateFilesResponse} message BatchAnnotateFilesResponse message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ BatchAnnotateFilesResponse.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a BatchAnnotateFilesResponse message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.cloud.vision.v1.BatchAnnotateFilesResponse
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.cloud.vision.v1.BatchAnnotateFilesResponse} BatchAnnotateFilesResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ BatchAnnotateFilesResponse.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.vision.v1.BatchAnnotateFilesResponse();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ if (!(message.responses && message.responses.length))
+ message.responses = [];
+ message.responses.push($root.google.cloud.vision.v1.AnnotateFileResponse.decode(reader, reader.uint32()));
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a BatchAnnotateFilesResponse message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.cloud.vision.v1.BatchAnnotateFilesResponse
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.cloud.vision.v1.BatchAnnotateFilesResponse} BatchAnnotateFilesResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ BatchAnnotateFilesResponse.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a BatchAnnotateFilesResponse message.
+ * @function verify
+ * @memberof google.cloud.vision.v1.BatchAnnotateFilesResponse
+ * @static
+ * @param {Object.