import { SandboxFilesApi } from "../sandbox/files"; import { SandboxProcessHandle, SandboxProcessesApi } from "../sandbox/process"; import { SandboxTerminalApi } from "../sandbox/terminal"; import { BasicResponse } from "../types/session"; import { CreateSandboxParams, SandboxDetail, SandboxExposeParams, SandboxExposeResult, SandboxExecParams, SandboxExecOptions, SandboxImageListResponse, SandboxListParams, SandboxListResponse, SandboxMemorySnapshotParams, SandboxMemorySnapshotResult, SandboxProcessResult, SandboxSnapshotListParams, SandboxSnapshotListResponse, SandboxUnexposeResult } from "../types/sandbox"; import { BaseService } from "./base"; export declare class SandboxHandle { private readonly service; readonly processes: SandboxProcessesApi; readonly files: SandboxFilesApi; readonly terminal: SandboxTerminalApi; readonly pty: SandboxTerminalApi; private readonly transport; private detail; private runtimeSession; constructor(service: SandboxesService, detail: SandboxDetail); get id(): string; get status(): SandboxDetail["status"]; get region(): SandboxDetail["region"]; get runtime(): SandboxDetail["runtime"]; get tokenExpiresAt(): string | null; get sessionUrl(): string; get cpu(): number | null | undefined; get memoryMiB(): number | null | undefined; get diskMiB(): number | null | undefined; get exposedPorts(): SandboxExposeResult[]; toJSON(): SandboxDetail; info(): Promise; refresh(): Promise; connect(): Promise; stop(): Promise; createMemorySnapshot(params?: SandboxMemorySnapshotParams): Promise; expose(params: SandboxExposeParams): Promise; unexpose(port: number): Promise; getExposedUrl(port: number): string; exec(input: string, options?: SandboxExecOptions): Promise; exec(input: SandboxExecParams): Promise; getProcess(processId: string): Promise; private hydrate; private resolveRuntimeConnection; private resolveRuntimeSocketConnectionInfo; private isRuntimeSessionExpiring; private ensureRuntimeSession; private applyRuntimeSession; private clearRuntimeSession; private assertRuntimeAvailable; private static toRuntimeSession; } export declare class SandboxesService extends BaseService { readonly runtimeTimeout: number; readonly runtimeProxyOverride?: string; constructor(apiKey: string, baseUrl: string, timeout: number, runtimeProxyOverride?: string); create(params: CreateSandboxParams): Promise; get(id: string): Promise; connect(id: string): Promise; list(params?: SandboxListParams): Promise; listImages(): Promise; listSnapshots(params?: SandboxSnapshotListParams): Promise; stop(id: string): Promise; getDetail(id: string): Promise; attach(detail: SandboxDetail): SandboxHandle; createMemorySnapshot(id: string, params?: SandboxMemorySnapshotParams): Promise; expose(id: string, params: SandboxExposeParams): Promise; unexpose(id: string, port: number): Promise; private createDetail; }