| 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" |
|
|