import type { EntityMaskPattern, ParsedPage } from "../types.js"; export type FactKind = "money" | "percent" | "timeframe" | "date" | "isoDate" | "form" | "ratio" | "measurement"; export interface FactSpan { value: string; kind: FactKind; } export interface NamedEntity { value: string; source: "proper-noun" | "cue-word" | "json-ld"; type?: "organization" | "person" | "product" | "law" | "standard" | "place" | "other"; } export interface Citation { href: string; domain: string; authority: "authoritative" | "general"; reason?: "tld" | "allowlist"; } export interface GroundedClaim { sentence: string; facts: string[]; citations: string[]; } export interface PageFacts { /** EXACTLY today's extractRawFacts() output (run on entity-masked text). Frozen. */ citableFacts: string[]; measurements: FactSpan[]; namedEntities: NamedEntity[]; citations: Citation[]; groundedClaims: GroundedClaim[]; } export declare function extractCitableFacts(text: string): string[]; export declare function extractMeasurements(maskedText: string): FactSpan[]; export declare function extractNamedEntities(maskedText: string, jsonLd?: unknown[]): NamedEntity[]; export declare const DEFAULT_CITATION_ALLOWLIST: readonly string[]; export declare function registrableDomain(host: string): string; export declare function classifyCitations(resolvedHrefs: readonly string[], pageUrl: string, allowlist?: readonly string[]): Citation[]; export declare function hasAuthoritativeCitation(resolvedHrefs: readonly string[], pageUrl: string, allowlist?: readonly string[]): boolean; /** * Deterministic approximation of "a verifiable claim": a block (

/

  • ) that * contains a statistic AND an outbound citation. Approximated at block level, * not exact sentence level — documented limitation. Detects co-occurrence, not * semantic truth. Consume at `speculative` confidence. */ export declare function extractGroundedClaims(html: string, pageUrl: string, allowlist?: readonly string[]): GroundedClaim[]; export declare function extractPageFacts(page: Pick, entityPatterns: EntityMaskPattern[], allowlist?: readonly string[]): PageFacts; //# sourceMappingURL=fact-extraction.d.ts.map