import React from "react";
import type { EventEmit } from '@almadar/core';
export interface MatrixRow {
    id: string;
    label: string;
}
export interface MatrixColumn {
    value: number | string;
    label: string;
}
export interface MatrixQuestionProps {
    /** Optional title rendered above the matrix */
    title?: string;
    /** Question rows */
    rows: MatrixRow[];
    /** Column definitions; defaults to 5-point Likert */
    columns?: MatrixColumn[];
    /** Selected value per row, keyed by rowId */
    values?: Record<string, number | string>;
    /** Change handler invoked with rowId and selected column value */
    onChange?: (rowId: string, value: number | string) => void;
    /** Event name dispatched via event bus when a row's value changes. Payload: { rowId, value } */
    changeEvent?: EventEmit<{
        rowId: string;
        value: number | string;
    }>;
    /** Disable all inputs */
    disabled?: boolean;
    /** Visual size */
    size?: 'sm' | 'md';
    /** Additional CSS classes */
    className?: string;
}
export declare const DEFAULT_MATRIX_COLUMNS: MatrixColumn[];
export declare const MatrixQuestion: React.FC<MatrixQuestionProps>;
