export type RunShellScope = 'inspect' | 'workspace' | 'external';
export type RunShellRisk = 'low' | 'medium' | 'unknown';
export type RunShellCapability = 'workspace_listing' | 'file_inspection' | 'workspace_search' | 'structured_inspection' | 'environment_inspection' | 'git_inspection' | 'dependency' | 'verification' | 'formatting' | 'file_operation' | 'git_staging' | 'project_script' | 'unknown_workspace';
export type RunShellPolicyDecision = {
    binary: string;
    scope: RunShellScope;
    risk: RunShellRisk;
    capability: RunShellCapability;
    reason: string;
};
export type RunShellRule = {
    binary: string;
    argsPrefix?: string[];
    scope: RunShellScope;
    risk: RunShellRisk;
    capability: RunShellCapability;
    reason: string;
};
export declare const DEFAULT_INSPECT_RULES: RunShellRule[];
export declare const DEFAULT_MUTATE_RULES: RunShellRule[];
export declare function classifyShellCommandPolicy(command: string, options: {
    toolName: string;
    rules: RunShellRule[];
    allowUnknown: boolean;
}): RunShellPolicyDecision | {
    error: string;
};
export declare function containsBlockedShellControlOperators(command: string, toolName: string): boolean;
export declare function getCatastrophicCommandError(command: string, toolName: string): string | undefined;
//# sourceMappingURL=shell-policy.d.ts.map