import re import threading from _typeshed import Incomplete, SupportsKeysAndGetItem, Unused from collections.abc import Callable, Generator, Iterable, Iterator from datetime import date, datetime, time from decimal import Decimal from types import TracebackType from typing import Any, ClassVar, Final, Generic, Literal, NamedTuple, NoReturn, TypeAlias, TypedDict, overload, type_check_only from typing_extensions import Self, TypeIs, TypeVar, Unpack from uuid import UUID def callable_(c: object) -> TypeIs[Callable[..., object]]: ... multi_types: tuple[type[Incomplete], ...] def reraise(tp: Unused, value: BaseException, tb: TracebackType | None = None) -> NoReturn: ... _T = TypeVar("_T") _VT = TypeVar("_VT") _F = TypeVar("_F", bound=Callable[..., Any]) _M = TypeVar("_M", bound=Model, default=Model) # __get__/__set__ value type. Bare Field defaults to Field[Any]. _V = TypeVar("_V", default=Any) _DatabaseType: TypeAlias = Database | DatabaseProxy # Common field kwargs, Unpack-ed into the field __new__ overloads. @type_check_only class _FieldKwargs(TypedDict, total=False): index: bool unique: bool primary_key: bool column_name: str | None default: Any # A value matching the field's type, or a callable returning one constraints: list[Node] | None sequence: str | None collation: str | None unindexed: bool choices: Iterable[tuple[Any, str]] | None # (value, display) pairs (value type depends on the field) help_text: str | None verbose_name: str | None index_type: str | None db_column: str | None @type_check_only class _FKKwargs(_FieldKwargs, total=False): field: Field[Any] | str | None backref: str | Callable[[Field[Any]], str] | None on_delete: str | None on_update: str | None deferrable: str | None to_field: Field[Any] | str | None object_id_name: str | None lazy_load: bool constraint_name: str | None related_name: str | Callable[[Field[Any]], str] | None rel_model: type[Model] | None class attrdict(dict[str, _VT]): def __getattr__(self, attr: str) -> _VT: ... def __setattr__(self, attr: str, value: _VT) -> None: ... # calls dict.update() def __iadd__(self, rhs: SupportsKeysAndGetItem[str, _VT] | Iterable[tuple[str, _VT]]) -> Self: ... def __add__(self, rhs: SupportsKeysAndGetItem[str, _VT] | Iterable[tuple[str, _VT]]) -> attrdict[_VT]: ... OP: attrdict[str] DJANGO_MAP: attrdict[Incomplete] JOIN: attrdict[str] ROW: attrdict[int] PREFETCH_TYPE: attrdict[int] SCOPE_NORMAL: Final = 1 SCOPE_SOURCE: Final = 2 SCOPE_VALUES: Final = 4 SCOPE_CTE: Final = 8 SCOPE_COLUMN: Final = 16 CSQ_PARENTHESES_NEVER: Final = 0 CSQ_PARENTHESES_ALWAYS: Final = 1 CSQ_PARENTHESES_UNNESTED: Final = 2 SNAKE_CASE_STEP1: Final[re.Pattern[str]] SNAKE_CASE_STEP2: Final[re.Pattern[str]] IDENTIFIER_RE: Final[re.Pattern[str]] def make_identifier(s: str) -> str: ... def chunked(it: Iterable[_T], n: int) -> Generator[list[_T]]: ... class _callable_context_manager: def __call__(self, fn): ... class Proxy: __slots__ = ("obj", "_callbacks") def __init__(self) -> None: ... obj: Incomplete def initialize(self, obj) -> None: ... def attach_callback(self, callback): ... def passthrough(method): ... __enter__: Incomplete __exit__: Incomplete def __getattr__(self, attr: str): ... def __setattr__(self, attr: str, value) -> None: ... class DatabaseProxy(Proxy): __slots__ = ("obj", "_callbacks", "_Model") def connection_context(self) -> ConnectionContext: ... def atomic(self, *args, **kwargs) -> _atomic: ... def manual_commit(self) -> _manual: ... def transaction(self, *args, **kwargs) -> _transaction: ... def savepoint(self) -> _savepoint: ... @property def Model(self) -> type[Model]: ... class ModelDescriptor: ... class AliasManager: __slots__ = ("_counter", "_current_index", "_mapping") def __init__(self) -> None: ... @property def mapping(self): ... def add(self, source): ... def get(self, source, any_depth: bool = False): ... def __getitem__(self, source): ... def __setitem__(self, source, alias) -> None: ... def push(self) -> None: ... def pop(self) -> None: ... class State: def __new__(cls, scope=1, parentheses: bool = False, **kwargs) -> Self: ... def __call__(self, scope=None, parentheses=None, **kwargs) -> State: ... def __getattr__(self, attr_name: str): ... class Context: __slots__ = ("stack", "_sql", "_values", "alias_manager", "state") stack: list[Incomplete] alias_manager: AliasManager state: State def __init__(self, **settings) -> None: ... def as_new(self) -> Context: ... def column_sort_key(self, item): ... @property def scope(self): ... @property def parentheses(self): ... @property def subquery(self): ... def __call__(self, **overrides) -> Self: ... scope_normal: Incomplete scope_source: Incomplete scope_values: Incomplete scope_cte: Incomplete scope_column: Incomplete def __enter__(self) -> Self: ... def __exit__( self, exc_type: type[BaseException] | None, exc_val: BaseException | None, exc_tb: TracebackType | None ) -> None: ... def push_alias(self) -> Generator[None]: ... def sql(self, obj): ... def literal(self, keyword) -> Self: ... def value(self, value, converter=None, add_param: bool = True): ... def __sql__(self, ctx): ... def parse(self, node): ... def query(self) -> tuple[str, list[Incomplete]]: ... class Node: __isabstractmethod__: bool def clone(self) -> Self: ... def __sql__(self, ctx): ... @staticmethod def copy(method): ... def coerce(self, _coerce: bool = True) -> Self: ... def is_alias(self) -> bool: ... def unwrap(self) -> Self: ... class ColumnFactory: __slots__ = ("node",) node: Node def __init__(self, node: Node) -> None: ... def __getattr__(self, attr: str) -> Column: ... __getitem__ = __getattr__ class _DynamicColumn: __slots__ = () def __get__(self, instance, instance_type=None): ... class _ExplicitColumn: __slots__ = () def __get__(self, instance, instance_type=None) -> Self: ... class Star(Node): def __init__(self, source) -> None: ... def __sql__(self, ctx): ... class Source(Node): c: Incomplete def __init__(self, alias=None) -> None: ... def alias(self, name) -> Self: ... def select(self, *columns) -> Select: ... @property def __star__(self) -> Star: ... def join(self, dest, join_type="INNER JOIN", on=None) -> Join: ... def left_outer_join(self, dest, on=None) -> Join: ... def cte(self, name, recursive: bool = False, columns=None, materialized=None) -> CTE: ... def get_sort_key(self, ctx) -> tuple[Incomplete, ...]: ... def apply_alias(self, ctx): ... def apply_column(self, ctx): ... class _HashableSource: def __init__(self, *args, **kwargs) -> None: ... def alias(self, name) -> Self: ... def __hash__(self) -> int: ... def __eq__(self, other) -> Expression | bool: ... # type: ignore[override] def __ne__(self, other) -> Expression | bool: ... # type: ignore[override] __lt__: Callable[[Self, Any], Expression] __le__: Callable[[Self, Any], Expression] __gt__: Callable[[Self, Any], Expression] __ge__: Callable[[Self, Any], Expression] class BaseTable(Source): def __and__(self, other) -> Join: ... def __add__(self, other) -> Join: ... def __sub__(self, other) -> Join: ... def __or__(self, other) -> Join: ... def __mul__(self, other) -> Join: ... def __rand__(self, other) -> Join: ... def __radd__(self, other) -> Join: ... def __rsub__(self, other) -> Join: ... def __ror__(self, other) -> Join: ... def __rmul__(self, other) -> Join: ... class _BoundTableContext(_callable_context_manager): table: Incomplete database: Incomplete def __init__(self, table, database: _DatabaseType) -> None: ... def __enter__(self): ... def __exit__( self, exc_type: type[BaseException] | None, exc_val: BaseException | None, exc_tb: TracebackType | None ) -> None: ... class Table(_HashableSource, BaseTable): # type: ignore[misc] __name__: Incomplete c: Incomplete primary_key: Incomplete def __init__( self, name, columns=None, primary_key=None, schema: str | None = None, alias=None, _model=None, _database=None ) -> None: ... def clone(self) -> Table: ... def bind(self, database: _DatabaseType | None = None) -> Self: ... def bind_ctx(self, database: _DatabaseType | None = None) -> _BoundTableContext: ... def select(self, *columns) -> Select: ... def insert(self, insert=None, columns=None, **kwargs) -> Insert: ... def replace(self, insert=None, columns=None, **kwargs): ... def update(self, update=None, **kwargs) -> Update: ... def delete(self) -> Delete: ... def __sql__(self, ctx): ... class Join(BaseTable): lhs: Incomplete rhs: Incomplete join_type: Incomplete def __init__(self, lhs, rhs, join_type="INNER JOIN", on=None, alias=None) -> None: ... def on(self, predicate) -> Self: ... def __sql__(self, ctx): ... class ValuesList(_HashableSource, BaseTable): # type: ignore[misc] def __init__(self, values, columns=None, alias=None) -> None: ... def columns(self, *names) -> Self: ... def __sql__(self, ctx): ... class CTE(_HashableSource, Source): # type: ignore[misc] def __init__(self, name, query, recursive: bool = False, columns=None, materialized=None) -> None: ... def select_from(self, *columns) -> Select: ... def union_all(self, rhs) -> CTE: ... __add__ = union_all def union(self, rhs) -> CTE: ... __or__ = union def __sql__(self, ctx): ... class ColumnBase(Node): def converter(self, converter=None) -> Self: ... def alias(self, alias) -> Alias | Self: ... def unalias(self) -> Self: ... def bind_to(self, dest) -> BindTo: ... def cast(self, as_type) -> Cast: ... def asc(self, collation=None, nulls=None) -> Ordering: ... __pos__ = asc def desc(self, collation=None, nulls=None) -> Ordering: ... __neg__ = desc def __invert__(self): ... __and__: ClassVar[Callable[[Self, Any], Expression]] __or__: ClassVar[Callable[[Self, Any], Expression]] def __add__(self, rhs: Any) -> Expression: ... __sub__: ClassVar[Callable[[Self, Any], Expression]] __mul__: ClassVar[Callable[[Self, Any], Expression]] __div__: ClassVar[Callable[[Self, Any], Expression]] __truediv__: ClassVar[Callable[[Self, Any], Expression]] __xor__: ClassVar[Callable[[Self, Any], Expression]] def __radd__(self, rhs: Any) -> Expression: ... __rsub__: ClassVar[Callable[[Self, Any], Expression]] __rmul__: ClassVar[Callable[[Self, Any], Expression]] __rdiv__: ClassVar[Callable[[Self, Any], Expression]] __rtruediv__: ClassVar[Callable[[Self, Any], Expression]] __rand__: ClassVar[Callable[[Self, Any], Expression]] __ror__: ClassVar[Callable[[Self, Any], Expression]] __rxor__: ClassVar[Callable[[Self, Any], Expression]] def __eq__(self, rhs) -> Expression: ... # type: ignore[override] def __ne__(self, rhs) -> Expression: ... # type: ignore[override] __lt__: ClassVar[Callable[[Self, Any], Expression]] __le__: ClassVar[Callable[[Self, Any], Expression]] __gt__: ClassVar[Callable[[Self, Any], Expression]] __ge__: ClassVar[Callable[[Self, Any], Expression]] __lshift__: ClassVar[Callable[[Self, Any], Expression]] __rshift__: ClassVar[Callable[[Self, Any], Expression]] __mod__: ClassVar[Callable[[Self, Any], Expression]] __pow__: ClassVar[Callable[[Self, Any], Expression]] like: ClassVar[Callable[[Self, Any], Expression]] ilike: ClassVar[Callable[[Self, Any], Expression]] bin_and: ClassVar[Callable[[Self, Any], Expression]] bin_or: ClassVar[Callable[[Self, Any], Expression]] in_: ClassVar[Callable[[Self, Any], Expression]] not_in: ClassVar[Callable[[Self, Any], Expression]] regexp: ClassVar[Callable[[Self, Any], Expression]] iregexp: ClassVar[Callable[[Self, Any], Expression]] def is_null(self, is_null: bool = True) -> Expression: ... def contains(self, rhs) -> Expression: ... def startswith(self, rhs) -> Expression: ... def endswith(self, rhs) -> Expression: ... def between(self, lo, hi) -> Expression: ... def concat(self, rhs) -> StringExpression: ... def __getitem__(self, item): ... __iter__: Incomplete def distinct(self) -> NodeList: ... def collate(self, collation) -> NodeList: ... def get_sort_key(self, ctx) -> tuple[Incomplete, ...]: ... class Column(ColumnBase): source: Incomplete name: Incomplete def __init__(self, source, name) -> None: ... def get_sort_key(self, ctx) -> tuple[Incomplete, ...]: ... def __hash__(self) -> int: ... def __sql__(self, ctx): ... class WrappedNode(ColumnBase): node: Incomplete def __init__(self, node) -> None: ... def is_alias(self) -> bool: ... def unwrap(self): ... class EntityFactory: __slots__ = ("node",) node: Incomplete def __init__(self, node) -> None: ... def __getattr__(self, attr: str) -> Entity: ... class _DynamicEntity: __slots__ = () def __get__(self, instance, instance_type=None): ... class Alias(WrappedNode): c: Incomplete def __init__(self, node, alias) -> None: ... def __hash__(self) -> int: ... @property def name(self): ... @name.setter def name(self, value) -> None: ... def alias(self, alias=None): ... def unalias(self): ... def is_alias(self) -> bool: ... def __sql__(self, ctx): ... class BindTo(WrappedNode): dest: Incomplete def __init__(self, node, dest) -> None: ... def __sql__(self, ctx): ... class Negated(WrappedNode): def __invert__(self): ... def __sql__(self, ctx): ... class BitwiseMixin: def __and__(self, other) -> Expression: ... def __or__(self, other) -> Expression: ... def __sub__(self, other) -> Expression: ... def __invert__(self) -> BitwiseNegated: ... class BitwiseNegated(BitwiseMixin, WrappedNode): op: str def __invert__(self): ... def __sql__(self, ctx): ... class Value(ColumnBase): value: Incomplete converter: Incomplete multi: bool values: list[Incomplete] | None def __init__(self, value, converter=None, unpack: bool = True) -> None: ... def __sql__(self, ctx): ... class ValueLiterals(WrappedNode): def __sql__(self, ctx): ... def AsIs(value, converter=None) -> Value: ... class Cast(WrappedNode): def __init__(self, node, cast) -> None: ... def __sql__(self, ctx): ... class Ordering(WrappedNode): direction: Incomplete collation: Incomplete nulls: Incomplete def __init__(self, node, direction, collation=None, nulls=None) -> None: ... def collate(self, collation=None) -> Ordering: ... # type: ignore[override] def __sql__(self, ctx): ... class Expression(ColumnBase): lhs: Incomplete op: Incomplete rhs: Incomplete flat: bool def __init__(self, lhs, op, rhs, flat: bool = False) -> None: ... def __sql__(self, ctx): ... class StringExpression(Expression): def __add__(self, rhs) -> StringExpression: ... def __radd__(self, lhs) -> StringExpression: ... class Entity(ColumnBase): def __init__(self, *path) -> None: ... def __getattr__(self, attr: str) -> Entity: ... def get_sort_key(self, ctx) -> tuple[Incomplete, ...]: ... def __hash__(self) -> int: ... def __sql__(self, ctx): ... class SQL(ColumnBase): sql: Incomplete params: Incomplete def __init__(self, sql, params=None) -> None: ... def __sql__(self, ctx): ... def Check(constraint: str, name: str | None = None) -> SQL | NodeList: ... def Default(value) -> SQL: ... class Function(ColumnBase): no_coerce_functions: ClassVar[set[str]] name: str | None arguments: tuple[Any, ...] | None # Positional SQL function args: values, columns, or other nodes def __init__(self, name, arguments, coerce: bool = True, python_value=None) -> None: ... # fn.COUNT(...), fn.SUM(...), etc. each build a Function node. def __getattr__(self, attr: str) -> Callable[..., Function]: ... def filter(self, where=None) -> Self: ... def order_by(self, *ordering) -> Self: ... def python_value(self, func=None) -> Self: ... def over( self, partition_by=None, order_by=None, start=None, end=None, frame_type=None, window=None, exclude=None ) -> NodeList: ... def __sql__(self, ctx): ... fn: Function class Window(Node): CURRENT_ROW: SQL GROUP: SQL TIES: SQL NO_OTHERS: SQL GROUPS: str RANGE: str ROWS: str partition_by: Incomplete order_by: Incomplete start: Incomplete end: Incomplete frame_type: Incomplete def __init__( self, partition_by=None, order_by=None, start=None, end=None, frame_type=None, extends=None, exclude=None, alias=None, _inline: bool = False, ) -> None: ... def alias(self, alias=None) -> Self: ... def as_range(self) -> Self: ... def as_rows(self) -> Self: ... def as_groups(self) -> Self: ... def extends(self, window=None) -> Self: ... def exclude(self, frame_exclusion=None) -> Self: ... @staticmethod def following(value=None) -> SQL: ... @staticmethod def preceding(value=None) -> SQL: ... def __sql__(self, ctx): ... class WindowAlias(Node): window: Incomplete def __init__(self, window) -> None: ... def alias(self, window_alias) -> Self: ... def __sql__(self, ctx): ... class ForUpdate(Node): def __init__(self, expr, of=None, nowait: bool | None = None, skip_locked: bool | None = None) -> None: ... def __sql__(self, ctx): ... class Case(ColumnBase): predicate: Incomplete expression_tuples: Incomplete default: Incomplete | None def __init__(self, predicate, expression_tuples, default=None) -> None: ... def __sql__(self, ctx): ... class NodeList(ColumnBase): nodes: Incomplete glue: Incomplete parens: bool def __init__(self, nodes, glue: str = " ", parens: bool = False) -> None: ... def __sql__(self, ctx): ... class _Namespace(Node): __slots__ = ("_name",) def __init__(self, name) -> None: ... def __getattr__(self, attr: str) -> NamespaceAttribute: ... __getitem__ = __getattr__ class NamespaceAttribute(ColumnBase): def __init__(self, namespace, attribute) -> None: ... def __sql__(self, ctx): ... EXCLUDED: Incomplete class DQ(ColumnBase): query: Incomplete def __init__(self, **query) -> None: ... def __invert__(self) -> Self: ... # type: ignore[override] def clone(self) -> DQ: ... Tuple: Incomplete class QualifiedNames(WrappedNode): def __sql__(self, ctx): ... class OnConflict(Node): def __init__( self, action=None, update=None, preserve=None, where=None, conflict_target=None, conflict_where=None, conflict_constraint=None, ) -> None: ... def get_conflict_statement(self, ctx, query): ... def get_conflict_update(self, ctx, query): ... def preserve(self, *columns) -> Self: ... def update(self, _data=None, **kwargs) -> Self: ... def where(self, *expressions) -> Self: ... def conflict_target(self, *constraints) -> Self: ... def conflict_where(self, *expressions) -> Self: ... def conflict_constraint(self, constraint) -> Self: ... class BaseQuery(Node): default_row_type: Incomplete def __init__(self, _database=None, **kwargs) -> None: ... def bind(self, database: _DatabaseType | None = None) -> Self: ... def clone(self) -> Self: ... def dicts(self, as_dict: bool = True) -> Self: ... def tuples(self, as_tuple: bool = True) -> Self: ... def namedtuples(self, as_namedtuple: bool = True) -> Self: ... def objects(self, constructor=None) -> Self: ... def __sql__(self, ctx) -> None: ... def sql(self) -> tuple[str, list[Any]]: ... # Returns (sql, params), params are bound query values def execute(self, database: _DatabaseType | None = None): ... async def aexecute(self, database: _DatabaseType | None = None): ... def iterator(self, database: _DatabaseType | None = None): ... def __iter__(self): ... def __getitem__(self, value): ... def __len__(self) -> int: ... class RawQuery(BaseQuery): def __init__(self, sql=None, params=None, **kwargs) -> None: ... def __sql__(self, ctx): ... class Query(BaseQuery): def __init__(self, where=None, order_by=None, limit=None, offset=None, **kwargs) -> None: ... def with_cte(self, *cte_list) -> Self: ... def where(self, *expressions) -> Self: ... def orwhere(self, *expressions) -> Self: ... def order_by(self, *values) -> Self: ... def order_by_extend(self, *values) -> Self: ... def limit(self, value=None) -> Self: ... def offset(self, value=None) -> Self: ... def paginate(self, page, paginate_by: int = 20) -> Self: ... def __sql__(self, ctx): ... class SelectQuery(Query): def union_all(self, other) -> CompoundSelectQuery: ... def __add__(self, other) -> CompoundSelectQuery: ... def union(self, other) -> CompoundSelectQuery: ... def __or__(self, other) -> CompoundSelectQuery: ... def intersect(self, other) -> CompoundSelectQuery: ... def __and__(self, other) -> CompoundSelectQuery: ... def except_(self, other) -> CompoundSelectQuery: ... def __sub__(self, other) -> CompoundSelectQuery: ... def __radd__(self, other) -> CompoundSelectQuery: ... def __ror__(self, other) -> CompoundSelectQuery: ... def __rand__(self, other) -> CompoundSelectQuery: ... def __rsub__(self, other) -> CompoundSelectQuery: ... def select_from(self, *columns) -> Select: ... class SelectBase(_HashableSource, Source, SelectQuery): # type: ignore[misc] def peek(self, database: _DatabaseType | None = None, n: int = 1): ... def first(self, database: _DatabaseType | None = None, n: int = 1): ... def scalar(self, database: _DatabaseType | None = None, as_tuple: bool = False, as_dict: bool = False): ... def scalars(self, database: _DatabaseType | None = None) -> Generator[Incomplete]: ... def count(self, database: _DatabaseType | None = None, clear_limit: bool = False) -> int: ... def exists(self, database: _DatabaseType | None = None) -> bool: ... def get(self, database: _DatabaseType | None = None): ... class CompoundSelectQuery(SelectBase): lhs: Incomplete op: Incomplete rhs: Incomplete def __init__(self, lhs, op, rhs) -> None: ... def exists(self, database: _DatabaseType | None = None) -> bool: ... def __sql__(self, ctx): ... class Select(SelectBase): def __init__( self, from_list=None, columns=None, group_by=None, having=None, distinct=None, windows=None, for_update=None, lateral=None, **kwargs, ) -> None: ... def clone(self) -> Self: ... def columns(self, *columns, **kwargs) -> Self: ... select = columns def select_extend(self, *columns) -> Self: ... @property def selected_columns(self): ... @selected_columns.setter def selected_columns(self, value) -> None: ... def from_(self, *sources) -> Self: ... def join(self, dest, join_type="INNER JOIN", on=None) -> Self: ... # type: ignore[override] def left_outer_join(self, dest, on=None) -> Self: ... # type: ignore[override] def group_by(self, *columns) -> Self: ... def group_by_extend(self, *values) -> Self: ... def having(self, *expressions) -> Self: ... def distinct(self, *columns) -> Self: ... def window(self, *windows) -> Self: ... def for_update( self, for_update: bool = True, of=None, nowait: bool | None = None, skip_locked: bool | None = None ) -> Self: ... def lateral(self, lateral: bool = True) -> Self: ... def __sql_selection__(self, ctx, is_subquery: bool = False): ... def __sql__(self, ctx): ... class _WriteQuery(Query): table: Incomplete def __init__(self, table, returning=None, **kwargs) -> None: ... def cte(self, name, recursive: bool = False, columns=None, materialized=None) -> CTE: ... def returning(self, *returning) -> Self: ... def apply_returning(self, ctx): ... def execute_returning(self, database: _DatabaseType): ... def handle_result(self, database: _DatabaseType, cursor): ... def __sql__(self, ctx): ... class Update(_WriteQuery): def __init__(self, table, update=None, **kwargs) -> None: ... def from_(self, *sources) -> Self: ... def __sql__(self, ctx): ... class Insert(_WriteQuery): SIMPLE: int QUERY: int MULTI: int class DefaultValuesException(Exception): ... def __init__(self, table, insert=None, columns=None, on_conflict=None, **kwargs) -> None: ... def where(self, *expressions): ... def as_rowcount(self, _as_rowcount: bool = True) -> Self: ... def on_conflict_ignore(self, ignore: bool = True) -> Self: ... def on_conflict_replace(self, replace: bool = True) -> Self: ... def on_conflict(self, *args, **kwargs) -> Self: ... def get_default_data(self): ... def get_default_columns(self) -> list[Incomplete] | None: ... def __sql__(self, ctx): ... def handle_result(self, database: _DatabaseType, cursor): ... class Delete(_WriteQuery): def __sql__(self, ctx): ... class Index(Node): def __init__( self, name, table, expressions, unique: bool = False, safe: bool = False, where=None, using=None, nulls_distinct=None ) -> None: ... def safe(self, _safe: bool = True) -> Self: ... def where(self, *expressions) -> Self: ... def using(self, _using=None) -> Self: ... def nulls_distinct(self, nulls_distinct=None) -> Self: ... def __sql__(self, ctx): ... class ModelIndex(Index): def __init__( self, model, fields, unique: bool = False, safe: bool = True, where=None, using=None, name=None, nulls_distinct=None ) -> None: ... class PeeweeException(Exception): def __init__(self, *args) -> None: ... class ImproperlyConfigured(PeeweeException): ... class DatabaseError(PeeweeException): ... class DataError(DatabaseError): ... class IntegrityError(DatabaseError): ... class InterfaceError(PeeweeException): ... class InternalError(DatabaseError): ... class NotSupportedError(DatabaseError): ... class OperationalError(DatabaseError): ... class ProgrammingError(DatabaseError): ... class ExceptionWrapper: __slots__ = ("exceptions",) exceptions: Incomplete def __init__(self, exceptions) -> None: ... def __enter__(self) -> None: ... def __exit__( self, exc_type: type[BaseException] | None, exc_value: BaseException | None, traceback: TracebackType | None ) -> None: ... class IndexMetadata(NamedTuple): name: Incomplete sql: Incomplete columns: Incomplete unique: Incomplete table: Incomplete class ColumnMetadata(NamedTuple): name: Incomplete data_type: Incomplete null: Incomplete primary_key: Incomplete table: Incomplete default: Incomplete class ForeignKeyMetadata(NamedTuple): column: Incomplete dest_table: Incomplete dest_column: Incomplete table: Incomplete class ViewMetadata(NamedTuple): name: Incomplete sql: Incomplete class _ConnectionState: def __init__(self, **kwargs) -> None: ... closed: bool conn: Incomplete ctx: Incomplete transactions: Incomplete def reset(self) -> None: ... def set_connection(self, conn) -> None: ... class _ConnectionLocal(_ConnectionState, threading.local): ... class _NoopLock: __slots__ = () def __enter__(self) -> Self: ... def __exit__( self, exc_type: type[BaseException] | None, exc_val: BaseException | None, exc_tb: TracebackType | None ) -> None: ... class ConnectionContext(_callable_context_manager): __slots__ = ("db",) db: Incomplete def __init__(self, db) -> None: ... def __enter__(self) -> None: ... def __exit__( self, exc_type: type[BaseException] | None, exc_val: BaseException | None, exc_tb: TracebackType | None ) -> None: ... class Database(_callable_context_manager): context_class: Incomplete json_methods: Incomplete field_types: Incomplete operations: Incomplete param: str quote: str server_version: Incomplete commit_select: bool compound_select_parentheses: Incomplete for_update: bool index_schema_prefix: bool index_using_precedes_table: bool limit_max: Incomplete nulls_ordering: bool returning_clause: bool safe_create_index: bool safe_drop_index: bool sequences: bool truncate_table: bool autoconnect: Incomplete thread_safe: Incomplete connect_params: Incomplete def __deepcopy__(self, memo: Any) -> Self: ... def __init__( self, database: str | None, thread_safe: bool = True, autorollback: bool = False, field_types=None, operations=None, autocommit=None, autoconnect: bool = True, **kwargs, ) -> None: ... database: Incomplete deferred: Incomplete def init(self, database: str | None, **kwargs) -> None: ... def __enter__(self) -> Self: ... def __exit__( self, exc_type: type[BaseException] | None, exc_val: BaseException | None, exc_tb: TracebackType | None ) -> None: ... def connection_context(self) -> ConnectionContext: ... def connect(self, reuse_if_open: bool = False) -> bool: ... def close(self) -> bool: ... def is_closed(self) -> bool: ... def is_connection_usable(self) -> bool: ... def connection(self): ... def cursor(self, named_cursor=None): ... def execute_sql(self, sql, params=None): ... def execute(self, query, **context_options): ... def get_context_options(self) -> dict[str, Incomplete]: ... def get_sql_context(self, **context_options) -> context_class: ... def conflict_statement(self, on_conflict, query): ... def conflict_update(self, on_conflict, query): ... def last_insert_id(self, cursor, query_type=None): ... def rows_affected(self, cursor): ... def default_values_insert(self, ctx): ... def session_start(self) -> _transaction: ... def session_commit(self) -> bool: ... def session_rollback(self) -> bool: ... def in_transaction(self) -> bool: ... def push_transaction(self, transaction) -> None: ... def pop_transaction(self): ... def transaction_depth(self) -> int: ... def top_transaction(self): ... def atomic(self, *args, **kwargs) -> _atomic: ... def manual_commit(self) -> _manual: ... def transaction(self, *args, **kwargs) -> _transaction: ... def savepoint(self) -> _savepoint: ... def begin(self) -> None: ... def commit(self) -> None: ... def rollback(self) -> None: ... def batch_commit(self, it, n) -> Generator[Incomplete]: ... def table_exists(self, table_name, schema: str | None = None) -> bool: ... def get_tables(self, schema: str | None = None) -> list[str]: ... def get_indexes(self, table, schema: str | None = None) -> list[IndexMetadata]: ... def get_columns(self, table, schema: str | None = None) -> list[ColumnMetadata]: ... def get_primary_keys(self, table, schema: str | None = None): ... def get_foreign_keys(self, table, schema: str | None = None) -> list[ForeignKeyMetadata]: ... def sequence_exists(self, seq) -> bool: ... def create_tables(self, models: Iterable[type[Model]], **options) -> None: ... def drop_tables(self, models: Iterable[type[Model]], **kwargs) -> None: ... def extract_date(self, date_part, date_field): ... def truncate_date(self, date_part, date_field): ... def to_timestamp(self, date_field): ... def from_timestamp(self, date_field): ... def random(self): ... def bind(self, models: Iterable[type[Model]], bind_refs: bool = True, bind_backrefs: bool = True) -> None: ... def bind_ctx( self, models: Iterable[type[Model]], bind_refs: bool = True, bind_backrefs: bool = True ) -> _BoundModelsContext: ... def get_noop_select(self, ctx): ... @property def Model(self) -> type[Model]: ... class SqliteDatabase(Database): field_types: Incomplete operations: Incomplete index_schema_prefix: bool limit_max: int server_version: Incomplete truncate_table: bool nulls_ordering: bool def __init__( self, database: str | None, pragmas=None, regexp_function: bool = False, rank_functions: bool = False, *args, **kwargs ) -> None: ... returning_clause: Incomplete def init(self, database: str | None, pragmas=None, timeout: int = 5, returning_clause=None, **kwargs) -> None: ... def pragma(self, key, value=..., permanent: bool = False, schema: str | None = None): ... cache_size: Incomplete foreign_keys: Incomplete journal_mode: Incomplete journal_size_limit: Incomplete mmap_size: Incomplete page_size: Incomplete read_uncommitted: Incomplete synchronous: Incomplete wal_autocheckpoint: Incomplete application_id: Incomplete user_version: Incomplete data_version: Incomplete @property def timeout(self): ... @timeout.setter def timeout(self, seconds) -> None: ... def register_aggregate(self, klass, name=None, num_params: int = -1) -> None: ... def aggregate(self, name=None, num_params: int = -1): ... def register_collation(self, fn, name=None) -> None: ... def collation(self, name=None): ... def register_function(self, fn, name: str | None = None, num_params: int = -1, deterministic: bool | None = None) -> None: ... def func(self, name: str | None = None, num_params: int = -1, deterministic: bool | None = None) -> Callable[[_F], _F]: ... def register_window_function(self, klass, name=None, num_params: int = -1) -> None: ... def window_function(self, name=None, num_params: int = -1): ... def unregister_aggregate(self, name) -> None: ... def unregister_collation(self, name) -> None: ... def unregister_function(self, name) -> None: ... def unregister_window_function(self, name) -> None: ... def load_extension(self, extension) -> None: ... def unload_extension(self, extension) -> None: ... def attach(self, filename, name) -> bool: ... def detach(self, name) -> bool: ... def last_insert_id(self, cursor, query_type=None): ... def rows_affected(self, cursor): ... def begin(self, lock_type=None) -> None: ... def get_tables(self, schema: str | None = None) -> list[str]: ... def get_views(self, schema: str | None = None) -> list[ViewMetadata]: ... def get_indexes(self, table, schema: str | None = None) -> list[IndexMetadata]: ... def get_columns(self, table, schema: str | None = None) -> list[ColumnMetadata]: ... def get_primary_keys(self, table, schema: str | None = None) -> list[Incomplete]: ... def get_foreign_keys(self, table, schema: str | None = None) -> list[ForeignKeyMetadata]: ... def get_binary_type(self): ... def conflict_statement(self, on_conflict, query) -> SQL | None: ... def conflict_update(self, oc, query) -> SQL | NodeList | None: ... def extract_date(self, date_part, date_field) -> Function: ... def truncate_date(self, date_part, date_field) -> Function: ... def to_timestamp(self, date_field) -> Cast: ... def from_timestamp(self, date_field) -> Function: ... class _BasePsycopgAdapter: isolation_levels: dict[int, str] isolation_levels_inv: dict[str, int] def __init__(self) -> None: ... @overload def isolation_level_int(self, isolation_level: str) -> int: ... @overload def isolation_level_int(self, isolation_level: _T) -> _T: ... @overload def isolation_level_str(self, isolation_level: int) -> str: ... @overload def isolation_level_str(self, isolation_level: _T) -> _T: ... class Psycopg2Adapter(_BasePsycopgAdapter): json_type: Incomplete jsonb_type: Incomplete cast_json_case: bool def __init__(self) -> None: ... def check_driver(self) -> None: ... def get_binary_type(self) -> type[Incomplete]: ... def connect(self, db, **params): ... def get_server_version(self, conn): ... def is_connection_usable(self, conn) -> bool: ... def is_connection_reusable(self, conn) -> bool: ... def is_connection_closed(self, conn) -> bool: ... class Psycopg3Adapter(_BasePsycopgAdapter): json_type: Incomplete jsonb_type: Incomplete cast_json_case: bool def __init__(self) -> None: ... def check_driver(self) -> None: ... def get_binary_type(self) -> type[Incomplete]: ... def connect(self, db, **params): ... def get_server_version(self, conn): ... def is_connection_usable(self, conn) -> bool: ... def is_connection_reusable(self, conn) -> bool: ... def is_connection_closed(self, conn) -> bool: ... class PostgresqlDatabase(Database): field_types: Incomplete operations: Incomplete param: str commit_select: bool compound_select_parentheses: Incomplete for_update: bool nulls_ordering: bool returning_clause: bool sequences: bool psycopg2_adapter: Incomplete psycopg3_adapter: Incomplete def init( self, database: str | None, register_unicode: bool = True, encoding=None, isolation_level=None, *, prefer_psycopg3: bool = False, **kwargs, ) -> None: ... def is_connection_usable(self) -> bool: ... def last_insert_id(self, cursor, query_type=None): ... def rows_affected(self, cursor): ... def begin(self, isolation_level: str | None = None) -> None: ... def get_tables(self, schema: str | None = None) -> list[str]: ... def get_views(self, schema: str | None = None) -> list[ViewMetadata]: ... def get_indexes(self, table, schema: str | None = None) -> list[IndexMetadata]: ... def get_columns(self, table, schema: str | None = None) -> list[ColumnMetadata]: ... def get_primary_keys(self, table, schema: str | None = None) -> list[Incomplete]: ... def get_foreign_keys(self, table, schema: str | None = None) -> list[ForeignKeyMetadata]: ... def sequence_exists(self, sequence) -> bool: ... def get_binary_type(self) -> type[Incomplete]: ... def conflict_statement(self, on_conflict, query) -> None: ... def conflict_update(self, oc, query) -> NodeList: ... def extract_date(self, date_part, date_field) -> Function: ... def truncate_date(self, date_part, date_field) -> Function: ... def interval(self, val) -> NodeList: ... def to_timestamp(self, date_field) -> Function: ... def from_timestamp(self, date_field) -> Function: ... def get_noop_select(self, ctx): ... def set_time_zone(self, timezone) -> None: ... def set_isolation_level(self, isolation_level: int | str) -> None: ... class MySQLDatabase(Database): field_types: Incomplete operations: Incomplete param: str quote: str commit_select: bool compound_select_parentheses: Incomplete for_update: bool index_using_precedes_table: bool limit_max: Incomplete safe_create_index: bool safe_drop_index: bool sql_mode: str mariadb: bool def init(self, database: str | None, mariadb: bool | None = ..., **kwargs) -> None: ... def is_connection_usable(self) -> bool: ... def default_values_insert(self, ctx): ... def begin(self, isolation_level: str | None = None) -> None: ... def get_tables(self, schema: str | None = None) -> list[str]: ... def get_views(self, schema: str | None = None) -> list[ViewMetadata]: ... def get_indexes(self, table, schema: str | None = None) -> list[IndexMetadata]: ... def get_columns(self, table, schema: str | None = None) -> list[ColumnMetadata]: ... def get_primary_keys(self, table, schema: str | None = None) -> list[Incomplete]: ... def get_foreign_keys(self, table, schema: str | None = None) -> list[ForeignKeyMetadata]: ... def get_binary_type(self): ... def conflict_statement(self, on_conflict, query) -> SQL | None: ... def conflict_update(self, on_conflict, query) -> NodeList | None: ... def extract_date(self, date_part, date_field) -> Function: ... def truncate_date(self, date_part, date_field) -> Function: ... def to_timestamp(self, date_field) -> Function: ... def from_timestamp(self, date_field) -> Function: ... def random(self) -> Function: ... def get_noop_select(self, ctx): ... class _manual(_callable_context_manager): db: Incomplete def __init__(self, db) -> None: ... def __enter__(self) -> None: ... def __exit__( self, exc_type: type[BaseException] | None, exc_val: BaseException | None, exc_tb: TracebackType | None ) -> None: ... class _atomic(_callable_context_manager): db: Incomplete def __init__(self, db, *args, **kwargs) -> None: ... def __enter__(self) -> _transaction | _savepoint: ... def __exit__( self, exc_type: type[BaseException] | None, exc_val: BaseException | None, exc_tb: TracebackType | None ) -> None: ... class _transaction(_callable_context_manager): db: Incomplete def __init__(self, db, *args, **kwargs) -> None: ... def commit(self, begin: bool = True) -> None: ... def rollback(self, begin: bool = True) -> None: ... def __enter__(self) -> Self: ... def __exit__( self, exc_type: type[BaseException] | None, exc_val: BaseException | None, exc_tb: TracebackType | None ) -> None: ... class _savepoint(_callable_context_manager): db: Incomplete sid: Incomplete quoted_sid: Incomplete def __init__(self, db, sid=None) -> None: ... def commit(self, begin: bool = True) -> None: ... def rollback(self, begin: bool = True) -> None: ... def __enter__(self) -> Self: ... def __exit__( self, exc_type: type[BaseException] | None, exc_val: BaseException | None, exc_tb: TracebackType | None ) -> None: ... class CursorWrapper: cursor: Incomplete count: int index: int initialized: bool populated: bool row_cache: list[Incomplete] def __init__(self, cursor) -> None: ... def __iter__(self): ... def __getitem__(self, item): ... def __len__(self) -> int: ... def initialize(self) -> None: ... def iterate(self, cache: bool = True): ... def process_row(self, row): ... def iterator(self) -> Generator[Incomplete]: ... def fill_cache(self, n: int = 0) -> None: ... def dedupe_columns(self, columns: Iterable[str], valid_identifiers: bool = True) -> list[str]: ... class DictCursorWrapper(CursorWrapper): columns: list[str] ncols: int def initialize(self) -> None: ... def process_row(self, row): ... class NamedTupleCursorWrapper(CursorWrapper): tuple_class: Incomplete def initialize(self) -> None: ... def process_row(self, row): ... class ObjectCursorWrapper(DictCursorWrapper): constructor: Incomplete columns: list[str] ncols: int def __init__(self, cursor, constructor) -> None: ... def initialize(self) -> None: ... def process_row(self, row): ... class ResultIterator: cursor_wrapper: Incomplete index: int def __init__(self, cursor_wrapper) -> None: ... def __iter__(self) -> Self: ... def next(self): ... __next__ = next class FieldAccessor: model: Incomplete field: Incomplete name: Incomplete def __init__(self, model, field, name) -> None: ... def __get__(self, instance, instance_type=None): ... def __set__(self, instance, value) -> None: ... class ForeignKeyAccessor(FieldAccessor): rel_model: Incomplete def __init__(self, model, field, name) -> None: ... def get_rel_instance(self, instance): ... def __get__(self, instance, instance_type=None): ... def __set__(self, instance, obj) -> None: ... class BackrefAccessor: field: Incomplete model: Incomplete rel_model: Incomplete def __init__(self, field) -> None: ... def __get__(self, instance, instance_type=None): ... class ObjectIdAccessor: field: Incomplete def __init__(self, field) -> None: ... def __get__(self, instance, instance_type=None): ... def __set__(self, instance, value) -> None: ... class Field(ColumnBase, Generic[_V]): @overload def __get__(self, instance: None, owner: Any) -> Self: ... @overload def __get__(self, instance: object, owner: Any) -> _V: ... def __set__(self, instance: object, value: _V) -> None: ... accessor_class: Incomplete auto_increment: bool default_index_type: Incomplete field_type: ClassVar[str] unpack: bool null: Incomplete index: Incomplete unique: Incomplete column_name: Incomplete default: Incomplete primary_key: Incomplete constraints: Incomplete sequence: Incomplete collation: Incomplete unindexed: Incomplete choices: Incomplete help_text: Incomplete verbose_name: Incomplete index_type: Incomplete # Field constructor args are typed per-field in the __new__ overloads. def __init__(self, *args: Any, **kwargs: Any) -> None: ... def __hash__(self) -> int: ... model: Incomplete name: Incomplete def bind(self, model, name, set_attribute: bool = True) -> None: ... @property def column(self) -> Column: ... def adapt(self, value): ... def db_value(self, value): ... def python_value(self, value): ... def to_value(self, value, case: bool = False) -> Value: ... def get_sort_key(self, ctx) -> tuple[Incomplete, ...]: ... def __sql__(self, ctx): ... def get_modifiers(self) -> list[int] | None: ... def ddl_datatype(self, ctx) -> SQL: ... def ddl(self, ctx) -> NodeList: ... class AnyField(Field): ... class IntegerField(Field[_V]): @overload def __new__(cls, *args: Any, null: Literal[True], **kwargs: Unpack[_FieldKwargs]) -> IntegerField[int | None]: ... @overload def __new__(cls, *args: Any, null: Literal[False] = ..., **kwargs: Unpack[_FieldKwargs]) -> IntegerField[int]: ... def adapt(self, value): ... class BigIntegerField(IntegerField[_V]): @overload def __new__(cls, *args: Any, null: Literal[True], **kwargs: Unpack[_FieldKwargs]) -> BigIntegerField[int | None]: ... @overload def __new__(cls, *args: Any, null: Literal[False] = ..., **kwargs: Unpack[_FieldKwargs]) -> BigIntegerField[int]: ... class SmallIntegerField(IntegerField[_V]): @overload def __new__(cls, *args: Any, null: Literal[True], **kwargs: Unpack[_FieldKwargs]) -> SmallIntegerField[int | None]: ... @overload def __new__(cls, *args: Any, null: Literal[False] = ..., **kwargs: Unpack[_FieldKwargs]) -> SmallIntegerField[int]: ... class AutoField(IntegerField[_V]): auto_increment: bool def __new__(cls, *args: Any, **kwargs: Unpack[_FieldKwargs]) -> AutoField[int]: ... class BigAutoField(AutoField[_V]): def __new__(cls, *args: Any, **kwargs: Unpack[_FieldKwargs]) -> BigAutoField[int]: ... class IdentityField(AutoField[_V]): def __new__(cls, *args: Any, **kwargs: Unpack[_FieldKwargs]) -> IdentityField[int]: ... class PrimaryKeyField(AutoField[_V]): def __new__(cls, *args: Any, **kwargs: Unpack[_FieldKwargs]) -> PrimaryKeyField[int]: ... class FloatField(Field[_V]): @overload def __new__(cls, *args: Any, null: Literal[True], **kwargs: Unpack[_FieldKwargs]) -> FloatField[float | None]: ... @overload def __new__(cls, *args: Any, null: Literal[False] = ..., **kwargs: Unpack[_FieldKwargs]) -> FloatField[float]: ... def adapt(self, value): ... class DoubleField(FloatField[_V]): @overload def __new__(cls, *args: Any, null: Literal[True], **kwargs: Unpack[_FieldKwargs]) -> DoubleField[float | None]: ... @overload def __new__(cls, *args: Any, null: Literal[False] = ..., **kwargs: Unpack[_FieldKwargs]) -> DoubleField[float]: ... class DecimalField(Field[_V]): max_digits: Incomplete decimal_places: Incomplete auto_round: Incomplete rounding: Incomplete @overload def __new__( cls, max_digits: int = ..., decimal_places: int = ..., auto_round: bool = ..., rounding: str | None = ..., *args: Any, null: Literal[True], **kwargs: Unpack[_FieldKwargs], ) -> DecimalField[Decimal | None]: ... @overload def __new__( cls, max_digits: int = ..., decimal_places: int = ..., auto_round: bool = ..., rounding: str | None = ..., *args: Any, null: Literal[False] = ..., **kwargs: Unpack[_FieldKwargs], ) -> DecimalField[Decimal]: ... def get_modifiers(self) -> list[int]: ... def db_value(self, value): ... def python_value(self, value) -> Decimal | None: ... class _StringField(Field[_V]): def adapt(self, value) -> str: ... def __add__(self, other) -> StringExpression: ... def __radd__(self, other) -> StringExpression: ... class CharField(_StringField[_V]): max_length: int @overload def __new__( cls, max_length: int = 255, *args: Any, null: Literal[True], **kwargs: Unpack[_FieldKwargs] ) -> CharField[str | None]: ... @overload def __new__( cls, max_length: int = 255, *args: Any, null: Literal[False] = ..., **kwargs: Unpack[_FieldKwargs] ) -> CharField[str]: ... def get_modifiers(self) -> list[int] | None: ... class FixedCharField(CharField[_V]): @overload def __new__(cls, *args: Any, null: Literal[True], **kwargs: Unpack[_FieldKwargs]) -> FixedCharField[str | None]: ... @overload def __new__(cls, *args: Any, null: Literal[False] = ..., **kwargs: Unpack[_FieldKwargs]) -> FixedCharField[str]: ... def adapt(self, value) -> str: ... class TextField(_StringField[_V]): @overload def __new__(cls, *args: Any, null: Literal[True], **kwargs: Unpack[_FieldKwargs]) -> TextField[str | None]: ... @overload def __new__(cls, *args: Any, null: Literal[False] = ..., **kwargs: Unpack[_FieldKwargs]) -> TextField[str]: ... class FieldDatabaseHook: def bind(self, model, name, set_attribute: bool = True): ... class BlobField(FieldDatabaseHook, Field[_V]): @overload def __new__(cls, *args: Any, null: Literal[True], **kwargs: Unpack[_FieldKwargs]) -> BlobField[bytes | None]: ... @overload def __new__(cls, *args: Any, null: Literal[False] = ..., **kwargs: Unpack[_FieldKwargs]) -> BlobField[bytes]: ... def db_value(self, value): ... class JSONField(FieldDatabaseHook, Field): def __init__(self, dumps=None, loads=None, **kwargs) -> None: ... def path(self, *keys): ... def length(self) -> Expression: ... def append(self, value) -> Expression: ... def update(self, value) -> Expression: ... def contains(self, value) -> Expression: ... # type: ignore[override] def contained_by(self, value) -> Expression: ... def has_key(self, key) -> Expression: ... def has_keys(self, key_list) -> Expression: ... def has_any_keys(self, key_list) -> Expression: ... class BitField(BitwiseMixin, BigIntegerField[_V]): def __new__(cls, *args: Any, **kwargs: Unpack[_FieldKwargs]) -> BitField[int]: ... def flag(self, value=None): ... class BigBitFieldData: instance: Incomplete name: Incomplete def __init__(self, instance, name) -> None: ... def clear(self) -> None: ... def set_bit(self, idx) -> None: ... def clear_bit(self, idx) -> None: ... def toggle_bit(self, idx) -> bool: ... def is_set(self, idx) -> bool: ... __getitem__ = is_set def __setitem__(self, item: int, value: bool) -> None: ... __delitem__ = clear_bit def __len__(self) -> int: ... def __and__(self, other: BigBitFieldData | bytes | bytearray | memoryview) -> bytearray: ... def __or__(self, other: BigBitFieldData | bytes | bytearray | memoryview) -> bytearray: ... def __xor__(self, other: BigBitFieldData | bytes | bytearray | memoryview) -> bytearray: ... def __iter__(self) -> Iterator[Literal[0, 1]]: ... def __bytes__(self) -> bytes: ... class BigBitFieldAccessor(FieldAccessor): def __get__(self, instance, instance_type=None): ... def __set__(self, instance, value) -> None: ... class BigBitField(BlobField[bytes]): accessor_class: Incomplete def __new__(cls, *args: Any, **kwargs: Unpack[_FieldKwargs]) -> Self: ... @overload # type: ignore[override] def __get__(self, instance: None, owner: Any) -> Self: ... @overload def __get__(self, instance: object, owner: Any) -> BigBitFieldData: ... def db_value(self, value): ... class UUIDField(Field[_V]): @overload def __new__(cls, *args: Any, null: Literal[True], **kwargs: Unpack[_FieldKwargs]) -> UUIDField[UUID | None]: ... @overload def __new__(cls, *args: Any, null: Literal[False] = ..., **kwargs: Unpack[_FieldKwargs]) -> UUIDField[UUID]: ... def db_value(self, value): ... def python_value(self, value) -> UUID | None: ... class BinaryUUIDField(BlobField[_V]): @overload def __new__(cls, *args: Any, null: Literal[True], **kwargs: Unpack[_FieldKwargs]) -> BinaryUUIDField[UUID | None]: ... @overload def __new__(cls, *args: Any, null: Literal[False] = ..., **kwargs: Unpack[_FieldKwargs]) -> BinaryUUIDField[UUID]: ... def db_value(self, value): ... def python_value(self, value) -> UUID | None: ... class _BaseFormattedField(Field[_V]): formats: Incomplete def __init__(self, formats=None, *args, **kwargs) -> None: ... class DateTimeField(_BaseFormattedField[_V]): @overload def __new__( cls, formats: list[str] | None = ..., *args: Any, null: Literal[True], **kwargs: Unpack[_FieldKwargs] ) -> DateTimeField[datetime | None]: ... @overload def __new__( cls, formats: list[str] | None = ..., *args: Any, null: Literal[False] = ..., **kwargs: Unpack[_FieldKwargs] ) -> DateTimeField[datetime]: ... formats: Incomplete def adapt(self, value): ... def to_timestamp(self): ... def truncate(self, part): ... @property def year(self): ... @property def month(self): ... @property def day(self): ... @property def hour(self): ... @property def minute(self): ... @property def second(self): ... class DateField(_BaseFormattedField[_V]): @overload def __new__( cls, formats: list[str] | None = ..., *args: Any, null: Literal[True], **kwargs: Unpack[_FieldKwargs] ) -> DateField[date | None]: ... @overload def __new__( cls, formats: list[str] | None = ..., *args: Any, null: Literal[False] = ..., **kwargs: Unpack[_FieldKwargs] ) -> DateField[date]: ... formats: Incomplete def adapt(self, value): ... def to_timestamp(self): ... def truncate(self, part): ... @property def year(self): ... @property def month(self): ... @property def day(self): ... class TimeField(_BaseFormattedField[_V]): @overload def __new__( cls, formats: list[str] | None = ..., *args: Any, null: Literal[True], **kwargs: Unpack[_FieldKwargs] ) -> TimeField[time | None]: ... @overload def __new__( cls, formats: list[str] | None = ..., *args: Any, null: Literal[False] = ..., **kwargs: Unpack[_FieldKwargs] ) -> TimeField[time]: ... formats: Incomplete def adapt(self, value): ... @property def hour(self): ... @property def minute(self): ... @property def second(self): ... class TimestampField(BigIntegerField[_V]): valid_resolutions: Incomplete resolution: Incomplete ticks_to_microsecond: Incomplete utc: Incomplete @overload def __new__(cls, *args: Any, null: Literal[True], **kwargs: Unpack[_FieldKwargs]) -> TimestampField[datetime | None]: ... @overload def __new__(cls, *args: Any, null: Literal[False] = ..., **kwargs: Unpack[_FieldKwargs]) -> TimestampField[datetime]: ... def local_to_utc(self, dt) -> datetime: ... def utc_to_local(self, dt) -> datetime: ... def get_timestamp(self, value) -> float: ... def db_value(self, value) -> int | None: ... def python_value(self, value): ... def from_timestamp(self): ... @property def year(self): ... @property def month(self): ... @property def day(self): ... @property def hour(self): ... @property def minute(self): ... @property def second(self): ... class IPField(BigIntegerField[_V]): @overload def __new__(cls, *args: Any, null: Literal[True], **kwargs: Unpack[_FieldKwargs]) -> IPField[str | None]: ... @overload def __new__(cls, *args: Any, null: Literal[False] = ..., **kwargs: Unpack[_FieldKwargs]) -> IPField[str]: ... def db_value(self, val): ... def python_value(self, val) -> str | None: ... class BooleanField(Field[_V]): @overload def __new__(cls, *args: Any, null: Literal[True], **kwargs: Unpack[_FieldKwargs]) -> BooleanField[bool | None]: ... @overload def __new__(cls, *args: Any, null: Literal[False] = ..., **kwargs: Unpack[_FieldKwargs]) -> BooleanField[bool]: ... adapt: Incomplete class BareField(Field): adapt: Incomplete def __init__(self, adapt=None, *args, **kwargs) -> None: ... def ddl_datatype(self, ctx): ... class ForeignKeyField(Field[_V]): accessor_class: Incomplete backref_accessor_class: Incomplete rel_model: Incomplete rel_field: Incomplete declared_backref: Incomplete backref: Incomplete on_delete: Incomplete on_update: Incomplete deferrable: Incomplete deferred: Incomplete object_id_name: Incomplete lazy_load: Incomplete constraint_name: str | None @overload def __new__( cls, model: type[_M], *args: Any, null: Literal[True], **kwargs: Unpack[_FKKwargs] ) -> ForeignKeyField[_M | None]: ... @overload def __new__( cls, model: type[_M], *args: Any, null: Literal[False] = ..., **kwargs: Unpack[_FKKwargs] ) -> ForeignKeyField[_M]: ... @overload # Untyped fallback: model given as a name/"self"/deferred ref, so the related type isn't known. def __new__(cls, model: Any = ..., *args: Any, **kwargs: Unpack[_FKKwargs]) -> ForeignKeyField[Any]: ... @property def field_type(self): ... # type: ignore[override] def get_modifiers(self): ... def adapt(self, value): ... def db_value(self, value): ... def python_value(self, value): ... column_name: Incomplete safe_name: Incomplete def bind(self, model, name, set_attribute: bool = True) -> None: ... def foreign_key_constraint(self, explicit_name: bool = False) -> NodeList: ... def get_constraint_name(self) -> str: ... def __getattr__(self, attr: str): ... class DeferredForeignKey(Field): field_kwargs: Incomplete rel_model_name: Incomplete def __init__(self, rel_model_name, **kwargs) -> None: ... __hash__ = object.__hash__ def __deepcopy__(self, memo=None) -> DeferredForeignKey: ... def set_model(self, rel_model) -> None: ... @staticmethod def resolve(model_cls) -> None: ... class DeferredThroughModel: def __init__(self) -> None: ... def set_field(self, model, field, name) -> None: ... def set_model(self, through_model) -> None: ... class MetaField(Field): column_name: Incomplete default: Incomplete model: Incomplete name: Incomplete primary_key: bool class ManyToManyFieldAccessor(FieldAccessor): model: Incomplete rel_model: Incomplete through_model: Incomplete src_fk: Incomplete dest_fk: Incomplete def __init__(self, model, field, name) -> None: ... def __get__(self, instance, instance_type=None, force_query: bool = False): ... def __set__(self, instance, value) -> None: ... class ManyToManyField(MetaField): accessor_class: Incomplete rel_model: Incomplete backref: Incomplete def __init__( self, model, backref=None, through_model=None, on_delete=None, on_update=None, prevent_unsaved: bool = True, _is_backref: bool = False, ) -> None: ... def bind(self, model, name, set_attribute: bool = True) -> None: ... def get_models(self) -> list[Incomplete]: ... @property def through_model(self): ... @through_model.setter def through_model(self, value) -> None: ... def get_through_model(self): ... class VirtualField(MetaField): field_class: Incomplete field_instance: Incomplete def __init__(self, field_class=None, *args, **kwargs) -> None: ... def db_value(self, value): ... def python_value(self, value): ... model: Incomplete column_name: Incomplete def bind(self, model, name, set_attribute: bool = True) -> None: ... class CompositeKey(MetaField): sequence: Incomplete field_names: Incomplete def __init__(self, *field_names) -> None: ... @property def safe_field_names(self): ... def __get__(self, instance, instance_type=None): ... def __set__(self, instance, value) -> None: ... def __eq__(self, other) -> Expression | bool: ... # type: ignore[override] def __ne__(self, other) -> Expression | bool: ... # type: ignore[override] def __hash__(self) -> int: ... def __sql__(self, ctx): ... model: Incomplete column_name: Incomplete def bind(self, model, name, set_attribute: bool = True) -> None: ... class _SortedFieldList: __slots__ = ("_keys", "_items") def __init__(self) -> None: ... def __getitem__(self, i): ... def __iter__(self): ... def __contains__(self, item) -> bool: ... def index(self, field) -> int: ... def insert(self, item) -> None: ... def remove(self, item) -> None: ... class SchemaManager: model: Incomplete context_options: Incomplete def __init__(self, model, database: _DatabaseType | None = None, **context_options) -> None: ... @property def database(self): ... @database.setter def database(self, value) -> None: ... def create_table(self, safe: bool = True, **options) -> None: ... def create_table_as(self, table_name, query, safe: bool = True, **meta) -> None: ... def drop_table(self, safe: bool = True, **options) -> None: ... def truncate_table(self, restart_identity: bool = False, cascade: bool = False) -> None: ... def create_indexes(self, safe: bool = True) -> None: ... def drop_index(self, field=None, index=None, safe: bool = True): ... def drop_indexes(self, safe: bool = True) -> None: ... def create_sequence(self, field) -> None: ... def drop_sequence(self, field) -> None: ... def create_foreign_key(self, field) -> None: ... def create_sequences(self) -> None: ... def create_all(self, safe: bool = True, **table_options) -> None: ... def drop_sequences(self) -> None: ... def drop_all(self, safe: bool = True, drop_sequences: bool = True, **options) -> None: ... class Metadata: model: type[Model] database: Incomplete fields: Incomplete columns: Incomplete combined: Incomplete sorted_fields: Incomplete sorted_field_names: Incomplete defaults: Incomplete name: Incomplete table_function: Incomplete legacy_table_names: Incomplete table_name: Incomplete indexes: Incomplete constraints: Incomplete primary_key: Field[Any] | Literal[False] composite_key: Incomplete only_save_dirty: Incomplete depends_on: Incomplete table_settings: Incomplete without_rowid: Incomplete strict_tables: Incomplete temporary: Incomplete refs: Incomplete backrefs: Incomplete model_refs: Incomplete model_backrefs: Incomplete manytomany: Incomplete options: Incomplete def __init__( self, model, database: _DatabaseType | None = None, table_name=None, indexes=None, primary_key=None, constraints=None, schema: str | None = None, only_save_dirty: bool = False, depends_on=None, options=None, db_table=None, table_function=None, table_settings=None, without_rowid: bool = False, temporary: bool = False, strict_tables=None, legacy_table_names: bool = True, **kwargs, ) -> None: ... def make_table_name(self) -> str: ... def model_graph( self, refs: bool = True, backrefs: bool = True, depth_first: bool = True ) -> list[tuple[Incomplete, Incomplete, Incomplete]]: ... def add_ref(self, field) -> None: ... def remove_ref(self, field) -> None: ... def add_manytomany(self, field) -> None: ... def remove_manytomany(self, field) -> None: ... @property def table(self) -> Table: ... @table.deleter def table(self) -> None: ... @property def schema(self) -> str | None: ... @schema.setter def schema(self, value) -> None: ... @property def entity(self) -> Entity: ... def get_rel_for_model(self, model) -> tuple[list[Incomplete], list[Incomplete]]: ... def add_field(self, field_name, field, set_attribute: bool = True) -> None: ... def remove_field(self, field_name) -> None: ... auto_increment: Incomplete def set_primary_key(self, name, field) -> None: ... def get_primary_keys(self): ... def get_default_dict(self): ... def fields_to_index(self) -> list[Incomplete]: ... def set_database(self, database: _DatabaseType) -> None: ... def set_table_name(self, table_name) -> None: ... class SubclassAwareMetadata(Metadata): models: Incomplete def __init__(self, model, *args, **kwargs) -> None: ... def map_models(self, fn) -> None: ... class DoesNotExist(Exception): ... class ModelBase(type): inheritable: set[str] def __new__(cls, name, bases, attrs): ... def __iter__(self): ... def __getitem__(self, key): ... def __setitem__(self, key, value) -> None: ... def __delitem__(self, key) -> None: ... def __contains__(self, key) -> bool: ... def __len__(self) -> int: ... def __bool__(self) -> bool: ... def __nonzero__(self) -> bool: ... def __sql__(self, ctx): ... class _BoundModelsContext(_callable_context_manager): models: Incomplete database: Incomplete bind_refs: Incomplete bind_backrefs: Incomplete def __init__(self, models, database: _DatabaseType, bind_refs, bind_backrefs) -> None: ... def __enter__(self): ... def __exit__( self, exc_type: type[BaseException] | None, exc_val: BaseException | None, exc_tb: TracebackType | None ) -> None: ... class Model(metaclass=ModelBase): __data__: Incomplete __rel__: Incomplete _meta: Metadata def __init__(self, *args, **kwargs) -> None: ... @classmethod def validate_model(cls) -> None: ... @classmethod def alias(cls, alias=None) -> ModelAlias[Self]: ... @classmethod def select(cls, *fields) -> ModelSelect[Self]: ... @classmethod def update(cls, data=None, /, **update) -> ModelUpdate: ... @classmethod def insert(cls, data=None, /, **insert) -> ModelInsert: ... @classmethod def insert_many(cls, rows, fields=None) -> ModelInsert: ... @classmethod def insert_from(cls, query, fields) -> ModelInsert: ... @classmethod def replace(cls, data=None, /, **insert): ... @classmethod def replace_many(cls, rows, fields=None): ... @classmethod def raw(cls, sql, *params) -> ModelRaw: ... @classmethod def delete(cls) -> ModelDelete: ... @classmethod def create(cls, **query) -> Self: ... @classmethod def bulk_create(cls, model_list, batch_size=None) -> None: ... @classmethod def bulk_update(cls, model_list, fields, batch_size=None): ... @classmethod def noop(cls) -> NoopModelSelect[Self]: ... @classmethod def get(cls, *query, **filters) -> Self: ... @classmethod def get_or_none(cls, *query, **filters) -> Self | None: ... @classmethod def get_by_id(cls, pk) -> Self: ... @classmethod def set_by_id(cls, key, value): ... @classmethod def delete_by_id(cls, pk): ... @classmethod def get_or_create(cls, **kwargs): ... @classmethod def filter(cls, *dq_nodes, **filters): ... def get_id(self): ... def save(self, force_insert: bool = False, only=None) -> int: ... def is_dirty(self) -> bool: ... @property def dirty_fields(self) -> list[Field[Any]]: ... @property def dirty_field_names(self) -> list[str]: ... def dependencies(self, search_nullable: bool = True, exclude_null_children: bool = False) -> Generator[Incomplete]: ... def delete_instance(self, recursive: bool = False, delete_nullable: bool = False) -> int: ... def __hash__(self) -> int: ... def __eq__(self, other) -> Expression | bool: ... # type: ignore[override] def __ne__(self, other) -> Expression | bool: ... # type: ignore[override] def __sql__(self, ctx): ... @classmethod def bind(cls, database: _DatabaseType, bind_refs: bool = True, bind_backrefs: bool = True, _exclude=None) -> bool: ... @classmethod def bind_ctx(cls, database: _DatabaseType, bind_refs: bool = True, bind_backrefs: bool = True) -> _BoundModelsContext: ... @classmethod def table_exists(cls): ... @classmethod def create_table(cls, safe: bool = True, **options) -> None: ... @classmethod def drop_table(cls, safe: bool = True, drop_sequences: bool = True, **options) -> None: ... @classmethod def truncate_table(cls, **options) -> None: ... @classmethod def index(cls, *fields, **kwargs) -> ModelIndex: ... @classmethod def add_index(cls, *fields, **kwargs) -> None: ... class ModelAlias(Node, Generic[_M]): def __init__(self, model: type[_M], alias=None) -> None: ... def __getattr__(self, attr: str): ... def __setattr__(self, attr: str, value) -> None: ... def get_field_aliases(self) -> list[Incomplete]: ... def select(self, *selection) -> ModelSelect[_M]: ... def __call__(self, **kwargs): ... def __sql__(self, ctx): ... class FieldAlias(Field): source: Incomplete model: Incomplete field: Incomplete def __init__(self, source, field) -> None: ... @classmethod def create(cls, source, field): ... def clone(self) -> FieldAlias: ... def adapt(self, value): ... def python_value(self, value): ... def db_value(self, value): ... def __getattr__(self, attr: str): ... def __sql__(self, ctx): ... class _ModelQueryHelper: default_row_type: Incomplete def __init__(self, *args, **kwargs) -> None: ... def objects(self, constructor=None) -> Self: ... def models(self) -> Self: ... class ModelRaw(_ModelQueryHelper, RawQuery): # type: ignore[misc] model: Incomplete def __init__(self, model, sql, params, **kwargs) -> None: ... def get(self) -> Model: ... class BaseModelSelect(_ModelQueryHelper): def union_all(self, rhs) -> ModelCompoundSelectQuery: ... __add__ = union_all def union(self, rhs) -> ModelCompoundSelectQuery: ... __or__ = union def intersect(self, rhs) -> ModelCompoundSelectQuery: ... __and__ = intersect def except_(self, rhs) -> ModelCompoundSelectQuery: ... __sub__ = except_ def __iter__(self): ... def prefetch(self, *subqueries): ... def with_related(self, *loads: Load) -> Self: ... def iterator(self, database: _DatabaseType | None = ...) -> Iterator[Any]: ... def get(self, database: _DatabaseType | None = None): ... def get_or_none(self, database: _DatabaseType | None = None): ... def group_by(self, *columns) -> Self: ... class ModelCompoundSelectQuery(BaseModelSelect, CompoundSelectQuery): # type: ignore[misc] model: Incomplete def __init__(self, model, *args, **kwargs) -> None: ... class ModelSelect(BaseModelSelect, Select, Generic[_M]): # type: ignore[misc] model: type[_M] def __init__(self, model, fields_or_models, is_default: bool = False) -> None: ... def __iter__(self) -> Iterator[_M]: ... def get(self, database: _DatabaseType | None = None) -> _M: ... def get_or_none(self, database: _DatabaseType | None = None) -> _M | None: ... def clone(self) -> Self: ... def select(self, *fields_or_models) -> ModelSelect[_M]: ... def select_extend(self, *columns) -> Self: ... def switch(self, ctx=None) -> Self: ... def join(self, dest, join_type="INNER JOIN", on=None, src=None, attr=None) -> Self: ... # type: ignore[override] def left_outer_join(self, dest, on=None, src=None, attr=None) -> Self: ... # type: ignore[override] def join_from(self, src, dest, join_type="INNER JOIN", on=None, attr=None) -> Self: ... def ensure_join(self, lm, rm, on=None, **join_kwargs): ... def convert_dict_to_node(self, qdict) -> tuple[list[Incomplete], list[Incomplete]]: ... def filter(self, *args, **kwargs) -> Self: ... def create_table(self, name, safe: bool = True, **meta): ... def __sql_selection__(self, ctx, is_subquery: bool = False): ... class NoopModelSelect(ModelSelect[_M]): def __sql__(self, ctx): ... class _ModelWriteQueryHelper(_ModelQueryHelper): model: Incomplete def __init__(self, model, *args, **kwargs) -> None: ... def returning(self, *returning) -> Self: ... class ModelUpdate(_ModelWriteQueryHelper, Update): ... # type: ignore[misc] class ModelInsert(_ModelWriteQueryHelper, Insert): # type: ignore[misc] default_row_type: Incomplete def __init__(self, *args, **kwargs) -> None: ... def returning(self, *returning) -> Self: ... def get_default_data(self): ... def get_default_columns(self): ... class ModelDelete(_ModelWriteQueryHelper, Delete): ... # type: ignore[misc] class ManyToManyQuery(ModelSelect[_M]): def __init__(self, instance, accessor, rel, *args, **kwargs) -> None: ... def add(self, value, clear_existing: bool = False) -> None: ... def remove(self, value): ... def clear(self): ... class BaseModelCursorWrapper(DictCursorWrapper): model: Incomplete select: Incomplete ncols: int columns: list[str] converters: list[Incomplete] fields: list[Incomplete] no_convert: list[int] convert: list[int] def __init__(self, cursor, model, columns) -> None: ... def initialize(self) -> None: ... def process_row(self, row): ... class ModelDictCursorWrapper(BaseModelCursorWrapper): unique_columns: list[str] def initialize(self) -> None: ... def process_row(self, row) -> dict[str, Incomplete]: ... class ModelTupleCursorWrapper(BaseModelCursorWrapper): constructor: Incomplete def process_row(self, row) -> tuple[Incomplete, ...]: ... # type: ignore[override] class ModelNamedTupleCursorWrapper(ModelTupleCursorWrapper): impl: Incomplete constructor: Incomplete def initialize(self) -> None: ... class ModelObjectCursorWrapper(ModelDictCursorWrapper): constructor: Incomplete is_model: Incomplete identifiers: list[str] def __init__(self, cursor, model, select, constructor) -> None: ... def initialize(self) -> None: ... def process_row(self, row): ... class ModelCursorWrapper(BaseModelCursorWrapper): from_list: Incomplete joins: Incomplete dicts: bool def __init__(self, cursor, model, select, from_list, joins, dicts: bool = False) -> None: ... key_to_constructor: Incomplete src_is_dest: dict[Incomplete, Incomplete] src_to_dest: list[tuple[Incomplete, Incomplete, Incomplete, bool, Incomplete, bool]] column_keys: list[Incomplete] def initialize(self) -> None: ... def process_row(self, row): ... @type_check_only class _PrefetchQuery(NamedTuple): query: Incomplete fields: Incomplete is_backref: bool rel_models: Incomplete field_to_name: Incomplete model: Incomplete class PrefetchQuery(_PrefetchQuery): def __new__( cls, query, fields=None, is_backref: bool | None = None, rel_models=None, field_to_name=None, model=None ) -> Self: ... def populate_instance(self, instance, id_map) -> None: ... def store_instance(self, instance, id_map) -> None: ... def prefetch(sq, *subqueries): ... class Load(Node): def __init__( self, rel: ForeignKeyField[Any] | BackrefAccessor, query: ModelSelect[Any] | None = ..., strategy: int = ..., per_parent: int | None = ..., ) -> None: ... def then(self, *children: Load) -> Self: ... __all__ = [ "AnyField", "AsIs", "AutoField", "BareField", "BigAutoField", "BigBitField", "BigIntegerField", "BinaryUUIDField", "BitField", "BlobField", "BooleanField", "Case", "Cast", "CharField", "Check", "chunked", "Column", "CompositeKey", "Context", "Database", "DatabaseError", "DatabaseProxy", "DataError", "DateField", "DateTimeField", "DecimalField", "Default", "DeferredForeignKey", "DeferredThroughModel", "DJANGO_MAP", "DoesNotExist", "DoubleField", "DQ", "Entity", "EXCLUDED", "Field", "FixedCharField", "FloatField", "fn", "ForeignKeyField", "IdentityField", "ImproperlyConfigured", "Index", "IntegerField", "IntegrityError", "InterfaceError", "InternalError", "IPField", "JOIN", "JSONField", "Load", "ManyToManyField", "Model", "ModelIndex", "MySQLDatabase", "NotSupportedError", "OP", "OperationalError", "PostgresqlDatabase", "PrimaryKeyField", "prefetch", "PREFETCH_TYPE", "ProgrammingError", "Proxy", "QualifiedNames", "SchemaManager", "SmallIntegerField", "Select", "SQL", "SqliteDatabase", "Table", "TextField", "TimeField", "TimestampField", "Tuple", "UUIDField", "Value", "ValuesList", "Window", ]