aboutsummaryrefslogtreecommitdiff
path: root/packages/taler-util
diff options
context:
space:
mode:
authorFlorian Dold <florian@dold.me>2024-03-31 16:50:34 +0200
committerFlorian Dold <florian@dold.me>2024-03-31 16:50:34 +0200
commitf45340eb11435f47a3a561c724cd356e5b4ba885 (patch)
tree3c2a079d78202908f0007fe065f7225ba016e415 /packages/taler-util
parent2d61180dce798ab260d47f94b382fd4f843a55bf (diff)
downloadwallet-core-f45340eb11435f47a3a561c724cd356e5b4ba885.tar.xz
wallet-core: implement denom-loss transaction
Diffstat (limited to 'packages/taler-util')
-rw-r--r--packages/taler-util/src/notifications.ts1
-rw-r--r--packages/taler-util/src/transactions-types.ts20
2 files changed, 19 insertions, 2 deletions
diff --git a/packages/taler-util/src/notifications.ts b/packages/taler-util/src/notifications.ts
index f439b4a6f..43ca6271e 100644
--- a/packages/taler-util/src/notifications.ts
+++ b/packages/taler-util/src/notifications.ts
@@ -22,7 +22,6 @@
/**
* Imports.
*/
-import { CancellationToken } from "./CancellationToken.js";
import { AbsoluteTime } from "./time.js";
import { TransactionState } from "./transactions-types.js";
import { ExchangeEntryState, TalerErrorDetail } from "./wallet-types.js";
diff --git a/packages/taler-util/src/transactions-types.ts b/packages/taler-util/src/transactions-types.ts
index 8c4c2c7ed..bddc03c25 100644
--- a/packages/taler-util/src/transactions-types.ts
+++ b/packages/taler-util/src/transactions-types.ts
@@ -222,7 +222,8 @@ export type Transaction =
| TransactionPeerPushCredit
| TransactionPeerPushDebit
| TransactionInternalWithdrawal
- | TransactionRecoup;
+ | TransactionRecoup
+ | TransactionDenomLoss;
export enum TransactionType {
Withdrawal = "withdrawal",
@@ -237,6 +238,7 @@ export enum TransactionType {
PeerPullDebit = "peer-pull-debit",
PeerPullCredit = "peer-pull-credit",
Recoup = "recoup",
+ DenomLoss = "denom-loss",
}
export enum WithdrawalType {
@@ -298,6 +300,22 @@ interface WithdrawalDetailsForTalerBankIntegrationApi {
exchangeCreditAccountDetails?: WithdrawalExchangeAccountDetails[];
}
+export enum DenomLossEventType {
+ DenomExpired = "denom-expired",
+ DenomVanished = "denom-vanished",
+ DenomUnoffered = "denom-unoffered",
+}
+
+/**
+ * A transaction to indicate financial loss due to denominations
+ * that became unusable for deposits.
+ */
+export interface TransactionDenomLoss extends TransactionCommon {
+ type: TransactionType.DenomLoss;
+ lossEventType: DenomLossEventType;
+ exchangeBaseUrl: string;
+}
+
/**
* A withdrawal transaction (either bank-integrated or manual).
*/