import type { MemoryStore } from '../store/index.js';
import type { MemoryPipeline } from './types.js';
import type { FactExtractor } from '../facts/extractor.js';
export interface FactPipelineConfig {
    /** The store both subflows share. */
    readonly store: MemoryStore;
    /**
     * Fact extractor. Defaults to `patternFactExtractor()` — zero-dep,
     * zero-cost, baseline quality. Swap for
     * `llmFactExtractor({ provider })` for semantic quality.
     */
    readonly extractor?: FactExtractor;
    /** Forwarded to `loadFacts` (upper bound on `list` page size). */
    readonly loadLimit?: number;
    /** Tier filter for read (e.g. `['hot']`). */
    readonly tiers?: ReadonlyArray<'hot' | 'warm' | 'cold'>;
    /** Tier to tag written facts with. */
    readonly writeTier?: 'hot' | 'warm' | 'cold';
    /** Optional TTL for written facts (ms from write time). */
    readonly writeTtlMs?: number;
    /** Forwarded to `formatFacts`. */
    readonly formatHeader?: string;
    readonly formatFooter?: string;
    readonly formatShowConfidence?: boolean;
}
export declare function factPipeline(config: FactPipelineConfig): MemoryPipeline;
