namespace LehrerApp.Core.Interfaces;
///
/// Dateianhänge an Dokumentationseinträgen (z.B. der versendete Elternbrief als PDF).
/// Implementiert über den LiteDB-Dateispeicher — kein eigenes Dateisystem-Layout nötig.
///
public interface IAttachmentStorage
{
/// Größte zulässige Anhangsgröße. Bewusst strikt begrenzt, damit die LiteDB-Datei
/// (und damit auch jedes Backup, 13.3.1) nicht durch große Anhänge aufgebläht wird.
const long MaxSizeBytes = 10 * 1024 * 1024;
/// Lädt den Inhalt hoch und gibt die Speicher-ID zurück (in zu speichern).
string Upload(string fileName, Stream content);
Stream? OpenRead(string storageId);
void Delete(string storageId);
}