import type { ICoincidentShellWorker, IDriveFSOptions } from '@jupyterlite/cockle';
import { CoincidentShellWorker } from '@jupyterlite/cockle';
import type { TDriveMethod, TDriveRequest, TDriveResponse } from '@jupyterlite/services';
import { ContentsAPI } from '@jupyterlite/services';
/**
 * An Emscripten-compatible synchronous Contents API using shared array buffers.
 */
export declare class SharedBufferContentsAPI extends ContentsAPI {
    request<T extends TDriveMethod>(data: TDriveRequest<T>): TDriveResponse<T>;
}
/**
 * Coincident worker as seen from TerminalShell in main UI thread.
 */
export interface ICoincidentTerminalShellWorker extends ICoincidentShellWorker {
    processDriveRequest<T extends TDriveMethod>(data: TDriveRequest<T>): Promise<TDriveResponse<T>>;
}
declare class CoincidentTerminalShellWorker extends CoincidentShellWorker {
    /**
     * Initialize the DriveFS to mount an external file system, if available.
     */
    protected initDriveFS(options: IDriveFSOptions): void;
    initProxy(proxy: ICoincidentTerminalShellWorker): void;
    processDriveRequest?: <T extends TDriveMethod>(data: TDriveRequest<T>) => Promise<TDriveResponse<T>>;
}
export declare const proxy: ICoincidentTerminalShellWorker;
export declare const worker: CoincidentTerminalShellWorker;
export {};
