/**
 * Core Memory Repository SQLite 구현체
 * CoreMemoryDatabaseConnection 인터페이스를 사용하여 구현
 */
import type { CoreMemoryRepository } from '../../../domains/memory/repositories/core-memory-repository.interface.js';
import type { CoreMemoryRecord, CreateCoreMemoryInput, UpdateCoreMemoryInput } from '../../../domains/memory/repositories/core-memory-repository.interface.js';
import type { CoreMemoryDatabaseConnection } from '../../../domains/memory/repositories/core-memory-database.interface.js';
/**
 * Core Memory Repository SQLite 구현체
 */
export declare class CoreMemoryRepositorySqliteImpl implements CoreMemoryRepository {
    private db;
    constructor(db: CoreMemoryDatabaseConnection);
    /**
     * Core Memory 생성
     */
    create(input: CreateCoreMemoryInput): Promise<CoreMemoryRecord>;
    /**
     * ID로 Core Memory 조회
     */
    findById(core_id: string): Promise<CoreMemoryRecord | null>;
    /**
     * agent_id와 key로 Core Memory 조회
     */
    findByKey(agent_id: string, key: string): Promise<CoreMemoryRecord | null>;
    /**
     * agent_id로 모든 Core Memory 조회
     */
    findByAgentId(agent_id: string): Promise<CoreMemoryRecord[]>;
    /**
     * always_load=true인 Core Memory 조회
     */
    findAlwaysLoad(agent_id?: string): Promise<CoreMemoryRecord[]>;
    /**
     * Core Memory 업데이트
     */
    update(core_id: string, input: UpdateCoreMemoryInput): Promise<CoreMemoryRecord | null>;
    /**
     * agent_id와 key로 Core Memory 업데이트
     */
    updateByKey(agent_id: string, key: string, input: UpdateCoreMemoryInput): Promise<CoreMemoryRecord | null>;
    /**
     * Core Memory 삭제
     */
    delete(core_id: string): Promise<boolean>;
    /**
     * agent_id와 key로 Core Memory 삭제
     */
    deleteByKey(agent_id: string, key: string): Promise<boolean>;
    /**
     * agent_id로 모든 Core Memory 삭제
     */
    deleteByAgentId(agent_id: string): Promise<number>;
    /**
     * 모든 Core Memory 조회 (관리용)
     */
    findAll(): Promise<CoreMemoryRecord[]>;
    /**
     * Core Memory 개수 조회
     */
    count(agent_id?: string): Promise<number>;
}
//# sourceMappingURL=core-memory-repository-sqlite.impl.d.ts.map