Migrate UserIdentityStore to TypeScript

This commit is contained in:
Danila Fedorin 2021-08-11 16:38:37 -07:00
parent b46ae152d6
commit 8d44df83c4
2 changed files with 15 additions and 6 deletions

View file

@ -26,7 +26,7 @@ import {RoomStateStore} from "./stores/RoomStateStore";
import {RoomMemberStore} from "./stores/RoomMemberStore";
import {TimelineFragmentStore} from "./stores/TimelineFragmentStore";
import {PendingEventStore} from "./stores/PendingEventStore";
import {UserIdentityStore} from "./stores/UserIdentityStore.js";
import {UserIdentityStore} from "./stores/UserIdentityStore";
import {DeviceIdentityStore} from "./stores/DeviceIdentityStore.js";
import {OlmSessionStore} from "./stores/OlmSessionStore.js";
import {InboundGroupSessionStore} from "./stores/InboundGroupSessionStore.js";

View file

@ -13,21 +13,30 @@ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
*/
import {Store} from "../Store";
interface UserIdentity {
userId: string;
roomIds: string[];
deviceTrackingStatus: number;
}
export class UserIdentityStore {
constructor(store) {
private _store: Store<UserIdentity>;
constructor(store: Store<UserIdentity>) {
this._store = store;
}
get(userId) {
get(userId: string): Promise<UserIdentity | null> {
return this._store.get(userId);
}
set(userIdentity) {
this._store.put(userIdentity);
set(userIdentity: UserIdentity): Promise<IDBValidKey> {
return this._store.put(userIdentity);
}
remove(userId) {
remove(userId: string): Promise<undefined> {
return this._store.delete(userId);
}
}