103 lines
1.9 KiB
TypeScript
103 lines
1.9 KiB
TypeScript
export interface LoginConfig {
|
|
serverUrl: string;
|
|
email: string;
|
|
username: string;
|
|
password: string;
|
|
domain?: string;
|
|
}
|
|
|
|
export interface Email {
|
|
subject: string;
|
|
from: string;
|
|
fromName: string;
|
|
date: string;
|
|
isRead: boolean;
|
|
hasAttachments: boolean;
|
|
hasLinks: boolean;
|
|
itemId: string;
|
|
size: number;
|
|
isMeeting: boolean;
|
|
itemType: string;
|
|
to: string[];
|
|
cc: string[];
|
|
body: string;
|
|
bodyType: string;
|
|
attachments: Attachment[];
|
|
preview: string;
|
|
location?: string;
|
|
start?: string;
|
|
end?: string;
|
|
requiredAttendees?: string[];
|
|
optionalAttendees?: string[];
|
|
}
|
|
|
|
export interface Attachment {
|
|
name: string;
|
|
size: number;
|
|
contentType: string;
|
|
attachmentId: string;
|
|
isInline: boolean;
|
|
}
|
|
|
|
export interface Folder {
|
|
name: string;
|
|
id: string;
|
|
totalCount: number;
|
|
unreadCount: number;
|
|
childFolderCount: number;
|
|
}
|
|
|
|
export interface Person {
|
|
name: string;
|
|
email: string;
|
|
mailboxType: string;
|
|
firstName: string;
|
|
lastName: string;
|
|
jobTitle: string;
|
|
department: string;
|
|
company: string;
|
|
office: string;
|
|
alias: string;
|
|
manager: string;
|
|
managerEmail: string;
|
|
phones: Record<string, string>;
|
|
address: string;
|
|
directReports: Array<{ name: string; email: string }>;
|
|
}
|
|
|
|
export interface CalendarEvent {
|
|
subject: string;
|
|
start: string;
|
|
end: string;
|
|
location: string;
|
|
isAllDay: boolean;
|
|
isCancelled: boolean;
|
|
isMeeting: boolean;
|
|
isRecurring: boolean;
|
|
organizer: string;
|
|
organizerEmail: string;
|
|
myResponse: string;
|
|
itemId: string;
|
|
body: string;
|
|
requiredAttendees: string[];
|
|
optionalAttendees: string[];
|
|
}
|
|
|
|
export interface FreeSlot {
|
|
date: string;
|
|
start: string;
|
|
end: string;
|
|
durationMinutes: number;
|
|
}
|
|
|
|
export interface MeetingResult {
|
|
success: boolean;
|
|
subject: string;
|
|
date: string;
|
|
startTime: string;
|
|
endTime: string;
|
|
location: string;
|
|
requiredAttendees: string[];
|
|
optionalAttendees: string[];
|
|
error: string;
|
|
} |