syntax = "proto3"; message Grid { string id = 1; repeated FieldOrder field_orders = 2; repeated RowOrder row_orders = 3; } message FieldOrder { string field_id = 1; } message RepeatedFieldOrder { repeated FieldOrder items = 1; } message RowOrder { string row_id = 1; } message RepeatedRowOrder { repeated RowOrder items = 1; } message Row { string id = 1; map cell_by_field_id = 2; int32 height = 3; } message RepeatedRow { repeated Row items = 1; } message Cell { string id = 1; string field_id = 2; string content = 3; } message CreateGridPayload { string name = 1; } message GridId { string value = 1; } message QueryFieldPayload { string grid_id = 1; RepeatedFieldOrder field_orders = 2; } message QueryRowPayload { string grid_id = 1; RepeatedRowOrder row_orders = 2; }