/**
 * Forward-only file-based migration runner using PRAGMA user_version.
 *
 * Applies `migrations/<dbLabel>/v0NN_*.sql` files in ascending numeric order.
 * Uses PRAGMA user_version as the version counter — independent of any
 * schema_version tables the caller may maintain inline.
 *
 * Designed to run inside better-sqlite3 DB constructors (sync path).
 * Sync fs calls here are legitimate: we run before any async code path
 * and the DB opener is already synchronous by nature of better-sqlite3.
 */
import type Database from 'better-sqlite3';
export interface MigrationResult {
    degraded: boolean;
    migrationsApplied: number;
    fromVersion: number;
    toVersion: number;
}
/**
 * Run pending file-based migrations for `dbLabel` against `db`.
 *
 * @param db       - A better-sqlite3 Database instance (any subtype).
 * @param dbLabel  - Subdirectory name under `migrations/` (e.g. 'memory').
 * @returns        - Migration result; `degraded: true` means a migration
 *                   failed and a backup was saved next to the DB file.
 */
export declare function runMigrations(db: Database.Database, dbLabel: string): MigrationResult;
