/** * Chapter Builder * Creates and manages chapter markdown files with YAML frontmatter */ export interface ChapterBuilderOptions { projectPath: string; outputDir?: string; } export interface ChapterMetadata { title: string; status?: 'planned' | 'drafted' | 'revised' | 'polished' | 'final'; povCharacter?: string; summary?: string; notes?: string; scenes?: SceneOutline[]; } export interface SceneOutline { number: number; summary: string; location?: string; characters?: string[]; } export interface ChapterTemplate { name: string; description: string; frontmatter: Partial; content: string; } export type PromptFunction = (prompt: string, options?: PromptOptions) => Promise; export interface PromptOptions { required?: boolean; default?: string; multiline?: boolean; validate?: (value: string) => boolean; } export declare class ChapterBuilder { private projectPath; private outputDir; constructor(options: ChapterBuilderOptions); /** * Create chapter from metadata (programmatic API) */ create(chapterNumber: number, metadata: ChapterMetadata, content?: string): Promise; /** * Interactive chapter creation - prompts for all fields */ createInteractive(promptFn: PromptFunction): Promise; /** * Create chapter from template */ createFromTemplate(chapterNumber: number, title: string, templateName: string): Promise; /** * Get next available chapter number */ getNextChapterNumber(): Promise; /** * List all chapter files */ list(): Promise; /** * Generate filename from chapter number and title */ generateFilename(chapterNumber: number, title: string): string; /** * Build chapter content with frontmatter */ private buildChapterContent; /** * Get available chapter templates */ private getTemplates; /** * Validate chapter metadata */ validate(metadata: Partial): string[]; } //# sourceMappingURL=chapter-builder.d.ts.map