import { FromSchema } from 'json-schema-to-ts';
import { GraphQLESLintRule } from '../../types.js';
import 'eslint';
import 'estree';
import 'graphql';
import 'graphql-config';
import '../../estree-converter/types.js';
import '../../siblings.js';
import '@graphql-tools/utils';

declare const schema: {
    readonly type: "array";
    readonly maxItems: 1;
    readonly items: {
        readonly type: "object";
        readonly additionalProperties: false;
        readonly properties: {
            readonly acceptedIdNames: {
                readonly default: readonly ["id"];
                readonly type: "array";
                readonly uniqueItems: true;
                readonly minItems: 1;
                readonly items: {
                    readonly type: "string";
                };
            };
            readonly acceptedIdTypes: {
                readonly default: readonly ["ID"];
                readonly type: "array";
                readonly uniqueItems: true;
                readonly minItems: 1;
                readonly items: {
                    readonly type: "string";
                };
            };
            readonly exceptions: {
                readonly type: "object";
                readonly additionalProperties: false;
                readonly properties: {
                    readonly types: {
                        readonly description: "This is used to exclude types with names that match one of the specified values.";
                        readonly type: "array";
                        readonly uniqueItems: true;
                        readonly minItems: 1;
                        readonly items: {
                            readonly type: "string";
                        };
                    };
                    readonly suffixes: {
                        readonly description: "This is used to exclude types with names with suffixes that match one of the specified values.";
                        readonly type: "array";
                        readonly uniqueItems: true;
                        readonly minItems: 1;
                        readonly items: {
                            readonly type: "string";
                        };
                    };
                };
            };
        };
    };
};
type RuleOptions = FromSchema<typeof schema, {
    keepDefaultedPropertiesOptional: true;
}>;
declare const rule: GraphQLESLintRule<RuleOptions>;

export { type RuleOptions, rule };
