// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// 	protoc-gen-go v1.36.11
// 	protoc        v6.33.1
// source: internal/tool/grpctool/test/test.proto

package test

import (
	reflect "reflect"
	sync "sync"
	unsafe "unsafe"

	_ "buf.build/gen/go/bufbuild/protovalidate/protocolbuffers/go/buf/validate"
	_ "gitlab.com/gitlab-org/cluster-integration/tunnel/tool/streamvisitor/automata"
	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
)

const (
	// Verify that this generated code is sufficiently up-to-date.
	_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
	// Verify that runtime/protoimpl is sufficiently up-to-date.
	_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
)

type Enum1 int32

const (
	Enum1_v1 Enum1 = 0
	Enum1_v2 Enum1 = 1
)

// Enum value maps for Enum1.
var (
	Enum1_name = map[int32]string{
		0: "v1",
		1: "v2",
	}
	Enum1_value = map[string]int32{
		"v1": 0,
		"v2": 1,
	}
)

func (x Enum1) Enum() *Enum1 {
	p := new(Enum1)
	*p = x
	return p
}

func (x Enum1) String() string {
	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}

func (Enum1) Descriptor() protoreflect.EnumDescriptor {
	return file_internal_tool_grpctool_test_test_proto_enumTypes[0].Descriptor()
}

func (Enum1) Type() protoreflect.EnumType {
	return &file_internal_tool_grpctool_test_test_proto_enumTypes[0]
}

func (x Enum1) Number() protoreflect.EnumNumber {
	return protoreflect.EnumNumber(x)
}

// Deprecated: Use Enum1.Descriptor instead.
func (Enum1) EnumDescriptor() ([]byte, []int) {
	return file_internal_tool_grpctool_test_test_proto_rawDescGZIP(), []int{0}
}

type Request struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	S1            string                 `protobuf:"bytes,1,opt,name=s1,proto3" json:"s1,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *Request) Reset() {
	*x = Request{}
	mi := &file_internal_tool_grpctool_test_test_proto_msgTypes[0]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *Request) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*Request) ProtoMessage() {}

func (x *Request) ProtoReflect() protoreflect.Message {
	mi := &file_internal_tool_grpctool_test_test_proto_msgTypes[0]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use Request.ProtoReflect.Descriptor instead.
func (*Request) Descriptor() ([]byte, []int) {
	return file_internal_tool_grpctool_test_test_proto_rawDescGZIP(), []int{0}
}

func (x *Request) GetS1() string {
	if x != nil {
		return x.S1
	}
	return ""
}

type Response struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Types that are valid to be assigned to Message:
	//
	//	*Response_Scalar
	//	*Response_X1
	//	*Response_Data_
	//	*Response_Last_
	Message       isResponse_Message `protobuf_oneof:"message"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *Response) Reset() {
	*x = Response{}
	mi := &file_internal_tool_grpctool_test_test_proto_msgTypes[1]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *Response) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*Response) ProtoMessage() {}

func (x *Response) ProtoReflect() protoreflect.Message {
	mi := &file_internal_tool_grpctool_test_test_proto_msgTypes[1]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use Response.ProtoReflect.Descriptor instead.
func (*Response) Descriptor() ([]byte, []int) {
	return file_internal_tool_grpctool_test_test_proto_rawDescGZIP(), []int{1}
}

func (x *Response) GetMessage() isResponse_Message {
	if x != nil {
		return x.Message
	}
	return nil
}

func (x *Response) GetScalar() int64 {
	if x != nil {
		if x, ok := x.Message.(*Response_Scalar); ok {
			return x.Scalar
		}
	}
	return 0
}

func (x *Response) GetX1() Enum1 {
	if x != nil {
		if x, ok := x.Message.(*Response_X1); ok {
			return x.X1
		}
	}
	return Enum1_v1
}

func (x *Response) GetData() *Response_Data {
	if x != nil {
		if x, ok := x.Message.(*Response_Data_); ok {
			return x.Data
		}
	}
	return nil
}

func (x *Response) GetLast() *Response_Last {
	if x != nil {
		if x, ok := x.Message.(*Response_Last_); ok {
			return x.Last
		}
	}
	return nil
}

type isResponse_Message interface {
	isResponse_Message()
}

type Response_Scalar struct {
	Scalar int64 `protobuf:"varint,1,opt,name=scalar,proto3,oneof"`
}

type Response_X1 struct {
	X1 Enum1 `protobuf:"varint,2,opt,name=x1,proto3,enum=gitlab.agent.grpctool.test.Enum1,oneof"`
}

type Response_Data_ struct {
	Data *Response_Data `protobuf:"bytes,3,opt,name=data,proto3,oneof"`
}

type Response_Last_ struct {
	Last *Response_Last `protobuf:"bytes,4,opt,name=last,proto3,oneof"`
}

func (*Response_Scalar) isResponse_Message() {}

func (*Response_X1) isResponse_Message() {}

func (*Response_Data_) isResponse_Message() {}

func (*Response_Last_) isResponse_Message() {}

type NoOneofs struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *NoOneofs) Reset() {
	*x = NoOneofs{}
	mi := &file_internal_tool_grpctool_test_test_proto_msgTypes[2]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *NoOneofs) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*NoOneofs) ProtoMessage() {}

