# Messages

Interfaces for the email/messaging system, covering message entities, recipients, relations, and the message sender service.

## Key Files

- **`IAcEmailMessageBase.cs`** — Base email message with `ContextId`, `SenderId`, `Subject`, `Text`, `IsReaded`, and `ContextType`. Extends `IEntityGuid`, `ITimeStampInfo`, `IAcEmailAddress`.
- **`IAcEmailMessage.cs`** — Full email message combining `IAcEmailMessageBase` with a recipients relation.
- **`IAcEmailRecipientBase.cs`** — Base recipient with `RecipientId`, `EmailMessageId`, and `IsReaded`.
- **`IAcEmailRecipient.cs`** — Full recipient combining base recipient with an email message relation.
- **`IAcEmailMessageRelation.cs`** — Navigation property for entities holding an `EmailMessage` reference.
- **`IAcEmailRecipientsRelation.cs`** — Navigation property exposing a `List<TEmailRecipient>` collection.
- **`IAcEmailMessageForeignKey.cs`** — Foreign key contract for `EmailMessageId` (generic and Guid variants).
- **`IAcMessageSenderService.cs`** — Service interface with `SendMessageAsync` for dispatching messages.
