irongit

Open source voice dictation for your whole desktop. Local whisper.cpp transcription, global hotkeys, optional LLM enhancement via Claude Code, Gemini CLI, Codex, or any API. Wayland-first.

mutterbox/src/types.ts
66 lines1.2 KBJavaScript
1export type EnhanceProvider =
2 | "anthropic"
3 | "gemini"
4 | "openai"
5 | "ollama"
6 | "claude-cli"
7 | "gemini-cli"
8 | "codex-cli"
9 | "custom-cli";
10
11export interface EnhanceProfile {
12 name: string;
13 provider: EnhanceProvider;
14 model: string;
15 base_url: string;
16 api_key_env: string;
17 cli_command: string;
18 instructions: string;
19}
20
21export interface EnhanceSettings {
22 enabled: boolean;
23 active_profile: string;
24 profiles: EnhanceProfile[];
25}
26
27export interface Settings {
28 hotkey: string;
29 activation: "toggle" | "hold";
30 injection_mode: "paste" | "type";
31 restore_clipboard: boolean;
32 dictation_model: string;
33 language: string;
34 enhance: EnhanceSettings;
35}
36
37export interface ModelInfo {
38 id: string;
39 label: string;
40 filename: string;
41 size_mb: number;
42 multilingual: boolean;
43 description: string;
44 installed: boolean;
45}
46
47export interface DownloadProgress {
48 id: string;
49 downloaded: number;
50 total: number;
51 done: boolean;
52}
53
54export interface TranscriptPayload {
55 raw: string;
56 text: string;
57 enhanced: boolean;
58}
59
60export type RecordingState = "idle" | "recording" | "processing";
61
62export interface EnvironmentInfo {
63 wayland: boolean;
64 compositor: string;
65 exe: string;
66}