import { defineWidget } from '../../client/lib/contract/helpers'; /** * 上下文压缩 — the meter, the one-click compact button, and what folding actually * reclaimed, in ONE card. * * The two halves were shipped separately for a day (一键压缩 showed the percent and * the corner button; a 上下文压缩 card reported the folds) and the owner merged them * on 2026-09-28: they are one story told twice, and a rail slot is worth more than * the split. The button therefore moved to the TOP-RIGHT corner (it used to sit * bottom-right to stay clear of a head that had nothing beside it) and the rest of * the card carries the information: the meter as the figure, the fold history as * three rows. * * The card ALWAYS renders when a session exists — it owns an action, and a button * that disappears with its data is worse than rows showing `—`. A session that has * never compacted prints 压缩次数 0 with `—` (muted) for the two figures that have * no reading yet; the SAME three rows are what a reviewable preview fills from the * widget's own example. */ declare function contextRender(stats: Parameters['render']>[0]): ReturnType['render']>>; declare const _default: { id: string; name: () => string; desc: () => string; builtin: true; group: string; render: typeof contextRender; example: { stats: { compactions: { count: number; reclaimed: number; items: number; recent: { at: number; reclaimed: number; items: number; }[]; }; }; }; }; export default _default;