55# of static code checkers. Thus we avoid listing them with __all__ = ...
66from ._internal import ClientOptions as ClientOptions
77from ._internal import ListResult as ListResult
8+ from ._internal import PutResult as PutResult
9+ from ._internal import MultipartUpload as MultipartUpload
810from ._internal import ObjectMeta as ObjectMeta
911from ._internal import ObjectStore as _ObjectStore
1012from ._internal import Path as Path
@@ -80,7 +82,7 @@ def get_range(self, location: PathLike, start: int, length: int) -> bytes:
8082 """
8183 return super ().get_range (_as_path (location ), start , length )
8284
83- def put (self , location : PathLike , bytes : BytesLike ) -> None :
85+ def put (self , location : PathLike , bytes : BytesLike ) -> PutResult :
8486 """Save the provided bytes to the specified location.
8587
8688 Args:
@@ -89,6 +91,23 @@ def put(self, location: PathLike, bytes: BytesLike) -> None:
8991 """
9092 return super ().put (_as_path (location ), _as_bytes (bytes ))
9193
94+ def put_opts (self , location : PathLike , bytes : BytesLike ) -> PutResult :
95+ """Save the provided bytes to the specified location with the given options
96+
97+ Args:
98+ location (PathLike): path / key to storage location
99+ bytes (BytesLike): data to be written to location
100+ """
101+ return super ().put_opts (_as_path (location ), _as_bytes (bytes ))
102+
103+ def put_multipart (self , location : PathLike ) -> MultipartUpload :
104+ """Perform a multipart upload
105+
106+ Args:
107+ location (PathLike): path / key to storage location
108+ """
109+ return super ().put_multipart (_as_path (location ))
110+
92111 def delete (self , location : PathLike ) -> None :
93112 """Delete the object at the specified location.
94113
0 commit comments