# frozen_string_literal: true
# Generated by the protocol buffer compiler.  DO NOT EDIT!
# source: google/firestore/v1/query.proto

require 'google/protobuf'

require 'google/api/field_behavior_pb'
require 'google/firestore/v1/document_pb'
require 'google/protobuf/wrappers_pb'


descriptor_data = "\n\x1fgoogle/firestore/v1/query.proto\x12\x13google.firestore.v1\x1a\x1fgoogle/api/field_behavior.proto\x1a\"google/firestore/v1/document.proto\x1a\x1egoogle/protobuf/wrappers.proto\"\xf8\x13\n\x0fStructuredQuery\x12?\n\x06select\x18\x01 \x01(\x0b\x32/.google.firestore.v1.StructuredQuery.Projection\x12\x45\n\x04\x66rom\x18\x02 \x03(\x0b\x32\x37.google.firestore.v1.StructuredQuery.CollectionSelector\x12:\n\x05where\x18\x03 \x01(\x0b\x32+.google.firestore.v1.StructuredQuery.Filter\x12<\n\x08order_by\x18\x04 \x03(\x0b\x32*.google.firestore.v1.StructuredQuery.Order\x12-\n\x08start_at\x18\x07 \x01(\x0b\x32\x1b.google.firestore.v1.Cursor\x12+\n\x06\x65nd_at\x18\x08 \x01(\x0b\x32\x1b.google.firestore.v1.Cursor\x12\x0e\n\x06offset\x18\x06 \x01(\x05\x12*\n\x05limit\x18\x05 \x01(\x0b\x32\x1b.google.protobuf.Int32Value\x12K\n\x0c\x66ind_nearest\x18\t \x01(\x0b\x32\x30.google.firestore.v1.StructuredQuery.FindNearestB\x03\xe0\x41\x01\x1a\x44\n\x12\x43ollectionSelector\x12\x15\n\rcollection_id\x18\x02 \x01(\t\x12\x17\n\x0f\x61ll_descendants\x18\x03 \x01(\x08\x1a\xfd\x01\n\x06\x46ilter\x12P\n\x10\x63omposite_filter\x18\x01 \x01(\x0b\x32\x34.google.firestore.v1.StructuredQuery.CompositeFilterH\x00\x12H\n\x0c\x66ield_filter\x18\x02 \x01(\x0b\x32\x30.google.firestore.v1.StructuredQuery.FieldFilterH\x00\x12H\n\x0cunary_filter\x18\x03 \x01(\x0b\x32\x30.google.firestore.v1.StructuredQuery.UnaryFilterH\x00\x42\r\n\x0b\x66ilter_type\x1a\xd1\x01\n\x0f\x43ompositeFilter\x12I\n\x02op\x18\x01 \x01(\x0e\x32=.google.firestore.v1.StructuredQuery.CompositeFilter.Operator\x12<\n\x07\x66ilters\x18\x02 \x03(\x0b\x32+.google.firestore.v1.StructuredQuery.Filter\"5\n\x08Operator\x12\x18\n\x14OPERATOR_UNSPECIFIED\x10\x00\x12\x07\n\x03\x41ND\x10\x01\x12\x06\n\x02OR\x10\x02\x1a\x98\x03\n\x0b\x46ieldFilter\x12\x42\n\x05\x66ield\x18\x01 \x01(\x0b\x32\x33.google.firestore.v1.StructuredQuery.FieldReference\x12\x45\n\x02op\x18\x02 \x01(\x0e\x32\x39.google.firestore.v1.StructuredQuery.FieldFilter.Operator\x12)\n\x05value\x18\x03 \x01(\x0b\x32\x1a.google.firestore.v1.Value\"\xd2\x01\n\x08Operator\x12\x18\n\x14OPERATOR_UNSPECIFIED\x10\x00\x12\r\n\tLESS_THAN\x10\x01\x12\x16\n\x12LESS_THAN_OR_EQUAL\x10\x02\x12\x10\n\x0cGREATER_THAN\x10\x03\x12\x19\n\x15GREATER_THAN_OR_EQUAL\x10\x04\x12\t\n\x05\x45QUAL\x10\x05\x12\r\n\tNOT_EQUAL\x10\x06\x12\x12\n\x0e\x41RRAY_CONTAINS\x10\x07\x12\x06\n\x02IN\x10\x08\x12\x16\n\x12\x41RRAY_CONTAINS_ANY\x10\t\x12\n\n\x06NOT_IN\x10\n\x1a\x8a\x02\n\x0bUnaryFilter\x12\x45\n\x02op\x18\x01 \x01(\x0e\x32\x39.google.firestore.v1.StructuredQuery.UnaryFilter.Operator\x12\x44\n\x05\x66ield\x18\x02 \x01(\x0b\x32\x33.google.firestore.v1.StructuredQuery.FieldReferenceH\x00\"^\n\x08Operator\x12\x18\n\x14OPERATOR_UNSPECIFIED\x10\x00\x12\n\n\x06IS_NAN\x10\x02\x12\x0b\n\x07IS_NULL\x10\x03\x12\x0e\n\nIS_NOT_NAN\x10\x04\x12\x0f\n\x0bIS_NOT_NULL\x10\x05\x42\x0e\n\x0coperand_type\x1a\x8e\x01\n\x05Order\x12\x42\n\x05\x66ield\x18\x01 \x01(\x0b\x32\x33.google.firestore.v1.StructuredQuery.FieldReference\x12\x41\n\tdirection\x18\x02 \x01(\x0e\x32..google.firestore.v1.StructuredQuery.Direction\x1a$\n\x0e\x46ieldReference\x12\x12\n\nfield_path\x18\x02 \x01(\t\x1aQ\n\nProjection\x12\x43\n\x06\x66ields\x18\x02 \x03(\x0b\x32\x33.google.firestore.v1.StructuredQuery.FieldReference\x1a\xea\x03\n\x0b\x46indNearest\x12N\n\x0cvector_field\x18\x01 \x01(\x0b\x32\x33.google.firestore.v1.StructuredQuery.FieldReferenceB\x03\xe0\x41\x02\x12\x35\n\x0cquery_vector\x18\x02 \x01(\x0b\x32\x1a.google.firestore.v1.ValueB\x03\xe0\x41\x02\x12_\n\x10\x64istance_measure\x18\x03 \x01(\x0e\x32@.google.firestore.v1.StructuredQuery.FindNearest.DistanceMeasureB\x03\xe0\x41\x02\x12/\n\x05limit\x18\x04 \x01(\x0b\x32\x1b.google.protobuf.Int32ValueB\x03\xe0\x41\x02\x12\"\n\x15\x64istance_result_field\x18\x05 \x01(\tB\x03\xe0\x41\x01\x12=\n\x12\x64istance_threshold\x18\x06 \x01(\x0b\x32\x1c.google.protobuf.DoubleValueB\x03\xe0\x41\x01\"_\n\x0f\x44istanceMeasure\x12 \n\x1c\x44ISTANCE_MEASURE_UNSPECIFIED\x10\x00\x12\r\n\tEUCLIDEAN\x10\x01\x12\n\n\x06\x43OSINE\x10\x02\x12\x0f\n\x0b\x44OT_PRODUCT\x10\x03\"E\n\tDirection\x12\x19\n\x15\x44IRECTION_UNSPECIFIED\x10\x00\x12\r\n\tASCENDING\x10\x01\x12\x0e\n\nDESCENDING\x10\x02\"\xb8\x05\n\x1aStructuredAggregationQuery\x12@\n\x10structured_query\x18\x01 \x01(\x0b\x32$.google.firestore.v1.StructuredQueryH\x00\x12V\n\x0c\x61ggregations\x18\x03 \x03(\x0b\x32;.google.firestore.v1.StructuredAggregationQuery.AggregationB\x03\xe0\x41\x01\x1a\xf1\x03\n\x0b\x41ggregation\x12R\n\x05\x63ount\x18\x01 \x01(\x0b\x32\x41.google.firestore.v1.StructuredAggregationQuery.Aggregation.CountH\x00\x12N\n\x03sum\x18\x02 \x01(\x0b\x32?.google.firestore.v1.StructuredAggregationQuery.Aggregation.SumH\x00\x12N\n\x03\x61vg\x18\x03 \x01(\x0b\x32?.google.firestore.v1.StructuredAggregationQuery.Aggregation.AvgH\x00\x12\x12\n\x05\x61lias\x18\x07 \x01(\tB\x03\xe0\x41\x01\x1a\x38\n\x05\x43ount\x12/\n\x05up_to\x18\x01 \x01(\x0b\x32\x1b.google.protobuf.Int64ValueB\x03\xe0\x41\x01\x1aI\n\x03Sum\x12\x42\n\x05\x66ield\x18\x01 \x01(\x0b\x32\x33.google.firestore.v1.StructuredQuery.FieldReference\x1aI\n\x03\x41vg\x12\x42\n\x05\x66ield\x18\x01 \x01(\x0b\x32\x33.google.firestore.v1.StructuredQuery.FieldReferenceB\n\n\x08operatorB\x0c\n\nquery_type\"D\n\x06\x43ursor\x12*\n\x06values\x18\x01 \x03(\x0b\x32\x1a.google.firestore.v1.Value\x12\x0e\n\x06\x62\x65\x66ore\x18\x02 \x01(\x08\x42\xc2\x01\n\x17\x63om.google.firestore.v1B\nQueryProtoP\x01Z;cloud.google.com/go/firestore/apiv1/firestorepb;firestorepb\xa2\x02\x04GCFS\xaa\x02\x19Google.Cloud.Firestore.V1\xca\x02\x19Google\\Cloud\\Firestore\\V1\xea\x02\x1cGoogle::Cloud::Firestore::V1b\x06proto3"

