ddk-node 0.0.13

DDK node to facilitate DLC contracts.
Documentation
syntax = "proto3";
package ddkrpc;

service DdkRpc {
  rpc Info (InfoRequest) returns (InfoResponse);
  rpc SendOffer (SendOfferRequest) returns (SendOfferResponse);
  rpc AcceptOffer (AcceptOfferRequest) returns (AcceptOfferResponse);
  rpc ListOffers (ListOffersRequest) returns (ListOffersResponse);
  rpc NewAddress (NewAddressRequest) returns (NewAddressResponse);
  rpc WalletBalance (WalletBalanceRequest) returns (WalletBalanceResponse);
  rpc GetWalletTransactions (GetWalletTransactionsRequest) returns (GetWalletTransactionsResponse);
  rpc ListUtxos (ListUtxosRequest) returns (ListUtxosResponse);
  rpc ListPeers (ListPeersRequest) returns (ListPeersResponse);
  rpc ConnectPeer (ConnectRequest) returns (ConnectResponse);
  rpc ListOracles (ListOraclesRequest) returns (ListOraclesResponse);
  rpc ListContracts (ListContractsRequest) returns (ListContractsResponse);
  rpc Send (SendRequest) returns (SendResponse);
  rpc OracleAnnouncements (OracleAnnouncementsRequest) returns (OracleAnnouncementsResponse);
}

message InfoRequest {}

message InfoResponse {
  string pubkey = 1;
  string transport = 2;
  string oracle = 3;
}

message SendOfferRequest {
  bytes contract_input = 1;
  string counter_party = 2;
}

message SendOfferResponse {
  bytes offer_dlc = 1;
}

message ListOffersRequest {}

message ListOffersResponse {
  repeated bytes offers = 1;
}

message AcceptOfferRequest {
  string contract_id = 1;
}

message AcceptOfferResponse {
  string contract_id = 1;
  string counter_party = 2;
  bytes accept_dlc = 3;
}

message NewAddressRequest {}

message NewAddressResponse {
  string address = 1;
}

message WalletBalanceRequest {}

message WalletBalanceResponse {
  uint64 confirmed = 1;
  uint64 unconfirmed = 2;
}

message GetWalletTransactionsRequest {}

message GetWalletTransactionsResponse {
  repeated bytes transactions = 1;
}

message ListUtxosRequest {}

message ListUtxosResponse {
  repeated bytes utxos = 1;
}

message ListPeersRequest {}

message ListPeersResponse {
  repeated Peer peers = 1;
}

message Peer {
  string pubkey = 1;
  string host = 2;
}

message ConnectRequest {
  string pubkey = 1;
  string host = 2;
}

message ConnectResponse {}

message ListOraclesRequest {}

message ListOraclesResponse {
  string name = 1;
  string pubkey = 2;
}

message ListContractsRequest {}

message ListContractsResponse {
  repeated bytes contracts = 1;
}

message SendRequest {
  string address = 1;
  uint64 amount = 2;
  uint64 fee_rate = 3;
}

message SendResponse {
  string txid = 1;
}

message OracleAnnouncementsRequest {}

message OracleAnnouncementsResponse {
  repeated bytes announcements = 1;
}