// Shared run-domain value types, extracted from runs-service-api.yml so that services which
// reference them (e.g. AssetService, DataSourceService) can migrate to proto/gRPC before the
// full RunService migration. Care should be taken while both files exist to maintain backwards
// compatibility with the Conjure generated code. The RunService itself will join this package later.

syntax = "proto3";

package nominal.run.v1;

option java_multiple_files = true;
option java_package = "io.nominal.run.v1";

// Display metadata for a unit of measure. Prefer the units service for additional display metadata.
message Unit {
  optional string name = 1;

  string symbol = 2;
}

// If a CSV data source is still being split, the timestamp type is not yet known.
//
// buf:lint:ignore ENUM_VALUE_PREFIX
enum WeakTimestampType {
  WEAK_TIMESTAMP_TYPE_UNSPECIFIED = 0;
  ABSOLUTE = 1;
  RELATIVE = 2;
  PENDING = 3;
}

message UtcTimestamp {
  int64 seconds_since_epoch = 1;

  optional int64 offset_nanoseconds = 2;
}
