import type { IElicitationStore } from '../interfaces/elicitation-store.interface'; import type { ElicitationRecord, ElicitationResultRecord } from '../interfaces/elicitation.interface'; /** * In-memory `IElicitationStore`. Suitable for development and single-instance * deployments. For multi-instance / multi-replica setups, plug in a * Redis-backed store via `storeConfiguration.type = 'custom'`. */ export declare class MemoryElicitationStore implements IElicitationStore { private readonly logger; private readonly elicitations; private readonly results; /** `${userId}:${type}` → most recent matching elicitationId. */ private readonly userTypeIndex; storeElicitation(elicitation: ElicitationRecord): Promise; getElicitation(elicitationId: string): Promise; updateElicitation(elicitationId: string, updates: Partial): Promise; storeResult(result: ElicitationResultRecord): Promise; getResult(elicitationId: string): Promise; findResultByUserAndType(userId: string, type: string): Promise; removeElicitation(elicitationId: string): Promise; getElicitationsBySession(sessionId: string): Promise; cleanupExpired(): Promise; private indexUserType; } //# sourceMappingURL=memory-elicitation.store.d.ts.map