// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// 	protoc-gen-go v1.34.2
// 	protoc        (unknown)
// source: frostdb/schema/v1alpha2/schema.proto

package schemav1alpha2

import (
	protoreflect 
	protoimpl 
	reflect 
	sync 
)

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 enum of a column.
type StorageLayout_Type int32

const (
	// Unknown type.
	StorageLayout_TYPE_UNKNOWN_UNSPECIFIED StorageLayout_Type = 0
	// Represents a string type.
	StorageLayout_TYPE_STRING StorageLayout_Type = 1
	// Represents an int64 type.
	StorageLayout_TYPE_INT64 StorageLayout_Type = 2
	// Represents a double type.
	StorageLayout_TYPE_DOUBLE StorageLayout_Type = 3
	// Represents a boolean type.
	StorageLayout_TYPE_BOOL StorageLayout_Type = 4
	// Represents a int32 type.
	StorageLayout_TYPE_INT32 StorageLayout_Type = 5
	// Represents a uint64 type.
	StorageLayout_TYPE_UINT64 StorageLayout_Type = 6
)

// Enum value maps for StorageLayout_Type.
var (
	StorageLayout_Type_name = map[int32]string{
		0: "TYPE_UNKNOWN_UNSPECIFIED",
		1: "TYPE_STRING",
		2: "TYPE_INT64",
		3: "TYPE_DOUBLE",
		4: "TYPE_BOOL",
		5: "TYPE_INT32",
		6: "TYPE_UINT64",
	}
	StorageLayout_Type_value = map[string]int32{
		"TYPE_UNKNOWN_UNSPECIFIED": 0,
		"TYPE_STRING":              1,
		"TYPE_INT64":               2,
		"TYPE_DOUBLE":              3,
		"TYPE_BOOL":                4,
		"TYPE_INT32":               5,
		"TYPE_UINT64":              6,
	}
)

func ( StorageLayout_Type) () *StorageLayout_Type {
	 := new(StorageLayout_Type)
	* = 
	return 
}

func ( StorageLayout_Type) () string {
	return protoimpl.X.EnumStringOf(.Descriptor(), protoreflect.EnumNumber())
}

func (StorageLayout_Type) () protoreflect.EnumDescriptor {
	return file_frostdb_schema_v1alpha2_schema_proto_enumTypes[0].Descriptor()
}

func (StorageLayout_Type) () protoreflect.EnumType {
	return &file_frostdb_schema_v1alpha2_schema_proto_enumTypes[0]
}

func ( StorageLayout_Type) () protoreflect.EnumNumber {
	return protoreflect.EnumNumber()
}

// Deprecated: Use StorageLayout_Type.Descriptor instead.
func (StorageLayout_Type) () ([]byte, []int) {
	return file_frostdb_schema_v1alpha2_schema_proto_rawDescGZIP(), []int{4, 0}
}

// Encoding enum of a column.
type StorageLayout_Encoding int32

const (
	// Plain encoding.
	StorageLayout_ENCODING_PLAIN_UNSPECIFIED StorageLayout_Encoding = 0
	// Dictionary run-length encoding.
	StorageLayout_ENCODING_RLE_DICTIONARY StorageLayout_Encoding = 1
	// Delta binary packed encoding.
	StorageLayout_ENCODING_DELTA_BINARY_PACKED StorageLayout_Encoding = 2
	// Delta Byte Array encoding.
	StorageLayout_ENCODING_DELTA_BYTE_ARRAY StorageLayout_Encoding = 3
	// Delta Length Byte Array encoding.
	StorageLayout_ENCODING_DELTA_LENGTH_BYTE_ARRAY StorageLayout_Encoding = 4
)

// Enum value maps for StorageLayout_Encoding.
var (
	StorageLayout_Encoding_name = map[int32]string{
		0: "ENCODING_PLAIN_UNSPECIFIED",
		1: "ENCODING_RLE_DICTIONARY",
		2: "ENCODING_DELTA_BINARY_PACKED",
		3: "ENCODING_DELTA_BYTE_ARRAY",
		4: "ENCODING_DELTA_LENGTH_BYTE_ARRAY",
	}
	StorageLayout_Encoding_value = map[string]int32{
		"ENCODING_PLAIN_UNSPECIFIED":       0,
		"ENCODING_RLE_DICTIONARY":          1,
		"ENCODING_DELTA_BINARY_PACKED":     2,
		"ENCODING_DELTA_BYTE_ARRAY":        3,
		"ENCODING_DELTA_LENGTH_BYTE_ARRAY": 4,
	}
)

func ( StorageLayout_Encoding) () *StorageLayout_Encoding {
	 := new(StorageLayout_Encoding)
	* = 
	return 
}

func ( StorageLayout_Encoding) () string {
	return protoimpl.X.EnumStringOf(.Descriptor(), protoreflect.EnumNumber())
}

func (StorageLayout_Encoding) () protoreflect.EnumDescriptor {
	return file_frostdb_schema_v1alpha2_schema_proto_enumTypes[1].Descriptor()
}

func (StorageLayout_Encoding) () protoreflect.EnumType {
	return &file_frostdb_schema_v1alpha2_schema_proto_enumTypes[1]
}

func ( StorageLayout_Encoding) () protoreflect.EnumNumber {
	return protoreflect.EnumNumber()
}

// Deprecated: Use StorageLayout_Encoding.Descriptor instead.
func (StorageLayout_Encoding) () ([]byte, []int) {
	return file_frostdb_schema_v1alpha2_schema_proto_rawDescGZIP(), []int{4, 1}
}

// Compression enum of a column.
type StorageLayout_Compression int32

