import { ILSPCompletionThemeManager } from '@jupyter-lsp/completion-theme';
import { ContextCompleterProvider, KernelCompleterProvider, CompletionHandler, ICompletionContext } from '@jupyterlab/completer';
import { ILSPDocumentConnectionManager } from '@jupyterlab/lsp';
import { LabIcon } from '@jupyterlab/ui-components';
import { CodeCompletion as LSPCompletionSettings } from '../../_completion';
import { FeatureSettings } from '../../feature';
interface IOptions {
    settings: FeatureSettings<LSPCompletionSettings>;
    iconsThemeManager: ILSPCompletionThemeManager;
    connectionManager: ILSPDocumentConnectionManager;
}
export declare class EnhancedContextCompleterProvider extends ContextCompleterProvider {
    protected options: IOptions;
    readonly label = "context";
    constructor(options: IOptions);
    fetch(request: CompletionHandler.IRequest, context: ICompletionContext): Promise<CompletionHandler.ICompletionItemsReply>;
    protected iconFor(type: string): LabIcon | undefined;
}
export declare class EnhancedKernelCompleterProvider extends KernelCompleterProvider {
    protected options: IOptions;
    readonly label = "kernel";
    constructor(options: IOptions);
    fetch(request: CompletionHandler.IRequest, context: ICompletionContext): Promise<CompletionHandler.ICompletionItemsReply>;
    isApplicable(context: ICompletionContext): Promise<boolean>;
    protected iconFor(type: string): LabIcon | undefined;
}
export {};
