149883565d
Co-authored-by: LingandRX <LingandRX@users.noreply.github.com>
2.0 KiB
2.0 KiB
types/
全局共享的 TypeScript 类型声明文件目录。
文件说明
storage.d.ts
核心类型定义文件,包含:
页面类型:
PageType— 所有页面类型的联合类型(含dashboard、timestamp、storageCleaner、testDataGenerator等)JsonToolsPageMode— JSON 工具子模式(diff|format|yaml|toml|minify)Base64ConverterPageMode— Base64 子模式(text|file|image)Base64ConvertDirection— 编解码方向(encode|decode)
存储 Schema:
StorageSchema— Chrome Storage 完整数据结构定义,所有存储键必须在此声明- 键名使用 kebab-case 格式(如
app/currentRoute) - 包含路由、主题、工具偏好、搜索历史等所有持久化数据
- 键名使用 kebab-case 格式(如
其他类型:
FormMapEntry— 表单映射条目定义ContextMenuPendingData— 右键菜单待处理数据StorageCleanerPreferences/StorageCleanerOptions— 存储清理偏好CleaningResult/StorageCleanResult— 清理结果类型
qrious.d.ts
qrious 库的类型声明,定义 QR 码生成选项和 QRious 类。
testDataGenerator.ts
测试数据生成器共享类型,包含:
FieldConfig— 字段配置(字段名、生成器、参数、必填、空值率、唯一性)DataRule— 可保存/导入/导出的字段规则GeneratorDefinition/GeneratorParam— 内置生成器定义和参数 SchemaGenerateResult/GenerateProgress— Worker 生成结果与进度WorkerRequestMessage/WorkerResponseMessage— Worker 消息协议;每条响应携带generationId,用于忽略过期任务(取消或快速重试时)WorkerMessage— 已废弃,请使用上述两种消息类型ExportFile— JSON/CSV 导出文件描述
修改 StorageSchema 的注意事项
修改 StorageSchema 时,必须:
- 在
utils/chromeStorage.ts添加版本迁移函数 - 在测试中覆盖迁移场景