import type { CodeAnchor } from "../code-evidence/types.js"; import { type WikiPageType } from "../wiki-validation.js"; import { type StakeholderAffiliation } from "../stakeholder.js"; export declare const EVIDENCE_CLAIM_KINDS: readonly ["fact", "stakeholder", "requirement", "decision", "constraint", "invariant", "exception", "behavior", "risk", "incident", "procedure", "inference", "hypothesis"]; export declare const EVIDENCE_CLAIM_ORIGINS: readonly ["explicit", "extracted", "inferred", "synthesized"]; export declare const EVIDENCE_CLAIM_STATUSES: readonly ["active", "ambiguous", "contradicted", "superseded"]; export declare const EVIDENCE_RELATION_TYPES: readonly ["duplicate", "contradicts", "supersedes"]; export type EvidenceClaimKind = (typeof EVIDENCE_CLAIM_KINDS)[number]; export type EvidenceClaimOrigin = (typeof EVIDENCE_CLAIM_ORIGINS)[number]; export type EvidenceClaimStatus = (typeof EVIDENCE_CLAIM_STATUSES)[number]; export type EvidenceRelationType = (typeof EVIDENCE_RELATION_TYPES)[number]; export interface EvidenceRelationHint { type: EvidenceRelationType; targetClaimId: string; } export interface EvidenceTargetHint { entityKey?: string; pagePath?: string; pageTitle?: string; pageType?: WikiPageType; role?: string; organization?: string; emailDomain?: string; affiliation?: StakeholderAffiliation; codeResourceUri?: string; } export interface EvidenceClaim { id: string; sourceUri: string; segmentId: string; text: string; kind: EvidenceClaimKind; origin: EvidenceClaimOrigin; confidence: number; status: EvidenceClaimStatus; target?: EvidenceTargetHint; codeAnchor?: CodeAnchor; relations: EvidenceRelationHint[]; createdAt: string; updatedAt: string; } export interface EvidenceClaimInput { id?: string; text: string; kind: EvidenceClaimKind; origin: EvidenceClaimOrigin; confidence: number; status?: EvidenceClaimStatus; target?: EvidenceTargetHint; relations?: readonly EvidenceRelationHint[]; } export declare function evidenceClaimId(params: { sourceUri: string; segmentId: string; text: string; kind: EvidenceClaimKind; origin: EvidenceClaimOrigin; }): string; export declare function createEvidenceClaim(params: { sourceUri: string; segmentId: string; input: EvidenceClaimInput; codeAnchor?: CodeAnchor; now?: string; /** `null` means identity was resolved but its domain is unknown. */ userEmailDomain?: string | null; }): EvidenceClaim; export declare function evidenceClaimIsValid(value: unknown): value is EvidenceClaim; export declare function normalizedClaimText(text: string): string; //# sourceMappingURL=evidence-claim.d.ts.map