/**
 * Memory Provider Factory — creates local SQLite memory provider.
 *
 * No remote/cloud memory service exists. Memory is always local.
 * This factory is the single integration point for stdio-server.ts.
 */
import type { LocalMemoryProvider } from "./local-memory-provider.js";
import { type MemoryProviderFactoryConfig } from "./memory-embedding-config.js";
export type { MemoryProviderFactoryConfig } from "./memory-embedding-config.js";
export interface MemoryProviderFactoryResult {
    provider: LocalMemoryProvider | null;
    mode: "local" | "none";
    error?: string;
}
/**
 * Create the local SQLite memory provider.
 * Returns null (mode "none") only if better-sqlite3 is not available.
 */
export declare function createMemoryProvider(config: MemoryProviderFactoryConfig): MemoryProviderFactoryResult;
/**
 * Build MemoryProviderFactoryConfig from environment variables.
 * Used by stdio-server to auto-configure memory.
 *
 * Environment variables:
 *   QMEMORY_EMBEDDING_TIMEOUT_MS — embedding request timeout (default: 1500)
 *   QMEMORY_USER_PREFIX        — user ID prefix for multi-tenant
 *
 * Fixed embedding resolution:
 *   Layer 0: Explicit ModelRegistry "embedding" binding
 *   Layer 1: LLM Router default embedding endpoint (BAAI/bge-m3)
 *   Layer 2: FTS5 pure text (NullEmbeddingProvider)
 */
export declare function resolveMemoryConfigFromEnv(): MemoryProviderFactoryConfig;
