import { DiagnosticSeverityConfig } from "./diagnostics.js"; import { DiscardObsoleteFragmentType } from "./obsolete-handling.js"; export interface Config { readonly context: string; readonly data: string; readonly namespace: string; readonly include: string[]; readonly sourceLocale: string; readonly translatedLocales: string[]; readonly plugins: Config.Plugin[]; readonly obsolete: Config.Obsolete; readonly output: Config.Output; readonly diagnostics: DiagnosticSeverityConfig; } export declare namespace Config { interface Json { data?: string; namespace?: string; include?: string[]; locales?: string[]; plugins?: (string | PluginJson)[]; obsolete?: ObsoleteJson; output?: OutputJson; diagnostics?: DiagnosticSeverityConfig; } interface PluginJson { entry: string; config?: unknown; } interface Plugin { readonly entry: string; readonly config: unknown; } interface Obsolete { discard: DiscardObsoleteFragmentType; } interface ObsoleteJson { discard?: DiscardObsoleteFragmentType; } interface TranslationData { filename: string; } interface TranslationDataJson { filename?: string; sorted?: boolean; } interface OutputJson { filename?: string | null; includeOutdated?: boolean; manifestPath?: string | null; } interface Output { filename: string | null; includeOutdated: boolean; manifestFilename: string | null; } interface Defaults { data: string; namespace: string; include: string[]; locales: string[]; obsoleteDiscard: DiscardObsoleteFragmentType; outputFilename: string; outputIncludeOutdated: boolean; outputManifestPath: string; diagnostics: DiagnosticSeverityConfig; } const DEFAULTS: Defaults; function getOutputFilename(filenameTemplate: string, locale: string): string; function read(filename: string, defaults?: Partial): Promise; function fromJson(json: Json, context: string, defaults?: Partial): Promise; }