from enum import Enum


class ErrorCode(str, Enum):
    FILE_TOO_LARGE = "FILE_TOO_LARGE"
    FORBIDDEN = "FORBIDDEN"
    INTERNAL_ERROR = "INTERNAL_ERROR"
    INVALID_REQUEST = "INVALID_REQUEST"
    INVALID_TOKEN = "INVALID_TOKEN"
    MEDIA_NOT_FOUND = "MEDIA_NOT_FOUND"
    MEDIA_NOT_READY = "MEDIA_NOT_READY"
    NOT_FOUND = "NOT_FOUND"
    ORG_NOT_FOUND = "ORG_NOT_FOUND"
    PROCESSING_FAILED = "PROCESSING_FAILED"
    RATE_LIMITED = "RATE_LIMITED"
    TRANSCODE_FAILED = "TRANSCODE_FAILED"
    UNAUTHORIZED = "UNAUTHORIZED"
    UNSUPPORTED_MEDIA_TYPE = "UNSUPPORTED_MEDIA_TYPE"
    UPLOAD_NOT_FOUND = "UPLOAD_NOT_FOUND"
    VIDEO_CODEC_UNSUPPORTED = "VIDEO_CODEC_UNSUPPORTED"

    def __str__(self) -> str:
        return str(self.value)
