syntax = "proto3"; option csharp_namespace = "EllieBot.GrpcApi"; import "google/protobuf/empty.proto"; import "google/protobuf/timestamp.proto"; package other; service GrpcOther { rpc GetTextChannels(GetTextChannelsRequest) returns (GetTextChannelsReply); rpc GetCurrencyLb(GetLbRequest) returns (CurrencyLbReply); rpc GetXpLb(GetLbRequest) returns (XpLbReply); rpc GetWaifuLb(GetLbRequest) returns (WaifuLbReply); rpc GetShardStatuses(google.protobuf.Empty) returns (GetShardStatusesReply); } message GetShardStatusesReply { repeated ShardStatusReply shards = 1; } message ShardStatusReply { int32 id = 1; string status = 2; int32 guildCount = 3; google.protobuf.Timestamp lastUpdate = 4; } message GetTextChannelsRequest{ uint64 guildId = 1; } message GetTextChannelsReply { repeated TextChannelReply textChannels = 1; } message TextChannelReply { uint64 id = 1; string name = 2; } message CurrencyLbReply { repeated CurrencyLbEntryReply entries = 1; } message CurrencyLbEntryReply { string user = 1; uint64 userId = 2; int64 amount = 3; string avatar = 4; } message GetLbRequest { int32 page = 1; int32 perPage = 2; } message XpLbReply { repeated XpLbEntryReply entries = 1; } message XpLbEntryReply { string user = 1; uint64 userId = 2; int64 totalXp = 3; int64 level = 4; } message WaifuLbReply { repeated WaifuLbEntry entries = 1; } message WaifuLbEntry { string user = 1; string claimedBy = 2; int64 value = 3; bool isMutual = 4; }