import { GraphQLObjectType, GraphQLScalarType, GraphQLSchema, OperationTypeNode, GraphQLField, GraphQLOutputType } from 'graphql'; import { Maybe } from 'graphql/jsutils/Maybe'; import { LaboratoryOperation } from './operations'; export declare function healQuery(query: string): string; export declare function isPathInQuery(query: string, path: string, operationName?: string | null): boolean; export declare function addPathToQuery(query: string, path: string, operationName?: string | null): string; export declare function deletePathFromQuery(query: string, path: string, operationName?: string | null): string; export declare function getOperationHash(operation: Pick): Promise; export declare function getOperationName(query: string): string | null | undefined; export declare function getOperationType(query: string): OperationTypeNode | null | undefined; export declare function isArgInQuery(query: string, path: string, argName: string, operationName?: string | null): boolean; export declare function extractOfType(type: GraphQLOutputType): GraphQLObjectType | GraphQLScalarType | null; export declare function findFieldInSchema(path: string, schema: GraphQLSchema): GraphQLField | null | undefined; export declare function addArgToField(query: string, path: string, argName: string, schema: GraphQLSchema, operationName?: string | null): string; export declare function removeArgFromField(query: string, path: string, argName: string, operationName?: string | null): string; export declare function extractPaths(query: string): string[][]; export declare function getOpenPaths(query: string): string[]; export type SchemaPathSearchEntry = { path: string; segmentsLower: string[]; pathLower: string; pathWithoutOperationLower: string; }; export type SchemaSearchResult = { matchedPaths: string[]; visiblePaths: Set; forcedOpenPaths: Set; hasMore: boolean; nodesVisited: number; }; export declare function schemaToPaths(schema: GraphQLSchema, maxDepth?: number): string[][]; export declare function pathsToStrings(paths: readonly string[][]): string[]; export declare function createSchemaPathSearchIndex(paths: readonly string[]): SchemaPathSearchEntry[]; export declare function searchSchemaPathIndex(index: readonly SchemaPathSearchEntry[], search: string, limit?: number): string[]; export declare function buildVisiblePathSet(paths: readonly string[]): Set; export declare function buildForcedOpenPathSet(paths: readonly string[]): Set; export declare function searchSchemaPaths(schema: GraphQLSchema, search: string, options?: { maxDepth?: number; maxMatches?: number; maxNodes?: number; operationTypes?: OperationTypeNode[]; }): SchemaSearchResult; export declare function handleTemplate(query: string, env: Record): string; export declare function getFieldByPath(path: string, schema: GraphQLSchema): Maybe>;