masto-tools/masto_tools/script.py

36 lines
597 B
Python

from abc import ABC
from pydantic import BaseModel
from typing import Optional, Tuple
from mastodon import Mastodon
from masto_tools.init import log_in
from masto_tools.config import Config
class Result(BaseModel):
"""
Result of a script step
"""
class Script(ABC):
"""
Metaclass for organizing
"""
name:str = ""
# TODO Typ
scopes: Tuple[str] = ()
def __init__(self, config:Optional[Config]=None):
# TODO: Logging
if config is None:
config = Config()
self.config = config
self.client = log_in(config)