range.pyi 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. from collections.abc import Callable
  2. from datetime import datetime
  3. class IfRange:
  4. etag: str | None
  5. date: datetime | None
  6. def __init__(
  7. self, etag: str | None = None, date: datetime | None = None
  8. ) -> None: ...
  9. def to_header(self) -> str: ...
  10. class Range:
  11. units: str
  12. ranges: list[tuple[int, int | None]]
  13. def __init__(self, units: str, ranges: list[tuple[int, int | None]]) -> None: ...
  14. def range_for_length(self, length: int | None) -> tuple[int, int] | None: ...
  15. def make_content_range(self, length: int | None) -> ContentRange | None: ...
  16. def to_header(self) -> str: ...
  17. def to_content_range_header(self, length: int | None) -> str | None: ...
  18. def _callback_property(name: str) -> property: ...
  19. class ContentRange:
  20. on_update: Callable[[ContentRange], None] | None
  21. def __init__(
  22. self,
  23. units: str | None,
  24. start: int | None,
  25. stop: int | None,
  26. length: int | None = None,
  27. on_update: Callable[[ContentRange], None] | None = None,
  28. ) -> None: ...
  29. @property
  30. def units(self) -> str | None: ...
  31. @units.setter
  32. def units(self, value: str | None) -> None: ...
  33. @property
  34. def start(self) -> int | None: ...
  35. @start.setter
  36. def start(self, value: int | None) -> None: ...
  37. @property
  38. def stop(self) -> int | None: ...
  39. @stop.setter
  40. def stop(self, value: int | None) -> None: ...
  41. @property
  42. def length(self) -> int | None: ...
  43. @length.setter
  44. def length(self, value: int | None) -> None: ...
  45. def set(
  46. self,
  47. start: int | None,
  48. stop: int | None,
  49. length: int | None = None,
  50. units: str | None = "bytes",
  51. ) -> None: ...
  52. def unset(self) -> None: ...
  53. def to_header(self) -> str: ...