import type { AnalyticsConfig, FontConfig, SectionConfig } from "../lib/types.js"; import { SecureSourceFs } from "./secure-source-fs.js"; export declare class ProjectConfigRepository { private readonly rootDir; private readonly outputDir; private readonly sourceFs; private readonly configFiles; private readonly fontConfigFile; private readonly analyticsConfigFile; private readonly iconFiles; private sourceSnapshot; constructor(rootDir: string, outputDir: string, sourceFs: SecureSourceFs, configFiles: readonly string[], fontConfigFile: string, analyticsConfigFile: string, iconFiles?: readonly string[]); private outputPath; private hasRootSourceFile; private readRootSourceFile; private copyRootSourceFile; private readOptionalRootSourceFile; readConfigFile(): Promise; readOptionalRootBinaryFile(fileName: string, label: string): Promise; preflightSourceFiles(): Promise; sourceSnapshotStates(): Record; clearSourceSnapshot(): void; copyConfigFile(configFile: string): Promise; resetConfigFile(configFile: string): Promise; copyCustomConfigFiles(): Promise; copyFontConfigFile(): Promise; copyFontConfig(): Promise; removeFontConfig(): Promise; loadFontConfig(): Promise; loadAnalyticsConfig(): Promise; writeAnalyticsConfig(config: AnalyticsConfig | null): Promise; copyAnalyticsConfig(loadConfig: () => Promise): Promise; resetAnalyticsConfig(): Promise; loadSectionsConfig(): Promise; }