const (
	// No compression.
	StorageLayout_COMPRESSION_NONE_UNSPECIFIED StorageLayout_Compression = 0
	// Snappy compression.
	StorageLayout_COMPRESSION_SNAPPY StorageLayout_Compression = 1
	// GZIP compression.
	StorageLayout_COMPRESSION_GZIP StorageLayout_Compression = 2
	// Brotli compression.
	StorageLayout_COMPRESSION_BROTLI StorageLayout_Compression = 3
	// LZ4_RAW compression.
	StorageLayout_COMPRESSION_LZ4_RAW StorageLayout_Compression = 4
	// ZSTD compression.
	StorageLayout_COMPRESSION_ZSTD StorageLayout_Compression = 5
)

// Enum value maps for StorageLayout_Compression.
var (
	StorageLayout_Compression_name = map[int32]string{
		0: "COMPRESSION_NONE_UNSPECIFIED",
		1: "COMPRESSION_SNAPPY",
		2: "COMPRESSION_GZIP",
		3: "COMPRESSION_BROTLI",
		4: "COMPRESSION_LZ4_RAW",
		5: "COMPRESSION_ZSTD",
	}
	StorageLayout_Compression_value = map[string]int32{
		"COMPRESSION_NONE_UNSPECIFIED": 0,
		"COMPRESSION_SNAPPY":           1,
		"COMPRESSION_GZIP":             2,
		"COMPRESSION_BROTLI":           3,
		"COMPRESSION_LZ4_RAW":          4,
		"COMPRESSION_ZSTD":             5,
	}
)

func ( StorageLayout_Compression) () *StorageLayout_Compression {
	 := new(StorageLayout_Compression)
	* = 
	return 
}

func ( StorageLayout_Compression) () string {
	return protoimpl.X.EnumStringOf(.Descriptor(), protoreflect.EnumNumber())
}

func (StorageLayout_Compression) () protoreflect.EnumDescriptor {
	return file_frostdb_schema_v1alpha2_schema_proto_enumTypes[2].Descriptor()
}

func (StorageLayout_Compression) () protoreflect.EnumType {
	return &file_frostdb_schema_v1alpha2_schema_proto_enumTypes[2]
}

func ( StorageLayout_Compression) () protoreflect.EnumNumber {
	return protoreflect.EnumNumber()
}

// Deprecated: Use StorageLayout_Compression.Descriptor instead.
func (StorageLayout_Compression) () ([]byte, []int) {
	return file_frostdb_schema_v1alpha2_schema_proto_rawDescGZIP(), []int{4, 2}
}

// Enum of possible sorting directions.
type SortingColumn_Direction int32

const (
	// Unknown direction.
	SortingColumn_DIRECTION_UNKNOWN_UNSPECIFIED SortingColumn_Direction = 0
	// Sort in ascending order.
	SortingColumn_DIRECTION_ASCENDING SortingColumn_Direction = 1
	// Sort in descending order.
	SortingColumn_DIRECTION_DESCENDING SortingColumn_Direction = 2
)

// Enum value maps for SortingColumn_Direction.
var (
	SortingColumn_Direction_name = map[int32]string{
		0: "DIRECTION_UNKNOWN_UNSPECIFIED",
		1: "DIRECTION_ASCENDING",
		2: "DIRECTION_DESCENDING",
	}
	SortingColumn_Direction_value = map[string]int32{
		"DIRECTION_UNKNOWN_UNSPECIFIED": 0,
		"DIRECTION_ASCENDING":           1,
		"DIRECTION_DESCENDING":          2,
	}
)

func ( SortingColumn_Direction) () *SortingColumn_Direction {
	 := new(SortingColumn_Direction)
	* = 
	return 
}

func ( SortingColumn_Direction) () string {
	return protoimpl.X.EnumStringOf(.Descriptor(), protoreflect.EnumNumber())
}

func (SortingColumn_Direction) () protoreflect.EnumDescriptor {
	return file_frostdb_schema_v1alpha2_schema_proto_enumTypes[3].Descriptor()
}

func (SortingColumn_Direction) () protoreflect.EnumType {
	return &file_frostdb_schema_v1alpha2_schema_proto_enumTypes[3]
}

func ( SortingColumn_Direction) () protoreflect.EnumNumber {
	return protoreflect.EnumNumber()
}

// Deprecated: Use SortingColumn_Direction.Descriptor instead.
func (SortingColumn_Direction) () ([]byte, []int) {
	return file_frostdb_schema_v1alpha2_schema_proto_rawDescGZIP(), []int{5, 0}
}

// Schema definition for a table.
type Schema struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	// Root node of the schema.
	Root *Group `protobuf:"bytes,2,opt,name=root,proto3" json:"root,omitempty"`
	// Columns to sort by in the schema.
	SortingColumns []*SortingColumn `protobuf:"bytes,3,rep,name=sorting_columns,json=sortingColumns,proto3" json:"sorting_columns,omitempty"`
	// UniquePrimaryIndex defines whether the primary index is unique. Duplicate
	// (according to the sorting column) rows will be dropped on compaction.
	UniquePrimaryIndex bool `protobuf:"varint,4,opt,name=unique_primary_index,json=uniquePrimaryIndex,proto3" json:"unique_primary_index,omitempty"`
}

func ( *Schema) () {
	* = Schema{}
	if protoimpl.UnsafeEnabled {
		 := &file_frostdb_schema_v1alpha2_schema_proto_msgTypes[0]
		 := protoimpl.X.MessageStateOf(protoimpl.Pointer())
		.StoreMessageInfo()
	}
}

func ( *Schema) () string {
	return protoimpl.X.MessageStringOf()
}

func (*Schema) () {}

