/** SDK-owned platform module. This implementation is maintained in goodvibes-sdk. */
/**
 * Session Lineage Tracker
 *
 * Append-only micro-log that records the original task and a one-line entry
 * per compaction. Entries are never modified or removed. The section is
 * omitted entirely from compacted output when no task has been set.
 *
 * Lifecycle:
 *   - Owned instance: wire a `SessionLineageTracker` through bootstrap/services.
 *   - Session-scoped: call `reset()` when starting a new session.
 *   - Append-only: entries are never modified or removed after being added.
 *   - `setOriginalTask()` is idempotent — subsequent calls are silently ignored
 *     to support multiple init paths that may each attempt to set the task.
 */
export declare class SessionLineageTracker {
    private originalTask;
    private entries;
    /**
     * Set the original task for this session.
     * Idempotent — if called more than once only the first call takes effect.
     * Safe to call from multiple init paths.
     */
    setOriginalTask(task: string): void;
    /**
     * Add a compaction entry. Called after each successful compaction.
     * Increments the internal counter and appends one line: `- #N: {summary}`
     * Empty or whitespace-only summaries are silently ignored.
     */
    addCompactionEntry(summary: string): void;
    /** Reset to initial state. Use when starting a new session. */
    reset(): void;
    /** Get the number of compactions performed. */
    getCompactionCount(): number;
    /** Get a copy of the lineage entries (read-only snapshot). */
    getEntries(): string[];
    /**
     * Format the lineage for compaction output.
     * Returns null if originalTask was never set (section is omitted).
     */
    format(): string | null;
}
//# sourceMappingURL=session-lineage.d.ts.map