/** * The workflow panel's right-Sidebar seat — the host wrapper around the shared * product shell (plan dsh-panel-unification Tasks 2–3). * * This file owns exactly three things, all seat-specific: * * - the visibility gate (a collapsed sidebar column renders and polls nothing); * - the destination's home: the entry store, keyed by the sidebar tab id, so the * destination survives the body's unmount when another pane tab activates; * - the host's "open the full page" affordance, whose handler is the plugin * * The transport states, the adapter and the shell all come from `panel-shell.tsx` * — the same module the keyed `main` panel mounts, so the two seats cannot drift. */ import * as React from 'react'; import type { PropsLocale, PropsRuntime, TranslateNS } from '@deepseek-ai/dsh-client-ui-slots'; import type { SessionId } from '@deepseek-ai/dsh-session'; import type { PropsStore } from '@deepseek-ai/dsh-client-store'; import type { MstarWorkflowPickerClient } from './workflow-picker-client.ts'; import type { MstarPanelSnapshotClient } from './panel-snapshot-client.ts'; import type { UseSessions } from './use-mstar-workflow-picker.ts'; import { createPanelStore } from './panel-store.ts'; import { type HostLocaleFace } from './panel-shell.tsx'; import type { HostThemeFace } from './theme.ts'; export type { HostLocaleFace } from './panel-shell.tsx'; export type { HostThemeFace } from './theme.ts'; /** The sidebar body seat's props: runtime share, entry store, `t` seat and the plugin-bound clients. */ export interface MstarPanelBodyProps extends PropsRuntime<'sidebar.right.pane.tab'>, PropsStore>, PropsLocale<'mstar-panel'> { /** Namespace-bound translate seat (`locale: 'mstar-panel'`). */ t: TranslateNS<'mstar-panel'>; /** Current session identity — the session standard kit's own prop. */ sessionId?: SessionId; /** Host session-list selector hook (the global standard seat). */ useSessions?: UseSessions; /** The workflow-pick client (the picker's WRITE; the read is `panelSnapshot`). */ picker?: MstarWorkflowPickerClient; /** The store-backed snapshot client, bound by the plugin entry. Absent only in a composition that injects no transport. */ panelSnapshot?: MstarPanelSnapshotClient; /** The host's locale runtime, so the product's copy follows the host language. */ localeFace?: HostLocaleFace; /** The host's colour scheme, so the product flips its own token block. */ themeFace?: HostThemeFace; } export declare function PanelView(props: MstarPanelBodyProps): React.JSX.Element | null;