import * as react from 'react';
import { HTMLAttributes, ReactNode } from 'react';
/** One figure and what it counts. */
interface StatListItem {
/** The figure. Emphasised — it is what the eye lands on first. */
value: ReactNode;
/** What the figure counts. */
label: ReactNode;
/**
* Stable handle for this row, for an agent reading a figure off the page.
*
* Defaults to `label` when it is a plain string, which covers the common
* case without asking a caller to repeat themselves.
*/
key?: string;
}
interface StatListProps extends HTMLAttributes {
/** The figures. Data rather than children — the repeated thing is a shape. */
items: StatListItem[];
/** Which edge the stack aligns to. Default `"right"`. */
align?: "left" | "right";
}
/**
* The mono figure stack — `70 packages / 261 components / MIT licensed`.
*
* The Inspiration index and `/packages` each hand-rolled this from tokens, which
* is the gallery working as intended: it stress-tests the kit, and what it
* hand-rolls is the gap list. The list only pays off when the gap comes back
* here, otherwise every surface keeps a copy and they drift apart.
*
* Takes `items` as DATA rather than children. What those surfaces repeat is a
* shape, not a layout, so there is nothing to assemble at the call site — and a
* data prop is what an agent can emit, which children are not.
*
* The value is a `` rather than a colour, because in most of these stacks the
* figure is the only part that is not muted, and expressing that structurally
* keeps it meaningful when a design replaces the styling wholesale.
*/
declare const StatList: react.ForwardRefExoticComponent>;
export { StatList, type StatListItem, type StatListProps };