2018-05-18 21:26:46 +02:00
|
|
|
import { OrganizationData } from '../models/data/organizationData';
|
|
|
|
import { Organization } from '../models/domain/organization';
|
|
|
|
|
2018-08-14 21:12:10 +02:00
|
|
|
import { KdfType } from '../enums/kdfType';
|
2018-02-08 18:24:37 +01:00
|
|
|
|
2018-08-14 21:12:10 +02:00
|
|
|
export abstract class UserService {
|
|
|
|
setInformation: (userId: string, email: string, kdf: KdfType, kdfIterations: number) => Promise<any>;
|
2018-02-08 18:24:37 +01:00
|
|
|
setSecurityStamp: (stamp: string) => Promise<any>;
|
|
|
|
getUserId: () => Promise<string>;
|
|
|
|
getEmail: () => Promise<string>;
|
|
|
|
getSecurityStamp: () => Promise<string>;
|
2018-08-14 21:12:10 +02:00
|
|
|
getKdf: () => Promise<KdfType>;
|
|
|
|
getKdfIterations: () => Promise<number>;
|
2018-02-08 18:24:37 +01:00
|
|
|
clear: () => Promise<any>;
|
|
|
|
isAuthenticated: () => Promise<boolean>;
|
2018-08-29 05:17:30 +02:00
|
|
|
canAccessPremium: () => Promise<boolean>;
|
2018-05-18 21:26:46 +02:00
|
|
|
getOrganization: (id: string) => Promise<Organization>;
|
|
|
|
getAllOrganizations: () => Promise<Organization[]>;
|
|
|
|
replaceOrganizations: (organizations: { [id: string]: OrganizationData; }) => Promise<any>;
|
|
|
|
clearOrganizations: (userId: string) => Promise<any>;
|
2018-01-09 23:37:50 +01:00
|
|
|
}
|