syntax = "proto3";
package osmosis.twap.v1beta1;

import "gogoproto/gogo.proto";
import "osmosis/twap/v1beta1/twap_record.proto";
import "google/protobuf/any.proto";
import "cosmos_proto/cosmos.proto";
import "google/protobuf/duration.proto";

option go_package = "github.com/osmosis-labs/osmosis/v13/x/twap/types";

// Params holds parameters for the twap module
message Params {
  string prune_epoch_identifier = 1;
  google.protobuf.Duration record_history_keep_period = 2 [
    (gogoproto.moretags) = "yaml:\"record_history_keep_period\"",
    (gogoproto.stdduration) = true,
    (gogoproto.nullable) = false
  ];
}

// GenesisState defines the twap module's genesis state.
message GenesisState {
  // twaps is the collection of all twap records.
  repeated TwapRecord twaps = 1 [ (gogoproto.nullable) = false ];

  // params is the container of twap parameters.
  Params params = 2 [ (gogoproto.nullable) = false ];
}
