import { type AssertionCandidate, type AssertionSlot, type AssertionStatus, type ReconciliationResult, type UserAssertion } from './domain.js'; export type UserAssertionSource = { id: string; kind: 'user' | 'conversation' | 'connector' | 'work_folder' | 'local_source' | 'inference'; label?: string; category?: 'files' | 'recent_documents' | 'calendar' | 'tasks' | 'notes' | 'mail' | 'messages' | 'code_activity'; observedAt: number; }; export declare function reconcileAssertion(candidate: AssertionCandidate, now?: number, options?: { restoreDeleted?: boolean; }): ReconciliationResult; export declare function getUserAssertion(id: string): UserAssertion | undefined; export declare function getAssertionSlot(id: string): AssertionSlot | undefined; export declare function listSlotAssertions(slotId: string): UserAssertion[]; export declare function listUserAssertions(input?: { principalId?: string; statuses?: AssertionStatus[]; limit?: number; }): UserAssertion[]; export declare function listUserAssertionSources(assertionIds: string[]): Map; export declare function getActiveAssertionByPredicate(predicate: string): UserAssertion | undefined; export declare function getActiveAssertionForSlot(input: { subject: AssertionSlot['subject']; predicate: string; scope: AssertionSlot['scope']; }): UserAssertion | undefined; export declare function getUserTimezone(): string | undefined; export declare function linkAssertionEvidence(assertionId: string, evidenceId: string, relation: 'supports' | 'contradicts' | 'supersedes', confidence: number, now?: number): void; export declare function mergeAssertionObservation(input: { assertionId: string; candidate: AssertionCandidate; evidenceIds: string[]; }, now?: number): UserAssertion; export declare function setAssertionStatus(assertionId: string, status: AssertionStatus, input: { actor: 'user' | 'runtime' | 'maintenance' | 'migration'; reason: string; now?: number; }): UserAssertion; /** Move an assertion and its version history to a different visibility scope. */ export declare function setUserAssertionScope(assertionId: string, nextScope: AssertionSlot['scope']): UserAssertion; export declare function deleteUserAssertion(id: string, now?: number): boolean;