func ( *Schema) () protoreflect.Message {
	 := &file_frostdb_schema_v1alpha2_schema_proto_msgTypes[0]
	if protoimpl.UnsafeEnabled &&  != nil {
		 := protoimpl.X.MessageStateOf(protoimpl.Pointer())
		if .LoadMessageInfo() == nil {
			.StoreMessageInfo()
		}
		return 
	}
	return .MessageOf()
}

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

func ( *Schema) () *Group {
	if  != nil {
		return .Root
	}
	return nil
}

func ( *Schema) () []*SortingColumn {
	if  != nil {
		return .SortingColumns
	}
	return nil
}

func ( *Schema) () bool {
	if  != nil {
		return .UniquePrimaryIndex
	}
	return false
}

// Node is a node in a schema tree.
type Node struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	// type can either be a leaf or a group.
	//
	// Types that are assignable to Type:
	//
	//	*Node_Leaf
	//	*Node_Group
	Type isNode_Type `protobuf_oneof:"type"`
}

func ( *Node) () {
	* = Node{}
	if protoimpl.UnsafeEnabled {
		 := &file_frostdb_schema_v1alpha2_schema_proto_msgTypes[1]
		 := protoimpl.X.MessageStateOf(protoimpl.Pointer())
		.StoreMessageInfo()
	}
}

func ( *Node) () string {
	return protoimpl.X.MessageStringOf()
}

func (*Node) () {}

func ( *Node) () protoreflect.Message {
	 := &file_frostdb_schema_v1alpha2_schema_proto_msgTypes[1]
	if protoimpl.UnsafeEnabled &&  != nil {
		 := protoimpl.X.MessageStateOf(protoimpl.Pointer())
		if .LoadMessageInfo() == nil {
			.StoreMessageInfo()
		}
		return 
	}
	return .MessageOf()
}

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

func ( *Node) () isNode_Type {
	if  != nil {
		return .Type
	}
	return nil
}

func ( *Node) () *Leaf {
	if ,  := .GetType().(*Node_Leaf);  {
		return .Leaf
	}
	return nil
}

func ( *Node) () *Group {
	if ,  := .GetType().(*Node_Group);  {
		return .Group
	}
	return nil
}

type isNode_Type interface {
	isNode_Type()
}

type Node_Leaf struct {
	// Leaf node of the schema.
	Leaf *Leaf `protobuf:"bytes,1,opt,name=leaf,proto3,oneof"`
}

type Node_Group struct {
	// Group of other nodes for nested schemas.
	Group *Group `protobuf:"bytes,2,opt,name=group,proto3,oneof"`
}

func (*Node_Leaf) () {}

func (*Node_Group) () {}

// Leaf definition.
type Leaf struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	// Name of the column.
	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	// Storage layout of the column.
	StorageLayout *StorageLayout `protobuf:"bytes,2,opt,name=storage_layout,json=storageLayout,proto3" json:"storage_layout,omitempty"`
}

func ( *Leaf) () {
	* = Leaf{}
	if protoimpl.UnsafeEnabled {
		 := &file_frostdb_schema_v1alpha2_schema_proto_msgTypes[2]
		 := protoimpl.X.MessageStateOf(protoimpl.Pointer())
		.StoreMessageInfo()
	}
}

func ( *Leaf) () string {
	return protoimpl.X.MessageStringOf()
}

func (*Leaf) () {}

func ( *Leaf) () protoreflect.Message {
	 := &file_frostdb_schema_v1alpha2_schema_proto_msgTypes[2]
	if protoimpl.UnsafeEnabled &&  != nil {
		 := protoimpl.X.MessageStateOf(protoimpl.Pointer())
		if .LoadMessageInfo() == nil {
			.StoreMessageInfo()
		}
		return 
	}
	return .MessageOf()
}

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

func ( *Leaf) () string {
	if  != nil {
		return .Name
	}
	return ""
}

func ( *Leaf) () *StorageLayout {
	if  != nil {
		return .StorageLayout
	}
	return nil
}

// Group is a grouping of nodes.
type Group struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	// Name of the group.
	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	// Wether the group is allowed to be null.
	Nullable bool `protobuf:"varint,2,opt,name=nullable,proto3" json:"nullable,omitempty"`
	// Indicates whether the group is repeated.
	Repeated bool `protobuf:"varint,3,opt,name=repeated,proto3" json:"repeated,omitempty"`
	// Nodes that this group is composed of.
	Nodes []*Node `protobuf:"bytes,4,rep,name=nodes,proto3" json:"nodes,omitempty"`
}

func ( *Group) () {
	* = Group{}
	if protoimpl.UnsafeEnabled {
		 := &file_frostdb_schema_v1alpha2_schema_proto_msgTypes[3]
		 := protoimpl.X.MessageStateOf(protoimpl.Pointer())
		.StoreMessageInfo()
	}
}

func ( *Group) () string {
	return protoimpl.X.MessageStringOf()
}

func (*Group) () {}

func ( *Group) () protoreflect.Message {
	 := &file_frostdb_schema_v1alpha2_schema_proto_msgTypes[3]
	if protoimpl.UnsafeEnabled &&  != nil {
		 := protoimpl.X.MessageStateOf(protoimpl.Pointer())
		if .LoadMessageInfo() == nil {
			.StoreMessageInfo()
		}
		return 
	}
	return .MessageOf()
}

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

func ( *Group) () string {
	if  != nil {
		return .Name
	}
	return ""
}

func ( *Group) () bool {
	if  != nil {
		return .Nullable
	}
	return false
}

func ( *Group) () bool {
	if  != nil {
		return .Repeated
	}
	return false
}

func ( *Group) () []*Node {
	if  != nil {
		return .Nodes
	}
	return nil
}

