import { Message, MessageContentPart } from '../backend/message.cjs'; import { BaseMemory } from './base.cjs'; import { RequiredNested } from '../internals/types.cjs'; import '../internals/serializable.cjs'; import '../internals/helpers/guards.cjs'; import 'ai'; import '../errors.cjs'; 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 };