import React from 'react'; export type ConfidenceLevel = 'low' | 'medium' | 'high'; export interface ConfidenceIndicatorProps extends Omit, 'children'> { level: ConfidenceLevel; /** * What the level is based on. REQUIRED, and the reason this component exists * rather than a coloured dot: a confidence with no stated basis is a number * the reader has no way to weigh. "3 of 4 sources agree", "no matching * records found", "single unverified source". */ basis: string; /** Override the level's word. Keep it a word, not a percentage. */ label?: string; } /** * ConfidenceIndicator — how much to trust the thing next to it. * * THERE IS NO PERCENTAGE PROP, AND THERE WILL NOT BE ONE * * "87% confident" reads as a measurement. Almost nowhere is it one: it is * usually a softmax score, a heuristic, or a number a model produced about * itself — none of which are calibrated probabilities, and all of which invite * a reader to treat two digits of precision as real. Three levels cannot * overclaim in that way. * * `basis` IS REQUIRED FOR THE SAME REASON. A level with nothing behind it is * decoration that changes behaviour: people act on "high confidence" whether or * not anything justifies it. Making the justification a required prop is the * only enforcement available here, and it is a type error rather than a policy * — which is the strongest kind this system can offer. * * It renders as text plus a three-bar meter, never the meter alone. The bars * differ in filled COUNT, not only in colour, so the reading survives greyscale * and forced-colours mode. */ export declare const ConfidenceIndicator: React.ForwardRefExoticComponent>; //# sourceMappingURL=ConfidenceIndicator.d.ts.map