func (x *NoOneofs) ProtoReflect() protoreflect.Message {
	mi := &file_internal_tool_grpctool_test_test_proto_msgTypes[2]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use NoOneofs.ProtoReflect.Descriptor instead.
func (*NoOneofs) Descriptor() ([]byte, []int) {
	return file_internal_tool_grpctool_test_test_proto_rawDescGZIP(), []int{2}
}

type TwoOneofs struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Types that are valid to be assigned to Message1:
	//
	//	*TwoOneofs_M11
	//	*TwoOneofs_M12
	Message1 isTwoOneofs_Message1 `protobuf_oneof:"message1"`
	// Types that are valid to be assigned to Message2:
	//
	//	*TwoOneofs_M21
	//	*TwoOneofs_M22
	Message2      isTwoOneofs_Message2 `protobuf_oneof:"message2"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *TwoOneofs) Reset() {
	*x = TwoOneofs{}
	mi := &file_internal_tool_grpctool_test_test_proto_msgTypes[3]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *TwoOneofs) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*TwoOneofs) ProtoMessage() {}

func (x *TwoOneofs) ProtoReflect() protoreflect.Message {
	mi := &file_internal_tool_grpctool_test_test_proto_msgTypes[3]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use TwoOneofs.ProtoReflect.Descriptor instead.
func (*TwoOneofs) Descriptor() ([]byte, []int) {
	return file_internal_tool_grpctool_test_test_proto_rawDescGZIP(), []int{3}
}

func (x *TwoOneofs) GetMessage1() isTwoOneofs_Message1 {
	if x != nil {
		return x.Message1
	}
	return nil
}

func (x *TwoOneofs) GetM11() int32 {
	if x != nil {
		if x, ok := x.Message1.(*TwoOneofs_M11); ok {
			return x.M11
		}
	}
	return 0
}

func (x *TwoOneofs) GetM12() int32 {
	if x != nil {
		if x, ok := x.Message1.(*TwoOneofs_M12); ok {
			return x.M12
		}
	}
	return 0
}

func (x *TwoOneofs) GetMessage2() isTwoOneofs_Message2 {
	if x != nil {
		return x.Message2
	}
	return nil
}

func (x *TwoOneofs) GetM21() int32 {
	if x != nil {
		if x, ok := x.Message2.(*TwoOneofs_M21); ok {
			return x.M21
		}
	}
	return 0
}

func (x *TwoOneofs) GetM22() int32 {
	if x != nil {
		if x, ok := x.Message2.(*TwoOneofs_M22); ok {
			return x.M22
		}
	}
	return 0
}

type isTwoOneofs_Message1 interface {
	isTwoOneofs_Message1()
}

type TwoOneofs_M11 struct {
	M11 int32 `protobuf:"varint,1,opt,name=m11,proto3,oneof"`
}

type TwoOneofs_M12 struct {
	M12 int32 `protobuf:"varint,2,opt,name=m12,proto3,oneof"`
}

func (*TwoOneofs_M11) isTwoOneofs_Message1() {}

func (*TwoOneofs_M12) isTwoOneofs_Message1() {}

type isTwoOneofs_Message2 interface {
	isTwoOneofs_Message2()
}

type TwoOneofs_M21 struct {
	M21 int32 `protobuf:"varint,3,opt,name=m21,proto3,oneof"`
}

type TwoOneofs_M22 struct {
	M22 int32 `protobuf:"varint,4,opt,name=m22,proto3,oneof"`
}

func (*TwoOneofs_M21) isTwoOneofs_Message2() {}

func (*TwoOneofs_M22) isTwoOneofs_Message2() {}

type TwoValidOneofs struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Types that are valid to be assigned to Message1:
	//
	//	*TwoValidOneofs_M11
	//	*TwoValidOneofs_M12
	Message1 isTwoValidOneofs_Message1 `protobuf_oneof:"message1"`
	// Types that are valid to be assigned to Message2:
	//
	//	*TwoValidOneofs_M21
	//	*TwoValidOneofs_M22
	Message2      isTwoValidOneofs_Message2 `protobuf_oneof:"message2"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *TwoValidOneofs) Reset() {
	*x = TwoValidOneofs{}
	mi := &file_internal_tool_grpctool_test_test_proto_msgTypes[4]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *TwoValidOneofs) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*TwoValidOneofs) ProtoMessage() {}

