import { BaseAgent } from "./base.js"; import type { BookConfig } from "../models/book.js"; import { type ChapterIntent } from "../models/input-governance.js"; export interface PlanChapterInput { readonly book: BookConfig; readonly bookDir: string; readonly chapterNumber: number; readonly externalContext?: string; } export interface PlanChapterOutput { readonly intent: ChapterIntent; readonly intentMarkdown: string; readonly plannerInputs: ReadonlyArray; readonly runtimePath: string; } export interface OutlineExtractionResult { readonly outlineNode: string; readonly coreConflict: string | null; readonly subplotConflict: string | null; readonly deepConflict: string | null; readonly chapterEvent: string | null; readonly payoffGoal: string | null; readonly keyTwist: string | null; readonly goldenThreePlan: string | null; readonly confidence: number; } export interface ChapterOutline { readonly outlineNode: string; readonly coreConflict?: string; readonly subplotConflict?: string; readonly deepConflict?: string; readonly chapterEvent?: string; readonly payoffGoal?: string; readonly keyTwist?: string; readonly goldenThreePlan?: string; } export declare class PlannerAgent extends BaseAgent { get name(): string; planChapter(input: PlanChapterInput): Promise; private buildStructuredDirectives; private deriveGoal; private enrichGoalWithPayoff; private collectMustKeep; private collectMustAvoid; private collectStyleEmphasis; private collectConflicts; private extractFirstDirective; private extractListItems; private extractFocusGoal; private extractLocalOverrideGoal; private extractFocusStyleItems; private buildArcDirective; private buildLLMExtractedDirectives; private enrichFromLLMExtract; private buildSceneDirective; private buildMoodDirective; private buildTitleDirective; private renderHookBudget; private extractSection; private normalizeHeading; private cleanListItem; private isTemplatePlaceholder; private containsChinese; private findOutlineNode; private extractOutlineByLLM; private extractOutlineWithVerification; private calculateSimilarity; private extractChapterOutline; private findOutlineNodeWithResult; private cleanOutlineContent; private findNextOutlineContent; private hasMatchedOutlineAnchor; private matchExactOutlineLine; private matchAnyExactOutlineLine; private matchRangeOutlineLine; private matchAnyRangeOutlineLine; private isOutlineAnchorLine; private isChapterWithinRange; private hasKeywordOverlap; private extractKeywords; private renderIntentMarkdown; private unique; private isChineseLanguage; private readFileOrDefault; } //# sourceMappingURL=planner.d.ts.map