UNPKG

budgie-cli

Version:
29 lines (28 loc) 1.26 kB
import { IConverter, IConverterCreator, ICreateConverterDependencies } from "./converter"; /** * Creates and caches converters per language extension. */ export declare class ConvertersBag { private readonly creators; private readonly createConverterDependencies; /** * Cached creation Promises for converters, keyed by language extension. */ private readonly converters; constructor(creators: Map<string, IConverterCreator>, createConverterDependencies: ICreateConverterDependencies); /** * Returns a cached converter, creating it as needed. * * @param languageExtension Language extension to create for. * @returns Promise for the language's cached creator, if it exists, or an error during creation. */ get(languageExtension: string): Promise<Error | IConverter | undefined>; /** * Starts creation of a new converter, if the extension is known. * * @param languageExtension Language extension to create for. * @returns Promise for the language's creator, or an error during creation. */ private startCreation; } export declare const createConvertersBag: (createConverterDependencies: ICreateConverterDependencies) => ConvertersBag;