func (x *TwoValidOneofs) ProtoReflect() protoreflect.Message {
	mi := &file_internal_tool_grpctool_test_test_proto_msgTypes[4]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use TwoValidOneofs.ProtoReflect.Descriptor instead.
func (*TwoValidOneofs) Descriptor() ([]byte, []int) {
	return file_internal_tool_grpctool_test_test_proto_rawDescGZIP(), []int{4}
}

func (x *TwoValidOneofs) GetMessage1() isTwoValidOneofs_Message1 {
	if x != nil {
		return x.Message1
	}
	return nil
}

func (x *TwoValidOneofs) GetM11() int32 {
	if x != nil {
		if x, ok := x.Message1.(*TwoValidOneofs_M11); ok {
			return x.M11
		}
	}
	return 0
}

func (x *TwoValidOneofs) GetM12() int32 {
	if x != nil {
		if x, ok := x.Message1.(*TwoValidOneofs_M12); ok {
			return x.M12
		}
	}
	return 0
}

func (x *TwoValidOneofs) GetMessage2() isTwoValidOneofs_Message2 {
	if x != nil {
		return x.Message2
	}
	return nil
}

func (x *TwoValidOneofs) GetM21() int32 {
	if x != nil {
		if x, ok := x.Message2.(*TwoValidOneofs_M21); ok {
			return x.M21
		}
	}
	return 0
}

func (x *TwoValidOneofs) GetM22() int32 {
	if x != nil {
		if x, ok := x.Message2.(*TwoValidOneofs_M22); ok {
			return x.M22
		}
	}
	return 0
}

type isTwoValidOneofs_Message1 interface {
	isTwoValidOneofs_Message1()
}

type TwoValidOneofs_M11 struct {
	M11 int32 `protobuf:"varint,1,opt,name=m11,proto3,oneof"`
}

type TwoValidOneofs_M12 struct {
	M12 int32 `protobuf:"varint,2,opt,name=m12,proto3,oneof"`
}

func (*TwoValidOneofs_M11) isTwoValidOneofs_Message1() {}

func (*TwoValidOneofs_M12) isTwoValidOneofs_Message1() {}

type isTwoValidOneofs_Message2 interface {
	isTwoValidOneofs_Message2()
}

type TwoValidOneofs_M21 struct {
	M21 int32 `protobuf:"varint,3,opt,name=m21,proto3,oneof"`
}

type TwoValidOneofs_M22 struct {
	M22 int32 `protobuf:"varint,4,opt,name=m22,proto3,oneof"`
}

func (*TwoValidOneofs_M21) isTwoValidOneofs_Message2() {}

func (*TwoValidOneofs_M22) isTwoValidOneofs_Message2() {}

type OutOfOneof struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	X     int32                  `protobuf:"varint,1,opt,name=x,proto3" json:"x,omitempty"`
	// Types that are valid to be assigned to Message:
	//
	//	*OutOfOneof_M1
	//	*OutOfOneof_M2
	Message       isOutOfOneof_Message `protobuf_oneof:"message"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *OutOfOneof) Reset() {
	*x = OutOfOneof{}
	mi := &file_internal_tool_grpctool_test_test_proto_msgTypes[5]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *OutOfOneof) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*OutOfOneof) ProtoMessage() {}

func (x *OutOfOneof) ProtoReflect() protoreflect.Message {
	mi := &file_internal_tool_grpctool_test_test_proto_msgTypes[5]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use OutOfOneof.ProtoReflect.Descriptor instead.
func (*OutOfOneof) Descriptor() ([]byte, []int) {
	return file_internal_tool_grpctool_test_test_proto_rawDescGZIP(), []int{5}
}

func (x *OutOfOneof) GetX() int32 {
	if x != nil {
		return x.X
	}
	return 0
}

func (x *OutOfOneof) GetMessage() isOutOfOneof_Message {
	if x != nil {
		return x.Message
	}
	return nil
}

func (x *OutOfOneof) GetM1() int32 {
	if x != nil {
		if x, ok := x.Message.(*OutOfOneof_M1); ok {
			return x.M1
		}
	}
	return 0
}

func (x *OutOfOneof) GetM2() int32 {
	if x != nil {
		if x, ok := x.Message.(*OutOfOneof_M2); ok {
			return x.M2
		}
	}
	return 0
}

type isOutOfOneof_Message interface {
	isOutOfOneof_Message()
}

type OutOfOneof_M1 struct {
	M1 int32 `protobuf:"varint,2,opt,name=m1,proto3,oneof"`
}

type OutOfOneof_M2 struct {
	M2 int32 `protobuf:"varint,3,opt,name=m2,proto3,oneof"`
}

func (*OutOfOneof_M1) isOutOfOneof_Message() {}

func (*OutOfOneof_M2) isOutOfOneof_Message() {}

type NotAllReachable struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Types that are valid to be assigned to Message:
	//
	//	*NotAllReachable_M1
	//	*NotAllReachable_M2
	//	*NotAllReachable_M3
	Message       isNotAllReachable_Message `protobuf_oneof:"message"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *NotAllReachable) Reset() {
	*x = NotAllReachable{}
	mi := &file_internal_tool_grpctool_test_test_proto_msgTypes[6]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *NotAllReachable) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*NotAllReachable) ProtoMessage() {}

