import type { JournalEntry, ToolHandlerConfig } from '../../../types/index.js'; import type { Database } from 'better-sqlite3'; import type { TagsManager } from '../tags.js'; import type { NativeConnectionManager } from '../native-connection.js'; export declare const ENTRY_COLUMNS: string; export declare const ALIASED_ENTRY_COLUMNS: string; /** * Shared context for entries manager operations */ export interface EntriesSharedContext { ctx: NativeConnectionManager; tagsMgr: TagsManager; db: Database; config?: ToolHandlerConfig; } /** * Convert a generic database row to a JournalEntry by attaching its tags. * Delegates to rowsToEntries to utilize batch tag fetching. */ export declare function rowToEntry(tagsMgr: TagsManager, row: unknown): JournalEntry; /** * Convert multiple generic database rows to JournalEntries */ export declare function rowsToEntries(tagsMgr: TagsManager, rows: unknown[]): JournalEntry[]; /** * Helper: Safely convert a row from execQuery/get to an object. */ export declare function rowToObject(row: unknown): Record | undefined; /** * Typed wrapper for `db.prepare(sql).get(…params)`. * Returns the row cast to a `Record` for safe access. */ export declare function queryRow(db: Database, sql: string, ...params: unknown[]): Record | undefined; /** * Typed wrapper for `db.prepare(sql).all(…params)`. * Returns rows cast to `Record[]` for safe access. */ export declare function queryRows(db: Database, sql: string, ...params: unknown[]): Record[]; //# sourceMappingURL=shared.d.ts.map