using System.Text.Json.Nodes; using AIStudio.Tools.RAG; namespace AIStudio.Tools.ToolCallingSystem.ToolCallingImplementations.Mailboxes; /// /// What a search tells the model about one mailbox. /// /// The mailbox, as it was searched. /// Its mails which reached the model, as the model reads them. /// Whether a further page of this mailbox holds mails. /// What kept the search from covering the whole mailbox. /// How many of its mails a search of several mailboxes found, but had no room for. /// The folders of the mailbox, filtered, when it has none of those the model named; otherwise null. internal sealed record MailboxSearchOutcome(MailboxSearch Search, IReadOnlyList Mails, bool HasMore, IReadOnlyList Gaps, int LeftOutCount, IReadOnlyList? ListedFolders);