func (x *NotAllReachable) ProtoReflect() protoreflect.Message {
	mi := &file_internal_tool_grpctool_test_test_proto_msgTypes[6]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use NotAllReachable.ProtoReflect.Descriptor instead.
func (*NotAllReachable) Descriptor() ([]byte, []int) {
	return file_internal_tool_grpctool_test_test_proto_rawDescGZIP(), []int{6}
}

func (x *NotAllReachable) GetMessage() isNotAllReachable_Message {
	if x != nil {
		return x.Message
	}
	return nil
}

func (x *NotAllReachable) GetM1() int32 {
	if x != nil {
		if x, ok := x.Message.(*NotAllReachable_M1); ok {
			return x.M1
		}
	}
	return 0
}

func (x *NotAllReachable) GetM2() int32 {
	if x != nil {
		if x, ok := x.Message.(*NotAllReachable_M2); ok {
			return x.M2
		}
	}
	return 0
}

func (x *NotAllReachable) GetM3() int32 {
	if x != nil {
		if x, ok := x.Message.(*NotAllReachable_M3); ok {
			return x.M3
		}
	}
	return 0
}

type isNotAllReachable_Message interface {
	isNotAllReachable_Message()
}

type NotAllReachable_M1 struct {
	M1 int32 `protobuf:"varint,1,opt,name=m1,proto3,oneof"`
}

type NotAllReachable_M2 struct {
	M2 int32 `protobuf:"varint,2,opt,name=m2,proto3,oneof"`
}

type NotAllReachable_M3 struct {
	M3 int32 `protobuf:"varint,3,opt,name=m3,proto3,oneof"`
}

func (*NotAllReachable_M1) isNotAllReachable_Message() {}

func (*NotAllReachable_M2) isNotAllReachable_Message() {}

func (*NotAllReachable_M3) isNotAllReachable_Message() {}

type Response_Data struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Data          []byte                 `protobuf:"bytes,1,opt,name=data,proto3" json:"data,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *Response_Data) Reset() {
	*x = Response_Data{}
	mi := &file_internal_tool_grpctool_test_test_proto_msgTypes[7]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *Response_Data) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*Response_Data) ProtoMessage() {}

func (x *Response_Data) ProtoReflect() protoreflect.Message {
	mi := &file_internal_tool_grpctool_test_test_proto_msgTypes[7]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use Response_Data.ProtoReflect.Descriptor instead.
func (*Response_Data) Descriptor() ([]byte, []int) {
	return file_internal_tool_grpctool_test_test_proto_rawDescGZIP(), []int{1, 0}
}

func (x *Response_Data) GetData() []byte {
	if x != nil {
		return x.Data
	}
	return nil
}

type Response_Last struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *Response_Last) Reset() {
	*x = Response_Last{}
	mi := &file_internal_tool_grpctool_test_test_proto_msgTypes[8]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *Response_Last) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*Response_Last) ProtoMessage() {}

func (x *Response_Last) ProtoReflect() protoreflect.Message {
	mi := &file_internal_tool_grpctool_test_test_proto_msgTypes[8]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use Response_Last.ProtoReflect.Descriptor instead.
func (*Response_Last) Descriptor() ([]byte, []int) {
	return file_internal_tool_grpctool_test_test_proto_rawDescGZIP(), []int{1, 1}
}

var File_internal_tool_grpctool_test_test_proto protoreflect.FileDescriptor

const file_internal_tool_grpctool_test_test_proto_rawDesc = "" +
	"\n" +
	"&internal/tool/grpctool/test/test.proto\x12\x1agitlab.agent.grpctool.test\x1a7gitlab/agent/tool/streamvisitor/automata/automata.proto\x1a\x1bbuf/validate/validate.proto\"\"\n" +
	"\aRequest\x12\x17\n" +
	"\x02s1\x18\x01 \x01(\tB\a\xbaH\x04r\x02 \x01R\x02s1\"\xbc\x02\n" +
	"\bResponse\x12\x1f\n" +
	"\x06scalar\x18\x01 \x01(\x03B\x05\x82\xf6,\x01\x02H\x00R\x06scalar\x12:\n" +
	"\x02x1\x18\x02 \x01(\x0e2!.gitlab.agent.grpctool.test.enum1B\x05\x82\xf6,\x01\x03H\x00R\x02x1\x12G\n" +
	"\x04data\x18\x03 \x01(\v2).gitlab.agent.grpctool.test.Response.DataB\x06\x82\xf6,\x02\x03\x04H\x00R\x04data\x12O\n" +
	"\x04last\x18\x04 \x01(\v2).gitlab.agent.grpctool.test.Response.LastB\x0e\x82\xf6,\n" +
	"\xff\xff\xff\xff\xff\xff\xff\xff\xff\x01H\x00R\x04last\x1a\x1a\n" +
	"\x04Data\x12\x12\n" +
	"\x04data\x18\x01 \x01(\fR\x04data\x1a\x06\n" +
	"\x04LastB\x15\n" +
	"\amessage\x12\n" +
	"\xbaH\x02\b\x01\x8a\xf6,\x01\x01\"\n" +
	"\n" +
	"\bNoOneofs\"\x81\x01\n" +
	"\tTwoOneofs\x12\x12\n" +
	"\x03m11\x18\x01 \x01(\x05H\x00R\x03m11\x12\x12\n" +
	"\x03m12\x18\x02 \x01(\x05H\x00R\x03m12\x12\x12\n" +
	"\x03m21\x18\x03 \x01(\x05H\x01R\x03m21\x12\x12\n" +
	"\x03m22\x18\x04 \x01(\x05H\x01R\x03m22B\x11\n" +
	"\bmessage1\x12\x05\x8a\xf6,\x01\x01B\x11\n" +
	"\bmessage2\x12\x05\x8a\xf6,\x01\x03\"\xb4\x01\n" +
	"\x0eTwoValidOneofs\x12\x19\n" +
	"\x03m11\x18\x01 \x01(\x05B\x05\x82\xf6,\x01\x02H\x00R\x03m11\x12\"\n" +
	"\x03m12\x18\x02 \x01(\x05B\x0e\x82\xf6,\n" +
	"\xff\xff\xff\xff\xff\xff\xff\xff\xff\x01H\x00R\x03m12\x12\x19\n" +
	"\x03m21\x18\x03 \x01(\x05B\x05\x82\xf6,\x01\x04H\x01R\x03m21\x12\"\n" +
	"\x03m22\x18\x04 \x01(\x05B\x0e\x82\xf6,\n" +
	"\xff\xff\xff\xff\xff\xff\xff\xff\xff\x01H\x01R\x03m22B\x11\n" +
	"\bmessage1\x12\x05\x8a\xf6,\x01\x01B\x11\n" +
	"\bmessage2\x12\x05\x8a\xf6,\x01\x03\"g\n" +
	"\n" +
	"OutOfOneof\x12\f\n" +
	"\x01x\x18\x01 \x01(\x05R\x01x\x12\x17\n" +
	"\x02m1\x18\x02 \x01(\x05B\x05\x82\xf6,\x01\x01H\x00R\x02m1\x12 \n" +
	"\x02m2\x18\x03 \x01(\x05B\x0e\x82\xf6,\n" +
	"\xff\xff\xff\xff\xff\xff\xff\xff\xff\x01H\x00R\x02m2B\x10\n" +
	"\amessage\x12\x05\x8a\xf6,\x01\x02\"w\n" +
	"\x0fNotAllReachable\x12\x17\n" +
	"\x02m1\x18\x01 \x01(\x05B\x05\x82\xf6,\x01\x02H\x00R\x02m1\x12\x17\n" +
	"\x02m2\x18\x02 \x01(\x05B\x05\x82\xf6,\x01\x01H\x00R\x02m2\x12 \n" +
	"\x02m3\x18\x03 \x01(\x05B\x0e\x82\xf6,\n" +
	"\xff\xff\xff\xff\xff\xff\xff\xff\xff\x01H\x00R\x02m3B\x10\n" +
	"\amessage\x12\x05\x8a\xf6,\x01\x03*\x17\n" +
	"\x05enum1\x12\x06\n" +
	"\x02v1\x10\x00\x12\x06\n" +
	"\x02v2\x10\x012\xd6\x01\n" +
	"\aTesting\x12^\n" +
	"\x0fRequestResponse\x12#.gitlab.agent.grpctool.test.Request\x1a$.gitlab.agent.grpctool.test.Response\"\x00\x12k\n" +
	"\x18StreamingRequestResponse\x12#.gitlab.agent.grpctool.test.Request\x1a$.gitlab.agent.grpctool.test.Response\"\x00(\x010\x01BXZVgitlab.com/gitlab-org/cluster-integration/gitlab-agent/v18/internal/tool/grpctool/testb\x06proto3"

var (
	file_internal_tool_grpctool_test_test_proto_rawDescOnce sync.Once
	file_internal_tool_grpctool_test_test_proto_rawDescData []byte
)

func file_internal_tool_grpctool_test_test_proto_rawDescGZIP() []byte {
	file_internal_tool_grpctool_test_test_proto_rawDescOnce.Do(func() {
		file_internal_tool_grpctool_test_test_proto_rawDescData = protoimpl.X.CompressGZIP(unsafe.Slice(unsafe.StringData(file_internal_tool_grpctool_test_test_proto_rawDesc), len(file_internal_tool_grpctool_test_test_proto_rawDesc)))
	})
	return file_internal_tool_grpctool_test_test_proto_rawDescData
}

var file_internal_tool_grpctool_test_test_proto_enumTypes = make([]protoimpl.EnumInfo, 1)
var file_internal_tool_grpctool_test_test_proto_msgTypes = make([]protoimpl.MessageInfo, 9)
var file_internal_tool_grpctool_test_test_proto_goTypes = []any{
	(Enum1)(0),              // 0: gitlab.agent.grpctool.test.enum1
	(*Request)(nil),         // 1: gitlab.agent.grpctool.test.Request
	(*Response)(nil),        // 2: gitlab.agent.grpctool.test.Response
	(*NoOneofs)(nil),        // 3: gitlab.agent.grpctool.test.NoOneofs
	(*TwoOneofs)(nil),       // 4: gitlab.agent.grpctool.test.TwoOneofs
	(*TwoValidOneofs)(nil),  // 5: gitlab.agent.grpctool.test.TwoValidOneofs
	(*OutOfOneof)(nil),      // 6: gitlab.agent.grpctool.test.OutOfOneof
	(*NotAllReachable)(nil), // 7: gitlab.agent.grpctool.test.NotAllReachable
	(*Response_Data)(nil),   // 8: gitlab.agent.grpctool.test.Response.Data
	(*Response_Last)(nil),   // 9: gitlab.agent.grpctool.test.Response.Last
}
var file_internal_tool_grpctool_test_test_proto_depIdxs = []int32{
	0, // 0: gitlab.agent.grpctool.test.Response.x1:type_name -> gitlab.agent.grpctool.test.enum1
	8, // 1: gitlab.agent.grpctool.test.Response.data:type_name -> gitlab.agent.grpctool.test.Response.Data
	9, // 2: gitlab.agent.grpctool.test.Response.last:type_name -> gitlab.agent.grpctool.test.Response.Last
	1, // 3: gitlab.agent.grpctool.test.Testing.RequestResponse:input_type -> gitlab.agent.grpctool.test.Request
	1, // 4: gitlab.agent.grpctool.test.Testing.StreamingRequestResponse:input_type -> gitlab.agent.grpctool.test.Request
	2, // 5: gitlab.agent.grpctool.test.Testing.RequestResponse:output_type -> gitlab.agent.grpctool.test.Response
	2, // 6: gitlab.agent.grpctool.test.Testing.StreamingRequestResponse:output_type -> gitlab.agent.grpctool.test.Response
	5, // [5:7] is the sub-list for method output_type
	3, // [3:5] is the sub-list for method input_type
	3, // [3:3] is the sub-list for extension type_name
	3, // [3:3] is the sub-list for extension extendee
	0, // [0:3] is the sub-list for field type_name
}

func init() { file_internal_tool_grpctool_test_test_proto_init() }
func file_internal_tool_grpctool_test_test_proto_init() {
	if File_internal_tool_grpctool_test_test_proto != nil {
		return
	}
	file_internal_tool_grpctool_test_test_proto_msgTypes[1].OneofWrappers = []any{
		(*Response_Scalar)(nil),
		(*Response_X1)(nil),
		(*Response_Data_)(nil),
		(*Response_Last_)(nil),
	}
	file_internal_tool_grpctool_test_test_proto_msgTypes[3].OneofWrappers = []any{
		(*TwoOneofs_M11)(nil),
		(*TwoOneofs_M12)(nil),
		(*TwoOneofs_M21)(nil),
		(*TwoOneofs_M22)(nil),
	}
	file_internal_tool_grpctool_test_test_proto_msgTypes[4].OneofWrappers = []any{
		(*TwoValidOneofs_M11)(nil),
		(*TwoValidOneofs_M12)(nil),
		(*TwoValidOneofs_M21)(nil),
		(*TwoValidOneofs_M22)(nil),
	}
	file_internal_tool_grpctool_test_test_proto_msgTypes[5].OneofWrappers = []any{
		(*OutOfOneof_M1)(nil),
		(*OutOfOneof_M2)(nil),
	}
	file_internal_tool_grpctool_test_test_proto_msgTypes[6].OneofWrappers = []any{
		(*NotAllReachable_M1)(nil),
		(*NotAllReachable_M2)(nil),
		(*NotAllReachable_M3)(nil),
	}
	type x struct{}
	out := protoimpl.TypeBuilder{
		File: protoimpl.DescBuilder{
			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
			RawDescriptor: unsafe.Slice(unsafe.StringData(file_internal_tool_grpctool_test_test_proto_rawDesc), len(file_internal_tool_grpctool_test_test_proto_rawDesc)),
			NumEnums:      1,
			NumMessages:   9,
			NumExtensions: 0,
			NumServices:   1,
		},
		GoTypes:           file_internal_tool_grpctool_test_test_proto_goTypes,
		DependencyIndexes: file_internal_tool_grpctool_test_test_proto_depIdxs,
		EnumInfos:         file_internal_tool_grpctool_test_test_proto_enumTypes,
		MessageInfos:      file_internal_tool_grpctool_test_test_proto_msgTypes,
	}.Build()
	File_internal_tool_grpctool_test_test_proto = out.File
	file_internal_tool_grpctool_test_test_proto_goTypes = nil
	file_internal_tool_grpctool_test_test_proto_depIdxs = nil
}
