import "./sources.css"; import type * as React from "react"; import { useRender } from "@base-ui/react/use-render"; import { type StyleProps } from "./style_props"; export type SourceKind = "record" | "document" | "table" | "web" | "knowledge"; export interface SourceRef { id: string; label: string; kind?: SourceKind; /** A locator after the label — "page 2", a record code, a column. */ detail?: string; } export interface SourcesProps extends StyleProps { sources: SourceRef[]; /** Overline above the chips. Default "Sources"; pass `null` for chips only — * the form used INSIDE a `Change` (a review card's own header/body). */ label?: string | null; /** Pass to make each chip openable (jump to the record / document / page). The * chips then show a hover state + an open glyph; the host does the navigation. */ onOpen?: (source: SourceRef) => void; testID?: string; ref?: React.Ref; render?: useRender.RenderProp; } /** * Where the AI's output came FROM — a row of source chips under a generated * answer, summary, or extracted value, each with a per-kind coloured glyph. * When `onOpen` is set each chip is pressable (hover wash + an open glyph) and * the host navigates to the record / document / page. Provenance is what makes * AI output verifiable; show it on anything the agent produced from data it read. * Renders nothing for an empty list. */ export declare function Sources(props: SourcesProps): React.ReactElement> | null;