/**
 * Preset-factory dispatch by source kind (W0215).
 *
 * The composition root resolves the active source's `kind`, looks up the
 * matching preset factory in `PRESET_FACTORY_BY_SOURCE`, and invokes it
 * with the typed source. The `satisfies` clause makes adding a kind to
 * `KnownDocSourceConfig` without a factory registration a compile error.
 */
import type { PresetDefinition } from "../../../_vendor/ailf-core/index.d.ts";
import { createCanvasLiteracyPreset } from "../../../adapters/doc-fetchers/canvas/preset.js";
import { createDriveLiteracyPreset } from "../../../adapters/doc-fetchers/google-drive/preset.js";
import type { KnownDocSourceConfig } from "../../../adapters/doc-fetchers/source-kinds.js";
import { createSanityLiteracyPreset } from "./sanity-literacy.js";
/**
 * A factory that produces a `PresetDefinition` for source kind `K`. The
 * generic narrows the `source` argument to the matching variant of
 * `KnownDocSourceConfig`, so each factory sees only its own source type.
 */
export type PresetFactory<K extends KnownDocSourceConfig["kind"]> = (opts: {
    rootDir: string;
    source: Extract<KnownDocSourceConfig, {
        kind: K;
    }>;
}) => PresetDefinition;
/**
 * Registry of preset factories keyed by source kind.
 *
 * The `satisfies` clause enforces three invariants:
 * - Every kind in `KnownDocSourceConfig` has a registered factory.
 * - No extra keys (typos rejected).
 * - Each factory's `source` parameter type matches its key.
 */
export declare const PRESET_FACTORY_BY_SOURCE: {
    "sanity-canvas": typeof createCanvasLiteracyPreset;
    "google-drive": typeof createDriveLiteracyPreset;
    "sanity-content-lake": typeof createSanityLiteracyPreset;
};
