"""Database enumerations."""
from __future__ import annotations

import enum


class JobStatus(str, enum.Enum):
    pending = "pending"
    running = "running"
    succeeded = "succeeded"
    failed = "failed"
    partial = "partial"


class ParsedStatus(str, enum.Enum):
    pending = "pending"
    ready_for_parse = "ready_for_parse"
    succeeded = "succeeded"
    failed = "failed"


class EventStatus(str, enum.Enum):
    pending = "pending"
    valid = "valid"
    rejected = "rejected"


class EventDirection(str, enum.Enum):
    bullish = "bullish"
    bearish = "bearish"
    mixed = "mixed"
    neutral = "neutral"
    unknown = "unknown"


class EventType(str, enum.Enum):
    earnings_release = "earnings_release"
    guidance_update = "guidance_update"
    material_contract = "material_contract"
    regulatory_or_approval = "regulatory_or_approval"
    capital_markets_or_financing = "capital_markets_or_financing"
    management_change = "management_change"
    litigation_or_investigation = "litigation_or_investigation"
    other_material_event = "other_material_event"
    unknown = "unknown"


class ParserKind(str, enum.Enum):
    rule = "rule"
    llm = "llm"
    merged = "merged"


class ValidationStatus(str, enum.Enum):
    valid = "valid"
    invalid = "invalid"


class OrderSide(str, enum.Enum):
    buy = "buy"
    sell = "sell"


class OrderPlanStatus(str, enum.Enum):
    draft = "draft"
    ready = "ready"
    canceled = "canceled"


class SyncStatus(str, enum.Enum):
    success = "success"
    failed = "failed"
    partial = "partial"
