import { EngineConfig, EngineId, VfsBackend } from '../core/types'; import { TexPackagesManifest } from '../core/manifest'; export interface DefaultBackendsOptions { /** * Leave the manifest's core bundle out of the chain. createEngine() sets * this when the engine runs in a worker: the worker builds the BundleFS * itself, so the tree is unpacked once, on the side that actually needs it. */ skipManifestBundle?: boolean; } /** * Build the default backend chain for an engine instance. * * Order: BundleFS (in-memory core) → OPFS (when in a browser/PWA) → FETCHFS (CDN fallback). * * The TauriFS backend is *not* installed by default — the consumer opts in via * `withTauriFs(...)` from the `texlive-wasm/tauri` entry. That keeps web * consumers from picking up a hard dep on @tauri-apps/plugin-fs. */ export declare function defaultBackends(_id: EngineId, config: EngineConfig, options?: DefaultBackendsOptions): Promise; /** * Wrap a backend so every file it serves must hash to what the manifest says. * A mismatch is reported as a miss (the next tier answers, or the engine * reports the file missing) — never as bytes the engine will interpret. * * Files the manifest does not list pass through unchecked: the manifest is an * index of the TL tree, not an allowlist of everything an app may mount. */ export declare function withIntegrity(backend: VfsBackend, manifest: TexPackagesManifest): VfsBackend; export { createBundleFs } from './bundlefs'; export { createOpfsFs } from './opfsfs'; export { createFetchFs } from './fetchfs'; export { createTauriFs, isTauri, withTauriFs } from './taurifs'; export type { TauriFsOptions } from './taurifs'; //# sourceMappingURL=index.d.ts.map