import client from "jmap-client-ts/lib/types"; export interface IEmailStub { id: string; subject: string; } export interface IMailbox extends client.IMailboxProperties { emailIds: Array | null; } export interface IEmail extends client.IEmailProperties {} export interface IAccount extends client.IAccount { id: string; mailboxes: Array | null; } export type AccountIdMap = { [accountId: string]: IAccount }; export type EmailStubIdMap = { [emailId: string]: IEmailStub }; export type EmailIdMap = { [emailId: string]: IEmail }; export interface ISession extends client.ISession { accounts: AccountIdMap; emails: EmailIdMap; emailStubs: EmailStubIdMap; }