hyperlog/crates/hyperlog-protos/proto/hyperlog.proto

48 lines
678 B
Protocol Buffer
Raw Normal View History

syntax = "proto3";
package hyperlog;
service Graph {
rpc Get(GetRequest) returns (GetReply);
}
message UserGraphItem {
map<string, GraphItem> items = 1;
}
message SectionGraphItem {
map<string, GraphItem> items = 1;
}
enum ItemState {
UNSPECIFIED = 0;
NOT_DONE = 1;
DONE = 2;
}
message ItemGraphItem {
string title = 1;
string description = 2;
ItemState state = 3;
}
message GraphItem {
string path = 1;
oneof contents {
UserGraphItem user = 2;
SectionGraphItem section = 3;
ItemGraphItem item = 4;
}
}
message GetRequest {
string root = 1;
repeated string paths = 2;
}
message GetReply {
repeated GraphItem items = 1;
}