"""
Auto-generated type stubs for prompteer prompts.
DO NOT EDIT THIS FILE MANUALLY.

Generated by: prompteer generate-types
Generated at: 2025-10-24 14:53:42
Source directory: /Users/kimmintae/Documents/Develop/side-projects/prompteer/examples/prompts
"""

from typing import Any
from typing import Union

class _ChatProxy:
    """Proxy for chat/ directory."""

    def system(
        self,
        personality: str = "",
        role: str = "",
        **kwargs: Any
    ) -> str:
        """
        System message prompt

        Args:
            personality: AI personality traits
            role: AI role description
            **kwargs: Additional variables
        """
        ...

    def userQuery(
        self,
        context: str = "",
        question: str = "",
        **kwargs: Any
    ) -> str:
        """
        User query prompt

        Args:
            context: Additional context
            question: User's question
            **kwargs: Additional variables
        """
        ...

class _CodeReviewProxy:
    """Proxy for code-review/ directory."""

    def reviewRequest(
        self,
        code: str = "",
        focus_areas: str = "",
        language: str = "",
        **kwargs: Any
    ) -> str:
        """
        Code review request prompt

        Args:
            code: Code to review
            focus_areas: Areas to focus on
            language: Programming language
            **kwargs: Additional variables
        """
        ...

class _TranslationProxy:
    """Proxy for translation/ directory."""

    def translate(
        self,
        source_lang: str = "",
        style: str = "",
        target_lang: str = "",
        text: str = "",
        **kwargs: Any
    ) -> str:
        """
        Translation prompt

        Args:
            source_lang: Source language
            style: Translation style (formal/casual)
            target_lang: Target language
            text: Text to translate
            **kwargs: Additional variables
        """
        ...

class Prompteer:
    """prompteer's main class

    Args:
        base_path: Root directory containing prompt files
        encoding: File encoding (default: 'utf-8')
    """

    @property
    def chat(self) -> _ChatProxy: ...

    @property
    def codeReview(self) -> _CodeReviewProxy: ...

    @property
    def translation(self) -> _TranslationProxy: ...


def create_prompts(base_path: str, encoding: str = "utf-8") -> Prompteer:
    """Create a Prompteer instance with automatic type inference.

    This is a convenience factory function that creates a Prompteer instance
    and returns it with proper type hints.

    Usage:
        >>> from prompts import create_prompts
        >>> prompts = create_prompts("./prompts")
        >>> prompts.chat.system(role="...", personality="...")  # Full autocomplete!

    Args:
        base_path: Root directory containing prompt files
        encoding: File encoding for reading prompts (default: 'utf-8')

    Returns:
        Prompteer instance with full type hints
    """
    ...