/** Shells for which SRT's POSIX quote() and the `-c` invocation contract agree. */ export declare const POSIX_SHELLS: readonly [ "sh", "bash", "dash", "zsh", "ksh" ]; /** Binaries for which passing `--` terminates option parsing. */ export declare const DOUBLE_DASH_BINARIES: readonly [ "cp", "rg" ]; /** * Flags emitted by the sandbox's own ripgrep adapter. * * @remarks * EVERY flag the adapter actually emits must appear here, or the adapter rejects its own argv and the * capability fails for every invocation. `--json` is `searchContent`'s output format and is exactly such * a flag; omitting it made content search unusable while name search (which does not use it) worked. * The argv TERMINATOR `--` is deliberately absent: it is not a flag, and it is filtered out before * validation rather than admitted here, so this list stays a list of flags. */ export declare const ALLOWED_RIPGREP_FLAGS: readonly [ "--files", "--ignore-case", "--fixed-strings", "--hidden", "--follow", "--no-ignore", "--glob", "--iglob", "--max-depth", "--json" ]; /** Validate the shell selected by the Node SRT adapter. */ export declare const validateBinShell: (value?: string) => string; /** Alias used by the SRT adapter at construction time. */ export declare const assertPosixBinShell: (value?: string) => string; /** Validate a configurable binary path without checking whether the binary exists. */ export declare const validateAbsoluteBinaryPath: (value: string | undefined, optionName: string) => string | undefined; /** Reject an argv value which would otherwise be interpreted as an option. */ export declare const assertArgvValue: (value: string) => string; /** Whether a binary in the table can receive the argv terminator. */ export declare const binaryHonorsDoubleDash: (binary: string) => boolean; /** Validate a flag emitted by a trusted adapter, not a model-supplied value. */ export declare const assertAllowedRipgrepFlag: (flag: string) => string; /** * Quote argv using SRT's maintained POSIX implementation. * * The import is deliberately lazy: SRT is an optional peer and is ESM-only. */ export declare const quoteShellArgs: (args: readonly string[]) => Promise; /** Quote one command string as one shell argument. */ export declare const quoteShellValue: (value: string) => Promise; /** Compatibility alias for consumers that describe this operation as escaping. */ export declare const escapeShellArgs: (args: readonly string[]) => Promise; /** Compatibility alias for consumers that describe this operation as escaping. */ export declare const escapeShellValue: (value: string) => Promise;