import { Linter } from 'eslint';
import { BaseEnableOption, EnableOption } from './types';
import { ReactVersion, VueVersion } from './internal';

type ResolveOptions<T extends Record<string, any>> = BaseEnableOption<T> & {
    enable: boolean;
};
export declare function resolveOptions<R extends Record<string, any>, T extends EnableOption<R>>(options: T): ResolveOptions<R>;
export declare function resolveVueOptions(options: EnableOption<{
    version?: VueVersion;
}>): ResolveOptions<{
    version: VueVersion;
}>;
export declare function resolveTsOptions(options: EnableOption<{
    parseOptions?: Linter.ParserOptions;
}>): ResolveOptions<{
    parseOptions: Linter.ParserOptions;
}>;
export declare function resolveReactOptions(options: EnableOption<{
    version?: ReactVersion;
    compiler?: boolean;
}>): ResolveOptions<{
    version: ReactVersion;
    compiler: boolean;
}>;
export {};
