kqlQuery: Escape hatch for advanced KQL (Keyword Query Language) syntax
Plus all base fields from baseEmailQueryFields:
Email addresses: from, to, cc, bcc (support string or field operators)
Content: subject, body, text
Flags: hasAttachment, isRead
Date range: date { $gte, $lt }
Logical operators: $and, $or, $not (recursive)
Note: Cast through unknown to work around Zod's lazy schema type inference issue
with exactOptionalPropertyTypes. The runtime schema is correct; this cast ensures
TypeScript sees the strict OutlookQuery type everywhere the schema is used.
Outlook-specific query schema with recursive operators and Outlook features.
Includes Microsoft Graph/Outlook-specific features:
Plus all base fields from baseEmailQueryFields:
Note: Cast through unknown to work around Zod's lazy schema type inference issue with exactOptionalPropertyTypes. The runtime schema is correct; this cast ensures TypeScript sees the strict OutlookQuery type everywhere the schema is used.