/** * The dshloader UI surface: virtual slots, the curated icon set, and the base * controls, wrapped as one `ui` facade. * * Consumers reach this at runtime through `@dsh-plugin/dsh-loader/client`, which * the DSH client module table resolves by stripping the `/client` suffix to * dshloader's registered bundle id — so no alias and no load-order coordination * is needed (see docs/ui.md). * * @module @dsh-plugin/dsh-loader/ui */ import { type LayoutFrameState } from './anchors.js'; import { type CreateUiOptions, type UiAPI } from './slots.js'; export * from './slots.js'; export * from './anchors.js'; export * from './style.js'; export * from './icons.js'; export * from './components.js'; export * from './menu.js'; /** The `ui` facade plus the built-in anchor helpers. */ export interface DshLoaderUi extends UiAPI { /** Read the shell's sidebar layout state, when the anchor resolves. */ layoutFrame(): LayoutFrameState | undefined; } /** * Build the UI facade and seed it with the dsh 1.x anchor table. * * @param options - forwarded to {@link createUiAPI} (observe root, warn sink). */ export declare function createUi(options?: CreateUiOptions): DshLoaderUi;