Source code for plynx.base.hub

"""Templates for PLynx Hubs and utils."""

from abc import abstractmethod
from dataclasses import dataclass
from typing import Any, Dict, Optional

from dataclasses_json import dataclass_json


@dataclass_json
@dataclass
[docs]class Query: """Hub search query entry"""
[docs] status: str = ""
[docs] search: str = ""
[docs] per_page: int = 30
[docs] offset: int = 0
[docs] user_id: Optional[str] = None
[docs]class BaseHub: """Base Hub class""" def __init__(self): pass @abstractmethod
[docs] def search(self, query: Query) -> Dict[str, Any]: """Search for items given a query"""