@nanocollective/nanocoder
Version:
A local-first CLI coding agent that brings the power of agentic coding tools like Claude Code and Gemini CLI to local models or controlled APIs like OpenRouter
31 lines • 1.3 kB
TypeScript
import type { NonInteractiveModeState } from '../app/types.js';
import type { DevelopmentMode, LLMClient } from '../types/index.js';
interface UseNonInteractiveModeProps {
nonInteractivePrompt?: string;
nonInteractiveMode: boolean;
mcpInitialized: boolean;
client: LLMClient | null;
appState: NonInteractiveModeState;
setDevelopmentMode: (mode: DevelopmentMode) => void;
handleMessageSubmit: (message: string) => Promise<void>;
}
export interface NonInteractiveModeResult {
nonInteractiveSubmitted: boolean;
nonInteractiveLoadingMessage: string | null;
}
/**
* Calculates the effective timeout based on provider configuration.
*
* @param client - The LLM client which may have provider-level timeouts
* @returns Final timeout in milliseconds
*/
export declare function calculateEffectiveTimeout(client: LLMClient | null): number;
/**
* Handles non-interactive mode logic:
* - Automatically submits prompt when ready
* - Sets auto-accept mode
* - Monitors completion and exits when done
*/
export declare function useNonInteractiveMode({ nonInteractivePrompt, mcpInitialized, client, appState, setDevelopmentMode, handleMessageSubmit, }: UseNonInteractiveModeProps): NonInteractiveModeResult;
export {};
//# sourceMappingURL=useNonInteractiveMode.d.ts.map