// Copyright © WireMock.Net
using System;
using System.Collections.Generic;
namespace WireMock.Models.Mime;
///
/// A simplified interface exposing the public, readable properties of a MIME message.
///
public interface IMimeMessageData
{
///
/// Get the list of headers.
///
/// The list of headers.
IList Headers { get; }
///
/// Get the value of the Importance header.
///
/// The importance, as an integer.
int Importance { get; }
///
/// Get the value of the Priority header.
///
/// The priority, as an integer.
int Priority { get; }
///
/// Get the value of the X-Priority header.
///
/// The X-priority, as an integer.
int XPriority { get; }
///
/// Get the address in the Sender header.
///
/// The address in the Sender header.
string Sender { get; }
///
/// Get the address in the Resent-Sender header.
///
/// The address in the Resent-Sender header.
string ResentSender { get; }
///
/// Get the list of addresses in the From header.
///
/// The list of addresses in the From header.
IList From { get; }
///
/// Get the list of addresses in the Resent-From header.
///
/// The list of addresses in the Resent-From header.
IList ResentFrom { get; }
///
/// Get the list of addresses in the Reply-To header.
///
/// The list of addresses in the Reply-To header.
IList ReplyTo { get; }
///
/// Get the list of addresses in the Resent-Reply-To header.
///
/// The list of addresses in the Resent-Reply-To header.
IList ResentReplyTo { get; }
///
/// Get the list of addresses in the To header.
///
/// The list of addresses in the To header.
IList To { get; }
///
/// Get the list of addresses in the Resent-To header.
///
/// The list of addresses in the Resent-To header.
IList ResentTo { get; }
///
/// Get the list of addresses in the Cc header.
///
/// The list of addresses in the Cc header.
IList Cc { get; }
///
/// Get the list of addresses in the Resent-Cc header.
///
/// The list of addresses in the Resent-Cc header.
IList ResentCc { get; }
///
/// Get the list of addresses in the Bcc header.
///
/// The list of addresses in the Bcc header.
IList Bcc { get; }
///
/// Get the list of addresses in the Resent-Bcc header.
///
/// The list of addresses in the Resent-Bcc header.
IList ResentBcc { get; }
///
/// Get the subject of the message.
///
/// The subject of the message.
string Subject { get; }
///
/// Get the date of the message.
///
/// The date of the message.
DateTimeOffset Date { get; }
///
/// Get the Resent-Date of the message.
///
/// The Resent-Date of the message.
DateTimeOffset ResentDate { get; }
///
/// Get the list of references to other messages.
///
/// The references.
IList References { get; }
///
/// Get the Message-Id that this message is replying to.
///
/// The message id that this message is in reply to.
string InReplyTo { get; }
///
/// Get the message identifier.
///
/// The message identifier.
string MessageId { get; }
///
/// Get the Resent-Message-Id header.
///
/// The Resent-Message-Id.
string ResentMessageId { get; }
///
/// Get the MIME-Version.
///
/// The MIME version.
Version MimeVersion { get; }
///
/// Get the body of the message.
///
/// The body of the message.
IMimeEntityData Body { get; }
///
/// Get the text body of the message if it exists.
///
/// The text body if it exists; otherwise, .
string TextBody { get; }
///
/// Get the html body of the message if it exists.
///
/// The html body if it exists; otherwise, .
string HtmlBody { get; }
///
/// Get the body parts of the message.
///
/// The body parts.
IList BodyParts { get; }
///
/// Get the attachments.
///
/// The attachments.
IList Attachments { get; }
}