import type { Client, Options as Options2, TDataShape } from './client';
import type { ConnectToExecWebSocketData, ConnectToExecWebSocketErrors, ConnectToExecWebSocketResponses, CreateDirectoryData, CreateDirectoryErrors, CreateDirectoryResponses, CreateExecData, CreateExecErrors, CreateExecResponses, CreateFileData, CreateFileErrors, CreateFileResponses, DeleteDirectoryData, DeleteDirectoryErrors, DeleteDirectoryResponses, DeleteExecData, DeleteExecErrors, DeleteExecResponses, DeleteFileData, DeleteFileErrors, DeleteFileResponses, ExecExecStdinData, ExecExecStdinErrors, ExecExecStdinResponses, ExecuteTaskActionData, ExecuteTaskActionErrors, ExecuteTaskActionResponses, GetExecData, GetExecErrors, GetExecOutputData, GetExecOutputErrors, GetExecOutputResponses, GetExecResponses, GetFileStatData, GetFileStatErrors, GetFileStatResponses, GetTaskData, GetTaskErrors, GetTaskResponses, ListDirectoryData, ListDirectoryErrors, ListDirectoryResponses, ListExecsData, ListExecsErrors, ListExecsResponses, ListPortsData, ListPortsErrors, ListPortsResponses, ListSetupTasksData, ListSetupTasksErrors, ListSetupTasksResponses, ListTasksData, ListTasksErrors, ListTasksResponses, PerformFileActionData, PerformFileActionErrors, PerformFileActionResponses, ReadFileData, ReadFileErrors, ReadFileResponses, StreamExecsListData, StreamExecsListErrors, StreamExecsListResponses, StreamPortsListData, StreamPortsListErrors, StreamPortsListResponses, UpdateExecData, UpdateExecErrors, UpdateExecResponses } from './types.gen';
export type Options<TData extends TDataShape = TDataShape, ThrowOnError extends boolean = boolean> = Options2<TData, ThrowOnError> & {
    /**
     * You can provide a client instance returned by `createClient()` instead of
     * individual options. This might be also useful if you want to implement a
     * custom client.
     */
    client?: Client;
    /**
     * You can pass arbitrary values through the `meta` object. This can be
     * used to access values that aren't defined as part of the SDK function.
     */
    meta?: Record<string, unknown>;
};
/**
 * Delete a file
 * Deletes a file at the specified path.
 */
export declare const deleteFile: <ThrowOnError extends boolean = false>(options: Options<DeleteFileData, ThrowOnError>) => import("./client").RequestResult<DeleteFileResponses, DeleteFileErrors, ThrowOnError, "fields">;
/**
 * Read file content
 * Reads the content of a file at the specified path.
 */
export declare const readFile: <ThrowOnError extends boolean = false>(options: Options<ReadFileData, ThrowOnError>) => import("./client").RequestResult<ReadFileResponses, ReadFileErrors, ThrowOnError, "fields">;
/**
 * Perform file actions
 * Performs actions on files (e.g., move operations).
 */
export declare const performFileAction: <ThrowOnError extends boolean = false>(options: Options<PerformFileActionData, ThrowOnError>) => import("./client").RequestResult<PerformFileActionResponses, PerformFileActionErrors, ThrowOnError, "fields">;
/**
 * Create a file
 * Creates a new file at the specified path with optional content.
 */
export declare const createFile: <ThrowOnError extends boolean = false>(options: Options<CreateFileData, ThrowOnError>) => import("./client").RequestResult<CreateFileResponses, CreateFileErrors, ThrowOnError, "fields">;
/**
 * Get file stat
 * Reads the file metadata.
 */
export declare const getFileStat: <ThrowOnError extends boolean = false>(options: Options<GetFileStatData, ThrowOnError>) => import("./client").RequestResult<GetFileStatResponses, GetFileStatErrors, ThrowOnError, "fields">;
/**
 * Delete a directory
 * Deletes a directory at the specified path.
 */
export declare const deleteDirectory: <ThrowOnError extends boolean = false>(options: Options<DeleteDirectoryData, ThrowOnError>) => import("./client").RequestResult<DeleteDirectoryResponses, DeleteDirectoryErrors, ThrowOnError, "fields">;
/**
 * List directory contents
 * Lists the contents of a directory at the specified path.
 */
export declare const listDirectory: <ThrowOnError extends boolean = false>(options: Options<ListDirectoryData, ThrowOnError>) => import("./client").RequestResult<ListDirectoryResponses, ListDirectoryErrors, ThrowOnError, "fields">;
/**
 * Create a directory
 * Creates a new directory at the specified path.
 */
export declare const createDirectory: <ThrowOnError extends boolean = false>(options: Options<CreateDirectoryData, ThrowOnError>) => import("./client").RequestResult<CreateDirectoryResponses, CreateDirectoryErrors, ThrowOnError, "fields">;
/**
 * List all execs
 * Returns a list of all active execs.
 */
export declare const listExecs: <ThrowOnError extends boolean = false>(options?: Options<ListExecsData, ThrowOnError>) => import("./client").RequestResult<ListExecsResponses, ListExecsErrors, ThrowOnError, "fields">;
/**
 * Create a new exec
 * Creates a new exec with specified command and arguments.
 */
