import { Location, ValueNode, StringValueNode, ASTNode, GraphQLOutputType, GraphQLNamedType } from 'graphql';
import { SourceLocation, Comment } from 'estree';
import { GraphQLESTreeNode } from './estree-ast';
export default function keyValMap<T, V>(list: ReadonlyArray<T>, keyFn: (item: T) => string, valFn: (item: T) => V): Record<string, V>;
export declare function valueFromNode(valueNode: GraphQLESTreeNode<ValueNode>, variables?: Record<string, any>): any;
export declare function getBaseType(type: GraphQLOutputType): GraphQLNamedType;
export declare function convertRange(gqlLocation: Location): [number, number];
export declare function extractCommentsFromAst(loc: Location): Comment[];
export declare function convertLocation(gqlLocation: Location): SourceLocation;
export declare function isNodeWithDescription<T extends ASTNode>(obj: T): obj is T & {
    readonly description?: StringValueNode;
};
export declare function convertDescription<T extends ASTNode>(node: T): Comment[];
