import "./record_related.css"; import type * as React from "react"; import { useRender } from "@base-ui/react/use-render"; import { type StyleProps } from "./style_props"; /** One register that names this record, and how many of its rows do. */ export interface RecordRelatedItem { /** What the rows ARE, as the register is headed — "Orders", "Trips". */ label: string; /** How many of them name this record. NONE is not drawn: a relation a record * turns out not to have is not a line about it. */ count: number; /** The register, filtered to this record, as a URL — a real anchor, so * middle-click and open-in-new-tab work. */ href?: string; /** The same destination as an in-app route. Pass one or the other; `href` * wins, because an address the reader can copy is the better of two. */ onOpen?: () => void; } export interface RecordRelatedProps extends StyleProps { items: readonly RecordRelatedItem[]; testID?: string; ref?: React.Ref; render?: useRender.RenderProp; } /** * THE REGISTERS THAT NAME THIS RECORD — a party's orders, the trips that named a * service — as a line each: what they are, how many, and the way to them. * * IT IS A DESTINATION, NOT A SECTION. These rows belong to another entity and * this record never acts on them, so the record states that they exist, counts * them, and hands the reader the register that owns them. A count of none is not * drawn at all, and with nothing left to draw neither is the list. */ export declare function RecordRelated(props: RecordRelatedProps): React.JSX.Element | null;