commit 9810c2747d761d49b9b2b6b4c5c8c7468096a2b7
parent 140bef3747521b9ab4a92e24dceedfaf1ecc15f9
Author: Sebastian <sebasjm@gmail.com>
Date: Wed, 15 Jan 2025 14:41:40 -0300
sync types with docs
Diffstat:
2 files changed, 37 insertions(+), 0 deletions(-)
diff --git a/packages/taler-util/src/types-taler-common.ts b/packages/taler-util/src/types-taler-common.ts
@@ -229,6 +229,7 @@ export interface TalerCommonConfigResponse {
export const codecForTalerCommonConfigResponse =
(): Codec<TalerCommonConfigResponse> =>
buildCodecForObject<TalerCommonConfigResponse>()
+ .allowExtra()
.property("name", codecForString())
.property("version", codecForString())
.build("TalerCommonConfigResponse");
diff --git a/packages/taler-util/src/types-taler-exchange.ts b/packages/taler-util/src/types-taler-exchange.ts
@@ -1632,6 +1632,13 @@ export interface ExchangeVersionResponse {
// Names of supported KYC requirements.
supported_kyc_requirements: string[];
+
+ // Bank-specific dialect for the AML SPA. Determines
+ // which set of forms is available as well as statistics
+ // to show and sets of properties/events to trigger in
+ // AML decisions.
+ // @since protocol **v24**.
+ aml_spa_dialect?: string;
}
export interface WireAccount {
@@ -2208,6 +2215,28 @@ export interface ExchangeKeysResponse {
// normalized JSON-object of field extensions, if it was set.
// The signature has purpose TALER_SIGNATURE_MASTER_EXTENSIONS.
extensions_sig?: EddsaSignature;
+
+ // Set to true if this exchange has KYC enabled and thus
+ // requires KYC auth wire transfers prior to a first deposit.
+ // @since in protocol **v24**.
+ kyc_enabled: boolean;
+
+ // Set to true if this exchange allows the use
+ // of reserves for rewards.
+ // @deprecated in protocol **v18**.
+ // rewards_allowed: false;
+
+ // Shopping URL where users may find shops that accept
+ // digital cash issued by this exchange.
+ // @since protocol **v21**.
+ shopping_url?: string;
+
+ // Small(est?) amount that can likely be transferred to
+ // the exchange. Should be the default amount for KYC
+ // authentication wire transfers to this exchange.
+ // Optional, not present if not known or not configured.
+ // @since protocol **v21**.
+ tiny_amount?: AmountString;
}
export interface ZeroLimitedOperation {
@@ -2422,6 +2451,9 @@ export const codecForExchangeConfig = (): Codec<ExchangeVersionResponse> =>
.property("currency", codecForString())
.property("currency_specification", codecForCurrencySpecificiation())
.property("supported_kyc_requirements", codecForList(codecForString()))
+ .property("aml_spa_dialect", codecOptional(codecForString()))
+ .deprecatedProperty("shopping_url")
+ .deprecatedProperty("wallet_balance_limit_without_kyc")
.build("TalerExchangeApi.ExchangeVersionResponse");
// FIXME: complete the codec to check for valid exchange response
@@ -2453,6 +2485,10 @@ export const codecForExchangeKeys = (): Codec<ExchangeKeysResponse> =>
.property("wads", codecForAny())
.property("wallet_balance_limit_without_kyc", codecForAny())
.property("wire_fees", codecForAny())
+ .property("kyc_enabled", codecForBoolean())
+ .property("shopping_url", codecOptional(codecForString()))
+ .property("tiny_amount", codecOptional(codecForAmountString()))
+ .deprecatedProperty("rewards_allowed")
.build("TalerExchangeApi.ExchangeKeysResponse");
export const codecForEventCounter = (): Codec<EventCounter> =>