syntax = "proto3";

package xray.proxy.wireguard;
option csharp_namespace = "Xray.Proxy.WireGuard";
option go_package = "github.com/xtls/xray-core/proxy/wireguard";
option java_package = "com.xray.proxy.wireguard";
option java_multiple_files = true;

message PeerConfig {
    string public_key = 1;
    string pre_shared_key = 2;
    string endpoint = 3;
    int32 keep_alive = 4;
    repeated string allowed_ips = 5;
}

message DeviceConfig {
    string secret_key = 1;
    repeated string endpoint = 2;
    repeated PeerConfig peers = 3;
    int32 mtu = 4;
    int32 num_workers = 5;
    bytes reserved = 6;
}