import { ServiceContext } from '@volar/language-service';
import * as vue from '@vue/language-core';
import type * as vscode from 'vscode-languageserver-protocol';
import { AttrNameCasing, TagNameCasing } from '../types';
import type { Provide } from 'volar-service-typescript';
export declare function convertTagName(ts: typeof import('typescript/lib/tsserverlibrary'), context: ServiceContext<Provide>, uri: string, casing: TagNameCasing, vueCompilerOptions: vue.VueCompilerOptions): Promise<vscode.TextEdit[] | undefined>;
export declare function convertAttrName(ts: typeof import('typescript/lib/tsserverlibrary'), context: ServiceContext, uri: string, casing: AttrNameCasing, vueCompilerOptions: vue.VueCompilerOptions): Promise<vscode.TextEdit[] | undefined>;
export declare function getNameCasing(ts: typeof import('typescript/lib/tsserverlibrary'), context: ServiceContext, uri: string, vueCompilerOptions: vue.VueCompilerOptions): Promise<{
    tag: TagNameCasing;
    attr: AttrNameCasing;
}>;
export declare function detect(ts: typeof import('typescript/lib/tsserverlibrary'), context: ServiceContext, uri: string, vueCompilerOptions: vue.VueCompilerOptions): {
    tag: TagNameCasing[];
    attr: AttrNameCasing[];
};
