import { LanguageConfigBuilder, LanguageConfigBuilderFactory } from '.'; import { SyntaxComponentParser } from '../types'; import { LanguageDefinition } from './LanguageDefinition'; /** * Configuration for a certain mcfunction-like language. */ export declare type LanguageConfig = { /** * An array of `SyntaxComponent`s that the language supports. */ syntaxComponentParsers?: SyntaxComponentParser[]; }; export declare type Contributions = { languageDefinitions: Map; syntaxComponentParsers: Map; }; export declare class LanguageConfigBuilderImpl implements LanguageConfigBuilder { private readonly contributions; private readonly result; constructor(contributions: Contributions); build: () => LanguageConfig; syntaxComponent: (id: string) => this; } export declare class LanguageConfigBuilderFactoryImpl implements LanguageConfigBuilderFactory { private readonly contributions; private readonly builders; constructor(contributions: Contributions); configure(id: string): LanguageConfigBuilder; build(): Map; }