diff --git a/app/MindWork AI Studio/Chat/FileAttachment.cs b/app/MindWork AI Studio/Chat/FileAttachment.cs new file mode 100644 index 00000000..5b14f2e6 --- /dev/null +++ b/app/MindWork AI Studio/Chat/FileAttachment.cs @@ -0,0 +1,6 @@ +namespace AIStudio.Chat; + +/// +/// Represents an immutable file attachment with details about its type, name, path, and size. +/// +public readonly record struct FileAttachment(FileAttachmentType Type, string FileName, string FilePath, long FileSize); \ No newline at end of file diff --git a/app/MindWork AI Studio/Chat/FileAttachmentType.cs b/app/MindWork AI Studio/Chat/FileAttachmentType.cs new file mode 100644 index 00000000..a4b0b2f5 --- /dev/null +++ b/app/MindWork AI Studio/Chat/FileAttachmentType.cs @@ -0,0 +1,22 @@ +namespace AIStudio.Chat; + +/// +/// Represents different types of file attachments. +/// +public enum FileAttachmentType +{ + /// + /// Document file types, such as .pdf, .docx, .txt, etc. + /// + DOCUMENT, + + /// + /// All image file types, such as .jpg, .png, .gif, etc. + /// + IMAGE, + + /// + /// All audio file types, such as .mp3, .wav, .aac, etc. + /// + AUDIO, +} \ No newline at end of file