1// Copyright 2019 Google LLC.
2//
3// Licensed under the Apache License, Version 2.0 (the "License");
4// you may not use this file except in compliance with the License.
5// You may obtain a copy of the License at
6//
7//     http://www.apache.org/licenses/LICENSE-2.0
8//
9// Unless required by applicable law or agreed to in writing, software
10// distributed under the License is distributed on an "AS IS" BASIS,
11// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12// See the License for the specific language governing permissions and
13// limitations under the License.
14//
15
16// Code generated by protoc-gen-go. DO NOT EDIT.
17// versions:
18// 	protoc-gen-go v1.25.0
19// 	protoc        v3.13.0
20// source: google/cloud/vision/v1/text_annotation.proto
21
22package vision
23
24import (
25	reflect "reflect"
26	sync "sync"
27
28	proto "github.com/golang/protobuf/proto"
29	_ "google.golang.org/genproto/googleapis/api/annotations"
30	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
31	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
32)
33
34const (
35	// Verify that this generated code is sufficiently up-to-date.
36	_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
37	// Verify that runtime/protoimpl is sufficiently up-to-date.
38	_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
39)
40
41// This is a compile-time assertion that a sufficiently up-to-date version
42// of the legacy proto package is being used.
43const _ = proto.ProtoPackageIsVersion4
44
45// Enum to denote the type of break found. New line, space etc.
46type TextAnnotation_DetectedBreak_BreakType int32
47
48const (
49	// Unknown break label type.
50	TextAnnotation_DetectedBreak_UNKNOWN TextAnnotation_DetectedBreak_BreakType = 0
51	// Regular space.
52	TextAnnotation_DetectedBreak_SPACE TextAnnotation_DetectedBreak_BreakType = 1
53	// Sure space (very wide).
54	TextAnnotation_DetectedBreak_SURE_SPACE TextAnnotation_DetectedBreak_BreakType = 2
55	// Line-wrapping break.
56	TextAnnotation_DetectedBreak_EOL_SURE_SPACE TextAnnotation_DetectedBreak_BreakType = 3
57	// End-line hyphen that is not present in text; does not co-occur with
58	// `SPACE`, `LEADER_SPACE`, or `LINE_BREAK`.
59	TextAnnotation_DetectedBreak_HYPHEN TextAnnotation_DetectedBreak_BreakType = 4
60	// Line break that ends a paragraph.
61	TextAnnotation_DetectedBreak_LINE_BREAK TextAnnotation_DetectedBreak_BreakType = 5
62)
63
64// Enum value maps for TextAnnotation_DetectedBreak_BreakType.
65var (
66	TextAnnotation_DetectedBreak_BreakType_name = map[int32]string{
67		0: "UNKNOWN",
68		1: "SPACE",
69		2: "SURE_SPACE",
70		3: "EOL_SURE_SPACE",
71		4: "HYPHEN",
72		5: "LINE_BREAK",
73	}
74	TextAnnotation_DetectedBreak_BreakType_value = map[string]int32{
75		"UNKNOWN":        0,
76		"SPACE":          1,
77		"SURE_SPACE":     2,
78		"EOL_SURE_SPACE": 3,
79		"HYPHEN":         4,
80		"LINE_BREAK":     5,
81	}
82)
83
84func (x TextAnnotation_DetectedBreak_BreakType) Enum() *TextAnnotation_DetectedBreak_BreakType {
85	p := new(TextAnnotation_DetectedBreak_BreakType)
86	*p = x
87	return p
88}
89
90func (x TextAnnotation_DetectedBreak_BreakType) String() string {
91	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
92}
93
94func (TextAnnotation_DetectedBreak_BreakType) Descriptor() protoreflect.EnumDescriptor {
95	return file_google_cloud_vision_v1_text_annotation_proto_enumTypes[0].Descriptor()
96}
97
98func (TextAnnotation_DetectedBreak_BreakType) Type() protoreflect.EnumType {
99	return &file_google_cloud_vision_v1_text_annotation_proto_enumTypes[0]
100}
101
102func (x TextAnnotation_DetectedBreak_BreakType) Number() protoreflect.EnumNumber {
103	return protoreflect.EnumNumber(x)
104}
105
106// Deprecated: Use TextAnnotation_DetectedBreak_BreakType.Descriptor instead.
107func (TextAnnotation_DetectedBreak_BreakType) EnumDescriptor() ([]byte, []int) {
108	return file_google_cloud_vision_v1_text_annotation_proto_rawDescGZIP(), []int{0, 1, 0}
109}
110
111// Type of a block (text, image etc) as identified by OCR.
112type Block_BlockType int32
113
114const (
115	// Unknown block type.
116	Block_UNKNOWN Block_BlockType = 0
117	// Regular text block.
118	Block_TEXT Block_BlockType = 1
119	// Table block.
120	Block_TABLE Block_BlockType = 2
121	// Image block.
122	Block_PICTURE Block_BlockType = 3
123	// Horizontal/vertical line box.
124	Block_RULER Block_BlockType = 4
125	// Barcode block.
126	Block_BARCODE Block_BlockType = 5
127)
128
129// Enum value maps for Block_BlockType.
130var (
131	Block_BlockType_name = map[int32]string{
132		0: "UNKNOWN",
133		1: "TEXT",
134		2: "TABLE",
135		3: "PICTURE",
136		4: "RULER",
137		5: "BARCODE",
138	}
139	Block_BlockType_value = map[string]int32{
140		"UNKNOWN": 0,
141		"TEXT":    1,
142		"TABLE":   2,
143		"PICTURE": 3,
144		"RULER":   4,
145		"BARCODE": 5,
146	}
147)
148
149func (x Block_BlockType) Enum() *Block_BlockType {
150	p := new(Block_BlockType)
151	*p = x
152	return p
153}
154
155func (x Block_BlockType) String() string {
156	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
157}
158
159func (Block_BlockType) Descriptor() protoreflect.EnumDescriptor {
160	return file_google_cloud_vision_v1_text_annotation_proto_enumTypes[1].Descriptor()
161}
162
163func (Block_BlockType) Type() protoreflect.EnumType {
164	return &file_google_cloud_vision_v1_text_annotation_proto_enumTypes[1]
165}
166
167func (x Block_BlockType) Number() protoreflect.EnumNumber {
168	return protoreflect.EnumNumber(x)
169}
170
171// Deprecated: Use Block_BlockType.Descriptor instead.
172func (Block_BlockType) EnumDescriptor() ([]byte, []int) {
173	return file_google_cloud_vision_v1_text_annotation_proto_rawDescGZIP(), []int{2, 0}
174}
175
176// TextAnnotation contains a structured representation of OCR extracted text.
177// The hierarchy of an OCR extracted text structure is like this:
178//     TextAnnotation -> Page -> Block -> Paragraph -> Word -> Symbol
179// Each structural component, starting from Page, may further have their own
180// properties. Properties describe detected languages, breaks etc.. Please refer
181// to the [TextAnnotation.TextProperty][google.cloud.vision.v1.TextAnnotation.TextProperty] message definition below for more
182// detail.
183type TextAnnotation struct {
184	state         protoimpl.MessageState
185	sizeCache     protoimpl.SizeCache
186	unknownFields protoimpl.UnknownFields
187
188	// List of pages detected by OCR.
189	Pages []*Page `protobuf:"bytes,1,rep,name=pages,proto3" json:"pages,omitempty"`
190	// UTF-8 text detected on the pages.
191	Text string `protobuf:"bytes,2,opt,name=text,proto3" json:"text,omitempty"`
192}
193
194func (x *TextAnnotation) Reset() {
195	*x = TextAnnotation{}
196	if protoimpl.UnsafeEnabled {
197		mi := &file_google_cloud_vision_v1_text_annotation_proto_msgTypes[0]
198		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
199		ms.StoreMessageInfo(mi)
200	}
201}
202
203func (x *TextAnnotation) String() string {
204	return protoimpl.X.MessageStringOf(x)
205}
206
207func (*TextAnnotation) ProtoMessage() {}
208
209func (x *TextAnnotation) ProtoReflect() protoreflect.Message {
210	mi := &file_google_cloud_vision_v1_text_annotation_proto_msgTypes[0]
211	if protoimpl.UnsafeEnabled && x != nil {
212		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
213		if ms.LoadMessageInfo() == nil {
214			ms.StoreMessageInfo(mi)
215		}
216		return ms
217	}
218	return mi.MessageOf(x)
219}
220
221// Deprecated: Use TextAnnotation.ProtoReflect.Descriptor instead.
222func (*TextAnnotation) Descriptor() ([]byte, []int) {
223	return file_google_cloud_vision_v1_text_annotation_proto_rawDescGZIP(), []int{0}
224}
225
226func (x *TextAnnotation) GetPages() []*Page {
227	if x != nil {
228		return x.Pages
229	}
230	return nil
231}
232
233func (x *TextAnnotation) GetText() string {
234	if x != nil {
235		return x.Text
236	}
237	return ""
238}
239
240// Detected page from OCR.
241type Page struct {
242	state         protoimpl.MessageState
243	sizeCache     protoimpl.SizeCache
244	unknownFields protoimpl.UnknownFields
245
246	// Additional information detected on the page.
247	Property *TextAnnotation_TextProperty `protobuf:"bytes,1,opt,name=property,proto3" json:"property,omitempty"`
248	// Page width. For PDFs the unit is points. For images (including
249	// TIFFs) the unit is pixels.
250	Width int32 `protobuf:"varint,2,opt,name=width,proto3" json:"width,omitempty"`
251	// Page height. For PDFs the unit is points. For images (including
252	// TIFFs) the unit is pixels.
253	Height int32 `protobuf:"varint,3,opt,name=height,proto3" json:"height,omitempty"`
254	// List of blocks of text, images etc on this page.
255	Blocks []*Block `protobuf:"bytes,4,rep,name=blocks,proto3" json:"blocks,omitempty"`
256	// Confidence of the OCR results on the page. Range [0, 1].
257	Confidence float32 `protobuf:"fixed32,5,opt,name=confidence,proto3" json:"confidence,omitempty"`
258}
259
260func (x *Page) Reset() {
261	*x = Page{}
262	if protoimpl.UnsafeEnabled {
263		mi := &file_google_cloud_vision_v1_text_annotation_proto_msgTypes[1]
264		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
265		ms.StoreMessageInfo(mi)
266	}
267}
268
269func (x *Page) String() string {
270	return protoimpl.X.MessageStringOf(x)
271}
272
273func (*Page) ProtoMessage() {}
274
275func (x *Page) ProtoReflect() protoreflect.Message {
276	mi := &file_google_cloud_vision_v1_text_annotation_proto_msgTypes[1]
277	if protoimpl.UnsafeEnabled && x != nil {
278		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
279		if ms.LoadMessageInfo() == nil {
280			ms.StoreMessageInfo(mi)
281		}
282		return ms
283	}
284	return mi.MessageOf(x)
285}
286
287// Deprecated: Use Page.ProtoReflect.Descriptor instead.
288func (*Page) Descriptor() ([]byte, []int) {
289	return file_google_cloud_vision_v1_text_annotation_proto_rawDescGZIP(), []int{1}
290}
291
292func (x *Page) GetProperty() *TextAnnotation_TextProperty {
293	if x != nil {
294		return x.Property
295	}
296	return nil
297}
298
299func (x *Page) GetWidth() int32 {
300	if x != nil {
301		return x.Width
302	}
303	return 0
304}
305
306func (x *Page) GetHeight() int32 {
307	if x != nil {
308		return x.Height
309	}
310	return 0
311}
312
313func (x *Page) GetBlocks() []*Block {
314	if x != nil {
315		return x.Blocks
316	}
317	return nil
318}
319
320func (x *Page) GetConfidence() float32 {
321	if x != nil {
322		return x.Confidence
323	}
324	return 0
325}
326
327// Logical element on the page.
328type Block struct {
329	state         protoimpl.MessageState
330	sizeCache     protoimpl.SizeCache
331	unknownFields protoimpl.UnknownFields
332
333	// Additional information detected for the block.
334	Property *TextAnnotation_TextProperty `protobuf:"bytes,1,opt,name=property,proto3" json:"property,omitempty"`
335	// The bounding box for the block.
336	// The vertices are in the order of top-left, top-right, bottom-right,
337	// bottom-left. When a rotation of the bounding box is detected the rotation
338	// is represented as around the top-left corner as defined when the text is
339	// read in the 'natural' orientation.
340	// For example:
341	//
342	// * when the text is horizontal it might look like:
343	//
344	//         0----1
345	//         |    |
346	//         3----2
347	//
348	// * when it's rotated 180 degrees around the top-left corner it becomes:
349	//
350	//         2----3
351	//         |    |
352	//         1----0
353	//
354	//   and the vertex order will still be (0, 1, 2, 3).
355	BoundingBox *BoundingPoly `protobuf:"bytes,2,opt,name=bounding_box,json=boundingBox,proto3" json:"bounding_box,omitempty"`
356	// List of paragraphs in this block (if this blocks is of type text).
357	Paragraphs []*Paragraph `protobuf:"bytes,3,rep,name=paragraphs,proto3" json:"paragraphs,omitempty"`
358	// Detected block type (text, image etc) for this block.
359	BlockType Block_BlockType `protobuf:"varint,4,opt,name=block_type,json=blockType,proto3,enum=google.cloud.vision.v1.Block_BlockType" json:"block_type,omitempty"`
360	// Confidence of the OCR results on the block. Range [0, 1].
361	Confidence float32 `protobuf:"fixed32,5,opt,name=confidence,proto3" json:"confidence,omitempty"`
362}
363
364func (x *Block) Reset() {
365	*x = Block{}
366	if protoimpl.UnsafeEnabled {
367		mi := &file_google_cloud_vision_v1_text_annotation_proto_msgTypes[2]
368		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
369		ms.StoreMessageInfo(mi)
370	}
371}
372
373func (x *Block) String() string {
374	return protoimpl.X.MessageStringOf(x)
375}
376
377func (*Block) ProtoMessage() {}
378
379func (x *Block) ProtoReflect() protoreflect.Message {
380	mi := &file_google_cloud_vision_v1_text_annotation_proto_msgTypes[2]
381	if protoimpl.UnsafeEnabled && x != nil {
382		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
383		if ms.LoadMessageInfo() == nil {
384			ms.StoreMessageInfo(mi)
385		}
386		return ms
387	}
388	return mi.MessageOf(x)
389}
390
391// Deprecated: Use Block.ProtoReflect.Descriptor instead.
392func (*Block) Descriptor() ([]byte, []int) {
393	return file_google_cloud_vision_v1_text_annotation_proto_rawDescGZIP(), []int{2}
394}
395
396func (x *Block) GetProperty() *TextAnnotation_TextProperty {
397	if x != nil {
398		return x.Property
399	}
400	return nil
401}
402
403func (x *Block) GetBoundingBox() *BoundingPoly {
404	if x != nil {
405		return x.BoundingBox
406	}
407	return nil
408}
409
410func (x *Block) GetParagraphs() []*Paragraph {
411	if x != nil {
412		return x.Paragraphs
413	}
414	return nil
415}
416
417func (x *Block) GetBlockType() Block_BlockType {
418	if x != nil {
419		return x.BlockType
420	}
421	return Block_UNKNOWN
422}
423
424func (x *Block) GetConfidence() float32 {
425	if x != nil {
426		return x.Confidence
427	}
428	return 0
429}
430
431// Structural unit of text representing a number of words in certain order.
432type Paragraph struct {
433	state         protoimpl.MessageState
434	sizeCache     protoimpl.SizeCache
435	unknownFields protoimpl.UnknownFields
436
437	// Additional information detected for the paragraph.
438	Property *TextAnnotation_TextProperty `protobuf:"bytes,1,opt,name=property,proto3" json:"property,omitempty"`
439	// The bounding box for the paragraph.
440	// The vertices are in the order of top-left, top-right, bottom-right,
441	// bottom-left. When a rotation of the bounding box is detected the rotation
442	// is represented as around the top-left corner as defined when the text is
443	// read in the 'natural' orientation.
444	// For example:
445	//   * when the text is horizontal it might look like:
446	//      0----1
447	//      |    |
448	//      3----2
449	//   * when it's rotated 180 degrees around the top-left corner it becomes:
450	//      2----3
451	//      |    |
452	//      1----0
453	//   and the vertex order will still be (0, 1, 2, 3).
454	BoundingBox *BoundingPoly `protobuf:"bytes,2,opt,name=bounding_box,json=boundingBox,proto3" json:"bounding_box,omitempty"`
455	// List of all words in this paragraph.
456	Words []*Word `protobuf:"bytes,3,rep,name=words,proto3" json:"words,omitempty"`
457	// Confidence of the OCR results for the paragraph. Range [0, 1].
458	Confidence float32 `protobuf:"fixed32,4,opt,name=confidence,proto3" json:"confidence,omitempty"`
459}
460
461func (x *Paragraph) Reset() {
462	*x = Paragraph{}
463	if protoimpl.UnsafeEnabled {
464		mi := &file_google_cloud_vision_v1_text_annotation_proto_msgTypes[3]
465		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
466		ms.StoreMessageInfo(mi)
467	}
468}
469
470func (x *Paragraph) String() string {
471	return protoimpl.X.MessageStringOf(x)
472}
473
474func (*Paragraph) ProtoMessage() {}
475
476func (x *Paragraph) ProtoReflect() protoreflect.Message {
477	mi := &file_google_cloud_vision_v1_text_annotation_proto_msgTypes[3]
478	if protoimpl.UnsafeEnabled && x != nil {
479		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
480		if ms.LoadMessageInfo() == nil {
481			ms.StoreMessageInfo(mi)
482		}
483		return ms
484	}
485	return mi.MessageOf(x)
486}
487
488// Deprecated: Use Paragraph.ProtoReflect.Descriptor instead.
489func (*Paragraph) Descriptor() ([]byte, []int) {
490	return file_google_cloud_vision_v1_text_annotation_proto_rawDescGZIP(), []int{3}
491}
492
493func (x *Paragraph) GetProperty() *TextAnnotation_TextProperty {
494	if x != nil {
495		return x.Property
496	}
497	return nil
498}
499
500func (x *Paragraph) GetBoundingBox() *BoundingPoly {
501	if x != nil {
502		return x.BoundingBox
503	}
504	return nil
505}
506
507func (x *Paragraph) GetWords() []*Word {
508	if x != nil {
509		return x.Words
510	}
511	return nil
512}
513
514func (x *Paragraph) GetConfidence() float32 {
515	if x != nil {
516		return x.Confidence
517	}
518	return 0
519}
520
521// A word representation.
522type Word struct {
523	state         protoimpl.MessageState
524	sizeCache     protoimpl.SizeCache
525	unknownFields protoimpl.UnknownFields
526
527	// Additional information detected for the word.
528	Property *TextAnnotation_TextProperty `protobuf:"bytes,1,opt,name=property,proto3" json:"property,omitempty"`
529	// The bounding box for the word.
530	// The vertices are in the order of top-left, top-right, bottom-right,
531	// bottom-left. When a rotation of the bounding box is detected the rotation
532	// is represented as around the top-left corner as defined when the text is
533	// read in the 'natural' orientation.
534	// For example:
535	//   * when the text is horizontal it might look like:
536	//      0----1
537	//      |    |
538	//      3----2
539	//   * when it's rotated 180 degrees around the top-left corner it becomes:
540	//      2----3
541	//      |    |
542	//      1----0
543	//   and the vertex order will still be (0, 1, 2, 3).
544	BoundingBox *BoundingPoly `protobuf:"bytes,2,opt,name=bounding_box,json=boundingBox,proto3" json:"bounding_box,omitempty"`
545	// List of symbols in the word.
546	// The order of the symbols follows the natural reading order.
547	Symbols []*Symbol `protobuf:"bytes,3,rep,name=symbols,proto3" json:"symbols,omitempty"`
548	// Confidence of the OCR results for the word. Range [0, 1].
549	Confidence float32 `protobuf:"fixed32,4,opt,name=confidence,proto3" json:"confidence,omitempty"`
550}
551
552func (x *Word) Reset() {
553	*x = Word{}
554	if protoimpl.UnsafeEnabled {
555		mi := &file_google_cloud_vision_v1_text_annotation_proto_msgTypes[4]
556		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
557		ms.StoreMessageInfo(mi)
558	}
559}
560
561func (x *Word) String() string {
562	return protoimpl.X.MessageStringOf(x)
563}
564
565func (*Word) ProtoMessage() {}
566
567func (x *Word) ProtoReflect() protoreflect.Message {
568	mi := &file_google_cloud_vision_v1_text_annotation_proto_msgTypes[4]
569	if protoimpl.UnsafeEnabled && x != nil {
570		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
571		if ms.LoadMessageInfo() == nil {
572			ms.StoreMessageInfo(mi)
573		}
574		return ms
575	}
576	return mi.MessageOf(x)
577}
578
579// Deprecated: Use Word.ProtoReflect.Descriptor instead.
580func (*Word) Descriptor() ([]byte, []int) {
581	return file_google_cloud_vision_v1_text_annotation_proto_rawDescGZIP(), []int{4}
582}
583
584func (x *Word) GetProperty() *TextAnnotation_TextProperty {
585	if x != nil {
586		return x.Property
587	}
588	return nil
589}
590
591func (x *Word) GetBoundingBox() *BoundingPoly {
592	if x != nil {
593		return x.BoundingBox
594	}
595	return nil
596}
597
598func (x *Word) GetSymbols() []*Symbol {
599	if x != nil {
600		return x.Symbols
601	}
602	return nil
603}
604
605func (x *Word) GetConfidence() float32 {
606	if x != nil {
607		return x.Confidence
608	}
609	return 0
610}
611
612// A single symbol representation.
613type Symbol struct {
614	state         protoimpl.MessageState
615	sizeCache     protoimpl.SizeCache
616	unknownFields protoimpl.UnknownFields
617
618	// Additional information detected for the symbol.
619	Property *TextAnnotation_TextProperty `protobuf:"bytes,1,opt,name=property,proto3" json:"property,omitempty"`
620	// The bounding box for the symbol.
621	// The vertices are in the order of top-left, top-right, bottom-right,
622	// bottom-left. When a rotation of the bounding box is detected the rotation
623	// is represented as around the top-left corner as defined when the text is
624	// read in the 'natural' orientation.
625	// For example:
626	//   * when the text is horizontal it might look like:
627	//      0----1
628	//      |    |
629	//      3----2
630	//   * when it's rotated 180 degrees around the top-left corner it becomes:
631	//      2----3
632	//      |    |
633	//      1----0
634	//   and the vertex order will still be (0, 1, 2, 3).
635	BoundingBox *BoundingPoly `protobuf:"bytes,2,opt,name=bounding_box,json=boundingBox,proto3" json:"bounding_box,omitempty"`
636	// The actual UTF-8 representation of the symbol.
637	Text string `protobuf:"bytes,3,opt,name=text,proto3" json:"text,omitempty"`
638	// Confidence of the OCR results for the symbol. Range [0, 1].
639	Confidence float32 `protobuf:"fixed32,4,opt,name=confidence,proto3" json:"confidence,omitempty"`
640}
641
642func (x *Symbol) Reset() {
643	*x = Symbol{}
644	if protoimpl.UnsafeEnabled {
645		mi := &file_google_cloud_vision_v1_text_annotation_proto_msgTypes[5]
646		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
647		ms.StoreMessageInfo(mi)
648	}
649}
650
651func (x *Symbol) String() string {
652	return protoimpl.X.MessageStringOf(x)
653}
654
655func (*Symbol) ProtoMessage() {}
656
657func (x *Symbol) ProtoReflect() protoreflect.Message {
658	mi := &file_google_cloud_vision_v1_text_annotation_proto_msgTypes[5]
659	if protoimpl.UnsafeEnabled && x != nil {
660		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
661		if ms.LoadMessageInfo() == nil {
662			ms.StoreMessageInfo(mi)
663		}
664		return ms
665	}
666	return mi.MessageOf(x)
667}
668
669// Deprecated: Use Symbol.ProtoReflect.Descriptor instead.
670func (*Symbol) Descriptor() ([]byte, []int) {
671	return file_google_cloud_vision_v1_text_annotation_proto_rawDescGZIP(), []int{5}
672}
673
674func (x *Symbol) GetProperty() *TextAnnotation_TextProperty {
675	if x != nil {
676		return x.Property
677	}
678	return nil
679}
680
681func (x *Symbol) GetBoundingBox() *BoundingPoly {
682	if x != nil {
683		return x.BoundingBox
684	}
685	return nil
686}
687
688func (x *Symbol) GetText() string {
689	if x != nil {
690		return x.Text
691	}
692	return ""
693}
694
695func (x *Symbol) GetConfidence() float32 {
696	if x != nil {
697		return x.Confidence
698	}
699	return 0
700}
701
702// Detected language for a structural component.
703type TextAnnotation_DetectedLanguage struct {
704	state         protoimpl.MessageState
705	sizeCache     protoimpl.SizeCache
706	unknownFields protoimpl.UnknownFields
707
708	// The BCP-47 language code, such as "en-US" or "sr-Latn". For more
709	// information, see
710	// http://www.unicode.org/reports/tr35/#Unicode_locale_identifier.
711	LanguageCode string `protobuf:"bytes,1,opt,name=language_code,json=languageCode,proto3" json:"language_code,omitempty"`
712	// Confidence of detected language. Range [0, 1].
713	Confidence float32 `protobuf:"fixed32,2,opt,name=confidence,proto3" json:"confidence,omitempty"`
714}
715
716func (x *TextAnnotation_DetectedLanguage) Reset() {
717	*x = TextAnnotation_DetectedLanguage{}
718	if protoimpl.UnsafeEnabled {
719		mi := &file_google_cloud_vision_v1_text_annotation_proto_msgTypes[6]
720		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
721		ms.StoreMessageInfo(mi)
722	}
723}
724
725func (x *TextAnnotation_DetectedLanguage) String() string {
726	return protoimpl.X.MessageStringOf(x)
727}
728
729func (*TextAnnotation_DetectedLanguage) ProtoMessage() {}
730
731func (x *TextAnnotation_DetectedLanguage) ProtoReflect() protoreflect.Message {
732	mi := &file_google_cloud_vision_v1_text_annotation_proto_msgTypes[6]
733	if protoimpl.UnsafeEnabled && x != nil {
734		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
735		if ms.LoadMessageInfo() == nil {
736			ms.StoreMessageInfo(mi)
737		}
738		return ms
739	}
740	return mi.MessageOf(x)
741}
742
743// Deprecated: Use TextAnnotation_DetectedLanguage.ProtoReflect.Descriptor instead.
744func (*TextAnnotation_DetectedLanguage) Descriptor() ([]byte, []int) {
745	return file_google_cloud_vision_v1_text_annotation_proto_rawDescGZIP(), []int{0, 0}
746}
747
748func (x *TextAnnotation_DetectedLanguage) GetLanguageCode() string {
749	if x != nil {
750		return x.LanguageCode
751	}
752	return ""
753}
754
755func (x *TextAnnotation_DetectedLanguage) GetConfidence() float32 {
756	if x != nil {
757		return x.Confidence
758	}
759	return 0
760}
761
762// Detected start or end of a structural component.
763type TextAnnotation_DetectedBreak struct {
764	state         protoimpl.MessageState
765	sizeCache     protoimpl.SizeCache
766	unknownFields protoimpl.UnknownFields
767
768	// Detected break type.
769	Type TextAnnotation_DetectedBreak_BreakType `protobuf:"varint,1,opt,name=type,proto3,enum=google.cloud.vision.v1.TextAnnotation_DetectedBreak_BreakType" json:"type,omitempty"`
770	// True if break prepends the element.
771	IsPrefix bool `protobuf:"varint,2,opt,name=is_prefix,json=isPrefix,proto3" json:"is_prefix,omitempty"`
772}
773
774func (x *TextAnnotation_DetectedBreak) Reset() {
775	*x = TextAnnotation_DetectedBreak{}
776	if protoimpl.UnsafeEnabled {
777		mi := &file_google_cloud_vision_v1_text_annotation_proto_msgTypes[7]
778		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
779		ms.StoreMessageInfo(mi)
780	}
781}
782
783func (x *TextAnnotation_DetectedBreak) String() string {
784	return protoimpl.X.MessageStringOf(x)
785}
786
787func (*TextAnnotation_DetectedBreak) ProtoMessage() {}
788
789func (x *TextAnnotation_DetectedBreak) ProtoReflect() protoreflect.Message {
790	mi := &file_google_cloud_vision_v1_text_annotation_proto_msgTypes[7]
791	if protoimpl.UnsafeEnabled && x != nil {
792		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
793		if ms.LoadMessageInfo() == nil {
794			ms.StoreMessageInfo(mi)
795		}
796		return ms
797	}
798	return mi.MessageOf(x)
799}
800
801// Deprecated: Use TextAnnotation_DetectedBreak.ProtoReflect.Descriptor instead.
802func (*TextAnnotation_DetectedBreak) Descriptor() ([]byte, []int) {
803	return file_google_cloud_vision_v1_text_annotation_proto_rawDescGZIP(), []int{0, 1}
804}
805
806func (x *TextAnnotation_DetectedBreak) GetType() TextAnnotation_DetectedBreak_BreakType {
807	if x != nil {
808		return x.Type
809	}
810	return TextAnnotation_DetectedBreak_UNKNOWN
811}
812
813func (x *TextAnnotation_DetectedBreak) GetIsPrefix() bool {
814	if x != nil {
815		return x.IsPrefix
816	}
817	return false
818}
819
820// Additional information detected on the structural component.
821type TextAnnotation_TextProperty struct {
822	state         protoimpl.MessageState
823	sizeCache     protoimpl.SizeCache
824	unknownFields protoimpl.UnknownFields
825
826	// A list of detected languages together with confidence.
827	DetectedLanguages []*TextAnnotation_DetectedLanguage `protobuf:"bytes,1,rep,name=detected_languages,json=detectedLanguages,proto3" json:"detected_languages,omitempty"`
828	// Detected start or end of a text segment.
829	DetectedBreak *TextAnnotation_DetectedBreak `protobuf:"bytes,2,opt,name=detected_break,json=detectedBreak,proto3" json:"detected_break,omitempty"`
830}
831
832func (x *TextAnnotation_TextProperty) Reset() {
833	*x = TextAnnotation_TextProperty{}
834	if protoimpl.UnsafeEnabled {
835		mi := &file_google_cloud_vision_v1_text_annotation_proto_msgTypes[8]
836		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
837		ms.StoreMessageInfo(mi)
838	}
839}
840
841func (x *TextAnnotation_TextProperty) String() string {
842	return protoimpl.X.MessageStringOf(x)
843}
844
845func (*TextAnnotation_TextProperty) ProtoMessage() {}
846
847func (x *TextAnnotation_TextProperty) ProtoReflect() protoreflect.Message {
848	mi := &file_google_cloud_vision_v1_text_annotation_proto_msgTypes[8]
849	if protoimpl.UnsafeEnabled && x != nil {
850		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
851		if ms.LoadMessageInfo() == nil {
852			ms.StoreMessageInfo(mi)
853		}
854		return ms
855	}
856	return mi.MessageOf(x)
857}
858
859// Deprecated: Use TextAnnotation_TextProperty.ProtoReflect.Descriptor instead.
860func (*TextAnnotation_TextProperty) Descriptor() ([]byte, []int) {
861	return file_google_cloud_vision_v1_text_annotation_proto_rawDescGZIP(), []int{0, 2}
862}
863
864func (x *TextAnnotation_TextProperty) GetDetectedLanguages() []*TextAnnotation_DetectedLanguage {
865	if x != nil {
866		return x.DetectedLanguages
867	}
868	return nil
869}
870
871func (x *TextAnnotation_TextProperty) GetDetectedBreak() *TextAnnotation_DetectedBreak {
872	if x != nil {
873		return x.DetectedBreak
874	}
875	return nil
876}
877
878var File_google_cloud_vision_v1_text_annotation_proto protoreflect.FileDescriptor
879
880var file_google_cloud_vision_v1_text_annotation_proto_rawDesc = []byte{
881	0x0a, 0x2c, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x76,
882	0x69, 0x73, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x31, 0x2f, 0x74, 0x65, 0x78, 0x74, 0x5f, 0x61, 0x6e,
883	0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x16,
884	0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73,
885	0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x1a, 0x25, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x63,
886	0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x31, 0x2f, 0x67,
887	0x65, 0x6f, 0x6d, 0x65, 0x74, 0x72, 0x79, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1c, 0x67,
888	0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61,
889	0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xef, 0x04, 0x0a, 0x0e,
890	0x54, 0x65, 0x78, 0x74, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x32,
891	0x0a, 0x05, 0x70, 0x61, 0x67, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1c, 0x2e,
892	0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73,
893	0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x61, 0x67, 0x65, 0x52, 0x05, 0x70, 0x61, 0x67,
894	0x65, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x65, 0x78, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09,
895	0x52, 0x04, 0x74, 0x65, 0x78, 0x74, 0x1a, 0x57, 0x0a, 0x10, 0x44, 0x65, 0x74, 0x65, 0x63, 0x74,
896	0x65, 0x64, 0x4c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x6c, 0x61,
897	0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x5f, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28,
898	0x09, 0x52, 0x0c, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x64, 0x65, 0x12,
899	0x1e, 0x0a, 0x0a, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x64, 0x65, 0x6e, 0x63, 0x65, 0x18, 0x02, 0x20,
900	0x01, 0x28, 0x02, 0x52, 0x0a, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x64, 0x65, 0x6e, 0x63, 0x65, 0x1a,
901	0xe5, 0x01, 0x0a, 0x0d, 0x44, 0x65, 0x74, 0x65, 0x63, 0x74, 0x65, 0x64, 0x42, 0x72, 0x65, 0x61,
902	0x6b, 0x12, 0x52, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32,
903	0x3e, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76,
904	0x69, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x54, 0x65, 0x78, 0x74, 0x41, 0x6e, 0x6e,
905	0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x44, 0x65, 0x74, 0x65, 0x63, 0x74, 0x65, 0x64,
906	0x42, 0x72, 0x65, 0x61, 0x6b, 0x2e, 0x42, 0x72, 0x65, 0x61, 0x6b, 0x54, 0x79, 0x70, 0x65, 0x52,
907	0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x69, 0x73, 0x5f, 0x70, 0x72, 0x65, 0x66,
908	0x69, 0x78, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x69, 0x73, 0x50, 0x72, 0x65, 0x66,
909	0x69, 0x78, 0x22, 0x63, 0x0a, 0x09, 0x42, 0x72, 0x65, 0x61, 0x6b, 0x54, 0x79, 0x70, 0x65, 0x12,
910	0x0b, 0x0a, 0x07, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x10, 0x00, 0x12, 0x09, 0x0a, 0x05,
911	0x53, 0x50, 0x41, 0x43, 0x45, 0x10, 0x01, 0x12, 0x0e, 0x0a, 0x0a, 0x53, 0x55, 0x52, 0x45, 0x5f,
912	0x53, 0x50, 0x41, 0x43, 0x45, 0x10, 0x02, 0x12, 0x12, 0x0a, 0x0e, 0x45, 0x4f, 0x4c, 0x5f, 0x53,
913	0x55, 0x52, 0x45, 0x5f, 0x53, 0x50, 0x41, 0x43, 0x45, 0x10, 0x03, 0x12, 0x0a, 0x0a, 0x06, 0x48,
914	0x59, 0x50, 0x48, 0x45, 0x4e, 0x10, 0x04, 0x12, 0x0e, 0x0a, 0x0a, 0x4c, 0x49, 0x4e, 0x45, 0x5f,
915	0x42, 0x52, 0x45, 0x41, 0x4b, 0x10, 0x05, 0x1a, 0xd3, 0x01, 0x0a, 0x0c, 0x54, 0x65, 0x78, 0x74,
916	0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x12, 0x66, 0x0a, 0x12, 0x64, 0x65, 0x74, 0x65,
917	0x63, 0x74, 0x65, 0x64, 0x5f, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x73, 0x18, 0x01,
918	0x20, 0x03, 0x28, 0x0b, 0x32, 0x37, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c,
919	0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x54, 0x65,
920	0x78, 0x74, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x44, 0x65, 0x74,
921	0x65, 0x63, 0x74, 0x65, 0x64, 0x4c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x52, 0x11, 0x64,
922	0x65, 0x74, 0x65, 0x63, 0x74, 0x65, 0x64, 0x4c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x73,
923	0x12, 0x5b, 0x0a, 0x0e, 0x64, 0x65, 0x74, 0x65, 0x63, 0x74, 0x65, 0x64, 0x5f, 0x62, 0x72, 0x65,
924	0x61, 0x6b, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x34, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
925	0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x76,
926	0x31, 0x2e, 0x54, 0x65, 0x78, 0x74, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e,
927	0x2e, 0x44, 0x65, 0x74, 0x65, 0x63, 0x74, 0x65, 0x64, 0x42, 0x72, 0x65, 0x61, 0x6b, 0x52, 0x0d,
928	0x64, 0x65, 0x74, 0x65, 0x63, 0x74, 0x65, 0x64, 0x42, 0x72, 0x65, 0x61, 0x6b, 0x22, 0xdc, 0x01,
929	0x0a, 0x04, 0x50, 0x61, 0x67, 0x65, 0x12, 0x4f, 0x0a, 0x08, 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72,
930	0x74, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x33, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
931	0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x76,
932	0x31, 0x2e, 0x54, 0x65, 0x78, 0x74, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e,
933	0x2e, 0x54, 0x65, 0x78, 0x74, 0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x52, 0x08, 0x70,
934	0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x77, 0x69, 0x64, 0x74, 0x68,
935	0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x77, 0x69, 0x64, 0x74, 0x68, 0x12, 0x16, 0x0a,
936	0x06, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x68,
937	0x65, 0x69, 0x67, 0x68, 0x74, 0x12, 0x35, 0x0a, 0x06, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x73, 0x18,
938	0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63,
939	0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x42,
940	0x6c, 0x6f, 0x63, 0x6b, 0x52, 0x06, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x73, 0x12, 0x1e, 0x0a, 0x0a,
941	0x63, 0x6f, 0x6e, 0x66, 0x69, 0x64, 0x65, 0x6e, 0x63, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x02,
942	0x52, 0x0a, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x64, 0x65, 0x6e, 0x63, 0x65, 0x22, 0xa0, 0x03, 0x0a,
943	0x05, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x12, 0x4f, 0x0a, 0x08, 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72,
944	0x74, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x33, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
945	0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x76,
946	0x31, 0x2e, 0x54, 0x65, 0x78, 0x74, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e,
947	0x2e, 0x54, 0x65, 0x78, 0x74, 0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x52, 0x08, 0x70,
948	0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x12, 0x47, 0x0a, 0x0c, 0x62, 0x6f, 0x75, 0x6e, 0x64,
949	0x69, 0x6e, 0x67, 0x5f, 0x62, 0x6f, 0x78, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e,
950	0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73,
951	0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x42, 0x6f, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x50,
952	0x6f, 0x6c, 0x79, 0x52, 0x0b, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x42, 0x6f, 0x78,
953	0x12, 0x41, 0x0a, 0x0a, 0x70, 0x61, 0x72, 0x61, 0x67, 0x72, 0x61, 0x70, 0x68, 0x73, 0x18, 0x03,
954	0x20, 0x03, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c,
955	0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x61,
956	0x72, 0x61, 0x67, 0x72, 0x61, 0x70, 0x68, 0x52, 0x0a, 0x70, 0x61, 0x72, 0x61, 0x67, 0x72, 0x61,
957	0x70, 0x68, 0x73, 0x12, 0x46, 0x0a, 0x0a, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x5f, 0x74, 0x79, 0x70,
958	0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x27, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
959	0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31,
960	0x2e, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x54, 0x79, 0x70, 0x65,
961	0x52, 0x09, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x63,
962	0x6f, 0x6e, 0x66, 0x69, 0x64, 0x65, 0x6e, 0x63, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x02, 0x52,
963	0x0a, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x64, 0x65, 0x6e, 0x63, 0x65, 0x22, 0x52, 0x0a, 0x09, 0x42,
964	0x6c, 0x6f, 0x63, 0x6b, 0x54, 0x79, 0x70, 0x65, 0x12, 0x0b, 0x0a, 0x07, 0x55, 0x4e, 0x4b, 0x4e,
965	0x4f, 0x57, 0x4e, 0x10, 0x00, 0x12, 0x08, 0x0a, 0x04, 0x54, 0x45, 0x58, 0x54, 0x10, 0x01, 0x12,
966	0x09, 0x0a, 0x05, 0x54, 0x41, 0x42, 0x4c, 0x45, 0x10, 0x02, 0x12, 0x0b, 0x0a, 0x07, 0x50, 0x49,
967	0x43, 0x54, 0x55, 0x52, 0x45, 0x10, 0x03, 0x12, 0x09, 0x0a, 0x05, 0x52, 0x55, 0x4c, 0x45, 0x52,
968	0x10, 0x04, 0x12, 0x0b, 0x0a, 0x07, 0x42, 0x41, 0x52, 0x43, 0x4f, 0x44, 0x45, 0x10, 0x05, 0x22,
969	0xf9, 0x01, 0x0a, 0x09, 0x50, 0x61, 0x72, 0x61, 0x67, 0x72, 0x61, 0x70, 0x68, 0x12, 0x4f, 0x0a,
970	0x08, 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32,
971	0x33, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76,
972	0x69, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x54, 0x65, 0x78, 0x74, 0x41, 0x6e, 0x6e,
973	0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x54, 0x65, 0x78, 0x74, 0x50, 0x72, 0x6f, 0x70,
974	0x65, 0x72, 0x74, 0x79, 0x52, 0x08, 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x12, 0x47,
975	0x0a, 0x0c, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x62, 0x6f, 0x78, 0x18, 0x02,
976	0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c,
977	0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x42, 0x6f,
978	0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x50, 0x6f, 0x6c, 0x79, 0x52, 0x0b, 0x62, 0x6f, 0x75, 0x6e,
979	0x64, 0x69, 0x6e, 0x67, 0x42, 0x6f, 0x78, 0x12, 0x32, 0x0a, 0x05, 0x77, 0x6f, 0x72, 0x64, 0x73,
980	0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
981	0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x2e,
982	0x57, 0x6f, 0x72, 0x64, 0x52, 0x05, 0x77, 0x6f, 0x72, 0x64, 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x63,
983	0x6f, 0x6e, 0x66, 0x69, 0x64, 0x65, 0x6e, 0x63, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x02, 0x52,
984	0x0a, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x64, 0x65, 0x6e, 0x63, 0x65, 0x22, 0xfa, 0x01, 0x0a, 0x04,
985	0x57, 0x6f, 0x72, 0x64, 0x12, 0x4f, 0x0a, 0x08, 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79,
986	0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x33, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
987	0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x2e,
988	0x54, 0x65, 0x78, 0x74, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x54,
989	0x65, 0x78, 0x74, 0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x52, 0x08, 0x70, 0x72, 0x6f,
990	0x70, 0x65, 0x72, 0x74, 0x79, 0x12, 0x47, 0x0a, 0x0c, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x69, 0x6e,
991	0x67, 0x5f, 0x62, 0x6f, 0x78, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x67, 0x6f,
992	0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f,
993	0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x42, 0x6f, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x50, 0x6f, 0x6c,
994	0x79, 0x52, 0x0b, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x42, 0x6f, 0x78, 0x12, 0x38,
995	0x0a, 0x07, 0x73, 0x79, 0x6d, 0x62, 0x6f, 0x6c, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32,
996	0x1e, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76,
997	0x69, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x79, 0x6d, 0x62, 0x6f, 0x6c, 0x52,
998	0x07, 0x73, 0x79, 0x6d, 0x62, 0x6f, 0x6c, 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x63, 0x6f, 0x6e, 0x66,
999	0x69, 0x64, 0x65, 0x6e, 0x63, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0a, 0x63, 0x6f,
1000	0x6e, 0x66, 0x69, 0x64, 0x65, 0x6e, 0x63, 0x65, 0x22, 0xd6, 0x01, 0x0a, 0x06, 0x53, 0x79, 0x6d,
1001	0x62, 0x6f, 0x6c, 0x12, 0x4f, 0x0a, 0x08, 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x18,
1002	0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x33, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63,
1003	0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x54,
1004	0x65, 0x78, 0x74, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x54, 0x65,
1005	0x78, 0x74, 0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x52, 0x08, 0x70, 0x72, 0x6f, 0x70,
1006	0x65, 0x72, 0x74, 0x79, 0x12, 0x47, 0x0a, 0x0c, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67,
1007	0x5f, 0x62, 0x6f, 0x78, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x67, 0x6f, 0x6f,
1008	0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e,
1009	0x2e, 0x76, 0x31, 0x2e, 0x42, 0x6f, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x50, 0x6f, 0x6c, 0x79,
1010	0x52, 0x0b, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x42, 0x6f, 0x78, 0x12, 0x12, 0x0a,
1011	0x04, 0x74, 0x65, 0x78, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x65, 0x78,
1012	0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x64, 0x65, 0x6e, 0x63, 0x65, 0x18,
1013	0x04, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0a, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x64, 0x65, 0x6e, 0x63,
1014	0x65, 0x42, 0x7b, 0x0a, 0x1a, 0x63, 0x6f, 0x6d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
1015	0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x42,
1016	0x13, 0x54, 0x65, 0x78, 0x74, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50,
1017	0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x3c, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x67,
1018	0x6f, 0x6c, 0x61, 0x6e, 0x67, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x67, 0x65, 0x6e, 0x70, 0x72, 0x6f,
1019	0x74, 0x6f, 0x2f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2f, 0x63, 0x6c,
1020	0x6f, 0x75, 0x64, 0x2f, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x31, 0x3b, 0x76, 0x69,
1021	0x73, 0x69, 0x6f, 0x6e, 0xf8, 0x01, 0x01, 0xa2, 0x02, 0x04, 0x47, 0x43, 0x56, 0x4e, 0x62, 0x06,
1022	0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
1023}
1024
1025var (
1026	file_google_cloud_vision_v1_text_annotation_proto_rawDescOnce sync.Once
1027	file_google_cloud_vision_v1_text_annotation_proto_rawDescData = file_google_cloud_vision_v1_text_annotation_proto_rawDesc
1028)
1029
1030func file_google_cloud_vision_v1_text_annotation_proto_rawDescGZIP() []byte {
1031	file_google_cloud_vision_v1_text_annotation_proto_rawDescOnce.Do(func() {
1032		file_google_cloud_vision_v1_text_annotation_proto_rawDescData = protoimpl.X.CompressGZIP(file_google_cloud_vision_v1_text_annotation_proto_rawDescData)
1033	})
1034	return file_google_cloud_vision_v1_text_annotation_proto_rawDescData
1035}
1036
1037var file_google_cloud_vision_v1_text_annotation_proto_enumTypes = make([]protoimpl.EnumInfo, 2)
1038var file_google_cloud_vision_v1_text_annotation_proto_msgTypes = make([]protoimpl.MessageInfo, 9)
1039var file_google_cloud_vision_v1_text_annotation_proto_goTypes = []interface{}{
1040	(TextAnnotation_DetectedBreak_BreakType)(0), // 0: google.cloud.vision.v1.TextAnnotation.DetectedBreak.BreakType
1041	(Block_BlockType)(0),                        // 1: google.cloud.vision.v1.Block.BlockType
1042	(*TextAnnotation)(nil),                      // 2: google.cloud.vision.v1.TextAnnotation
1043	(*Page)(nil),                                // 3: google.cloud.vision.v1.Page
1044	(*Block)(nil),                               // 4: google.cloud.vision.v1.Block
1045	(*Paragraph)(nil),                           // 5: google.cloud.vision.v1.Paragraph
1046	(*Word)(nil),                                // 6: google.cloud.vision.v1.Word
1047	(*Symbol)(nil),                              // 7: google.cloud.vision.v1.Symbol
1048	(*TextAnnotation_DetectedLanguage)(nil),     // 8: google.cloud.vision.v1.TextAnnotation.DetectedLanguage
1049	(*TextAnnotation_DetectedBreak)(nil),        // 9: google.cloud.vision.v1.TextAnnotation.DetectedBreak
1050	(*TextAnnotation_TextProperty)(nil),         // 10: google.cloud.vision.v1.TextAnnotation.TextProperty
1051	(*BoundingPoly)(nil),                        // 11: google.cloud.vision.v1.BoundingPoly
1052}
1053var file_google_cloud_vision_v1_text_annotation_proto_depIdxs = []int32{
1054	3,  // 0: google.cloud.vision.v1.TextAnnotation.pages:type_name -> google.cloud.vision.v1.Page
1055	10, // 1: google.cloud.vision.v1.Page.property:type_name -> google.cloud.vision.v1.TextAnnotation.TextProperty
1056	4,  // 2: google.cloud.vision.v1.Page.blocks:type_name -> google.cloud.vision.v1.Block
1057	10, // 3: google.cloud.vision.v1.Block.property:type_name -> google.cloud.vision.v1.TextAnnotation.TextProperty
1058	11, // 4: google.cloud.vision.v1.Block.bounding_box:type_name -> google.cloud.vision.v1.BoundingPoly
1059	5,  // 5: google.cloud.vision.v1.Block.paragraphs:type_name -> google.cloud.vision.v1.Paragraph
1060	1,  // 6: google.cloud.vision.v1.Block.block_type:type_name -> google.cloud.vision.v1.Block.BlockType
1061	10, // 7: google.cloud.vision.v1.Paragraph.property:type_name -> google.cloud.vision.v1.TextAnnotation.TextProperty
1062	11, // 8: google.cloud.vision.v1.Paragraph.bounding_box:type_name -> google.cloud.vision.v1.BoundingPoly
1063	6,  // 9: google.cloud.vision.v1.Paragraph.words:type_name -> google.cloud.vision.v1.Word
1064	10, // 10: google.cloud.vision.v1.Word.property:type_name -> google.cloud.vision.v1.TextAnnotation.TextProperty
1065	11, // 11: google.cloud.vision.v1.Word.bounding_box:type_name -> google.cloud.vision.v1.BoundingPoly
1066	7,  // 12: google.cloud.vision.v1.Word.symbols:type_name -> google.cloud.vision.v1.Symbol
1067	10, // 13: google.cloud.vision.v1.Symbol.property:type_name -> google.cloud.vision.v1.TextAnnotation.TextProperty
1068	11, // 14: google.cloud.vision.v1.Symbol.bounding_box:type_name -> google.cloud.vision.v1.BoundingPoly
1069	0,  // 15: google.cloud.vision.v1.TextAnnotation.DetectedBreak.type:type_name -> google.cloud.vision.v1.TextAnnotation.DetectedBreak.BreakType
1070	8,  // 16: google.cloud.vision.v1.TextAnnotation.TextProperty.detected_languages:type_name -> google.cloud.vision.v1.TextAnnotation.DetectedLanguage
1071	9,  // 17: google.cloud.vision.v1.TextAnnotation.TextProperty.detected_break:type_name -> google.cloud.vision.v1.TextAnnotation.DetectedBreak
1072	18, // [18:18] is the sub-list for method output_type
1073	18, // [18:18] is the sub-list for method input_type
1074	18, // [18:18] is the sub-list for extension type_name
1075	18, // [18:18] is the sub-list for extension extendee
1076	0,  // [0:18] is the sub-list for field type_name
1077}
1078
1079func init() { file_google_cloud_vision_v1_text_annotation_proto_init() }
1080func file_google_cloud_vision_v1_text_annotation_proto_init() {
1081	if File_google_cloud_vision_v1_text_annotation_proto != nil {
1082		return
1083	}
1084	file_google_cloud_vision_v1_geometry_proto_init()
1085	if !protoimpl.UnsafeEnabled {
1086		file_google_cloud_vision_v1_text_annotation_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
1087			switch v := v.(*TextAnnotation); i {
1088			case 0:
1089				return &v.state
1090			case 1:
1091				return &v.sizeCache
1092			case 2:
1093				return &v.unknownFields
1094			default:
1095				return nil
1096			}
1097		}
1098		file_google_cloud_vision_v1_text_annotation_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
1099			switch v := v.(*Page); i {
1100			case 0:
1101				return &v.state
1102			case 1:
1103				return &v.sizeCache
1104			case 2:
1105				return &v.unknownFields
1106			default:
1107				return nil
1108			}
1109		}
1110		file_google_cloud_vision_v1_text_annotation_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
1111			switch v := v.(*Block); i {
1112			case 0:
1113				return &v.state
1114			case 1:
1115				return &v.sizeCache
1116			case 2:
1117				return &v.unknownFields
1118			default:
1119				return nil
1120			}
1121		}
1122		file_google_cloud_vision_v1_text_annotation_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
1123			switch v := v.(*Paragraph); i {
1124			case 0:
1125				return &v.state
1126			case 1:
1127				return &v.sizeCache
1128			case 2:
1129				return &v.unknownFields
1130			default:
1131				return nil
1132			}
1133		}
1134		file_google_cloud_vision_v1_text_annotation_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
1135			switch v := v.(*Word); i {
1136			case 0:
1137				return &v.state
1138			case 1:
1139				return &v.sizeCache
1140			case 2:
1141				return &v.unknownFields
1142			default:
1143				return nil
1144			}
1145		}
1146		file_google_cloud_vision_v1_text_annotation_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
1147			switch v := v.(*Symbol); i {
1148			case 0:
1149				return &v.state
1150			case 1:
1151				return &v.sizeCache
1152			case 2:
1153				return &v.unknownFields
1154			default:
1155				return nil
1156			}
1157		}
1158		file_google_cloud_vision_v1_text_annotation_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
1159			switch v := v.(*TextAnnotation_DetectedLanguage); i {
1160			case 0:
1161				return &v.state
1162			case 1:
1163				return &v.sizeCache
1164			case 2:
1165				return &v.unknownFields
1166			default:
1167				return nil
1168			}
1169		}
1170		file_google_cloud_vision_v1_text_annotation_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
1171			switch v := v.(*TextAnnotation_DetectedBreak); i {
1172			case 0:
1173				return &v.state
1174			case 1:
1175				return &v.sizeCache
1176			case 2:
1177				return &v.unknownFields
1178			default:
1179				return nil
1180			}
1181		}
1182		file_google_cloud_vision_v1_text_annotation_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} {
1183			switch v := v.(*TextAnnotation_TextProperty); i {
1184			case 0:
1185				return &v.state
1186			case 1:
1187				return &v.sizeCache
1188			case 2:
1189				return &v.unknownFields
1190			default:
1191				return nil
1192			}
1193		}
1194	}
1195	type x struct{}
1196	out := protoimpl.TypeBuilder{
1197		File: protoimpl.DescBuilder{
1198			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
1199			RawDescriptor: file_google_cloud_vision_v1_text_annotation_proto_rawDesc,
1200			NumEnums:      2,
1201			NumMessages:   9,
1202			NumExtensions: 0,
1203			NumServices:   0,
1204		},
1205		GoTypes:           file_google_cloud_vision_v1_text_annotation_proto_goTypes,
1206		DependencyIndexes: file_google_cloud_vision_v1_text_annotation_proto_depIdxs,
1207		EnumInfos:         file_google_cloud_vision_v1_text_annotation_proto_enumTypes,
1208		MessageInfos:      file_google_cloud_vision_v1_text_annotation_proto_msgTypes,
1209	}.Build()
1210	File_google_cloud_vision_v1_text_annotation_proto = out.File
1211	file_google_cloud_vision_v1_text_annotation_proto_rawDesc = nil
1212	file_google_cloud_vision_v1_text_annotation_proto_goTypes = nil
1213	file_google_cloud_vision_v1_text_annotation_proto_depIdxs = nil
1214}
1215