/** ******************************************************************************
 * Copyright (C) 2018 Red Hat, Inc. and others.
 *
 * This program and the accompanying materials are made available under the
 * terms of the Eclipse Public License v. 2.0 which is available at
 * http://www.eclipse.org/legal/epl-2.0.
 *
 * This Source Code may also be made available under the following Secondary
 * Licenses when the conditions for such availability set forth in the Eclipse
 * Public License v. 2.0 are satisfied: GNU General Public License, version 2
 * with the GNU Classpath Exception which is available at
 * https://www.gnu.org/software/classpath/license.html.
 *
 * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
 ********************************************************************************/
import { CancellationToken, Uri as URI } from '@opensumi/ide-core-common';
import { ExtensionDocumentDataManager } from '../../../../common/vscode';
import { CodeLens, ICodeLensListDto } from '../../../../common/vscode/model.api';
import { CommandsConverter } from '../ext.host.command';
import type vscode from 'vscode';
/** Adapts the calls from main to extension thread for providing/resolving the code lenses. */
export declare class CodeLensAdapter {
    private readonly provider;
    private readonly documents;
    private readonly commandConverter;
    private static readonly BAD_CMD;
    private readonly cache;
    private readonly disposableStore;
    constructor(provider: vscode.CodeLensProvider, documents: ExtensionDocumentDataManager, commandConverter: CommandsConverter);
    provideCodeLenses(resource: URI, token: CancellationToken): Promise<ICodeLensListDto | undefined>;
    resolveCodeLens(symbol: CodeLens, token: CancellationToken): Promise<CodeLens | undefined>;
    releaseCodeLens(cacheId: number): void;
}
//# sourceMappingURL=lens.d.ts.map