/**
 * Classifier — assigns a CommandClassification to each command segment
 * and computes the highest-risk classification for a full command.
 *
 * Classification priority (highest → lowest):
 *   destructive > escalation > network > write > read
 *
 * Also detects dangerous shell patterns such as rm -rf, force-push, etc.
 */
import type { CommandClassification, CommandSegment, NormalizedCommand } from './types.js';
/**
 * Returns the higher-priority classification of two.
 *
 * @param a - First classification.
 * @param b - Second classification.
 * @returns The classification with higher risk priority.
 */
export declare function higherPriority(a: CommandClassification, b: CommandClassification): CommandClassification;
/**
 * Classifies a single CommandSegment into a CommandClassification tier.
 *
 * For compound tools (git, npm, npx, yarn, pnpm, bun), the first positional
 * argument (sub-command) determines the sub-classification.
 *
 * @param seg - The command segment to classify.
 * @returns The CommandClassification for this segment.
 */
export declare function classifySegment(seg: CommandSegment): CommandClassification;
/**
 * Classifies a full normalized command, computing the union of classifications
 * across all segments and the highest-risk tier.
 *
 * @param original - The original command string.
 * @param segments - The command segments to classify.
 * @returns A partial NormalizedCommand (without the original field, for composability).
 */
export declare function classifyCommand(original: string, segments: CommandSegment[]): Omit<NormalizedCommand, 'original' | 'segments'>;
//# sourceMappingURL=classifier.d.ts.map