# -*- coding: utf-8 -*-
# filename: base.py
# @Time    : 2025-01-19
# @Author  : Claude Code
# @Email   : noreply@anthropic.com
# @Software: PyCharm
"""Base class for prompt enhancers"""
from abc import ABC, abstractmethod
from typing import Optional


class BasePromptEnhancer(ABC):
    """Prompt enhancer base class"""

    @abstractmethod
    def enhance(
        self,
        prompt: str,
        mode: str,
        reference_image: Optional[str] = None,
    ):
        """
        Enhance prompt

        Args:
            prompt: Original prompt
            mode: Enhancement mode
            reference_image: Reference image path (optional, for image-to-image)

        Returns:
            PromptEnhancementResult
        """
        pass
