msexchange-mcp
Version:
MCP server for Microsoft Exchange/Outlook email operations via Microsoft Graph API
64 lines • 1.78 kB
TypeScript
import { Email } from '../types.js';
export interface ImprovedQueryOptions {
search?: string;
filter?: string;
from?: string | string[];
to?: string | string[];
subject?: string;
body?: string;
aliases?: Record<string, string[]>;
hasAttachments?: boolean;
isRead?: boolean;
importance?: 'low' | 'normal' | 'high';
categories?: string[];
conversationId?: string;
dateRange?: {
start?: string;
end?: string;
};
folder?: string;
limit?: number;
skip?: number;
orderBy?: string;
includeBody?: boolean;
maxTokens?: number;
}
export declare class ImprovedQueryBuilder {
private userEmail;
private mailService;
private readonly DEFAULT_MAX_TOKENS;
constructor(userEmail: string);
/**
* Builds an improved filter that handles partial matches and complex scenarios
*/
buildImprovedFilter(options: ImprovedQueryOptions): string;
/**
* Build email conditions with support for partial matches
*/
private buildEmailConditions;
/**
* Build recipient conditions with simplified syntax to avoid errors
*/
private buildRecipientConditions;
/**
* Expand search terms with aliases
*/
private expandWithAliases;
/**
* Escape special characters in filter values
*/
private escapeFilterValue;
/**
* Execute query with automatic token management
*/
executeWithTokenManagement(options: ImprovedQueryOptions): Promise<{
emails: Email[];
strategy: string;
hadTokenIssue: boolean;
suggestions?: string[];
}>;
private hasStructuredFilters;
private getSelectFields;
private describeStrategy;
}
//# sourceMappingURL=improvedQueryBuilder.d.ts.map