// Copyright 2023 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
//      http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.

syntax = "proto3";

package fcp.client;

import "google/type/datetime.proto";

option java_package = "com.google.intelligence.fcp.client";
option java_multiple_files = true;

// The hint of event time range of the SQLite query results.
// Generated by checking returned results of the event time column of example
// query result:
// fcp/client/example_query_result.proto
// The associated time zone may differ for different queries, e.g. some queries
// might return event time in UTC, while some use device local time zone.
// Note that if a start_event_time is specified, an end_event_time should
// always be specified. And if end_event_time is specified, start_event_time
// should always be specified as well.
// In the case where end_event_time == start_event_time,  this is interpreted as
// a 'whole' time range up to the granularity of the timestamp, e.g. if the
// timestamp has values up to 'day' granularity then the time range is
// interpreted as that whole day.
message EventTimeRange {
  // If specified, start_event_time is the inclusive start time of the event
  // time range.
  google.type.DateTime start_event_time = 1;
  // If specified, end_event_time is the non-inclusive end time of the event
  // time range.
  google.type.DateTime end_event_time = 2;
}
