File: base.pyi

package info (click to toggle)
python-django-stubs 5.2.9-2
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 4,832 kB
  • sloc: python: 5,185; makefile: 15; sh: 8
file content (89 lines) | stat: -rw-r--r-- 3,205 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
from collections.abc import Collection, Iterable, Sequence
from typing import IO, Any

from django.db.models.base import Model
from django.db.models.fields import Field
from django.db.models.fields.related import ForeignKey, ManyToManyField

DEFER_FIELD: object

class SerializerDoesNotExist(KeyError): ...
class SerializationError(Exception): ...

class DeserializationError(Exception):
    @classmethod
    def WithData(
        cls, original_exc: Exception, model: str, fk: int | str, field_value: Sequence[str] | str | None
    ) -> DeserializationError: ...

class M2MDeserializationError(Exception):
    original_exc: Exception
    pk: Any
    def __init__(self, original_exc: Exception, pk: Any) -> None: ...

class ProgressBar:
    progress_width: int
    output: IO[str] | None
    total_count: int
    prev_done: int
    def __init__(self, output: IO[str] | None, total_count: int) -> None: ...
    def update(self, count: int) -> None: ...

class Serializer:
    internal_use_only: bool
    progress_class: type[ProgressBar]
    stream_class: type[IO[str]]
    options: dict[str, Any]
    stream: IO[str]
    selected_fields: Collection[str] | None
    use_natural_foreign_keys: bool
    use_natural_primary_keys: bool
    first: bool
    def serialize(
        self,
        queryset: Iterable[Model],
        *,
        stream: IO[str] | None = None,
        fields: Collection[str] | None = None,
        use_natural_foreign_keys: bool = False,
        use_natural_primary_keys: bool = False,
        progress_output: IO[str] | None = None,
        object_count: int = 0,
        **options: Any,
    ) -> Any: ...
    def start_serialization(self) -> None: ...
    def end_serialization(self) -> None: ...
    def start_object(self, obj: Any) -> None: ...
    def end_object(self, obj: Any) -> None: ...
    def handle_field(self, obj: Any, field: Any) -> None: ...
    def handle_fk_field(self, obj: Any, field: Any) -> None: ...
    def handle_m2m_field(self, obj: Any, field: Any) -> None: ...
    def getvalue(self) -> bytes | str | None: ...

class Deserializer:
    options: dict[str, Any]
    stream: IO[str] | IO[bytes]
    def __init__(self, stream_or_string: bytes | str | IO[bytes] | IO[str], **options: Any) -> None: ...
    def __iter__(self) -> Deserializer: ...
    def __next__(self) -> Any: ...

class DeserializedObject:
    object: Model
    m2m_data: dict[str, Sequence[Any]] | None
    deferred_fields: dict[Field, Any]
    def __init__(
        self,
        obj: Model,
        m2m_data: dict[str, Sequence[Any]] | None = None,
        deferred_fields: dict[Field, Any] | None = None,
    ) -> None: ...
    def save(self, save_m2m: bool = True, using: str | None = None, **kwargs: Any) -> None: ...
    def save_deferred_fields(self, using: str | None = None) -> None: ...

def build_instance(Model: type[Model], data: dict[str, Any], db: str) -> Model: ...
def deserialize_m2m_values(
    field: ManyToManyField, field_value: Iterable[Any], using: str | None, handle_forward_references: bool
) -> Sequence[Any] | object: ...
def deserialize_fk_value(
    field: ForeignKey, field_value: Any, using: str | None, handle_forward_references: bool
) -> Any | object: ...