# Copyright (c) 2026 Chris Pressey, Cat's Eye Technologies
# This file is distributed under an MIT license. See LICENSES/ directory.
# SPDX-License-Identifier: LicenseRef-MIT-X-Feedmark
from typing import Any, Iterable, TypeAlias, TypedDict
from .models import Document, Section
SchemaProblems: TypeAlias = list[list[str]]
class SchemaResult(TypedDict):
section: str
document: str
result: SchemaProblems
class Schema:
document: Document
property_rules: dict[str, Section]
property_priority_order: list[str]
def __init__(self, document: Document) -> None: ...
def check(self, section: Section) -> SchemaProblems: ...
def check_documents(self, documents: Iterable[Document]) -> list[SchemaResult]: ...
def get_property_priority_order(self) -> list[str]: ...