"""Type stubs for the zorto.core native module (PyO3/maturin)."""

class Config:
    @property
    def base_url(self) -> str: ...
    @property
    def title(self) -> str: ...
    @property
    def description(self) -> str: ...
    @property
    def default_language(self) -> str: ...
    @property
    def theme(self) -> str | None: ...
    @property
    def compile_sass(self) -> bool: ...
    @property
    def generate_feed(self) -> bool: ...
    @property
    def generate_sitemap(self) -> bool: ...
    @property
    def generate_llms_txt(self) -> bool: ...
    @property
    def generate_md_files(self) -> bool: ...

class Page:
    @property
    def title(self) -> str: ...
    @property
    def date(self) -> str | None: ...
    @property
    def author(self) -> str | None: ...
    @property
    def description(self) -> str | None: ...
    @property
    def draft(self) -> bool: ...
    @property
    def slug(self) -> str: ...
    @property
    def path(self) -> str: ...
    @property
    def permalink(self) -> str: ...
    @property
    def raw_content(self) -> str: ...
    @property
    def content(self) -> str: ...
    @property
    def word_count(self) -> int: ...
    @property
    def reading_time(self) -> int: ...
    @property
    def relative_path(self) -> str: ...

class Section:
    @property
    def title(self) -> str: ...
    @property
    def description(self) -> str | None: ...
    @property
    def path(self) -> str: ...
    @property
    def permalink(self) -> str: ...
    @property
    def pages(self) -> list[Page]: ...
    def __len__(self) -> int: ...

class Site:
    @property
    def config(self) -> Config: ...
    @property
    def sections(self) -> list[Section]: ...
    @property
    def pages(self) -> list[Page]: ...

def run_cli(argv: list[str]) -> None: ...
def load(root: str = ".") -> Site: ...
def build(root: str = ".", output_dir: str | None = None) -> None: ...
def version() -> str: ...
