import type { SandboxPipe } from '../types.ts';
/** The nominal pipe-transport brand (Python's PipeTransportMixin). */
export declare const PIPE_TRANSPORT: unique symbol;
/**
 * A sandbox that holds a command's stdin and stdout open, byte for byte:
 * what a `mountType` serves the workspace through.
 */
export interface PipeTransport {
    readonly [PIPE_TRANSPORT]: true;
    /**
     * Start a command in the sandbox with its stdin and stdout held open,
     * for a `mountType`'s SFTP.
     *
     * @param command the shell command.
     */
    openPipe(command: string): Promise<SandboxPipe>;
}
/** Whether this sandbox carries the pipe transport. */
export declare function isPipeTransport<T extends object>(sandbox: T): sandbox is T & PipeTransport;
//# sourceMappingURL=mixin.d.ts.map