import { __export, __reExport } from "../../../_virtual/rolldown_runtime.js";
import { AbstractAstReflection, isAstNode, isAstNodeDescription, isCompositeCstNode, isLeafCstNode, isLinkingError, isMultiReference, isReference, isRootCstNode } from "./syntax-tree.js";
import { DONE_RESULT, EMPTY_STREAM, Reduction, StreamImpl, TreeStreamImpl, stream } from "./utils/stream.js";
import { ast_utils_exports } from "./utils/ast-utils.js";
import { ast_exports } from "./languages/generated/ast.js";
import { cst_utils_exports } from "./utils/cst-utils.js";
import { ErrorWithLocation, assertCondition, assertUnreachable } from "./utils/errors.js";
import { regexp_utils_exports } from "./utils/regexp-utils.js";
import { grammar_utils_exports } from "./utils/grammar-utils.js";
import { createGrammarConfig } from "./languages/grammar-config.js";
import { AbstractCstNode, CompositeCstNodeImpl, CstNodeBuilder, LeafCstNodeImpl, RootCstNodeImpl } from "./parser/cst-node-builder.js";
import { AbstractLangiumParser, AbstractParserErrorMessageProvider, DatatypeSymbol, LangiumCompletionParser, LangiumParser, LangiumParserErrorMessageProvider } from "./parser/langium-parser.js";
import { createParser } from "./parser/parser-builder-base.js";
import { createCompletionParser } from "./parser/completion-parser-builder.js";
import { createLangiumParser, prepareLangiumParser } from "./parser/langium-parser-builder.js";
import { DefaultTokenBuilder } from "./parser/token-builder.js";
import { DefaultValueConverter, ValueConverter } from "./parser/value-converter.js";
import { cancellation_exports } from "./utils/cancellation.js";
import { Deferred, OperationCancelled, delayNextTick, interruptAndCheck, isOperationCancelled, setInterruptionPeriod, startCancelableOperation } from "./utils/promise-utils.js";
import { TextDocument } from "../../vscode-languageserver-textdocument/lib/esm/main.js";
import { URI } from "../../vscode-uri/lib/esm/index.js";
import { UriTrie, UriUtils } from "./utils/uri-utils.js";
import { DefaultLangiumDocumentFactory, DefaultLangiumDocuments, DocumentState } from "./workspace/documents.js";
import { DefaultLinker, RefResolving } from "./references/linker.js";
import { DefaultNameProvider, isNamed } from "./references/name-provider.js";
import { DefaultReferences } from "./references/references.js";
import { BiMap, MultiMap } from "./utils/collections.js";
import { DefaultScopeComputation } from "./references/scope-computation.js";
import { EMPTY_SCOPE, MapScope, MultiMapScope, StreamScope } from "./references/scope.js";
import { ContextCache, DisposableCache, DocumentCache, SimpleCache, WorkspaceCache } from "./utils/caching.js";
import { DefaultScopeProvider } from "./references/scope-provider.js";
import { DefaultJsonSerializer, isAstNodeWithComment } from "./serializer/json-serializer.js";
import { DefaultServiceRegistry } from "./service-registry.js";
import { ValidationCategory, ValidationRegistry, diagnosticData } from "./validation/validation-registry.js";
import { DefaultDocumentValidator, DocumentValidator, VALIDATE_EACH_NODE, getDiagnosticRange, toDiagnosticData, toDiagnosticSeverity } from "./validation/document-validator.js";
import { DefaultAstNodeDescriptionProvider, DefaultReferenceDescriptionProvider } from "./workspace/ast-descriptions.js";
import { DefaultAstNodeLocator } from "./workspace/ast-node-locator.js";
import { DefaultConfigurationProvider } from "./workspace/configuration.js";
import { Disposable } from "./utils/disposable.js";
import { DefaultDocumentBuilder } from "./workspace/document-builder.js";
import { DefaultIndexManager } from "./workspace/index-manager.js";
import { DefaultWorkspaceManager } from "./workspace/workspace-manager.js";
import { DEFAULT_TOKENIZE_OPTIONS, DefaultLexer, DefaultLexerErrorMessageProvider, isIMultiModeLexerDefinition, isTokenTypeArray, isTokenTypeDictionary } from "./parser/lexer.js";
import { isJSDoc, parseJSDoc } from "./documentation/jsdoc.js";
import { JSDocDocumentationProvider } from "./documentation/documentation-provider.js";
import { DefaultCommentProvider } from "./documentation/comment-provider.js";
import { AbstractThreadedAsyncParser, DefaultAsyncParser, ParserWorker } from "./parser/async-parser.js";
import { DefaultWorkspaceLock } from "./workspace/workspace-lock.js";
import { DefaultHydrator } from "./serializer/hydrator.js";
import { createDefaultCoreModule, createDefaultSharedCoreModule } from "./default-module.js";
import { Module, eagerLoad, inject } from "./dependency-injection.js";
import { IndentationAwareLexer, IndentationAwareTokenBuilder, LexingMode, indentationBuilderDefaultOptions } from "./parser/indentation-aware.js";
import { EmptyFileSystem, EmptyFileSystemProvider } from "./workspace/file-system-provider.js";
import { loadGrammarFromJson } from "./utils/grammar-loader.js";
import { utils_exports } from "./utils/index.js";
import { DefaultLangiumProfiler, ProfilingTask } from "./workspace/profiler.js";
__reExport(/* @__PURE__ */ __export({
	AbstractAstReflection: () => AbstractAstReflection,
	AbstractCstNode: () => AbstractCstNode,
	AbstractLangiumParser: () => AbstractLangiumParser,
	AbstractParserErrorMessageProvider: () => AbstractParserErrorMessageProvider,
	AbstractThreadedAsyncParser: () => AbstractThreadedAsyncParser,
	AstUtils: () => ast_utils_exports,
	BiMap: () => BiMap,
	Cancellation: () => cancellation_exports,
	CompositeCstNodeImpl: () => CompositeCstNodeImpl,
	ContextCache: () => ContextCache,
	CstNodeBuilder: () => CstNodeBuilder,
	CstUtils: () => cst_utils_exports,
	DEFAULT_TOKENIZE_OPTIONS: () => DEFAULT_TOKENIZE_OPTIONS,
	DONE_RESULT: () => DONE_RESULT,
	DatatypeSymbol: () => DatatypeSymbol,
	DefaultAstNodeDescriptionProvider: () => DefaultAstNodeDescriptionProvider,
	DefaultAstNodeLocator: () => DefaultAstNodeLocator,
	DefaultAsyncParser: () => DefaultAsyncParser,
	DefaultCommentProvider: () => DefaultCommentProvider,
	DefaultConfigurationProvider: () => DefaultConfigurationProvider,
	DefaultDocumentBuilder: () => DefaultDocumentBuilder,
	DefaultDocumentValidator: () => DefaultDocumentValidator,
	DefaultHydrator: () => DefaultHydrator,
	DefaultIndexManager: () => DefaultIndexManager,
	DefaultJsonSerializer: () => DefaultJsonSerializer,
	DefaultLangiumDocumentFactory: () => DefaultLangiumDocumentFactory,
	DefaultLangiumDocuments: () => DefaultLangiumDocuments,
	DefaultLangiumProfiler: () => DefaultLangiumProfiler,
	DefaultLexer: () => DefaultLexer,
	DefaultLexerErrorMessageProvider: () => DefaultLexerErrorMessageProvider,
	DefaultLinker: () => DefaultLinker,
	DefaultNameProvider: () => DefaultNameProvider,
	DefaultReferenceDescriptionProvider: () => DefaultReferenceDescriptionProvider,
	DefaultReferences: () => DefaultReferences,
	DefaultScopeComputation: () => DefaultScopeComputation,
	DefaultScopeProvider: () => DefaultScopeProvider,
	DefaultServiceRegistry: () => DefaultServiceRegistry,
	DefaultTokenBuilder: () => DefaultTokenBuilder,
	DefaultValueConverter: () => DefaultValueConverter,
	DefaultWorkspaceLock: () => DefaultWorkspaceLock,
	DefaultWorkspaceManager: () => DefaultWorkspaceManager,
	Deferred: () => Deferred,
	Disposable: () => Disposable,
	DisposableCache: () => DisposableCache,
	DocumentCache: () => DocumentCache,
	DocumentState: () => DocumentState,
	DocumentValidator: () => DocumentValidator,
	EMPTY_SCOPE: () => EMPTY_SCOPE,
	EMPTY_STREAM: () => EMPTY_STREAM,
	EmptyFileSystem: () => EmptyFileSystem,
	EmptyFileSystemProvider: () => EmptyFileSystemProvider,
	ErrorWithLocation: () => ErrorWithLocation,
	GrammarAST: () => ast_exports,
	GrammarUtils: () => grammar_utils_exports,
	IndentationAwareLexer: () => IndentationAwareLexer,
	IndentationAwareTokenBuilder: () => IndentationAwareTokenBuilder,
	JSDocDocumentationProvider: () => JSDocDocumentationProvider,
	LangiumCompletionParser: () => LangiumCompletionParser,
	LangiumParser: () => LangiumParser,
	LangiumParserErrorMessageProvider: () => LangiumParserErrorMessageProvider,
	LeafCstNodeImpl: () => LeafCstNodeImpl,
	LexingMode: () => LexingMode,
	MapScope: () => MapScope,
	Module: () => Module,
	MultiMap: () => MultiMap,
	MultiMapScope: () => MultiMapScope,
	OperationCancelled: () => OperationCancelled,
	ParserWorker: () => ParserWorker,
	ProfilingTask: () => ProfilingTask,
	Reduction: () => Reduction,
	RefResolving: () => RefResolving,
	RegExpUtils: () => regexp_utils_exports,
	RootCstNodeImpl: () => RootCstNodeImpl,
	SimpleCache: () => SimpleCache,
	StreamImpl: () => StreamImpl,
	StreamScope: () => StreamScope,
	TextDocument: () => TextDocument,
	TreeStreamImpl: () => TreeStreamImpl,
	URI: () => URI,
	UriTrie: () => UriTrie,
	UriUtils: () => UriUtils,
	VALIDATE_EACH_NODE: () => VALIDATE_EACH_NODE,
	ValidationCategory: () => ValidationCategory,
	ValidationRegistry: () => ValidationRegistry,
	ValueConverter: () => ValueConverter,
	WorkspaceCache: () => WorkspaceCache,
	assertCondition: () => assertCondition,
	assertUnreachable: () => assertUnreachable,
	createCompletionParser: () => createCompletionParser,
	createDefaultCoreModule: () => createDefaultCoreModule,
	createDefaultSharedCoreModule: () => createDefaultSharedCoreModule,
	createGrammarConfig: () => createGrammarConfig,
	createLangiumParser: () => createLangiumParser,
	createParser: () => createParser,
	delayNextTick: () => delayNextTick,
	diagnosticData: () => diagnosticData,
	eagerLoad: () => eagerLoad,
	getDiagnosticRange: () => getDiagnosticRange,
	indentationBuilderDefaultOptions: () => indentationBuilderDefaultOptions,
	inject: () => inject,
	interruptAndCheck: () => interruptAndCheck,
	isAstNode: () => isAstNode,
	isAstNodeDescription: () => isAstNodeDescription,
	isAstNodeWithComment: () => isAstNodeWithComment,
	isCompositeCstNode: () => isCompositeCstNode,
	isIMultiModeLexerDefinition: () => isIMultiModeLexerDefinition,
	isJSDoc: () => isJSDoc,
	isLeafCstNode: () => isLeafCstNode,
	isLinkingError: () => isLinkingError,
	isMultiReference: () => isMultiReference,
	isNamed: () => isNamed,
	isOperationCancelled: () => isOperationCancelled,
	isReference: () => isReference,
	isRootCstNode: () => isRootCstNode,
	isTokenTypeArray: () => isTokenTypeArray,
	isTokenTypeDictionary: () => isTokenTypeDictionary,
	loadGrammarFromJson: () => loadGrammarFromJson,
	parseJSDoc: () => parseJSDoc,
	prepareLangiumParser: () => prepareLangiumParser,
	setInterruptionPeriod: () => setInterruptionPeriod,
	startCancelableOperation: () => startCancelableOperation,
	stream: () => stream,
	toDiagnosticData: () => toDiagnosticData,
	toDiagnosticSeverity: () => toDiagnosticSeverity
}, 1), utils_exports, void 0, 1);
