/**
 * MitreMatrix type definitions
 * @countermeasure/web-components/security/mitre-matrix
 */
export interface MitreTechnique {
    /** MITRE ATT&CK technique ID (e.g. `T1566`, `T1059.001`). */
    id: string;
    /** Display name of the technique. */
    name: string;
    /** Tactic column the technique is rendered under. */
    tactic: string;
    /**
     * Whether this technique has been observed / detected in the environment.
     * @default false
     */
    detected?: boolean;
    /** Number of detections observed for this technique. */
    count?: number;
    /** Severity rating used to colorize the cell. */
    severity?: 'critical' | 'high' | 'medium' | 'low';
}
export interface MitreMatrixConfig {
    /** Container element (or selector) the matrix is mounted into. */
    container: HTMLElement | string;
    /** Techniques to render across the matrix. */
    techniques: MitreTechnique[];
    /** Optional explicit tactic column ordering. Defaults to the canonical ATT&CK order. */
    tactics?: string[];
    /** Callback invoked when a technique cell is clicked. */
    onTechniqueClick?: (technique: MitreTechnique) => void;
    /**
     * Render detection counts on each technique cell.
     * @default false
     */
    showCounts?: boolean;
    /**
     * Highlight cells where `detected` is true.
     * @default false
     */
    highlightDetected?: boolean;
    /** Additional CSS class names. */
    className?: string;
}
//# sourceMappingURL=types.d.ts.map