import type React from 'react';
import MultiChartConfigModal from './components/MultiChartConfigModal';

// ─── 通用配置 Modal 接口 ──────────────────────────────────────────────────────
//
// 每个配置 Modal 接收统一的 props：
//   code      — 当前组件的完整 code 字符串
//   onConfirm — 用户确认后，传回修改后的 code 字符串
//   onCancel  — 关闭 Modal（取消）

export interface CanvasConfigModalProps {
  code: string;
  onConfirm: (newCode: string) => void;
  onCancel: () => void;
}

export type ConfigModalComponent = React.FC<CanvasConfigModalProps>;

// ─── 注册表：组件类型 → 配置 Modal ───────────────────────────────────────────
//
// 只有在此注册的组件，右键菜单中才会显示"配置"选项。

export const CANVAS_CONFIG_REGISTRY: Record<string, ConfigModalComponent> = {
  MultiChart: MultiChartConfigModal,
};
