import type { ShallowRef } from "vue"; import type { Terminal } from "../../../core/types.js"; import type { FramePerfStore } from "../../../observability/frame-perf-store.js"; import type { TuiProfiler } from "../../../observability/tui-profiler.js"; import type { DomRenderer } from "../../../renderer/dom/dom-renderer.js"; import type { TerminalSchedulerInvalidateOptions } from "../../context.js"; import type { RenderManager } from "../../render/render-manager.js"; export declare function createTerminalProviderScheduler(options: { terminal: Terminal; renderer: ShallowRef; render: RenderManager; framePerf: FramePerfStore; profiler: TuiProfiler | null; isUnmounting: () => boolean; afterFlush: () => void; }): { readonly api: Readonly<{ invalidate: (options?: TerminalSchedulerInvalidateOptions) => void; flush: () => void; flushNow: () => void; configure: (options: import("../../context.js").TerminalSchedulerConfig) => void; queueFrameTask: (task: import("../../context.js").TerminalFrameTask) => boolean | void; cancelFrameTask?: (id: string) => boolean | void; requestLive: (reason: string) => () => void; dropLive: (reason: string) => void; isInsideFrame: () => boolean; }>; readonly dispose: () => void; };