/** Exact, bounded facts computed from a complete array, never sampled rows. * They let an agent answer boolean-count questions without reading an elided tail. */ export declare function nullFacts(rows: readonly unknown[]): string; export declare function booleanFacts(rows: readonly unknown[]): string; /** Keep complete rare boolean populations, including their identifiers and * neighboring fields. Counts alone cannot answer which records need attention. * Bound both fields and population size; never sample a population and call it * complete. Missing/null/string values are not boolean false. */ export declare function rareBooleanRows(rows: readonly unknown[]): Set; /** Retain complete rare categories without knowing the user's target vocabulary. * High-cardinality IDs are rejected. Each admitted population is complete and * counted before elision; a shared row budget and group cap bound the output. */ export declare function rareStringGroups(rows: readonly unknown[]): { keep: Set; facts: string; }; //# sourceMappingURL=json-facts.d.ts.map