diff --git a/apps/web/src/components/voice/CloneModal/types.ts b/apps/web/src/components/voice/CloneModal/types.ts new file mode 100644 index 000000000..cd08ed9f4 --- /dev/null +++ b/apps/web/src/components/voice/CloneModal/types.ts @@ -0,0 +1,21 @@ +import type { VoiceClone } from "@/api/voice-clone" + +/** 弹窗阶段 */ +export type ModalPhase = "input" | "uploading" | "cloning" | "done" + +/** CloneModal 组件属性 */ +export interface CloneModalProps { + /** 弹窗是否可见 */ + open: boolean + /** 关闭弹窗回调 */ + onClose: () => void + /** 克隆成功回调(返回新创建的音色) */ + onSuccess?: (voice: VoiceClone) => void +} + +/** 进度步骤配置 */ +export interface ProgressStep { + key: string + label: string + icon: string +}