import * as _typescript_eslint_utils_ts_eslint from '@typescript-eslint/utils/ts-eslint';
import { RulePreset } from '@eslint-react/kit';

type MessageID$2 = "missingDestructuring" | "invalidSetterNaming";

type MessageID$1 = "useJsxFileExtension" | "useNonJsxFileExtension";

type MessageID = "filenameEmpty" | "filenameInvalid";

declare const _default: {
    configs: {
        recommended: {
            plugins: {
                "react-naming-convention": {
                    readonly meta: {
                        readonly name: string;
                        readonly version: string;
                    };
                    readonly rules: {
                        readonly "component-name": _typescript_eslint_utils_ts_eslint.RuleModule<"invalid", readonly [("CONSTANT_CASE" | "PascalCase") | {
                            allowAllCaps?: boolean;
                            allowLeadingUnderscore?: boolean;
                            allowNamespace?: boolean;
                            excepts?: readonly string[];
                            rule?: "CONSTANT_CASE" | "PascalCase";
                        } | undefined], unknown, _typescript_eslint_utils_ts_eslint.RuleListener>;
                        readonly "context-name": _typescript_eslint_utils_ts_eslint.RuleModule<"invalid", [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener>;
                        readonly filename: _typescript_eslint_utils_ts_eslint.RuleModule<MessageID, readonly [("PascalCase" | "camelCase" | "kebab-case" | "snake_case") | {
                            excepts?: readonly string[];
                            extensions?: readonly string[];
                            rule?: "PascalCase" | "camelCase" | "kebab-case" | "snake_case";
                        } | undefined], unknown, _typescript_eslint_utils_ts_eslint.RuleListener>;
                        readonly "filename-extension": _typescript_eslint_utils_ts_eslint.RuleModule<MessageID$1, readonly [("always" | "as-needed") | {
                            allow?: "always" | "as-needed";
                            extensions?: readonly string[];
                            ignoreFilesWithoutCode?: boolean;
                        } | undefined], unknown, _typescript_eslint_utils_ts_eslint.RuleListener>;
                        readonly "use-state": _typescript_eslint_utils_ts_eslint.RuleModule<MessageID$2, [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener>;
                    };
                };
            };
            name: string;
            rules: RulePreset;
        };
        "recommended-legacy": {
            plugins: string[];
            rules: RulePreset;
        };
    };
    meta: {
        readonly name: string;
        readonly version: string;
    };
    rules: {
        readonly "component-name": _typescript_eslint_utils_ts_eslint.RuleModule<"invalid", readonly [("CONSTANT_CASE" | "PascalCase") | {
            allowAllCaps?: boolean;
            allowLeadingUnderscore?: boolean;
            allowNamespace?: boolean;
            excepts?: readonly string[];
            rule?: "CONSTANT_CASE" | "PascalCase";
        } | undefined], unknown, _typescript_eslint_utils_ts_eslint.RuleListener>;
        readonly "context-name": _typescript_eslint_utils_ts_eslint.RuleModule<"invalid", [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener>;
        readonly filename: _typescript_eslint_utils_ts_eslint.RuleModule<MessageID, readonly [("PascalCase" | "camelCase" | "kebab-case" | "snake_case") | {
            excepts?: readonly string[];
            extensions?: readonly string[];
            rule?: "PascalCase" | "camelCase" | "kebab-case" | "snake_case";
        } | undefined], unknown, _typescript_eslint_utils_ts_eslint.RuleListener>;
        readonly "filename-extension": _typescript_eslint_utils_ts_eslint.RuleModule<MessageID$1, readonly [("always" | "as-needed") | {
            allow?: "always" | "as-needed";
            extensions?: readonly string[];
            ignoreFilesWithoutCode?: boolean;
        } | undefined], unknown, _typescript_eslint_utils_ts_eslint.RuleListener>;
        readonly "use-state": _typescript_eslint_utils_ts_eslint.RuleModule<MessageID$2, [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener>;
    };
};

export { _default as default };
