aboutsummaryrefslogtreecommitdiff
path: root/packages/taler-wallet-core/src
diff options
context:
space:
mode:
Diffstat (limited to 'packages/taler-wallet-core/src')
-rw-r--r--packages/taler-wallet-core/src/wallet-api-types.ts12
1 files changed, 7 insertions, 5 deletions
diff --git a/packages/taler-wallet-core/src/wallet-api-types.ts b/packages/taler-wallet-core/src/wallet-api-types.ts
index 88e66ff9e..354681734 100644
--- a/packages/taler-wallet-core/src/wallet-api-types.ts
+++ b/packages/taler-wallet-core/src/wallet-api-types.ts
@@ -707,17 +707,19 @@ export type WalletOperations = {
[WalletApiOperation.SetDevMode]: SetDevModeOp;
};
-export type RequestType<
+export type WalletCoreRequestType<
Op extends WalletApiOperation & keyof WalletOperations,
> = WalletOperations[Op] extends { request: infer T } ? T : never;
-export type ResponseType<
+export type WalletCoreResponseType<
Op extends WalletApiOperation & keyof WalletOperations,
> = WalletOperations[Op] extends { response: infer T } ? T : never;
+export type WalletCoreOpKeys = WalletApiOperation & keyof WalletOperations;
+
export interface WalletCoreApiClient {
- call<Op extends WalletApiOperation & keyof WalletOperations>(
+ call<Op extends WalletCoreOpKeys>(
operation: Op,
- payload: RequestType<Op>,
- ): Promise<ResponseType<Op>>;
+ payload: WalletCoreRequestType<Op>,
+ ): Promise<WalletCoreResponseType<Op>>;
}