import * as vscode from 'vscode-languageserver-protocol';
import type { LanguageServicePluginContext } from '../types';
export interface PluginCodeActionData {
    uri: string;
    version: number;
    type: 'plugin';
    original: Pick<vscode.CodeAction, 'data' | 'edit'>;
    pluginId: string;
}
export interface RuleCodeActionData {
    uri: string;
    version: number;
    documentUri: string;
    type: 'rule';
    isFormat: boolean;
    ruleId: string;
    ruleFixIndex: number;
    index: number;
}
export declare function register(context: LanguageServicePluginContext): (uri: string, range: vscode.Range, codeActionContext: vscode.CodeActionContext, token?: vscode.CancellationToken) => Promise<vscode.CodeAction[] | undefined>;
