syntax = "proto3"; package items; message Person { string name = 1; repeated Opinion opinion = 2; } message Opinion { Game game = 1; bool would_play = 2; } message Game { string title = 1; Source source = 2; bool multiplayer = 3; uint32 min_players = 4; uint32 max_players = 5; uint32 price = 6; } enum Source { STEAM = 0; ROBLOX = 1; } message PersonList { repeated Person person = 1; } // Authentication messages message LoginRequest { string username = 1; string password = 2; } message LoginResponse { string token = 1; bool success = 2; string message = 3; } message LogoutRequest { string token = 1; } message LogoutResponse { bool success = 1; string message = 2; } message AuthStatusRequest { string token = 1; } message AuthStatusResponse { bool authenticated = 1; string username = 2; string message = 3; } // Authentication service service AuthService { rpc Login (LoginRequest) returns (LoginResponse); rpc Logout (LogoutRequest) returns (LogoutResponse); rpc GetAuthStatus (AuthStatusRequest) returns (AuthStatusResponse); }