import { z } from 'zod';
import { type APIClient } from '../api.ts';
export declare const ExecutionInfoSchema: z.ZodObject<{
    executionId: z.ZodString;
    sandboxId: z.ZodString;
    type: z.ZodOptional<z.ZodString>;
    status: z.ZodEnum<{
        failed: "failed";
        completed: "completed";
        cancelled: "cancelled";
        running: "running";
        timeout: "timeout";
        queued: "queued";
    }>;
    command: z.ZodOptional<z.ZodArray<z.ZodString>>;
    exitCode: z.ZodOptional<z.ZodNumber>;
    durationMs: z.ZodOptional<z.ZodNumber>;
    startedAt: z.ZodOptional<z.ZodString>;
    completedAt: z.ZodOptional<z.ZodString>;
    error: z.ZodOptional<z.ZodString>;
    stdoutStreamUrl: z.ZodOptional<z.ZodString>;
    stderrStreamUrl: z.ZodOptional<z.ZodString>;
    outputTruncated: z.ZodOptional<z.ZodBoolean>;
}, z.core.$strip>;
export declare const ExecutionGetResponseSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
    success: z.ZodLiteral<false>;
    message: z.ZodString;
    code: z.ZodOptional<z.ZodString>;
}, z.core.$strip>, z.ZodObject<{
    success: z.ZodLiteral<true>;
    data: z.ZodObject<{
        executionId: z.ZodString;
        sandboxId: z.ZodString;
        type: z.ZodOptional<z.ZodString>;
        status: z.ZodEnum<{
            failed: "failed";
            completed: "completed";
            cancelled: "cancelled";
            running: "running";
            timeout: "timeout";
            queued: "queued";
        }>;
        command: z.ZodOptional<z.ZodArray<z.ZodString>>;
        exitCode: z.ZodOptional<z.ZodNumber>;
        durationMs: z.ZodOptional<z.ZodNumber>;
        startedAt: z.ZodOptional<z.ZodString>;
        completedAt: z.ZodOptional<z.ZodString>;
        error: z.ZodOptional<z.ZodString>;
        stdoutStreamUrl: z.ZodOptional<z.ZodString>;
        stderrStreamUrl: z.ZodOptional<z.ZodString>;
        outputTruncated: z.ZodOptional<z.ZodBoolean>;
    }, z.core.$strip>;
}, z.core.$strip>], "success">;
export declare const ExecutionListDataSchema: z.ZodObject<{
    executions: z.ZodArray<z.ZodObject<{
        executionId: z.ZodString;
        sandboxId: z.ZodString;
        type: z.ZodOptional<z.ZodString>;
        status: z.ZodEnum<{
            failed: "failed";
            completed: "completed";
            cancelled: "cancelled";
            running: "running";
            timeout: "timeout";
            queued: "queued";
        }>;
        command: z.ZodOptional<z.ZodArray<z.ZodString>>;
        exitCode: z.ZodOptional<z.ZodNumber>;
        durationMs: z.ZodOptional<z.ZodNumber>;
        startedAt: z.ZodOptional<z.ZodString>;
        completedAt: z.ZodOptional<z.ZodString>;
        error: z.ZodOptional<z.ZodString>;
        stdoutStreamUrl: z.ZodOptional<z.ZodString>;
        stderrStreamUrl: z.ZodOptional<z.ZodString>;
        outputTruncated: z.ZodOptional<z.ZodBoolean>;
    }, z.core.$strip>>;
}, z.core.$strip>;
export declare const ExecutionListResponseSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
    success: z.ZodLiteral<false>;
    message: z.ZodString;
    code: z.ZodOptional<z.ZodString>;
}, z.core.$strip>, z.ZodObject<{
    success: z.ZodLiteral<true>;
    data: z.ZodObject<{
        executions: z.ZodArray<z.ZodObject<{
            executionId: z.ZodString;
            sandboxId: z.ZodString;
            type: z.ZodOptional<z.ZodString>;
            status: z.ZodEnum<{
                failed: "failed";
                completed: "completed";
                cancelled: "cancelled";
                running: "running";
                timeout: "timeout";
                queued: "queued";
            }>;
            command: z.ZodOptional<z.ZodArray<z.ZodString>>;
            exitCode: z.ZodOptional<z.ZodNumber>;
            durationMs: z.ZodOptional<z.ZodNumber>;
            startedAt: z.ZodOptional<z.ZodString>;
            completedAt: z.ZodOptional<z.ZodString>;
            error: z.ZodOptional<z.ZodString>;
            stdoutStreamUrl: z.ZodOptional<z.ZodString>;
            stderrStreamUrl: z.ZodOptional<z.ZodString>;
            outputTruncated: z.ZodOptional<z.ZodBoolean>;
        }, z.core.$strip>>;
    }, z.core.$strip>;
}, z.core.$strip>], "success">;
export type ExecutionInfo = z.infer<typeof ExecutionInfoSchema>;
export declare const ExecutionGetParamsSchema: z.ZodObject<{
    executionId: z.ZodString;
    orgId: z.ZodOptional<z.ZodString>;
    wait: z.ZodOptional<z.ZodString>;
    signal: z.ZodOptional<z.ZodCustom<AbortSignal, AbortSignal>>;
}, z.core.$strip>;
export type ExecutionGetParams = z.infer<typeof ExecutionGetParamsSchema>;
/**
 * Retrieves detailed information about a specific execution.
 *
 * @param client - The API client to use for the request
 * @param params - Parameters including the execution ID and optional wait duration
 * @returns Detailed execution information including status, timing, and errors
 * @throws {SandboxResponseError} If the execution is not found or request fails
 *
 * @example
 * // Immediate return (current behavior)
 * const info = await executionGet(client, { executionId: 'exec_123' });
 *
 * @example
 * // Long-poll: wait up to 60 seconds for completion
 * const info = await executionGet(client, { executionId: 'exec_123', wait: '60s' });
 */
export declare function executionGet(client: APIClient, params: ExecutionGetParams): Promise<ExecutionInfo>;
export declare const ExecutionListParamsSchema: z.ZodObject<{
    sandboxId: z.ZodString;
    orgId: z.ZodOptional<z.ZodString>;
    limit: z.ZodOptional<z.ZodNumber>;
}, z.core.$strip>;
export type ExecutionListParams = z.infer<typeof ExecutionListParamsSchema>;
export type ExecutionListResponse = z.infer<typeof ExecutionListDataSchema>;
/**
 * Lists all executions for a specific sandbox.
 *
 * @param client - The API client to use for the request
 * @param params - Parameters including the sandbox ID and optional limit
 * @returns List of execution information for the sandbox
 * @throws {SandboxResponseError} If the sandbox is not found or request fails
 */
export declare function executionList(client: APIClient, params: ExecutionListParams): Promise<ExecutionListResponse>;
//# sourceMappingURL=execution.d.ts.map