Greenfield: Wallet Objects (#4274)

Co-authored-by: Nicolas Dorier <nicolas.dorier@gmail.com>
This commit is contained in:
Andrew Camilleri
2022-11-16 04:11:17 +01:00
committed by GitHub
parent 324112b73b
commit 2740dfea87
8 changed files with 1072 additions and 63 deletions

View File

@@ -4,9 +4,52 @@ using BTCPayServer.JsonConverters;
using NBitcoin;
using NBitcoin.JsonConverters;
using Newtonsoft.Json;
using Newtonsoft.Json.Linq;
namespace BTCPayServer.Client.Models
{
public class OnChainWalletObjectQuery
{
public string[]? Types { get; set; }
public OnChainWalletObjectId[]? Parents { get; set; }
public OnChainWalletObjectId[]? Children { get; set; }
public bool IncludeLinks { get; set; }
}
public class OnChainWalletObjectId
{
public string Type { get; set; }
public string Id { get; set; }
}
public class RemoveOnChainWalletObjectLinkRequest
{
public OnChainWalletObjectId Parent { get; set; }
public OnChainWalletObjectId Child { get; set; }
}
public class AddOnChainWalletObjectLinkRequest
{
public OnChainWalletObjectId Parent { get; set; }
public OnChainWalletObjectId Child { get; set; }
public JObject? Data { get; set; }
}
public class OnChainWalletObjectData:OnChainWalletObjectId
{
public class OnChainWalletObjectLink:OnChainWalletObjectId
{
public JObject? LinkData { get; set; }
}
public JObject? Data { get; set; }
public OnChainWalletObjectLink[]? Parents { get; set; }
public OnChainWalletObjectLink[]? Children { get; set; }
}
public class OnChainWalletTransactionData
{
[JsonConverter(typeof(UInt256JsonConverter))]