/** * SmartTable 内部渲染器管理系统 * 移动到组件内部,保证组件的自包含性 */ import { Component } from 'vue'; import type { Renderer } from './types'; /** * 渲染器注册表接口 */ export interface RendererRegistry { register(name: string, renderer: Renderer): void; registerMultiple(renderers: Record): void; get(name: string): Renderer | undefined; has(name: string): boolean; unregister(name: string): boolean; clear(): void; names(): string[]; } /** * 渲染器管理器类 */ declare class RendererManager implements RendererRegistry { private renderers; register(name: string, renderer: Renderer): void; registerMultiple(renderers: Record): void; get(name: string): Renderer | undefined; has(name: string): boolean; unregister(name: string): boolean; clear(): void; names(): string[]; } /** * 获取渲染器管理器 */ export declare function getRendererManager(): RendererManager; /** * 包装 SFC 组件为渲染器 */ export declare function wrapSFCComponent(comp: Component): Renderer; /** * 创建函数式渲染器 */ export declare function createFunctionalRenderer(render: (props: { row: any; col: any; index: number; onCellChange?: (row: any, col: any) => void; onCellBlur?: (row: any, col: any) => void; onCellEnter?: (row: any, col: any) => void; onClick?: (row: any, col: any) => void; }) => any): Renderer; /** * 验证渲染器配置 * 在开发环境下验证 renderProps 的正确性 */ export declare function validateRendererProps(rendererName: string, renderProps: Record | undefined): void; export {};