import type { ToolResultView } from "@stigmer/sdk";
/** Props for {@link ResultView}. */
export interface ResultViewProps {
    /** The normalized result view to render. */
    readonly view: ToolResultView;
    /**
     * Whether the file/diff variants render the filename header. Defaults to
     * `true`. Set to `false` where an ancestor already names the file (a tool-call
     * row whose header shows the path) so the body is not captioned with a path
     * the user just read; the `+N -M` stats still render.
     */
    readonly showFileName?: boolean;
    /**
     * Whether the result body renders its headline summary stat — the diff's
     * `+N -M`, or a search/list's `N files` / `N matches` / `N items` count.
     * Defaults to `true`. Set to `false` where an ancestor row already shows the
     * summary (a tool-call row that renders `summarizeResultView`) so the body does
     * not repeat the count the user just read. A search/list still surfaces a
     * truncation note when suppressed, since that is information the row header does
     * not carry. Orthogonal to {@link showFileName}: the approval gate suppresses
     * the name but keeps the stats.
     */
    readonly showStats?: boolean;
    /** Additional CSS class names for the root container. */
    readonly className?: string;
}
/**
 * Renders a {@link ToolResultView} with a type-appropriate treatment.
 *
 * This is the presentation half of the tool-result pipeline: `@stigmer/sdk`'s
 * `normalizeToolResult` turns an opaque result string into a typed view, and
 * this component renders it. Importable on its own by platform builders who
 * compose custom tool UIs.
 */
export declare function ResultView({ view, showFileName, showStats, className }: ResultViewProps): import("react/jsx-runtime").JSX.Element | null;
/**
 * Returns a compact one-line summary fragment for a result view, suitable for a
 * collapsed tool row (e.g. "+40 -0", "exit 1", "2 matches"). Returns null when
 * there is nothing useful to summarize.
 */
export declare function summarizeResultView(view: ToolResultView): string | null;
//# sourceMappingURL=ResultView.d.ts.map