// Storage layout describes the physical storage properties of a column.
type StorageLayout struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	// Type of the column.
	Type StorageLayout_Type `protobuf:"varint,1,opt,name=type,proto3,enum=frostdb.schema.v1alpha2.StorageLayout_Type" json:"type,omitempty"`
	// Encoding of the column.
	Encoding StorageLayout_Encoding `protobuf:"varint,2,opt,name=encoding,proto3,enum=frostdb.schema.v1alpha2.StorageLayout_Encoding" json:"encoding,omitempty"`
	// Compression of the column.
	Compression StorageLayout_Compression `protobuf:"varint,3,opt,name=compression,proto3,enum=frostdb.schema.v1alpha2.StorageLayout_Compression" json:"compression,omitempty"`
	// Wether values in the column are allowed to be null.
	Nullable bool `protobuf:"varint,4,opt,name=nullable,proto3" json:"nullable,omitempty"`
	// Indicates whether the parquet column is repeated.
	Repeated bool `protobuf:"varint,5,opt,name=repeated,proto3" json:"repeated,omitempty"`
}

func ( *StorageLayout) () {
	* = StorageLayout{}
	if protoimpl.UnsafeEnabled {
		 := &file_frostdb_schema_v1alpha2_schema_proto_msgTypes[4]
		 := protoimpl.X.MessageStateOf(protoimpl.Pointer())
		.StoreMessageInfo()
	}
}

func ( *StorageLayout) () string {
	return protoimpl.X.MessageStringOf()
}

func (*StorageLayout) () {}

func ( *StorageLayout) () protoreflect.Message {
	 := &file_frostdb_schema_v1alpha2_schema_proto_msgTypes[4]
	if protoimpl.UnsafeEnabled &&  != nil {
		 := protoimpl.X.MessageStateOf(protoimpl.Pointer())
		if .LoadMessageInfo() == nil {
			.StoreMessageInfo()
		}
		return 
	}
	return .MessageOf()
}

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

func ( *StorageLayout) () StorageLayout_Type {
	if  != nil {
		return .Type
	}
	return StorageLayout_TYPE_UNKNOWN_UNSPECIFIED
}

func ( *StorageLayout) () StorageLayout_Encoding {
	if  != nil {
		return .Encoding
	}
	return StorageLayout_ENCODING_PLAIN_UNSPECIFIED
}

func ( *StorageLayout) () StorageLayout_Compression {
	if  != nil {
		return .Compression
	}
	return StorageLayout_COMPRESSION_NONE_UNSPECIFIED
}

func ( *StorageLayout) () bool {
	if  != nil {
		return .Nullable
	}
	return false
}

func ( *StorageLayout) () bool {
	if  != nil {
		return .Repeated
	}
	return false
}

// SortingColumn definition.
type SortingColumn struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	// Path to the leaf column to sort by.
	Path string `protobuf:"bytes,1,opt,name=path,proto3" json:"path,omitempty"`
	// Direction of the sorting.
	Direction SortingColumn_Direction `protobuf:"varint,2,opt,name=direction,proto3,enum=frostdb.schema.v1alpha2.SortingColumn_Direction" json:"direction,omitempty"`
	// Whether nulls are the smallest or largest values.
	NullsFirst bool `protobuf:"varint,3,opt,name=nulls_first,json=nullsFirst,proto3" json:"nulls_first,omitempty"`
}

func ( *SortingColumn) () {
	* = SortingColumn{}
	if protoimpl.UnsafeEnabled {
		 := &file_frostdb_schema_v1alpha2_schema_proto_msgTypes[5]
		 := protoimpl.X.MessageStateOf(protoimpl.Pointer())
		.StoreMessageInfo()
	}
}

func ( *SortingColumn) () string {
	return protoimpl.X.MessageStringOf()
}

func (*SortingColumn) () {}

func ( *SortingColumn) () protoreflect.Message {
	 := &file_frostdb_schema_v1alpha2_schema_proto_msgTypes[5]
	if protoimpl.UnsafeEnabled &&  != nil {
		 := protoimpl.X.MessageStateOf(protoimpl.Pointer())
		if .LoadMessageInfo() == nil {
			.StoreMessageInfo()
		}
		return 
	}
	return .MessageOf()
}

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

func ( *SortingColumn) () string {
	if  != nil {
		return .Path
	}
	return ""
}

func ( *SortingColumn) () SortingColumn_Direction {
	if  != nil {
		return .Direction
	}
	return SortingColumn_DIRECTION_UNKNOWN_UNSPECIFIED
}

func ( *SortingColumn) () bool {
	if  != nil {
		return .NullsFirst
	}
	return false
}

var File_frostdb_schema_v1alpha2_schema_proto protoreflect.FileDescriptor

