syntax = "proto3";

package examples;

enum ItemType {
  TYPE_0 = 0;
  TYPE_1 = 1;
}

message ItemProto {
  string name = 1;
  int32 amount = 2;
  bool active = 3;
}

message ItemProtoWithRepeated {
  string name = 1;
  int32 amount = 2;
  bool active = 3;
  repeated string extras = 4;
}

message ItemProtoWithMap {
  string name = 1;
  int32 amount = 2;
  bool active = 3;
  map<string, string> data = 4;
}

message ItemProtoWithSubItem {
  string name = 1;
  int32 amount = 2;
  bool active = 3;
  ItemProto item = 4;
}

message ItemProtoWithRepeatedItems {
  string name = 1;
  int32 amount = 2;
  bool active = 3;
  repeated ItemProto items = 4;
}

message ItemProtoWithEnum {
  string name = 1;
  int32 amount = 2;
  bool active = 3;
  ItemType type = 4;
}
