syntax = "proto3";

package pickling;

import "google/protobuf/any.proto";
import "google/protobuf/struct.proto";

message Test {}

message Fe {
  string abc = 1;
}

message Fi {
  string abc = 1;
}

message Fo {
  string abc = 1;
}

message NestedData {
  map<string, google.protobuf.Struct> struct_foo = 1;
  map<string, google.protobuf.Any> map_str_any_bar = 2;
}

message Complex {
  string foo_str = 1;
  oneof grp {
    Fe fe = 3;
    Fi fi = 4;
    Fo fo = 5;
  }
  NestedData nested_data = 6;
  map<string, google.protobuf.Any> mapping = 7;
}

message PickledMessage {
  bool foo = 1;
  int32 bar = 2;
  repeated string baz = 3;
}
