import { Message, MessageContentPart } from '../backend/message.js'; import { BaseMemory } from './base.js'; import { RequiredNested } from '../internals/types.js'; import '../internals/serializable.js'; import '../internals/helpers/guards.js'; import 'ai'; import '../errors.js'; interface Handlers { removalSelector: (messages: Message[]) => Message | Message[]; } interface SlidingWindowMemoryInput { size: number; handlers?: Partial; } declare class SlidingMemory extends BaseMemory { readonly messages: Message[]; readonly config: RequiredNested; constructor(config: SlidingWindowMemoryInput); add(message: Message, index?: number): Promise; delete(message: Message): Promise; reset(): void; createSnapshot(): { config: RequiredNested; messages: Message[]; }; loadSnapshot(state: ReturnType): void; } export { type Handlers, SlidingMemory, type SlidingWindowMemoryInput };