from __future__ import annotations
from typing import List, Tuple, Union
from Pieces import Pieces


class Style:
    """
    # TODO: Complete class documentation
    """
    # TODO: Add class attribute type annotations

    # TODO: Add method type annotations
    def __init__(self, pairs, name, owner=Pieces.EMPTY):
        """
        # TODO: Complete method documentation
        """
        self.name = name
        self._moves = pairs.copy()
        self.owner = owner

    # TODO: Add method type annotations
    def get_moves(self):
        """
        # TODO: Complete method documentation
        """
        return self._moves.copy()

    # TODO: Add method type annotations
    def __eq__(self, other):
        """
        # TODO: Complete method documentation
        """
        return self.name == other.name and self.owner == other.owner

    # TODO: Add method type annotations
    def __copy__(self):
        """
        # TODO: Complete method documentation
        """
        return Style(self._moves.copy(), self.name, self.owner)
