from dataclasses import dataclass
from typing import List

from src.internals.internal_types import PageProps
from src.lib.pagination import Pagination
from src.types.account import Account


@dataclass
class Dashboard(PageProps):
    currentPage: str = "admin"


@dataclass
class Accounts(PageProps):
    accounts: List[Account]
    role_list: List[str]
    pagination: Pagination
    currentPage: str = "admin"


@dataclass
class Role_Change(PageProps):
    redirect: str = "/account/administrator/accounts"
    currentPage: str = "admin"


# @dataclass
# class Account_Props(PageProps):
#     account: Account
#     currentPage: str = 'admin'

# @dataclass
# class Account_Files:
#     account: Account
#     files: List[Dict]
#     currentPage: str = 'admin'

# @dataclass
# class ModeratorsActions():
#     actions: List[Dict]
#     currentPage: str = 'admin'
