/**
 * TestBrainPort — Map-based BrainPort for unit testing.
 *
 * No Brain HTTP dependency. All four memory tiers are backed by in-memory
 * Maps. Use for agent unit tests that need to archive/query without
 * external infrastructure.
 *
 * OTel spans are emitted on archiveKnowledge and queryKnowledge via
 * @opentelemetry/api. Gracefully degrades to noop spans when no OTel SDK
 * is installed.
 *
 * @public
 */
import type { BrainPort, BrainEntry, BrainEntryInput, BrainQueryFilters, PostmortemInput, LessonInput } from "../ports/brain.js";
import type { WorkingMemoryPort, EpisodicMemoryPort, SemanticMemoryPort, ProceduralMemoryPort } from "../ports/brain.js";
export declare class TestBrainPort implements BrainPort {
    readonly working: WorkingMemoryPort;
    readonly episodic: EpisodicMemoryPort;
    readonly semantic: SemanticMemoryPort;
    readonly procedural: ProceduralMemoryPort;
    private entries;
    private nextId;
    constructor();
    archiveKnowledge(entry: BrainEntryInput): Promise<BrainEntry | null>;
    queryKnowledge(query: string, filters?: BrainQueryFilters): Promise<BrainEntry[]>;
    /** No-op: satisfies BrainPort.archivePostmortem for unit tests. */
    archivePostmortem(_input: PostmortemInput): Promise<void>;
    /** No-op: satisfies BrainPort.archiveLesson for unit tests. */
    archiveLesson(_input: LessonInput): Promise<void>;
    /** Clear all entries. */
    reset(): void;
}
//# sourceMappingURL=test-brain-port.d.ts.map