import { AbstractMermaidTokenBuilder, __name, MermaidGeneratedSharedModule, InfoGeneratedModule, CommonValueConverter } from './chunk-FPAJGGOC.mjs';
import { EmptyFileSystem } from '../../../../../../../langium@3.3.1/node_modules/langium/lib/workspace/file-system-provider.mjs';
import { inject } from '../../../../../../../langium@3.3.1/node_modules/langium/lib/dependency-injection.mjs';
import { createDefaultSharedCoreModule, createDefaultCoreModule } from '../../../../../../../langium@3.3.1/node_modules/langium/lib/default-module.mjs';

// src/language/info/tokenBuilder.ts
var InfoTokenBuilder = class extends AbstractMermaidTokenBuilder {
  static {
    __name(this, "InfoTokenBuilder");
  }
  constructor() {
    super(["info", "showInfo"]);
  }
};

// src/language/info/module.ts
var InfoModule = {
  parser: {
    TokenBuilder: /* @__PURE__ */ __name(() => new InfoTokenBuilder(), "TokenBuilder"),
    ValueConverter: /* @__PURE__ */ __name(() => new CommonValueConverter(), "ValueConverter")
  }
};
function createInfoServices(context = EmptyFileSystem) {
  const shared = inject(
    createDefaultSharedCoreModule(context),
    MermaidGeneratedSharedModule
  );
  const Info = inject(
    createDefaultCoreModule({ shared }),
    InfoGeneratedModule,
    InfoModule
  );
  shared.ServiceRegistry.register(Info);
  return { shared, Info };
}
__name(createInfoServices, "createInfoServices");

export { InfoModule, createInfoServices };
