/** * `/api/width-slider` 端点的 5 个方法实现。 * * 分支顺序、错误码与消息文本、载荷形状都是 host/client 之间的隐式契约 * (见 docs/host-split-spec.md §7),逐字保留。写盘与热切换分开处理: * 文件落盘成功即 ok:true,热切换异常仅告警,避免「已落盘但返回失败」 * 导致 client 重复提交。 */ import type { EndpointHandler } from './endpointChannel.js'; import type { SettingsStore } from './settingsStore.js'; import type { WorkspaceGroupsStore } from './workspaceGroupsStore.js'; import { type FeatureSettings } from '../shared/settings.js'; export interface HostApiDeps { settings: SettingsStore; groups: WorkspaceGroupsStore; logger?: { warn?: (...args: unknown[]) => void; info?: (...args: unknown[]) => void; }; /** 传给 `deleteSessionById` 的原始 host ctx(基线是 `baseCtx as unknown as SessionDeleteCtx`)。 */ baseCtx: unknown; /** 设置写入成功后热切换中文强制(基线 `:224` 的 `syncChinesePrompt(next)`)。 */ onSettingsApplied: (next: FeatureSettings) => void; } /** `/api/width-slider` 的方法分发器。 */ export declare function createHostApi(deps: HostApiDeps): EndpointHandler;