import { CommonEntityContext } from 'dt-sql-parser'; import { EntityContext } from 'dt-sql-parser/dist/parser/common/entityCollector'; import { BaseSQLWorker } from './baseSQLWorker'; import { CancellationToken, editor, languages, Position, Uri } from './fillers/monaco-editor-core'; import type { LanguageServiceDefaults } from './monaco.contribution'; export interface ColumnInfo { /** 字段名 */ column: string; /** 字段类型 */ type: string | undefined; /** 注释 */ comment?: string; /** 别名 */ alias?: string; } export interface WorkerAccessor { (...uris: Uri[]): Promise; } export declare class DiagnosticsAdapter { private _languageId; private _worker; private readonly _defaults; private _disposables; private _listener; constructor(_languageId: string, _worker: WorkerAccessor, _defaults: LanguageServiceDefaults); dispose(): void; private _doValidate; } export declare class CompletionAdapter implements languages.CompletionItemProvider { private readonly _worker; private readonly _defaults; constructor(_worker: WorkerAccessor, _defaults: LanguageServiceDefaults); get triggerCharacters(): string[]; provideCompletionItems(model: editor.IReadOnlyModel, position: Position, context: languages.CompletionContext, _token: CancellationToken): Promise; } /** * The adapter is for the definition of the symbol at the given position and document. **/ export declare class DefinitionAdapter implements languages.DefinitionProvider { private readonly _worker; private readonly _defaults; constructor(_worker: WorkerAccessor, _defaults: LanguageServiceDefaults); /** * Provide the definition of the symbol at the given position and document. **/ provideDefinition(model: editor.IReadOnlyModel, position: Position, _token: CancellationToken): languages.ProviderResult; } /** * The adapter is for the references of the symbol at the given position and document. **/ export declare class ReferenceAdapter implements languages.ReferenceProvider { private readonly _worker; private readonly _defaults; constructor(_worker: WorkerAccessor, _defaults: LanguageServiceDefaults); /** * Provide a set of project-wide references for the given position and document. **/ provideReferences(model: editor.IReadOnlyModel, position: Position, _context: languages.ReferenceContext, _token: CancellationToken): languages.ProviderResult; } /** * The adapter is for the hover provider interface defines the contract between extensions and * the [hover](https://code.visualstudio.com/docs/editor/intellisense)-feature. **/ export declare class HoverAdapter implements languages.HoverProvider { private readonly _worker; private readonly _defaults; constructor(_worker: WorkerAccessor, _defaults: LanguageServiceDefaults); provideHover(model: editor.IReadOnlyModel, position: Position, _token: CancellationToken): languages.ProviderResult; } /** * According to the table name or table entity field, get the corresponding create table information */ export declare function findTableCreateEntity(tableEntity: EntityContext | string, allEntities: EntityContext[]): CommonEntityContext | null; /** * Transform table create entity to columns info */ export declare function toColumnsInfo(tableEntity: CommonEntityContext): ColumnInfo[] | null;