staticql
Version:
Type-safe query engine for static content including Markdown, YAML, JSON, and more.
24 lines (23 loc) • 1.11 kB
TypeScript
import { StorageRepository } from "./StorageRepository.js";
import { SourceConfigResolver } from "../SourceConfigResolver.js";
/**
* MultiRepository: Wraps multiple StorageRepository instances to route
* read operations per source and write operations to a designated repository.
*/
export declare class MultiRepository implements StorageRepository {
private defaultRepository?;
private sourceRepositories?;
private writeRepository;
private resolver?;
constructor(defaultRepository?: StorageRepository, sourceRepositories?: Record<string, StorageRepository>, writeRepository?: StorageRepository);
setResolver(resolver: SourceConfigResolver): void;
private getReadRepositoryForPattern;
private getReadRepositoryForPath;
listFiles(pattern: string): Promise<string[]>;
readFile(path: string): Promise<string>;
openFileStream(path: string): Promise<ReadableStream>;
exists(path: string): Promise<boolean>;
writeFile(path: string, data: Uint8Array | string): Promise<void>;
removeFile(path: string): Promise<void>;
removeDir(path: string): Promise<void>;
}