import { ImageGenerateMode, MJRobotType, MJSpeed } from '../data/mjData' import { JianyingKeyFrameEnum } from '../enum/jianyingEnum' declare namespace SettingModal { //#region 基础设置 /** * 通用设置接口 * 定义应用程序的常规设置项 */ export interface GeneralSettings { /** 剪映草稿箱路径 */ draftPath: string /** 项目保存路径 */ projectPath: string /** 系统并发数 (1-16) */ concurrency: number /** 默认生图方式 */ defaultImgGenMethod: ImageCategory /** 高清倍数 (1-4) */ hdScale: number /** 默认图转视频方式 */ defaultImg2Video: ImageToVideoCategory /** 系统语言 */ language: string } //#endregion //#region MJ设置 /** * Midjourney 通用设置接口 */ interface MJGeneralSettings { /** 出图模式 */ outputMode: ImageGenerateMode /** 生图机器人类型 */ robot: MJRobotType /** 机器人模型ID */ model: string /** 生图尺寸ID */ size: string /** 命令后缀 */ commandSuffix: string /** 生图任务量 (1-10) */ taskCount: number /** 间隔时间(秒) */ interval: number } /** * Midjourney API 设置接口 * 定义了与 MJ API 相关的配置参数 */ interface MJApiSettings { /** API 服务地址 */ apiUrl: string /** API 密钥/授权令牌 */ apiKey: string /** 出图速度设置 * 可选值通常为"fast"(快速)或"relaxed"(慢速) */ apiSpeed: MJSpeed } //#endregion //#region AI推理设置 /** * AI 推理设置接口 * 定义了用于 AI 推理和翻译的配置参数 */ interface InferenceAISettings { /** API 服务提供商标识 */ apiProvider: string /** API 访问令牌/密钥 */ apiToken: string /** 推理模型名称 * 例如: 'deepseek-chat', 'gpt-4', 'claude-3-opus' 等 */ inferenceModel: string /** AI 提示词值 - 用于生成图像的提示内容 */ aiPromptValue: string /** 翻译模型名称 * 例如: 'Doubao-lite-32k', 'gpt-3.5-turbo' 等 */ translationModel: string } //#endregion //#region SD设置 /** * Stable Diffusion 设置接口 * 定义了 SD 生成图像所需的所有参数 */ interface SDSettings { /** SD API服务器请求地址 */ requestUrl: string /** 出图方式: 'txt2img' (文生图) 或 'img2img' (图生图) */ generationMethod: string /** 正向提示词 - 描述你希望生成的图像内容 */ positivePrompt: string /** 反向提示词 - 描述你希望避免的图像内容 */ negativePrompt: string /** CFG Scale - 提示词相关性权重 (1-20) */ cfgScale: number /** 单次出图张数 (1-6) */ batchCount: number /** * 种子值 * -1表示随机种子,指定具体数值可复现相同结果 */ seed: number /** 重绘幅度 (0-1) - 在图生图模式下影响保留原图程度 */ denoisingStrength: number /** 采样方式 - 如 'DPM++ SDE Karras', 'Euler a' 等 */ sampler: string /** 迭代步数 (1-150) - 影响生成质量和时间 */ steps: number /** 生成图片宽度 (像素) */ width: number /** 生成图片高度 (像素) */ height: number /** 是否启用修脸/修手功能 */ faceHandFix: boolean } /** * ADetailer 模型接口 * 定义了 ADetailer 插件使用的模型及其设置 */ interface SDADetailerModel { /** 模型唯一标识符 */ id: string /** 模型文件名称 * 例如: 'face_yolov8n.pt', 'hand_yolov8n.pt' 等 */ model: string /** 识别信任度 * 范围通常为 10-100 的整数值,表示百分比 * 数值越高,模型识别越严格 */ threshold: number } //#endregion //#region 剪映关键帧设置 /** * 剪映关键帧设置接口 * 定义了剪映视频编辑中关键帧的设置项 */ interface JianyingKeyFrameSettings { keyFrame: JianyingKeyFrameEnum isFixedSpeed: boolean keyFrameTime: number upDownKeyFrame: { defaultScale: number startPosition: number endPosition: number } leftRightKeyFrame: { defaultScale: number startPosition: number endPosition: number } scaleKeyFrame: { defaultScale: number startPosition: number endPosition: number } } //#endregion }