import { ISignal } from '@lumino/signaling';
import { KernelMessage } from '@jupyterlab/services';
import { IKernel } from '@jupyterlite/kernel';
export declare class WebWorkerKernel implements IKernel {
    /**
     * Instantiate a new WebWorkerKernel
     *
     * @param options The instantiation options for a new WebWorkerKernel
     */
    constructor(options: WebWorkerKernel.IOptions);
    handleMessage(msg: KernelMessage.IMessage): Promise<void>;
    private _sendMessageToWorker;
    /**
     * Get the last parent header
     */
    get parentHeader(): KernelMessage.IHeader<KernelMessage.MessageType> | undefined;
    /**
     * Get the last parent message (mimick ipykernel's get_parent)
     */
    get parent(): KernelMessage.IMessage | undefined;
    /**
     * Get the kernel location
     */
    get location(): string;
    /**
     * Process a message coming from the pyodide web worker.
     *
     * @param msg The worker message to process.
     */
    private _processWorkerMessage;
    /**
     * A promise that is fulfilled when the kernel is ready.
     */
    get ready(): Promise<void>;
    /**
     * Return whether the kernel is disposed.
     */
    get isDisposed(): boolean;
    /**
     * A signal emitted when the kernel is disposed.
     */
    get disposed(): ISignal<this, void>;
    /**
     * Dispose the kernel.
     */
    dispose(): void;
    /**
     * Get the kernel id
     */
    get id(): string;
    /**
     * Get the name of the kernel
     */
    get name(): string;
    private initFileSystem;
    private _id;
    private _name;
    private _location;
    private _remote;
    private _isDisposed;
    private _disposed;
    private _worker;
    private _sendMessage;
    private _executeDelegate;
    private _parentHeader;
    private _parent;
}
/**
 * A namespace for WebWorkerKernel statics.
 */
export declare namespace WebWorkerKernel {
    /**
     * The instantiation options for a Pyodide kernel
     */
    interface IOptions extends IKernel.IOptions {
        mountDrive: boolean;
    }
}
