message ArrayMessage {
    repeated bytes elements = 1;
}

message ObjectMessage {
    map<string, bytes> properties = 1;
}

message DefaultSerializerMessage {
    oneof value {
        string stringValue = 1;
        sint64 intValue = 2;
        double doubleValue = 3;
        bool booleanValue = 4;
        bool undefinedValue = 5;
        bool nullValue = 6;
        ArrayMessage arrayValue = 7;
        ObjectMessage objectValue = 8;
        bytes bytesValue = 9;
        OptionalMessage optionalValue = 10;
    }
}

message PairSerializerMessage {
  required bytes one = 1;
  required bytes two = 2;
}

message CollabIDMessage {
    repeated string collabIDPath = 1;
}
