// Copyright 2022 The Tari Project
// SPDX-License-Identifier: BSD-3-Clause

syntax = "proto3";

package tari.dht.rpc;

import "common.proto";

// `get_peers` request
message GetPeersRequest {
  // The number of peers to return, 0 for all peers
  uint32 n = 1;
  bool include_clients = 2;
  uint32 max_claims = 3;
  uint32 max_addresses_per_claim = 4;
}

// GET peers response
message GetPeersResponse {
  PeerInfo peer = 1;
}

// Minimal peer information
message PeerInfo {
  bytes public_key = 1;
  repeated PeerIdentityClaim claims = 2;
}

message PeerIdentityClaim {
  repeated bytes addresses = 1;
  uint32 peer_features = 2;
  tari.dht.common.IdentitySignature identity_signature = 3;
}
