import { SchemaDirectiveVisitor } from 'graphql-tools'; import { GraphQLDirective } from 'graphql'; declare const _default: (authenticate: (ctx: any) => any) => { new (config: { name: string; args: { [name: string]: any; }; visitedType: import("graphql-tools/dist/schemaVisitor").VisitableSchemaType; schema: import("graphql/type/schema").GraphQLSchema; context: { [key: string]: any; }; }): { visitFieldDefinition(field: any): void; name: string; args: { [name: string]: any; }; visitedType: import("graphql-tools/dist/schemaVisitor").VisitableSchemaType; context: { [key: string]: any; }; schema: import("graphql/type/schema").GraphQLSchema; visitSchema(schema: import("graphql/type/schema").GraphQLSchema): void; visitScalar(scalar: import("graphql/type/definition").GraphQLScalarType): void | import("graphql/type/definition").GraphQLScalarType | null; visitObject(object: import("graphql/type/definition").GraphQLObjectType): void | import("graphql/type/definition").GraphQLObjectType | null; visitArgumentDefinition(argument: import("graphql/type/definition").GraphQLArgument, details: { field: import("graphql/type/definition").GraphQLField; objectType: import("graphql/type/definition").GraphQLObjectType | import("graphql/type/definition").GraphQLInterfaceType; }): void | import("graphql/type/definition").GraphQLArgument | null; visitInterface(iface: import("graphql/type/definition").GraphQLInterfaceType): void | import("graphql/type/definition").GraphQLInterfaceType | null; visitUnion(union: import("graphql/type/definition").GraphQLUnionType): void | import("graphql/type/definition").GraphQLUnionType | null; visitEnum(type: import("graphql/type/definition").GraphQLEnumType): void | import("graphql/type/definition").GraphQLEnumType | null; visitEnumValue(value: import("graphql/type/definition").GraphQLEnumValue, details: { enumType: import("graphql/type/definition").GraphQLEnumType; }): void | import("graphql/type/definition").GraphQLEnumValue | null; visitInputObject(object: import("graphql/type/definition").GraphQLInputObjectType): void | import("graphql/type/definition").GraphQLInputObjectType | null; visitInputFieldDefinition(field: import("graphql/type/definition").GraphQLInputField, details: { objectType: import("graphql/type/definition").GraphQLInputObjectType; }): void | import("graphql/type/definition").GraphQLInputField | null; }; getDirectiveDeclaration(directiveName?: string): GraphQLDirective; visitSchemaDirectives(schema: import("graphql/type/schema").GraphQLSchema, directiveVisitors: { [directiveName: string]: typeof SchemaDirectiveVisitor; }, context?: { [key: string]: any; } | undefined): { [directiveName: string]: SchemaDirectiveVisitor[]; }; getDeclaredDirectives(schema: import("graphql/type/schema").GraphQLSchema, directiveVisitors: { [directiveName: string]: typeof SchemaDirectiveVisitor; }): { [directiveName: string]: GraphQLDirective; }; implementsVisitorMethod(methodName: string): boolean; }; export default _default;