import { AdventureManager } from '@codewithdan/ai-repo-adventures-core/adventure'; import type { OutputFormat } from './format-strategy.js'; import type { HtmlBuilder, AssetManager } from './format-types.js'; /** * Context for format generation - coordinates all format strategies * This is the main entry point for generating adventures in any format */ export declare class FormatContext { private adventureManager; private outputDir; private theme; private projectPath; private questContents; constructor(adventureManager: AdventureManager, outputDir: string, theme: string, projectPath: string, questContents: Map); /** * Generate adventure in the specified format */ generate(format: OutputFormat, htmlBuilder?: HtmlBuilder, assetManager?: AssetManager, isMultiTheme?: boolean, keyConcepts?: string): Promise; /** * Prepare adventure data for formatting */ private prepareAdventureData; /** * Get available formats */ static getSupportedFormats(): OutputFormat[]; /** * Validate format */ static isValidFormat(format: string): format is OutputFormat; } //# sourceMappingURL=format-context.d.ts.map