/**
 * Module: tools/os
 *
 * Operating system interaction tools for shell command execution.
 * Provides shell_cmd and stop_daemon FuncTools with advanced process management.
 */
import type { LanguageCode } from '@longrun-ai/kernel/types/language';
import type { FuncTool, ReminderOwner } from '../tool';
export declare function resetTrackedDaemonsForTests(): void;
type ShellSpawnSpec = Readonly<{
    command: string;
    args: string[];
    shellLabel: string;
    windowsVerbatimArguments?: boolean;
}>;
export declare function resolveShellCmdSpawnSpecForTests(command: string, shell: string | undefined, platform: NodeJS.Platform): ShellSpawnSpec;
export declare function detectWindowsShellUsageWarningForTests(command: string, shell: string | undefined, language: LanguageCode, platform: NodeJS.Platform): string | undefined;
export declare function formatShellExecutionErrorForTests(shell: string | undefined, message: string, language: LanguageCode, platform: NodeJS.Platform): string;
export declare function resolveReadonlyShellSpawnSpecForTests(command: string, platform: NodeJS.Platform): ShellSpawnSpec;
export declare const shellCmdReminderOwner: ReminderOwner;
export declare const shellCmdTool: FuncTool;
type ReadonlyShellValidationFailureReason = 'MAX_DEPTH' | 'INVALID_CD_SYNTAX' | 'UNSAFE_RELATIVE_PATH' | 'CHAIN_PARSE_EMPTY_SEGMENT' | 'CHAIN_PARSE_UNSUPPORTED_OPERATOR' | 'CHAIN_PARSE_UNTERMINATED_QUOTE' | 'CHAIN_PARSE_TRAILING_ESCAPE' | 'UNSAFE_SHELL_SYNTAX' | 'GIT_C_INVALID' | 'GIT_C_UNSAFE_PATH' | 'GIT_C_UNSUPPORTED_SUBCOMMAND' | 'COMMAND_NOT_ALLOWLISTED';
type ReadonlyShellValidationFailure = Readonly<{
    reason: ReadonlyShellValidationFailureReason;
    rejectedSegment: string;
}>;
type ReadonlyShellValidationResult = Readonly<{
    ok: true;
}> | Readonly<{
    ok: false;
    failure: ReadonlyShellValidationFailure;
}>;
export declare function validateReadonlyShellCommandForTests(command: string, platform: NodeJS.Platform): ReadonlyShellValidationResult;
type ForbiddenHiddenDir = '.minds' | '.dialogs';
export declare function detectReadonlyShellForbiddenHiddenDirAccessForTests(workspaceRootAbs: string, command: string, platform: NodeJS.Platform): ForbiddenHiddenDir | null;
export declare const readonlyShellTool: FuncTool;
export declare const stopDaemonTool: FuncTool;
export declare const getDaemonOutputTool: FuncTool;
export {};
