export enum RoomType { ROOM = 0, CHANNEL = 1, GROUP = 2, DM = 3, THREAD = 4, } export interface Message { id: number; fromA: string; toA: string; ccA?: string; subject: string; content: string; date: string; flags: string[]; } export enum LoadingState { notLoaded = 0, loading = 1, loaded = 2, } export interface Room { id: number; roomName: string; roomType: RoomType; mailboxId: number; user: string; userId: number; members: Address[]; notSeen: number; threadIds: number[]; } export interface Account { id: number; email: string; fetched: boolean; } export interface Address { id: number; name: string | null; email: string; type: string; }