46 lines
1.5 KiB
TypeScript
46 lines
1.5 KiB
TypeScript
/// <reference types="vite/client" />
|
|
|
|
interface ImportMetaEnv {
|
|
readonly VITE_BACKEND_PORT?: string;
|
|
}
|
|
|
|
interface ImportMeta {
|
|
readonly env: ImportMetaEnv;
|
|
}
|
|
|
|
interface ModelInfo {
|
|
name: string;
|
|
path: string;
|
|
size_bytes: number;
|
|
kind: string;
|
|
}
|
|
|
|
interface DesktopAPI {
|
|
openFile: (options?: Record<string, unknown>) => Promise<string | null>;
|
|
saveFile: (options?: Record<string, unknown>) => Promise<string | null>;
|
|
openProject: () => Promise<string | null>;
|
|
saveProject: () => Promise<string | null>;
|
|
getBackendUrl: () => Promise<string>;
|
|
encryptString: (data: string) => Promise<string>;
|
|
decryptString: (encrypted: string) => Promise<string>;
|
|
ensureModel: (modelName: string) => Promise<string>;
|
|
transcribe: (filePath: string, modelName: string, language?: string) => Promise<any>;
|
|
readFile: (path: string) => Promise<string>;
|
|
writeFile: (path: string, content: string) => Promise<boolean>;
|
|
activateLicense: (key: string) => Promise<any>;
|
|
getAppStatus: () => Promise<any>;
|
|
verifyLicense: (key: string) => Promise<any>;
|
|
deactivateLicense: () => Promise<void>;
|
|
hasLicenseFeature: (feature: string) => Promise<boolean>;
|
|
listModels: () => Promise<ModelInfo[]>;
|
|
deleteModel: (path: string) => Promise<void>;
|
|
logError: (message: string, stack: string, componentStack: string) => Promise<void>;
|
|
writeAutosave: (data: string) => Promise<void>;
|
|
readAutosave: () => Promise<string | null>;
|
|
deleteAutosave: () => Promise<void>;
|
|
}
|
|
|
|
interface Window {
|
|
electronAPI: DesktopAPI;
|
|
}
|