import { SelectionAvailability, SelectionChoice } from '@fanfare-io/fanfare-sdk-core/selections'; export type SelectionLockedReason = "checkout" | "final" | "bid"; export interface SelectionSummaryProps { /** The captured pair being displayed. Presentational only — no fetching. */ choice: SelectionChoice; /** Already-translated eyebrow above the pick; the generic one stands when absent. */ label?: string | null; /** Host-derived display strings. Absent renders the generic label with no item detail. */ productName?: string | null; variantLabel?: string | null; /** Live availability of the displayed pick; an unavailable pick shows the stale note. */ availability?: SelectionAvailability; /** Suppresses the change affordance and shows the matching locked copy. Wins over onChangeRequest. */ lockedReason?: SelectionLockedReason | null; /** The consumer asked to change the pick; the host decides what that opens. */ onChangeRequest?(): void; class?: string; className?: string; } /** The locked-state sentence each reason reads out, so a caller never states it a second time. */ export declare const SELECTION_LOCKED_COPY: { readonly checkout: "selection.locked.checkout"; readonly final: "selection.locked.final"; readonly bid: "selection.locked.bid"; }; /** * A compact read-out of a pick that has already been captured. * * Purely presentational: it never fetches, never opens a picker, and never mutates * the pick. A pick that has gone unavailable is said so here rather than left to be * discovered at checkout. */ export declare function SelectionSummary(props: SelectionSummaryProps): import("solid-js").JSX.Element; export declare namespace SelectionSummary { var displayName: string; }