var file_frostdb_schema_v1alpha2_schema_proto_rawDesc = []byte{
	0x0a, 0x24, 0x66, 0x72, 0x6f, 0x73, 0x74, 0x64, 0x62, 0x2f, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61,
	0x2f, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x32, 0x2f, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61,
	0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x17, 0x66, 0x72, 0x6f, 0x73, 0x74, 0x64, 0x62, 0x2e,
	0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x32, 0x22,
	0xbf, 0x01, 0x0a, 0x06, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x12, 0x32, 0x0a, 0x04, 0x72, 0x6f,
	0x6f, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x66, 0x72, 0x6f, 0x73, 0x74,
	0x64, 0x62, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68,
	0x61, 0x32, 0x2e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x04, 0x72, 0x6f, 0x6f, 0x74, 0x12, 0x4f,
	0x0a, 0x0f, 0x73, 0x6f, 0x72, 0x74, 0x69, 0x6e, 0x67, 0x5f, 0x63, 0x6f, 0x6c, 0x75, 0x6d, 0x6e,
	0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x66, 0x72, 0x6f, 0x73, 0x74, 0x64,
	0x62, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61,
	0x32, 0x2e, 0x53, 0x6f, 0x72, 0x74, 0x69, 0x6e, 0x67, 0x43, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x52,
	0x0e, 0x73, 0x6f, 0x72, 0x74, 0x69, 0x6e, 0x67, 0x43, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x73, 0x12,
	0x30, 0x0a, 0x14, 0x75, 0x6e, 0x69, 0x71, 0x75, 0x65, 0x5f, 0x70, 0x72, 0x69, 0x6d, 0x61, 0x72,
	0x79, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x12, 0x75,
	0x6e, 0x69, 0x71, 0x75, 0x65, 0x50, 0x72, 0x69, 0x6d, 0x61, 0x72, 0x79, 0x49, 0x6e, 0x64, 0x65,
	0x78, 0x22, 0x7b, 0x0a, 0x04, 0x4e, 0x6f, 0x64, 0x65, 0x12, 0x33, 0x0a, 0x04, 0x6c, 0x65, 0x61,
	0x66, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x66, 0x72, 0x6f, 0x73, 0x74, 0x64,
	0x62, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61,
	0x32, 0x2e, 0x4c, 0x65, 0x61, 0x66, 0x48, 0x00, 0x52, 0x04, 0x6c, 0x65, 0x61, 0x66, 0x12, 0x36,
	0x0a, 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e,
	0x66, 0x72, 0x6f, 0x73, 0x74, 0x64, 0x62, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76,
	0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x32, 0x2e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x48, 0x00, 0x52,
	0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x42, 0x06, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x22, 0x69,
	0x0a, 0x04, 0x4c, 0x65, 0x61, 0x66, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x4d, 0x0a, 0x0e, 0x73, 0x74,
	0x6f, 0x72, 0x61, 0x67, 0x65, 0x5f, 0x6c, 0x61, 0x79, 0x6f, 0x75, 0x74, 0x18, 0x02, 0x20, 0x01,
	0x28, 0x0b, 0x32, 0x26, 0x2e, 0x66, 0x72, 0x6f, 0x73, 0x74, 0x64, 0x62, 0x2e, 0x73, 0x63, 0x68,
	0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x32, 0x2e, 0x53, 0x74, 0x6f,
	0x72, 0x61, 0x67, 0x65, 0x4c, 0x61, 0x79, 0x6f, 0x75, 0x74, 0x52, 0x0d, 0x73, 0x74, 0x6f, 0x72,
	0x61, 0x67, 0x65, 0x4c, 0x61, 0x79, 0x6f, 0x75, 0x74, 0x22, 0x88, 0x01, 0x0a, 0x05, 0x47, 0x72,
	0x6f, 0x75, 0x70, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x6e, 0x75, 0x6c, 0x6c, 0x61,
	0x62, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x6e, 0x75, 0x6c, 0x6c, 0x61,
	0x62, 0x6c, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x72, 0x65, 0x70, 0x65, 0x61, 0x74, 0x65, 0x64, 0x18,
	0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x72, 0x65, 0x70, 0x65, 0x61, 0x74, 0x65, 0x64, 0x12,
	0x33, 0x0a, 0x05, 0x6e, 0x6f, 0x64, 0x65, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1d,
	0x2e, 0x66, 0x72, 0x6f, 0x73, 0x74, 0x64, 0x62, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e,
	0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x32, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x05, 0x6e,
	0x6f, 0x64, 0x65, 0x73, 0x22, 0x8c, 0x06, 0x0a, 0x0d, 0x53, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65,
	0x4c, 0x61, 0x79, 0x6f, 0x75, 0x74, 0x12, 0x3f, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01,
	0x20, 0x01, 0x28, 0x0e, 0x32, 0x2b, 0x2e, 0x66, 0x72, 0x6f, 0x73, 0x74, 0x64, 0x62, 0x2e, 0x73,
	0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x32, 0x2e, 0x53,
	0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x4c, 0x61, 0x79, 0x6f, 0x75, 0x74, 0x2e, 0x54, 0x79, 0x70,
	0x65, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x4b, 0x0a, 0x08, 0x65, 0x6e, 0x63, 0x6f, 0x64,
	0x69, 0x6e, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2f, 0x2e, 0x66, 0x72, 0x6f, 0x73,
	0x74, 0x64, 0x62, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70,
	0x68, 0x61, 0x32, 0x2e, 0x53, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x4c, 0x61, 0x79, 0x6f, 0x75,
	0x74, 0x2e, 0x45, 0x6e, 0x63, 0x6f, 0x64, 0x69, 0x6e, 0x67, 0x52, 0x08, 0x65, 0x6e, 0x63, 0x6f,
	0x64, 0x69, 0x6e, 0x67, 0x12, 0x54, 0x0a, 0x0b, 0x63, 0x6f, 0x6d, 0x70, 0x72, 0x65, 0x73, 0x73,
	0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x32, 0x2e, 0x66, 0x72, 0x6f, 0x73,
	0x74, 0x64, 0x62, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70,
	0x68, 0x61, 0x32, 0x2e, 0x53, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x4c, 0x61, 0x79, 0x6f, 0x75,
	0x74, 0x2e, 0x43, 0x6f, 0x6d, 0x70, 0x72, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x0b, 0x63,
	0x6f, 0x6d, 0x70, 0x72, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x1a, 0x0a, 0x08, 0x6e, 0x75,
	0x6c, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x6e, 0x75,
	0x6c, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x72, 0x65, 0x70, 0x65, 0x61, 0x74,
	0x65, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x72, 0x65, 0x70, 0x65, 0x61, 0x74,
	0x65, 0x64, 0x22, 0x86, 0x01, 0x0a, 0x04, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1c, 0x0a, 0x18, 0x54,
	0x59, 0x50, 0x45, 0x5f, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x5f, 0x55, 0x4e, 0x53, 0x50,
	0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x0f, 0x0a, 0x0b, 0x54, 0x59, 0x50,
	0x45, 0x5f, 0x53, 0x54, 0x52, 0x49, 0x4e, 0x47, 0x10, 0x01, 0x12, 0x0e, 0x0a, 0x0a, 0x54, 0x59,
	0x50, 0x45, 0x5f, 0x49, 0x4e, 0x54, 0x36, 0x34, 0x10, 0x02, 0x12, 0x0f, 0x0a, 0x0b, 0x54, 0x59,
	0x50, 0x45, 0x5f, 0x44, 0x4f, 0x55, 0x42, 0x4c, 0x45, 0x10, 0x03, 0x12, 0x0d, 0x0a, 0x09, 0x54,
	0x59, 0x50, 0x45, 0x5f, 0x42, 0x4f, 0x4f, 0x4c, 0x10, 0x04, 0x12, 0x0e, 0x0a, 0x0a, 0x54, 0x59,
	0x50, 0x45, 0x5f, 0x49, 0x4e, 0x54, 0x33, 0x32, 0x10, 0x05, 0x12, 0x0f, 0x0a, 0x0b, 0x54, 0x59,
	0x50, 0x45, 0x5f, 0x55, 0x49, 0x4e, 0x54, 0x36, 0x34, 0x10, 0x06, 0x22, 0xae, 0x01, 0x0a, 0x08,
	0x45, 0x6e, 0x63, 0x6f, 0x64, 0x69, 0x6e, 0x67, 0x12, 0x1e, 0x0a, 0x1a, 0x45, 0x4e, 0x43, 0x4f,
	0x44, 0x49, 0x4e, 0x47, 0x5f, 0x50, 0x4c, 0x41, 0x49, 0x4e, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45,
	0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x1b, 0x0a, 0x17, 0x45, 0x4e, 0x43, 0x4f,
	0x44, 0x49, 0x4e, 0x47, 0x5f, 0x52, 0x4c, 0x45, 0x5f, 0x44, 0x49, 0x43, 0x54, 0x49, 0x4f, 0x4e,
	0x41, 0x52, 0x59, 0x10, 0x01, 0x12, 0x20, 0x0a, 0x1c, 0x45, 0x4e, 0x43, 0x4f, 0x44, 0x49, 0x4e,
	0x47, 0x5f, 0x44, 0x45, 0x4c, 0x54, 0x41, 0x5f, 0x42, 0x49, 0x4e, 0x41, 0x52, 0x59, 0x5f, 0x50,
	0x41, 0x43, 0x4b, 0x45, 0x44, 0x10, 0x02, 0x12, 0x1d, 0x0a, 0x19, 0x45, 0x4e, 0x43, 0x4f, 0x44,
	0x49, 0x4e, 0x47, 0x5f, 0x44, 0x45, 0x4c, 0x54, 0x41, 0x5f, 0x42, 0x59, 0x54, 0x45, 0x5f, 0x41,
	0x52, 0x52, 0x41, 0x59, 0x10, 0x03, 0x12, 0x24, 0x0a, 0x20, 0x45, 0x4e, 0x43, 0x4f, 0x44, 0x49,
	0x4e, 0x47, 0x5f, 0x44, 0x45, 0x4c, 0x54, 0x41, 0x5f, 0x4c, 0x45, 0x4e, 0x47, 0x54, 0x48, 0x5f,
	0x42, 0x59, 0x54, 0x45, 0x5f, 0x41, 0x52, 0x52, 0x41, 0x59, 0x10, 0x04, 0x22, 0xa4, 0x01, 0x0a,
	0x0b, 0x43, 0x6f, 0x6d, 0x70, 0x72, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x20, 0x0a, 0x1c,
	0x43, 0x4f, 0x4d, 0x50, 0x52, 0x45, 0x53, 0x53, 0x49, 0x4f, 0x4e, 0x5f, 0x4e, 0x4f, 0x4e, 0x45,
	0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x16,
	0x0a, 0x12, 0x43, 0x4f, 0x4d, 0x50, 0x52, 0x45, 0x53, 0x53, 0x49, 0x4f, 0x4e, 0x5f, 0x53, 0x4e,
	0x41, 0x50, 0x50, 0x59, 0x10, 0x01, 0x12, 0x14, 0x0a, 0x10, 0x43, 0x4f, 0x4d, 0x50, 0x52, 0x45,
	0x53, 0x53, 0x49, 0x4f, 0x4e, 0x5f, 0x47, 0x5a, 0x49, 0x50, 0x10, 0x02, 0x12, 0x16, 0x0a, 0x12,
	0x43, 0x4f, 0x4d, 0x50, 0x52, 0x45, 0x53, 0x53, 0x49, 0x4f, 0x4e, 0x5f, 0x42, 0x52, 0x4f, 0x54,
	0x4c, 0x49, 0x10, 0x03, 0x12, 0x17, 0x0a, 0x13, 0x43, 0x4f, 0x4d, 0x50, 0x52, 0x45, 0x53, 0x53,
	0x49, 0x4f, 0x4e, 0x5f, 0x4c, 0x5a, 0x34, 0x5f, 0x52, 0x41, 0x57, 0x10, 0x04, 0x12, 0x14, 0x0a,
	0x10, 0x43, 0x4f, 0x4d, 0x50, 0x52, 0x45, 0x53, 0x53, 0x49, 0x4f, 0x4e, 0x5f, 0x5a, 0x53, 0x54,
	0x44, 0x10, 0x05, 0x22, 0xf7, 0x01, 0x0a, 0x0d, 0x53, 0x6f, 0x72, 0x74, 0x69, 0x6e, 0x67, 0x43,
	0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x61, 0x74, 0x68, 0x18, 0x01, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x04, 0x70, 0x61, 0x74, 0x68, 0x12, 0x4e, 0x0a, 0x09, 0x64, 0x69, 0x72,
	0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x30, 0x2e, 0x66,
	0x72, 0x6f, 0x73, 0x74, 0x64, 0x62, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31,
	0x61, 0x6c, 0x70, 0x68, 0x61, 0x32, 0x2e, 0x53, 0x6f, 0x72, 0x74, 0x69, 0x6e, 0x67, 0x43, 0x6f,
	0x6c, 0x75, 0x6d, 0x6e, 0x2e, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x09,
	0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1f, 0x0a, 0x0b, 0x6e, 0x75, 0x6c,
	0x6c, 0x73, 0x5f, 0x66, 0x69, 0x72, 0x73, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a,
	0x6e, 0x75, 0x6c, 0x6c, 0x73, 0x46, 0x69, 0x72, 0x73, 0x74, 0x22, 0x61, 0x0a, 0x09, 0x44, 0x69,
	0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x21, 0x0a, 0x1d, 0x44, 0x49, 0x52, 0x45, 0x43,
	0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x5f, 0x55, 0x4e, 0x53,
	0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x17, 0x0a, 0x13, 0x44, 0x49,
	0x52, 0x45, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x41, 0x53, 0x43, 0x45, 0x4e, 0x44, 0x49, 0x4e,
	0x47, 0x10, 0x01, 0x12, 0x18, 0x0a, 0x14, 0x44, 0x49, 0x52, 0x45, 0x43, 0x54, 0x49, 0x4f, 0x4e,
	0x5f, 0x44, 0x45, 0x53, 0x43, 0x45, 0x4e, 0x44, 0x49, 0x4e, 0x47, 0x10, 0x02, 0x42, 0xfd, 0x01,
	0x0a, 0x1b, 0x63, 0x6f, 0x6d, 0x2e, 0x66, 0x72, 0x6f, 0x73, 0x74, 0x64, 0x62, 0x2e, 0x73, 0x63,
	0x68, 0x65, 0x6d, 0x61, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x32, 0x42, 0x0b, 0x53,
	0x63, 0x68, 0x65, 0x6d, 0x61, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x53, 0x67, 0x69,
	0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x70, 0x6f, 0x6c, 0x61, 0x72, 0x73, 0x69,
	0x67, 0x6e, 0x61, 0x6c, 0x73, 0x2f, 0x66, 0x72, 0x6f, 0x73, 0x74, 0x64, 0x62, 0x2f, 0x67, 0x65,
	0x6e, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x67, 0x6f, 0x2f, 0x66, 0x72, 0x6f, 0x73, 0x74,
	0x64, 0x62, 0x2f, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2f, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68,
	0x61, 0x32, 0x3b, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61,
	0x32, 0xa2, 0x02, 0x03, 0x46, 0x53, 0x58, 0xaa, 0x02, 0x17, 0x46, 0x72, 0x6f, 0x73, 0x74, 0x64,
	0x62, 0x2e, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x56, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61,
	0x32, 0xca, 0x02, 0x17, 0x46, 0x72, 0x6f, 0x73, 0x74, 0x64, 0x62, 0x5c, 0x53, 0x63, 0x68, 0x65,
	0x6d, 0x61, 0x5c, 0x56, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x32, 0xe2, 0x02, 0x23, 0x46, 0x72,
	0x6f, 0x73, 0x74, 0x64, 0x62, 0x5c, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x5c, 0x56, 0x31, 0x61,
	0x6c, 0x70, 0x68, 0x61, 0x32, 0x5c, 0x47, 0x50, 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74,
	0x61, 0xea, 0x02, 0x19, 0x46, 0x72, 0x6f, 0x73, 0x74, 0x64, 0x62, 0x3a, 0x3a, 0x53, 0x63, 0x68,
	0x65, 0x6d, 0x61, 0x3a, 0x3a, 0x56, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x32, 0x62, 0x06, 0x70,
	0x72, 0x6f, 0x74, 0x6f, 0x33,
}

