prettier-eslint
Version:
Formats your JavaScript using prettier followed by eslint --fix
33 lines (32 loc) • 1.17 kB
TypeScript
import { ESLint, type Linter } from 'eslint';
import type { LogLevelDesc as LogLevel } from 'loglevel';
import type { Options as PrettierOptions } from 'prettier';
export type { LogLevel };
export type { PrettierOptions };
export interface FormatOptions {
eslintConfig?: ESLintConfig;
eslintPath?: string;
fallbackPrettierOptions?: PrettierOptions;
filePath?: string;
logLevel?: LogLevel;
prettierOptions?: PrettierOptions;
prettierPath?: string;
prettierLast?: boolean;
text?: string;
}
export interface PrettifyInput {
output: string;
messages: Linter.LintMessage[];
}
export type StringLiteral<T> = T | (string & {
_?: never;
});
export interface OptionGetter {
ruleValue: (rules?: Partial<Linter.RulesRecord>) => StringLiteral<Linter.RuleEntry> | undefined;
ruleValueToPrettierOption: (...args: any[]) => unknown;
}
export type ESLintOptions = Omit<ESLint.Options, 'plugins' | 'reportUnusedDisableDirectives'>;
export type ValueOf<T> = T[keyof T];
export type ESLintConfigLanguageOptions = NonNullable<Linter.Config['languageOptions']>;
export interface ESLintConfig extends Linter.Config, ESLintOptions {
}