from cerberus import Validator
from datazen.classes.valid_dict import ValidDict as ValidDict
from datazen.load import load_dir as load_dir
from typing import Any, Dict, Iterator, List

LOG: Any

def load(directories: List[str], require_all: bool = ..., loaded_list: List[str] = ..., hashes: Dict[str, dict] = ...) -> dict: ...
def add_global_schemas(schema_data: Dict[str, dict]) -> None: ...
def remove_global_schemas(schema_data: Dict[str, dict]) -> None: ...
def load_types(directories: List[str], loaded_list: List[str] = ..., hashes: Dict[str, dict] = ...) -> Dict[str, dict]: ...
def validate(schema_data: Dict[str, Validator], data: dict) -> bool: ...
def inject_custom_schemas(schema_data: Dict[str, dict], should_inject: bool = ...) -> Iterator[None]: ...