var (
	file_frostdb_schema_v1alpha2_schema_proto_rawDescOnce sync.Once
	file_frostdb_schema_v1alpha2_schema_proto_rawDescData = file_frostdb_schema_v1alpha2_schema_proto_rawDesc
)

func file_frostdb_schema_v1alpha2_schema_proto_rawDescGZIP() []byte {
	file_frostdb_schema_v1alpha2_schema_proto_rawDescOnce.Do(func() {
		file_frostdb_schema_v1alpha2_schema_proto_rawDescData = protoimpl.X.CompressGZIP(file_frostdb_schema_v1alpha2_schema_proto_rawDescData)
	})
	return file_frostdb_schema_v1alpha2_schema_proto_rawDescData
}

var file_frostdb_schema_v1alpha2_schema_proto_enumTypes = make([]protoimpl.EnumInfo, 4)
var file_frostdb_schema_v1alpha2_schema_proto_msgTypes = make([]protoimpl.MessageInfo, 6)
var file_frostdb_schema_v1alpha2_schema_proto_goTypes = []any{
	(StorageLayout_Type)(0),        // 0: frostdb.schema.v1alpha2.StorageLayout.Type
	(StorageLayout_Encoding)(0),    // 1: frostdb.schema.v1alpha2.StorageLayout.Encoding
	(StorageLayout_Compression)(0), // 2: frostdb.schema.v1alpha2.StorageLayout.Compression
	(SortingColumn_Direction)(0),   // 3: frostdb.schema.v1alpha2.SortingColumn.Direction
	(*Schema)(nil),                 // 4: frostdb.schema.v1alpha2.Schema
	(*Node)(nil),                   // 5: frostdb.schema.v1alpha2.Node
	(*Leaf)(nil),                   // 6: frostdb.schema.v1alpha2.Leaf
	(*Group)(nil),                  // 7: frostdb.schema.v1alpha2.Group
	(*StorageLayout)(nil),          // 8: frostdb.schema.v1alpha2.StorageLayout
	(*SortingColumn)(nil),          // 9: frostdb.schema.v1alpha2.SortingColumn
}
var file_frostdb_schema_v1alpha2_schema_proto_depIdxs = []int32{
	7,  // 0: frostdb.schema.v1alpha2.Schema.root:type_name -> frostdb.schema.v1alpha2.Group
	9,  // 1: frostdb.schema.v1alpha2.Schema.sorting_columns:type_name -> frostdb.schema.v1alpha2.SortingColumn
	6,  // 2: frostdb.schema.v1alpha2.Node.leaf:type_name -> frostdb.schema.v1alpha2.Leaf
	7,  // 3: frostdb.schema.v1alpha2.Node.group:type_name -> frostdb.schema.v1alpha2.Group
	8,  // 4: frostdb.schema.v1alpha2.Leaf.storage_layout:type_name -> frostdb.schema.v1alpha2.StorageLayout
	5,  // 5: frostdb.schema.v1alpha2.Group.nodes:type_name -> frostdb.schema.v1alpha2.Node
	0,  // 6: frostdb.schema.v1alpha2.StorageLayout.type:type_name -> frostdb.schema.v1alpha2.StorageLayout.Type
	1,  // 7: frostdb.schema.v1alpha2.StorageLayout.encoding:type_name -> frostdb.schema.v1alpha2.StorageLayout.Encoding
	2,  // 8: frostdb.schema.v1alpha2.StorageLayout.compression:type_name -> frostdb.schema.v1alpha2.StorageLayout.Compression
	3,  // 9: frostdb.schema.v1alpha2.SortingColumn.direction:type_name -> frostdb.schema.v1alpha2.SortingColumn.Direction
	10, // [10:10] is the sub-list for method output_type
	10, // [10:10] is the sub-list for method input_type
	10, // [10:10] is the sub-list for extension type_name
	10, // [10:10] is the sub-list for extension extendee
	0,  // [0:10] is the sub-list for field type_name
}

