/** * Render an itemAttachment's inner resource (a `microsoft.graph.message`, * `event`, or `contact`) directly to markdown — no RTF round-trip, no * Graph conversion call. * * Each renderer emits a small header block (`**Subject:** …`, etc.) and * appends the body run through htmlToMarkdown when the inner resource * has one. Callers (the convert-mail-attachment-to-markdown command) * choose the right renderer by branching on `item['@odata.type']`. */ type EmailAddress = { readonly name?: string; readonly address?: string; }; type Recipient = { readonly emailAddress?: EmailAddress; }; type Body = { readonly contentType?: string; readonly content?: string; }; type EmbeddedMessage = { readonly subject?: string; readonly from?: Recipient; readonly toRecipients?: ReadonlyArray; readonly sentDateTime?: string; readonly body?: Body; }; declare const embeddedMessageToMarkdown: (m: EmbeddedMessage) => string; type EventDateTime = { readonly dateTime?: string; readonly timeZone?: string; }; type Location = { readonly displayName?: string; }; type EmbeddedEvent = { readonly subject?: string; readonly start?: EventDateTime; readonly end?: EventDateTime; readonly location?: Location; readonly organizer?: Recipient; readonly attendees?: ReadonlyArray; readonly body?: Body; }; declare const embeddedEventToMarkdown: (e: EmbeddedEvent) => string; type EmbeddedContact = { readonly displayName?: string; readonly emailAddresses?: ReadonlyArray<{ address?: string; }>; readonly businessPhones?: ReadonlyArray; readonly mobilePhone?: string; readonly companyName?: string; readonly jobTitle?: string; }; declare const embeddedContactToMarkdown: (c: EmbeddedContact) => string; export { embeddedContactToMarkdown, embeddedEventToMarkdown, embeddedMessageToMarkdown }; export type { EmbeddedContact, EmbeddedEvent, EmbeddedMessage };