UNPKG

@graphql-eslint/eslint-plugin

Version:
28 lines (27 loc) 1.29 kB
import { RuleTester } from 'eslint'; import { ASTKindToNode } from 'graphql'; import { GraphQLESTreeNode } from './estree-converter/index.cjs'; import { GraphQLESLintRule, ParserOptions } from './types.cjs'; export type GraphQLESLintRuleListener<WithTypeInfo extends boolean = false> = { [K in keyof ASTKindToNode]?: (node: GraphQLESTreeNode<ASTKindToNode[K], WithTypeInfo>) => void; } & Record<string, any>; export type GraphQLValidTestCase<Options> = Omit<RuleTester.ValidTestCase, 'options' | 'parserOptions'> & { options?: Options; parserOptions?: Omit<ParserOptions, 'filePath'>; }; export type GraphQLInvalidTestCase<T> = GraphQLValidTestCase<T> & { errors: number | (RuleTester.TestCaseError | string)[]; output?: string | null; }; export declare class GraphQLRuleTester extends RuleTester { config: { parser: string; parserOptions: Omit<ParserOptions, 'filePath'>; }; constructor(parserOptions?: Omit<ParserOptions, 'filePath'>); fromMockFile(path: string): string; runGraphQLTests<Options, WithTypeInfo extends boolean = false>(ruleId: string, rule: GraphQLESLintRule<Options, WithTypeInfo>, tests: { valid: (string | GraphQLValidTestCase<Options>)[]; invalid: GraphQLInvalidTestCase<Options>[]; }): void; }