import type { DesktopRfbFactory } from "@opengeni/sdk"; /** Host-owned imports keep optional peers outside the root's bundler graph. */ export type WorkbenchPeerLoader = () => Promise; export type CodeEditorLanguage = "javascript" | "json" | "python" | "markdown" | "css" | "html"; export type CodeEditorLanguages = Partial>; export type CodeEditorPeers = { module: unknown; languages?: CodeEditorLanguages | undefined; }; export type SandboxTerminalPeers = { Terminal: unknown; FitAddon: unknown; WebLinksAddon: unknown; loadWebgl?: WorkbenchPeerLoader | undefined; }; export declare const sandboxTerminalPeers: { register(next: WorkbenchPeerLoader | null): void; revision: () => number; subscribe(listener: () => void): () => void; load(): Promise; }; export declare const codeEditorPeers: { register(next: WorkbenchPeerLoader | null): void; revision: () => number; subscribe(listener: () => void): () => void; load(): Promise; }; export declare const desktopViewerPeers: { register(next: WorkbenchPeerLoader | null): void; revision: () => number; subscribe(listener: () => void): () => void; load(): Promise; }; export declare const registerSandboxTerminal: (next: WorkbenchPeerLoader | null) => void; export declare const registerCodeEditor: (next: WorkbenchPeerLoader | null) => void; export declare const registerDesktopViewer: (next: WorkbenchPeerLoader | null) => void;