export declare const createExec: <ThrowOnError extends boolean = false>(options: Options<CreateExecData, ThrowOnError>) => import("./client").RequestResult<CreateExecResponses, CreateExecErrors, ThrowOnError, "fields">;
/**
 * Delete Exec
 * Deletes a exec and execs its process.
 */
export declare const deleteExec: <ThrowOnError extends boolean = false>(options: Options<DeleteExecData, ThrowOnError>) => import("./client").RequestResult<DeleteExecResponses, DeleteExecErrors, ThrowOnError, "fields">;
/**
 * Get exec by ID
 * Retrieves a specific exec by its ID.
 */
export declare const getExec: <ThrowOnError extends boolean = false>(options: Options<GetExecData, ThrowOnError>) => import("./client").RequestResult<GetExecResponses, GetExecErrors, ThrowOnError, "fields">;
/**
 * Update exec
 * Updates exec status (e.g., start a stopped exec).
 */
export declare const updateExec: <ThrowOnError extends boolean = false>(options: Options<UpdateExecData, ThrowOnError>) => import("./client").RequestResult<UpdateExecResponses, UpdateExecErrors, ThrowOnError, "fields">;
/**
 * Get Exec output
 * Retrieves the plain text output from a exec's buffer.
 */
export declare const getExecOutput: <ThrowOnError extends boolean = false>(options: Options<GetExecOutputData, ThrowOnError>) => Promise<import("./core/serverSentEvents.gen").ServerSentEventsResult<GetExecOutputResponses, GetExecOutputErrors>>;
/**
 * exec exec stdin
 * exec exec command (e.g., npm install).
 */
export declare const execExecStdin: <ThrowOnError extends boolean = false>(options: Options<ExecExecStdinData, ThrowOnError>) => import("./client").RequestResult<ExecExecStdinResponses, ExecExecStdinErrors, ThrowOnError, "fields">;
/**
 * Connect to exec via WebSocket
 * Establishes a WebSocket connection for real-time exec interaction.
 *
 * Authentication can be provided via:
 * - Authorization header: `Authorization: Bearer <token>`
 * - Query parameter: `?token=<token>`
 *
 * Permissions:
 * - Admin users: Can send input and receive output
 * - Readonly users: Can only receive output
 *
 */
export declare const connectToExecWebSocket: <ThrowOnError extends boolean = false>(options: Options<ConnectToExecWebSocketData, ThrowOnError>) => import("./client").RequestResult<ConnectToExecWebSocketResponses, ConnectToExecWebSocketErrors, ThrowOnError, "fields">;
/**
 * List all tasks
 * Lists all configured tasks from .codesandbox/tasks.json with their current status.
 */
export declare const listTasks: <ThrowOnError extends boolean = false>(options?: Options<ListTasksData, ThrowOnError>) => import("./client").RequestResult<ListTasksResponses, ListTasksErrors, ThrowOnError, "fields">;
/**
 * Get task by ID
 * Retrieves a specific task by its ID with current status and configuration.
 */
export declare const getTask: <ThrowOnError extends boolean = false>(options: Options<GetTaskData, ThrowOnError>) => import("./client").RequestResult<GetTaskResponses, GetTaskErrors, ThrowOnError, "fields">;
/**
 * Execute task action
 * Executes an action on a specific task (start, stop, or restart).
 */
export declare const executeTaskAction: <ThrowOnError extends boolean = false>(options: Options<ExecuteTaskActionData, ThrowOnError>) => import("./client").RequestResult<ExecuteTaskActionResponses, ExecuteTaskActionErrors, ThrowOnError, "fields">;
/**
 * List setup tasks
 * Lists all setup tasks with their execution status. Setup tasks are auto-executed during server start.
 */
export declare const listSetupTasks: <ThrowOnError extends boolean = false>(options?: Options<ListSetupTasksData, ThrowOnError>) => import("./client").RequestResult<ListSetupTasksResponses, ListSetupTasksErrors, ThrowOnError, "fields">;
/**
 * List open ports
 * Lists all open TCP ports on the system, excluding ignored ports configured in the server.
 */
export declare const listPorts: <ThrowOnError extends boolean = false>(options?: Options<ListPortsData, ThrowOnError>) => import("./client").RequestResult<ListPortsResponses, ListPortsErrors, ThrowOnError, "fields">;
/**
 * List all execs
 * Returns a list of all active execs using SSE.
 */
export declare const streamExecsList: <ThrowOnError extends boolean = false>(options?: Options<StreamExecsListData, ThrowOnError>) => Promise<import("./core/serverSentEvents.gen").ServerSentEventsResult<StreamExecsListResponses, StreamExecsListErrors>>;
/**
 * List open ports using Server-Sent Events (SSE)
 * Lists all open TCP ports on the system AND LISTEN TO THE CHANGES, excluding ignored ports configured in the server.
 */
export declare const streamPortsList: <ThrowOnError extends boolean = false>(options?: Options<StreamPortsListData, ThrowOnError>) => Promise<import("./core/serverSentEvents.gen").ServerSentEventsResult<StreamPortsListResponses, StreamPortsListErrors>>;
