/**
 * 表单设计器组件导出
 * 
 * 提供可视化表单设计功能，支持拖拽式字段配置。
 * 
 * @example
 * ```tsx
 * import { FormDesigner } from '@features/forms/components/designer';
 * 
 * function FormDesignerPage() {
 *   const [schema, setSchema] = useState<JSONSchema>({
 *     type: 'object',
 *     properties: {},
 *   });
 * 
 *   return (
 *     <FormDesigner
 *       initialSchema={schema}
 *       onSave={(newSchema) => {
 *         setSchema(newSchema);
 *         // 保存到后端
 *       }}
 *     />
 *   );
 * }
 * ```
 * 
 * @module features/forms/components/designer
 */

// ============================================
// 设计器组件
// ============================================

/** 表单设计器主组件 */
export { FormDesigner } from './FormDesigner';

/** 字段拖拽面板 */
export { FieldPalette } from './FieldPalette';

/** 设计画布 */
export { DesignCanvas } from './DesignCanvas';

/** 属性配置面板 */
export { PropertyPanel } from './PropertyPanel';

/** 子表单字段设计器 */
export { DetailFieldDesigner } from './DetailFieldDesigner';

// ============================================
// 状态管理
// ============================================

/** 设计器状态管理 Hook */
export { useDesignerStore, useCanUndo, useCanRedo } from './useDesignerStore';

// ============================================
// 类型定义
// ============================================

export * from './types';
