from enum import Enum class FileType(str, Enum): IMAGE = "image" DOCUMENT = "document" AUDIO = "audio" VIDEO = "video" CUSTOM = "custom" @staticmethod def value_of(value): for member in FileType: if member.value == value: return member raise ValueError(f"No matching enum found for value '{value}'") class FileTransferMethod(str, Enum): REMOTE_URL = "remote_url" LOCAL_FILE = "local_file" TOOL_FILE = "tool_file" @staticmethod def value_of(value): for member in FileTransferMethod: if member.value == value: return member raise ValueError(f"No matching enum found for value '{value}'") class FileBelongsTo(str, Enum): USER = "user" ASSISTANT = "assistant" @staticmethod def value_of(value): for member in FileBelongsTo: if member.value == value: return member raise ValueError(f"No matching enum found for value '{value}'") class FileAttribute(str, Enum): TYPE = "type" SIZE = "size" NAME = "name" MIME_TYPE = "mime_type" TRANSFER_METHOD = "transfer_method" URL = "url" EXTENSION = "extension" class ArrayFileAttribute(str, Enum): LENGTH = "length"