export interface ExplicitChatGoal { objective: string; tokenBudget?: number; } export interface ExplicitGoalStartAuthority { tokenBudget?: number; } /** Raised when text unambiguously states a token-budget directive but the amount cannot be resolved * to an exact positive integer. Callers must let this propagate as a loud, explicit failure instead * of falling back to an unbounded goal. */ export declare class GoalTokenBudgetParseError extends Error { constructor(message: string); } /** * Parse an explicit token-budget directive from `text`. When `objective` locates a captured goal * objective within `text`, a budget-shaped phrase found INSIDE it only counts when it is the * trailing clause of the objective; text outside the objective (the prefix/suffix around it) is * scanned without that restriction. This keeps a genuine directive ("... with a 40k token budget.") * working while refusing to adopt a number that is merely part of the task's own subject matter * ("raise the model token budget of 4096 ... to 8192"). */ export declare function parseRequestedTokenBudget(text: string, objective?: { start: number; end: number; }): number | undefined; /** Latest owner prompt that is not the current classification phrase itself. */ export declare function priorUserPromptText(messages: readonly { role: string; content?: unknown; }[], currentText: string): string | undefined; export declare function parseExplicitChatGoal(text: string, priorUserText?: string): ExplicitChatGoal | undefined; /** Exact owner authority for model-supplied token budgets; ordinary work carries no budget authority. */ export declare function parseExplicitGoalStartAuthority(text: string): ExplicitGoalStartAuthority | undefined; //# sourceMappingURL=natural-language-goal.d.ts.map