/** Injected stylesheet id. */ export declare const TOOLS_STYLE_ID = "dsh-ws-tools-merge-style"; /** Wiring for the tools placement. */ export interface SidebarToolsMergeOptions { /** Read the toggle (default on until resolved). */ enabled: () => boolean; } /** The installed handle: re-evaluate the toggle, or tear the stylesheet down. */ export interface SidebarToolsMergeHandle { /** * Re-evaluate the toggle now. * * The production path re-syncs through the `enabled` callback plus the observer; * this method is the tests' explicit re-sync entry (see the handle.sync() calls * in test/sidebarToolsMerge.test.ts). The signature and behaviour are unchanged. */ sync: () => void; /** Remove the stylesheet and stop observing. */ dispose: () => void; } /** * Install the tools placement. One installation at a time: a second one takes the * stylesheet id over and the first one's writes go to a detached node. * @param options - the toggle access. * @returns the handle that re-syncs or removes the placement. */ export declare function installSidebarToolsMerge(options: SidebarToolsMergeOptions): SidebarToolsMergeHandle;