func init() { file_frostdb_schema_v1alpha2_schema_proto_init() }
func file_frostdb_schema_v1alpha2_schema_proto_init() {
	if File_frostdb_schema_v1alpha2_schema_proto != nil {
		return
	}
	if !protoimpl.UnsafeEnabled {
		file_frostdb_schema_v1alpha2_schema_proto_msgTypes[0].Exporter = func( any,  int) any {
			switch  := .(*Schema);  {
			case 0:
				return &.state
			case 1:
				return &.sizeCache
			case 2:
				return &.unknownFields
			default:
				return nil
			}
		}
		file_frostdb_schema_v1alpha2_schema_proto_msgTypes[1].Exporter = func( any,  int) any {
			switch  := .(*Node);  {
			case 0:
				return &.state
			case 1:
				return &.sizeCache
			case 2:
				return &.unknownFields
			default:
				return nil
			}
		}
		file_frostdb_schema_v1alpha2_schema_proto_msgTypes[2].Exporter = func( any,  int) any {
			switch  := .(*Leaf);  {
			case 0:
				return &.state
			case 1:
				return &.sizeCache
			case 2:
				return &.unknownFields
			default:
				return nil
			}
		}
		file_frostdb_schema_v1alpha2_schema_proto_msgTypes[3].Exporter = func( any,  int) any {
			switch  := .(*Group);  {
			case 0:
				return &.state
			case 1:
				return &.sizeCache
			case 2:
				return &.unknownFields
			default:
				return nil
			}
		}
		file_frostdb_schema_v1alpha2_schema_proto_msgTypes[4].Exporter = func( any,  int) any {
			switch  := .(*StorageLayout);  {
			case 0:
				return &.state
			case 1:
				return &.sizeCache
			case 2:
				return &.unknownFields
			default:
				return nil
			}
		}
		file_frostdb_schema_v1alpha2_schema_proto_msgTypes[5].Exporter = func( any,  int) any {
			switch  := .(*SortingColumn);  {
			case 0:
				return &.state
			case 1:
				return &.sizeCache
			case 2:
				return &.unknownFields
			default:
				return nil
			}
		}
	}
	file_frostdb_schema_v1alpha2_schema_proto_msgTypes[1].OneofWrappers = []any{
		(*Node_Leaf)(nil),
		(*Node_Group)(nil),
	}
	type  struct{}
	 := protoimpl.TypeBuilder{
		File: protoimpl.DescBuilder{
			GoPackagePath: reflect.TypeOf({}).PkgPath(),
			RawDescriptor: file_frostdb_schema_v1alpha2_schema_proto_rawDesc,
			NumEnums:      4,
			NumMessages:   6,
			NumExtensions: 0,
			NumServices:   0,
		},
		GoTypes:           file_frostdb_schema_v1alpha2_schema_proto_goTypes,
		DependencyIndexes: file_frostdb_schema_v1alpha2_schema_proto_depIdxs,
		EnumInfos:         file_frostdb_schema_v1alpha2_schema_proto_enumTypes,
		MessageInfos:      file_frostdb_schema_v1alpha2_schema_proto_msgTypes,
	}.Build()
	File_frostdb_schema_v1alpha2_schema_proto = .File
	file_frostdb_schema_v1alpha2_schema_proto_rawDesc = nil
	file_frostdb_schema_v1alpha2_schema_proto_goTypes = nil
	file_frostdb_schema_v1alpha2_schema_proto_depIdxs = nil
}