import type { ProviderId, ToolCall } from "../../../types.js"; import type { SuccessfulRequestSnapshot } from "../../../types.js"; export interface TurnLoopState { provider: ProviderId; model: string; step: number; lastAnswer: string; pendingCalls: ToolCall[]; allowModelFallback: boolean; preferModelFallback: boolean; retryWithoutThinking: boolean; stepMaxTokens: number; dispatchedRawRequestTokens: number; dispatchedRequestRoute: { provider: ProviderId; model: string; } | undefined; interruptedVisible: string; interruptedReasoning: string; lowYieldResumptions: number; emptyVisibleRetries: number; malformedNativeArgsRounds: number; truncatedBudgetRounds: number; continuationBudgetFloor: number; consecutiveSynthesizedRounds: number; freeTierConsecutiveFailures: number; freeTierAdvisoryShown: boolean; lastSuccessfulRequestSnapshot: SuccessfulRequestSnapshot | undefined; batchRemindCalls: Set; batchReminderNote: string; codingSession: boolean; } export declare const createTurnLoopState: (input: { readonly provider: ProviderId; readonly model: string; readonly previousSuccessfulRequest: SuccessfulRequestSnapshot | undefined; }) => TurnLoopState;