import type { IMarkdownParser, IRenderMime } from '@jupyterlab/rendermime';
import type { IRemoteServicesManager } from '../../stateful/runtimes';
import type { IRuntimeSnapshot, IRuntimeDesc } from '../../models';
/**
 * {@link RuntimeLauncherDialog} properties.
 */
export interface IRuntimeLauncherDialogProps {
    /**
     * Dialog title
     */
    dialogTitle?: string;
    /**
     * Remote Jupyter service manager
     */
    manager: IRemoteServicesManager;
    /**
     * Form submission callback
     */
    onSubmit: (spec?: IRuntimeDesc) => void;
    /**
     * Whether to start the kernel or not.
     *
     * If `with-example`, a kernel will be started an
     * an example document will be opened (if available).
     * If `defer`, a kernel will not be started but the
     * kernel params will have a `creditsLimit` defined
     * for spinning a runtime.
     *
     * Default: `true`
     */
    startRuntime?: boolean | 'with-example' | 'defer';
    /**
     * Markdown parser
     */
    markdownParser?: IMarkdownParser;
    /**
     * If provided the kernel will be started and will
     * restore the provided snapshot in the kernel.
     */
    kernelSnapshot?: IRuntimeSnapshot;
    /**
     * HTML sanitizer
     */
    sanitizer?: IRenderMime.ISanitizer;
    /**
     * Upgrade subscription URL
     */
    upgradeSubscription?: string;
}
/**
 * Start Runtime Launcher Dialog.
 */
export declare function RuntimeLauncherDialog(props: IRuntimeLauncherDialogProps): JSX.Element;
