import type * as graphqlTypes from 'graphql'; import * as api from '@opentelemetry/api'; import { GraphQLObjectType } from 'graphql/type/definition'; import { GraphQLInstrumentationConfig, GraphQLInstrumentationParsedConfig, OtelPatched, Maybe } from './types'; export declare function addSpanSource(span: api.Span, loc: graphqlTypes.Location, allowValues?: boolean, start?: number, end?: number): void; export declare function endSpan(span: api.Span, error?: Error): void; export declare function getOperation(document: graphqlTypes.DocumentNode, operationName?: Maybe): graphqlTypes.DefinitionNode | undefined; export declare function getSourceFromLocation(loc: graphqlTypes.Location, allowValues?: boolean, start?: number, end?: number): string; export declare function wrapFields(type: Maybe, tracer: api.Tracer, getConfig: () => GraphQLInstrumentationParsedConfig): void; export declare function wrapFieldResolver(tracer: api.Tracer, getConfig: () => Required, fieldResolver: Maybe & OtelPatched>): graphqlTypes.GraphQLFieldResolver & OtelPatched;