syntax = "proto3"; package agent; option go_package = "l_vpn_proto/proto"; service WireGuardAgent { rpc GetClientConfigs(GetClientConfigsRequest) returns (GetClientConfigsResponse); rpc RegisterClient(RegisterClientRequest) returns (RegisterClientResponse); rpc GetServerStatus(GetServerStatusRequest) returns (GetServerStatusResponse); } message GetClientConfigsRequest {} message ClientConfig { string name = 1; string public_key = 2; string private_key = 3; string endpoint = 4; string allowed_ips = 5; string created_at = 6; } message GetClientConfigsResponse { bool success = 1; string error = 2; repeated ClientConfig clients = 3; } message RegisterClientRequest { string name = 1; string allowed_ips = 2; } message RegisterClientResponse { bool success = 1; string error = 2; ClientConfig client = 3; } message GetServerStatusRequest {} message GetServerStatusResponse { bool success = 1; string error = 2; string interface_name = 3; string public_key = 4; string listening_port = 5; int32 peers_count = 6; }