#  Rubio - Rubika API library for python
#  Copyright (C) 2025-present Rubio <https://github.com/RubioTeam>
#  Github - https://github.com/RubioTeam/rubio.core


from typing import Optional
from dataclasses import dataclass
from .config import Object


@dataclass
class AuxData(Object):
    """
    **Represents auxiliary data attached to a message.**
        `from rubio.core.types import AuxData`

    AuxData is typically used to store metadata related to
    buttons, interactions, or other inline components in a chat.

    Attributes:
        start_id (`Optional[str]`):
            An identifier for the start action, if applicable.

        button_id (`Optional[str]`):
            The ID of a button that triggered this auxiliary data, if applicable.
    """
    start_id: Optional[str] = None
    button_id: Optional[str] = None