3e74f59ee8
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
36 lines
863 B
TypeScript
36 lines
863 B
TypeScript
import { IEvent, IParticipant } from "@/types/event.model";
|
|
import { IPerson } from "@/types/actor/person.model";
|
|
import { Paginate } from "./paginate";
|
|
|
|
export enum ICurrentUserRole {
|
|
USER = "USER",
|
|
MODERATOR = "MODERATOR",
|
|
ADMINISTRATOR = "ADMINISTRATOR",
|
|
}
|
|
|
|
export interface ICurrentUser {
|
|
id: number;
|
|
email: string;
|
|
isLoggedIn: boolean;
|
|
role: ICurrentUserRole;
|
|
participations: Paginate<IParticipant>;
|
|
defaultActor: IPerson;
|
|
drafts: IEvent[];
|
|
settings: IUserSettings;
|
|
}
|
|
|
|
export enum INotificationPendingParticipationEnum {
|
|
NONE = "NONE",
|
|
DIRECT = "DIRECT",
|
|
ONE_DAY = "ONE_DAY",
|
|
ONE_HOUR = "ONE_HOUR",
|
|
}
|
|
|
|
export interface IUserSettings {
|
|
timezone: string;
|
|
notificationOnDay: string;
|
|
notificationEachWeek: string;
|
|
notificationBeforeEvent: string;
|
|
notificationPendingParticipation: INotificationPendingParticipationEnum;
|
|
}
|