import { spawn } from "node:child_process"; import { existsSync } from "node:fs"; import { mkdir, readdir, writeFile } from "node:fs/promises"; import { commandExists, runProcess } from "../process.js"; type NerdFontControllerDeps = { commandExists: typeof commandExists; existsSync: typeof existsSync; fetch: typeof fetch; mkdir: typeof mkdir; readdir: typeof readdir; runProcess: typeof runProcess; spawn: typeof spawn; writeFile: typeof writeFile; }; export declare function setNerdFontControllerTestDeps(overrides: Partial): () => void; export type NerdFontInstallHost = { showToast(message: string, kind: "success" | "error" | "warning" | "info"): void; render(): void; }; export declare const FONT_FAMILY_NAME = "JetBrainsMono Nerd Font Mono"; export declare const FONT_FILE_NAME = "JetBrainsMonoNerdFontMono-Regular.ttf"; export declare const FONT_DOWNLOAD_URL = "https://raw.githubusercontent.com/ryanoasis/nerd-fonts/master/patched-fonts/JetBrainsMono/Ligatures/Regular/JetBrainsMonoNerdFontMono-Regular.ttf"; export declare class NerdFontController { private readonly host; private ensureStarted; constructor(host: NerdFontInstallHost); ensureInstalledOnStartup(): void; private ensureInstalled; } export declare function isJetBrainsNerdFontInstalled(): Promise; export declare function installJetBrainsNerdFont(): Promise; export declare function userFontInstallPath(): string; export {};