eslint-plugin-mocha
Version:
Eslint rules for mocha.
59 lines • 3.23 kB
TypeScript
import type { ConfigObject, LegacyConfigObject } from '@eslint/core';
import type { ESLint, Linter } from 'eslint';
declare const pluginMeta: Readonly<import("./package-metadata-reader.ts").PackageMetadata>;
declare const rules: {
'consistent-structure': Readonly<import("eslint").Rule.RuleModule>;
'handle-done-callback': Readonly<import("eslint").Rule.RuleModule>;
'limit-retries': Readonly<import("eslint").Rule.RuleModule>;
'limit-slow': Readonly<import("eslint").Rule.RuleModule>;
'limit-timeout': Readonly<import("eslint").Rule.RuleModule>;
'max-top-level-suites': Readonly<import("eslint").Rule.RuleModule>;
'no-async-and-done': Readonly<import("eslint").Rule.RuleModule>;
'no-async-in-sync-tests': Readonly<import("eslint").Rule.RuleModule>;
'no-async-suite': Readonly<import("eslint").Rule.RuleModule>;
'no-code-after-done': Readonly<import("eslint").Rule.RuleModule>;
'no-conditional-tests': Readonly<import("eslint").Rule.RuleModule>;
'no-done-twice': Readonly<import("eslint").Rule.RuleModule>;
'no-exclusive-tests': Readonly<import("eslint").Rule.RuleModule>;
'no-exports': Readonly<import("eslint").Rule.RuleModule>;
'no-top-level-tests': Readonly<import("eslint").Rule.RuleModule>;
'no-hooks': Readonly<import("eslint").Rule.RuleModule>;
'no-hooks-for-single-child': Readonly<import("eslint").Rule.RuleModule>;
'no-identical-title': Readonly<import("eslint").Rule.RuleModule>;
'no-mocha-arrows': Readonly<import("eslint").Rule.RuleModule>;
'no-nested-suites': Readonly<import("eslint").Rule.RuleModule>;
'no-nested-tests': Readonly<import("eslint").Rule.RuleModule>;
'no-pending-tests': import("eslint").Rule.RuleModule;
'no-return-and-done': Readonly<import("eslint").Rule.RuleModule>;
'no-return-from-async': Readonly<import("eslint").Rule.RuleModule>;
'no-setup-in-suite': Readonly<import("eslint").Rule.RuleModule>;
'no-synchronous-tests': Readonly<import("eslint").Rule.RuleModule>;
'no-root-hooks': Readonly<import("eslint").Rule.RuleModule>;
'prefer-arrow-callback': Readonly<import("eslint").Rule.RuleModule>;
'consistent-spacing-between-blocks': Readonly<import("eslint").Rule.RuleModule>;
'consistent-interface': Readonly<import("eslint").Rule.RuleModule>;
'valid-suite-title': Readonly<import("eslint").Rule.RuleModule>;
'valid-test-title': Readonly<import("eslint").Rule.RuleModule>;
'no-empty-title': Readonly<import("eslint").Rule.RuleModule>;
};
type ImmutablePluginShape<T> = {
readonly [Key in keyof T]: T[Key];
};
export type MochaPlugin = ImmutablePluginShape<ESLint.Plugin & {
readonly meta: typeof pluginMeta;
readonly rules: typeof rules;
readonly configs: PublishedMochaConfigs;
}>;
type PublishedMochaConfigs = Record<string, PublishedMochaConfig> & {
readonly all: MochaConfig;
readonly recommended: MochaConfig;
};
type PublishedMochaConfig = Readonly<ConfigObject | ConfigObject[] | LegacyConfigObject>;
type MochaConfig = ImmutablePluginShape<Linter.Config & {
readonly plugins: {
readonly mocha: ESLint.Plugin;
};
}>;
declare const plugin: MochaPlugin;
export default plugin;
//# sourceMappingURL=plugin.d.ts.map