/// import type { SandboxOptions } from '../types/Sandbox.ts'; declare function useSandboxInternal(): { bootstrap: () => Promise; /** * A computed ref that gives access to the web container instance. */ container: import("vue").ComputedRef; /** * Editor tabs manager. Responsible for opening, focusing and closing editor tabs. */ editorTabs: { open: (id: string, label?: string | undefined, context?: import("../typedoc-entry.ts").EditorTabContext | undefined) => void; close: (id: string) => void; current: import("vue").ComputedRef | undefined>; findTab: (id: string) => import("../typedoc-entry.ts").Tab | undefined; findTabIndex: (id: string) => number; tabs: import("vue").ComputedRef[]>; updateContext: (id: string, setter: (ctx: import("../typedoc-entry.ts").EditorTabContext) => import("../typedoc-entry.ts").EditorTabContext) => void; }; /** * Provides matchers for different purposes. * The matchers use [ignore](https://www.npmjs.com/package/ignore) to determine whether a give path matches one * of the patterns specified in the sandbox options. */ explorer: { hidden: import("vue").ComputedRef; readonly: import("vue").ComputedRef; reinstall: import("vue").ComputedRef; }; options: { readonly editor: { readonly suppressClose?: boolean | undefined; readonly theme?: { readonly dark?: (() => import("@codemirror/state").Extension[]) | undefined; readonly light?: (() => import("@codemirror/state").Extension[]) | undefined; } | undefined; }; readonly explorer: { readonly hidden?: readonly string[] | undefined; readonly readonly?: readonly string[] | undefined; readonly reinstall?: readonly string[] | undefined; }; readonly preview: { readonly suppressAddressBar?: boolean | undefined; }; readonly process: { readonly commands: { readonly install: string; readonly devServer: string; readonly terminal: string; }; readonly packageManager: "npm" | "pnpm" | "yarn"; readonly starters?: { readonly install?: (() => Promise) | undefined; readonly devServer?: (() => Promise) | undefined; readonly terminal?: (() => Promise) | undefined; } | undefined; }; readonly terminal: { readonly maxCount?: number | undefined; readonly theme?: { readonly dark?: (() => import("@xterm/xterm").ITheme) | undefined; readonly light?: (() => import("@xterm/xterm").ITheme) | undefined; } | undefined; }; }; preview: { /** * A reference to the preview iframe element. */ frame: import("vue").Ref; /** * Reload the preview. */ reload: () => Promise; /** * Computed ref containing a boolean flag. When true, the address bar in the preview panel will not be shown. */ suppressAddressBar: import("vue").ComputedRef; /** * The preview URL. */ url: import("vue").ComputedRef; }; /** * Process tabs manager. Responsible for opening, focusing and closing process and terminal tabs. */ processTabs: { availableTerminals: import("vue").ComputedRef; close: (id: string) => void; kill: (id: string) => void; open: (id: string, label?: string | undefined, context?: import("../typedoc-entry.ts").ProcessTabContext | undefined) => Promise; restart: (id: string) => Promise; current: import("vue").ComputedRef | undefined>; findTab: (id: string) => import("../typedoc-entry.ts").Tab | undefined; findTabIndex: (id: string) => number; tabs: import("vue").ComputedRef[]>; updateContext: (id: string, setter: (ctx: import("../typedoc-entry.ts").ProcessTabContext) => import("../typedoc-entry.ts").ProcessTabContext) => void; }; setOption: (key: K, newValueOrSetter: T | ((oldValue: T) => T)) => void; setPackageManager: (pm: SandboxOptions['process']['packageManager']) => void; }; /** * The main composable of Karagöz Sandbox. * * Injects and uses the provided web container promise, performs bootstrapping and returns an object that * is the central piece in the logic of the sandbox. * * This composable is created as a shared instance (singleton, if you will) using VueUse's `createSharedComposable()`. */ export declare const useSandbox: typeof useSandboxInternal; export {};