Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/jsxc/jsxc.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorsualko <klaus@jsxc.org>2021-12-29 17:39:37 +0300
committersualko <klaus@jsxc.org>2021-12-29 17:49:51 +0300
commit5b39de7b423de2ecad1edf009f26b373894069ac (patch)
tree792477937258974915451c100d48d591e3c1c231
parentbb0e27b8892c5c1da003a92545bdb5e106944b3f (diff)
feat: add generic type to storage interface
-rw-r--r--src/Storage.interface.ts8
-rw-r--r--src/Storage.ts8
2 files changed, 8 insertions, 8 deletions
diff --git a/src/Storage.interface.ts b/src/Storage.interface.ts
index 3d20b542..a04cfe31 100644
--- a/src/Storage.interface.ts
+++ b/src/Storage.interface.ts
@@ -4,11 +4,11 @@ export default interface IStorage {
getPrefix(): string;
getBackend();
- setItem(type: string, key: string, value: any): void;
- setItem(key: string, value: any): void;
+ setItem<Data = any>(type: string, key: string, value: Data): void;
+ setItem<Data = any>(key: string, value: Data): void;
- getItem(type: string, key: string): any;
- getItem(key: string): any;
+ getItem<Data = any>(type: string, key: string): Data;
+ getItem<Data = any>(key: string): Data;
removeItem(type, key): void;
removeItem(key): void;
diff --git a/src/Storage.ts b/src/Storage.ts
index b7987a6f..a73948d0 100644
--- a/src/Storage.ts
+++ b/src/Storage.ts
@@ -121,8 +121,8 @@ export default class Storage implements IStorage {
return Storage.backend;
}
- public setItem(type: string, key: string, value: any): void;
- public setItem(key: string, value: any): void;
+ public setItem<Data = any>(type: string, key: string, value: Data): void;
+ public setItem<Data = any>(key: string, value: Data): void;
public setItem(): void {
let key: string;
let value: any;
@@ -162,8 +162,8 @@ export default class Storage implements IStorage {
}
}
- public getItem(type: string, key: string): any;
- public getItem(key: string): any;
+ public getItem<Data = any>(type: string, key: string): Data;
+ public getItem<Data = any>(key: string): Data;
public getItem(): any {
let key: string;