+ AuditorKeys

This commit is contained in:
swrup 2025-12-04 18:01:04 +01:00
parent 8a6ee6cfda
commit 4a1c8f61ab

View file

@ -857,3 +857,30 @@ module AuditorDenominationKey = struct
|> mem "auditor_sig" ExchangeKeyValidityPS.jsont ~enc:auditor_sig |> mem "auditor_sig" ExchangeKeyValidityPS.jsont ~enc:auditor_sig
|> finish |> finish
end end
module AuditorKeys = struct
type t = {
auditor_pub: EddsaPublicKey.t;
auditor_url: string;
auditor_name: string;
denomination_keys: AuditorDenominationKey.t list;
}
let jsont =
let make auditor_pub auditor_url auditor_name denomination_keys =
{ auditor_pub; auditor_url; auditor_name; denomination_keys }
in
let auditor_pub v = v.auditor_pub in
let auditor_url v = v.auditor_url in
let auditor_name v = v.auditor_name in
let denomination_keys v = v.denomination_keys in
let open Jsont.Object in
map ~kind:"AuditorKeys" make
|> mem "auditor_pub" EddsaPublicKey.jsont ~enc:auditor_pub
|> mem "auditor_url" Jsont.string ~enc:auditor_url
|> mem "auditor_name" Jsont.string ~enc:auditor_name
|> mem "denomination_keys"
(Jsont.list AuditorDenominationKey.jsont)
~enc:denomination_keys
|> finish
end