11from __future__ import annotations
22
3- from typing import Dict , Literal , Mapping , Iterable , Optional
3+ from typing import Dict , Mapping , Iterable , Optional
44from pathlib import Path
5+ from typing_extensions import Unpack
56
67import httpx
78
8- from .._types import Body , Omit , Query , Headers , Timeout , NotGiven , SequenceNotStr , omit , not_given
9+ from .._types import Body , Omit , Query , Headers , Timeout , NotGiven , omit , not_given
910from .._client import AsyncRunloop
1011from ._helpers import ContentType , detect_content_type
1112from ..lib .polling import PollingConfig
1213from .async_devbox import AsyncDevbox
1314from .async_snapshot import AsyncSnapshot
1415from .async_blueprint import AsyncBlueprint
1516from .async_storage_object import AsyncStorageObject
17+ from ..types .devbox_list_params import DevboxListParams
18+ from ..types .object_list_params import ObjectListParams
1619from ..types .shared_params .mount import Mount
17- from ..types .blueprint_create_params import Service
20+ from ..types .devbox_create_params import DevboxCreateParams
21+ from ..types .blueprint_list_params import BlueprintListParams
22+ from ..types .blueprint_create_params import BlueprintCreateParams
1823from ..types .shared_params .launch_parameters import LaunchParameters
24+ from ..types .devboxes .disk_snapshot_list_params import DiskSnapshotListParams
1925from ..types .shared_params .code_mount_parameters import CodeMountParameters
2026
2127
@@ -28,46 +34,22 @@ def __init__(self, client: AsyncRunloop) -> None:
2834 async def create (
2935 self ,
3036 * ,
31- blueprint_id : Optional [str ] | Omit = omit ,
32- blueprint_name : Optional [str ] | Omit = omit ,
33- code_mounts : Optional [Iterable [CodeMountParameters ]] | Omit = omit ,
34- entrypoint : Optional [str ] | Omit = omit ,
35- environment_variables : Optional [Dict [str , str ]] | Omit = omit ,
36- file_mounts : Optional [Dict [str , str ]] | Omit = omit ,
37- launch_parameters : Optional [LaunchParameters ] | Omit = omit ,
38- metadata : Optional [Dict [str , str ]] | Omit = omit ,
39- mounts : Optional [Iterable [Mount ]] | Omit = omit ,
40- name : Optional [str ] | Omit = omit ,
41- repo_connection_id : Optional [str ] | Omit = omit ,
42- secrets : Optional [Dict [str , str ]] | Omit = omit ,
43- snapshot_id : Optional [str ] | Omit = omit ,
4437 polling_config : PollingConfig | None = None ,
4538 extra_headers : Headers | None = None ,
4639 extra_query : Query | None = None ,
4740 extra_body : Body | None = None ,
4841 timeout : float | Timeout | None | NotGiven = not_given ,
4942 idempotency_key : str | None = None ,
43+ ** params : Unpack [DevboxCreateParams ],
5044 ) -> AsyncDevbox :
5145 devbox_view = await self ._client .devboxes .create_and_await_running (
52- blueprint_id = blueprint_id ,
53- blueprint_name = blueprint_name ,
54- code_mounts = code_mounts ,
55- entrypoint = entrypoint ,
56- environment_variables = environment_variables ,
57- file_mounts = file_mounts ,
58- launch_parameters = launch_parameters ,
59- metadata = metadata ,
60- mounts = mounts ,
61- name = name ,
62- repo_connection_id = repo_connection_id ,
63- secrets = secrets ,
64- snapshot_id = snapshot_id ,
6546 polling_config = polling_config ,
6647 extra_headers = extra_headers ,
6748 extra_query = extra_query ,
6849 extra_body = extra_body ,
6950 timeout = timeout ,
7051 idempotency_key = idempotency_key ,
52+ ** params ,
7153 )
7254 return AsyncDevbox (self ._client , devbox_view .id )
7355
@@ -203,25 +185,18 @@ def from_id(self, devbox_id: str) -> AsyncDevbox:
203185 async def list (
204186 self ,
205187 * ,
206- limit : int | Omit = omit ,
207- starting_after : str | Omit = omit ,
208- status : Literal [
209- "provisioning" , "initializing" , "running" , "suspending" , "suspended" , "resuming" , "failure" , "shutdown"
210- ]
211- | Omit = omit ,
212188 extra_headers : Headers | None = None ,
213189 extra_query : Query | None = None ,
214190 extra_body : Body | None = None ,
215191 timeout : float | Timeout | None | NotGiven = not_given ,
192+ ** params : Unpack [DevboxListParams ],
216193 ) -> list [AsyncDevbox ]:
217194 page = await self ._client .devboxes .list (
218- limit = limit ,
219- starting_after = starting_after ,
220- status = status ,
221195 extra_headers = extra_headers ,
222196 extra_query = extra_query ,
223197 extra_body = extra_body ,
224198 timeout = timeout ,
199+ ** params ,
225200 )
226201 return [AsyncDevbox (self ._client , item .id ) for item in page .devboxes ]
227202
@@ -235,26 +210,18 @@ def __init__(self, client: AsyncRunloop) -> None:
235210 async def list (
236211 self ,
237212 * ,
238- devbox_id : str | Omit = omit ,
239- limit : int | Omit = omit ,
240- metadata_key : str | Omit = omit ,
241- metadata_key_in : str | Omit = omit ,
242- starting_after : str | Omit = omit ,
243213 extra_headers : Headers | None = None ,
244214 extra_query : Query | None = None ,
245215 extra_body : Body | None = None ,
246216 timeout : float | Timeout | None | NotGiven = not_given ,
217+ ** params : Unpack [DiskSnapshotListParams ],
247218 ) -> list [AsyncSnapshot ]:
248219 page = await self ._client .devboxes .disk_snapshots .list (
249- devbox_id = devbox_id ,
250- limit = limit ,
251- metadata_key = metadata_key ,
252- metadata_key_in = metadata_key_in ,
253- starting_after = starting_after ,
254220 extra_headers = extra_headers ,
255221 extra_query = extra_query ,
256222 extra_body = extra_body ,
257223 timeout = timeout ,
224+ ** params ,
258225 )
259226 return [AsyncSnapshot (self ._client , item .id ) for item in page .snapshots ]
260227
@@ -271,44 +238,22 @@ def __init__(self, client: AsyncRunloop) -> None:
271238 async def create (
272239 self ,
273240 * ,
274- name : str ,
275- base_blueprint_id : Optional [str ] | Omit = omit ,
276- base_blueprint_name : Optional [str ] | Omit = omit ,
277- build_args : Optional [Dict [str , str ]] | Omit = omit ,
278- code_mounts : Optional [Iterable [CodeMountParameters ]] | Omit = omit ,
279- dockerfile : Optional [str ] | Omit = omit ,
280- file_mounts : Optional [Dict [str , str ]] | Omit = omit ,
281- launch_parameters : Optional [LaunchParameters ] | Omit = omit ,
282- metadata : Optional [Dict [str , str ]] | Omit = omit ,
283- secrets : Optional [Dict [str , str ]] | Omit = omit ,
284- services : Optional [Iterable [Service ]] | Omit = omit ,
285- system_setup_commands : Optional [SequenceNotStr [str ]] | Omit = omit ,
286241 polling_config : PollingConfig | None = None ,
287242 extra_headers : Headers | None = None ,
288243 extra_query : Query | None = None ,
289244 extra_body : Body | None = None ,
290245 timeout : float | Timeout | None | NotGiven = not_given ,
291246 idempotency_key : str | None = None ,
247+ ** params : Unpack [BlueprintCreateParams ],
292248 ) -> AsyncBlueprint :
293249 blueprint = await self ._client .blueprints .create_and_await_build_complete (
294- name = name ,
295- base_blueprint_id = base_blueprint_id ,
296- base_blueprint_name = base_blueprint_name ,
297- build_args = build_args ,
298- code_mounts = code_mounts ,
299- dockerfile = dockerfile ,
300- file_mounts = file_mounts ,
301- launch_parameters = launch_parameters ,
302- metadata = metadata ,
303- secrets = secrets ,
304- services = services ,
305- system_setup_commands = system_setup_commands ,
306250 polling_config = polling_config ,
307251 extra_headers = extra_headers ,
308252 extra_query = extra_query ,
309253 extra_body = extra_body ,
310254 timeout = timeout ,
311255 idempotency_key = idempotency_key ,
256+ ** params ,
312257 )
313258 return AsyncBlueprint (self ._client , blueprint .id )
314259
@@ -318,22 +263,18 @@ def from_id(self, blueprint_id: str) -> AsyncBlueprint:
318263 async def list (
319264 self ,
320265 * ,
321- limit : int | Omit = omit ,
322- name : str | Omit = omit ,
323- starting_after : str | Omit = omit ,
324266 extra_headers : Headers | None = None ,
325267 extra_query : Query | None = None ,
326268 extra_body : Body | None = None ,
327269 timeout : float | Timeout | None | NotGiven = not_given ,
270+ ** params : Unpack [BlueprintListParams ],
328271 ) -> list [AsyncBlueprint ]:
329272 page = await self ._client .blueprints .list (
330- limit = limit ,
331- name = name ,
332- starting_after = starting_after ,
333273 extra_headers = extra_headers ,
334274 extra_query = extra_query ,
335275 extra_body = extra_body ,
336276 timeout = timeout ,
277+ ** params ,
337278 )
338279 return [AsyncBlueprint (self ._client , item .id ) for item in page .blueprints ]
339280
@@ -361,28 +302,18 @@ def from_id(self, object_id: str) -> AsyncStorageObject:
361302 async def list (
362303 self ,
363304 * ,
364- content_type : str | Omit = omit ,
365- limit : int | Omit = omit ,
366- name : str | Omit = omit ,
367- search : str | Omit = omit ,
368- starting_after : str | Omit = omit ,
369- state : str | Omit = omit ,
370305 extra_headers : Headers | None = None ,
371306 extra_query : Query | None = None ,
372307 extra_body : Body | None = None ,
373308 timeout : float | Timeout | None | NotGiven = not_given ,
309+ ** params : Unpack [ObjectListParams ],
374310 ) -> list [AsyncStorageObject ]:
375311 page = await self ._client .objects .list (
376- content_type = content_type ,
377- limit = limit ,
378- name = name ,
379- search = search ,
380- starting_after = starting_after ,
381- state = state ,
382312 extra_headers = extra_headers ,
383313 extra_query = extra_query ,
384314 extra_body = extra_body ,
385315 timeout = timeout ,
316+ ** params ,
386317 )
387318 return [AsyncStorageObject (self ._client , item .id , upload_url = item .upload_url ) for item in page .objects ]
388319
0 commit comments