/**
 * Configuration Persistence Utilities
 *
 * Handles reading/writing config to the database_metadata table's config_json column.
 * Separated from tools/config.ts and server/state.ts to avoid circular dependencies.
 *
 * CRITICAL: NEVER use console.log() - stdout is JSON-RPC protocol.
 *
 * @module utils/config-persistence
 */
import type Database from 'better-sqlite3';
/**
 * Persist a config value to the database_metadata table's config_json column.
 *
 * Idempotently adds the config_json column if it doesn't exist.
 * Reads existing persisted config, merges the new value, and writes back.
 *
 * @param conn - better-sqlite3 Database connection
 * @param key - Config key name
 * @param value - Config value to persist
 */
export declare function persistConfigValue(conn: Database.Database, key: string, value: string | number | boolean): void;
/**
 * Load persisted config from the database_metadata table.
 *
 * Called when a database is selected to restore config changes
 * that were persisted from a previous session.
 *
 * @param conn - better-sqlite3 Database connection
 * @returns Record of persisted config key-value pairs, or empty object
 */
export declare function loadPersistedConfig(conn: Database.Database): Record<string, unknown>;
//# sourceMappingURL=config-persistence.d.ts.map