Underground-Digital/Workflow-Engine
0
1from enum import Enum2 3 4class FileType(str, Enum):5 IMAGE = "image"6 DOCUMENT = "document"7 AUDIO = "audio"8 VIDEO = "video"9 CUSTOM = "custom"10 11 @staticmethod12 def value_of(value):13 for member in FileType:14 if member.value == value:15 return member16 raise ValueError(f"No matching enum found for value '{value}'")17 18 19class FileTransferMethod(str, Enum):20 REMOTE_URL = "remote_url"21 LOCAL_FILE = "local_file"22 TOOL_FILE = "tool_file"23 24 @staticmethod25 def value_of(value):26 for member in FileTransferMethod:27 if member.value == value:28 return member29 raise ValueError(f"No matching enum found for value '{value}'")30 31 32class FileBelongsTo(str, Enum):33 USER = "user"34 ASSISTANT = "assistant"35 36 @staticmethod37 def value_of(value):38 for member in FileBelongsTo:39 if member.value == value:40 return member41 raise ValueError(f"No matching enum found for value '{value}'")42 43 44class FileAttribute(str, Enum):45 TYPE = "type"46 SIZE = "size"47 NAME = "name"48 MIME_TYPE = "mime_type"49 TRANSFER_METHOD = "transfer_method"50 URL = "url"51 EXTENSION = "extension"52 53 54class ArrayFileAttribute(str, Enum):55 LENGTH = "length"56 