import { type GraphQLSchema } from 'graphql'; import ts from '../tsmodule'; import { type ScriptSourceHelper, type StrictTagCondition } from '../ts-ast-util'; import type { SchemaBuildErrorInfo } from '../schema-manager/schema-manager'; import { type FragmentRegistry } from '../gql-ast-util'; import type { GetCompletionAtPosition, GetSemanticDiagnostics, GetQuickInfoAtPosition, GetDefinitionAndBoundSpan, GetDefinitionAtPosition } from './types'; export interface GraphQLLanguageServiceAdapterCreateOptions { schema?: GraphQLSchema | null; schemaErrors?: SchemaBuildErrorInfo[] | null; logger?: (msg: string) => void; tag: StrictTagCondition; removeDuplicatedFragments: boolean; fragmentRegistry: FragmentRegistry; } export declare class GraphQLLanguageServiceAdapter { private readonly _helper; private _schemaErrors?; private _schema?; private readonly _tagCondition; private readonly _removeDuplicatedFragments; private readonly _analysisContext; private readonly _fragmentRegisry; private readonly _parsedDocumentCache; constructor(_helper: ScriptSourceHelper, opt: GraphQLLanguageServiceAdapterCreateOptions); getCompletionAtPosition(delegate: GetCompletionAtPosition, ...args: Parameters): ts.CompletionInfo | undefined; getSemanticDiagnostics(delegate: GetSemanticDiagnostics, ...args: Parameters): ts.Diagnostic[]; getQuickInfoAtPosition(delegate: GetQuickInfoAtPosition, ...args: Parameters): ts.QuickInfo | undefined; getDefinitionAndBoundSpan(delegate: GetDefinitionAndBoundSpan, ...args: Parameters): ts.DefinitionInfoAndBoundSpan | undefined; getDefinitionAtPosition(delegate: GetDefinitionAtPosition, ...args: Parameters): readonly ts.DefinitionInfo[] | undefined; updateSchema(errors: SchemaBuildErrorInfo[] | null, schema: GraphQLSchema | null): void; private _createAnalysisContext; private _findAscendantTemplateNode; private _findTemplateNodes; private _parse; private _resolveTemplateInfo; private _logger; }