# paperdoorknob: Print glowfic # # This program is free software: you can redistribute it and/or modify it # under the terms of the GNU General Public License as published by the # Free Software Foundation, version 3. from dataclasses import dataclass from typing import Callable, IO from bs4.element import Tag from fetch import Fetcher from texify import Texifier @dataclass(frozen=True) class Spec: url: str fetcher: Fetcher htmlfilter: Callable[[bytes], bytes] domfilter: Callable[[Tag], None] texifier: Texifier geometry: str | None texout: IO[bytes]