from typing import (
    Dict,
    Optional,
)

from ._TableError import TableError


class TabNotFound(TableError):

    def __init__(
        self,           # type: TabNotFound
        tab_id,         # type: str
        tab_name="",    # type: str
        pos_id=None,    # type: Optional[int]
    ):
        # type: (...) -> None

        self.tab_id = tab_id
        self.tab_name = tab_name
        self.pos_id = pos_id

    def get_extra_data(
        self,   # type: TabNotFound
    ):
        # type: (...) -> Dict[str, str]

        return {
            "tabId": self.tab_id,
            "tabName": self.tab_name,
            "posId": self.pos_id,
        }