pool = Google::Protobuf::DescriptorPool.generated_pool

begin
  pool.add_serialized_file(descriptor_data)
rescue TypeError
  # Compatibility code: will be removed in the next major version.
  require 'google/protobuf/descriptor_pb'
  parsed = Google::Protobuf::FileDescriptorProto.decode(descriptor_data)
  parsed.clear_dependency
  serialized = parsed.class.encode(parsed)
  file = pool.add_serialized_file(serialized)
  warn "Warning: Protobuf detected an import path issue while loading generated file #{__FILE__}"
  imports = [
    ["google.protobuf.Int32Value", "google/protobuf/wrappers.proto"],
    ["google.firestore.v1.Value", "google/firestore/v1/document.proto"],
  ]
  imports.each do |type_name, expected_filename|
    import_file = pool.lookup(type_name).file_descriptor
    if import_file.name != expected_filename
      warn "- #{file.name} imports #{expected_filename}, but that import was loaded as #{import_file.name}"
    end
  end
  warn "Each proto file must use a consistent fully-qualified name."
  warn "This will become an error in the next major version."
end

module Google
  module Cloud
    module Firestore
      module V1
        StructuredQuery = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.firestore.v1.StructuredQuery").msgclass
        StructuredQuery::CollectionSelector = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.firestore.v1.StructuredQuery.CollectionSelector").msgclass
        StructuredQuery::Filter = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.firestore.v1.StructuredQuery.Filter").msgclass
        StructuredQuery::CompositeFilter = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.firestore.v1.StructuredQuery.CompositeFilter").msgclass
        StructuredQuery::CompositeFilter::Operator = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.firestore.v1.StructuredQuery.CompositeFilter.Operator").enummodule
        StructuredQuery::FieldFilter = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.firestore.v1.StructuredQuery.FieldFilter").msgclass
        StructuredQuery::FieldFilter::Operator = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.firestore.v1.StructuredQuery.FieldFilter.Operator").enummodule
        StructuredQuery::UnaryFilter = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.firestore.v1.StructuredQuery.UnaryFilter").msgclass
        StructuredQuery::UnaryFilter::Operator = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.firestore.v1.StructuredQuery.UnaryFilter.Operator").enummodule
        StructuredQuery::Order = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.firestore.v1.StructuredQuery.Order").msgclass
        StructuredQuery::FieldReference = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.firestore.v1.StructuredQuery.FieldReference").msgclass
        StructuredQuery::Projection = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.firestore.v1.StructuredQuery.Projection").msgclass
        StructuredQuery::FindNearest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.firestore.v1.StructuredQuery.FindNearest").msgclass
        StructuredQuery::FindNearest::DistanceMeasure = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.firestore.v1.StructuredQuery.FindNearest.DistanceMeasure").enummodule
        StructuredQuery::Direction = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.firestore.v1.StructuredQuery.Direction").enummodule
        StructuredAggregationQuery = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.firestore.v1.StructuredAggregationQuery").msgclass
        StructuredAggregationQuery::Aggregation = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.firestore.v1.StructuredAggregationQuery.Aggregation").msgclass
        StructuredAggregationQuery::Aggregation::Count = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.firestore.v1.StructuredAggregationQuery.Aggregation.Count").msgclass
        StructuredAggregationQuery::Aggregation::Sum = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.firestore.v1.StructuredAggregationQuery.Aggregation.Sum").msgclass
        StructuredAggregationQuery::Aggregation::Avg = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.firestore.v1.StructuredAggregationQuery.Aggregation.Avg").msgclass
        Cursor = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.firestore.v1.Cursor").msgclass
      end
    end
  end
end
