import type { LazyExoticComponent, ComponentType } from 'react'; import type { FileType, PreviewFile } from '@eternalheart/file-preview-core'; /** * 渲染器上下文:主组件传递给 getProps 的环境信息 */ export interface RendererContext { /** 解析后的 URL(可能是 blob URL) */ resolvedUrl: string; /** ZIP 嵌套深度 */ zipNestingDepth: number; /** 当前文件对象 */ currentFile: PreviewFile; } /** * 内置渲染器配置 */ export interface BuiltinRendererConfig { /** 匹配的文件类型 */ fileType: FileType; /** 渲染器组件(懒加载) */ component: LazyExoticComponent>; /** 计算传给组件的 props */ getProps: (ctx: RendererContext) => Record; } /** * 内置渲染器注册表 * * 新增渲染器: * 1. 在 src/renderers//index.tsx 创建渲染器 * 2. 在 src/renderers/lazy.tsx 添加懒加载导出 * 3. 在此注册表添加配置 * * 主组件 FilePreviewContent.tsx 无需修改 */ export declare const BUILTIN_RENDERERS: BuiltinRendererConfig[]; //# sourceMappingURL=registry.d.ts.map