perfect-validator
Version:
A TypeScript-based validation library that supports both static and dynamic validation with serializable models.
22 lines (21 loc) • 1.22 kB
TypeScript
import { Db } from 'mongodb';
import { PerfectValidator } from '../types';
export declare class MongoStorage implements PerfectValidator.IModelStorage {
private db;
private defaultCollection;
constructor(db: Db);
/**
* Checks if any indexes exist on the collection beyond the default _id index
* This allows index creation to be handled externally (e.g., by bash scripts)
*/
private checkRequiredIndexes;
private getCollection;
getModel(modelName: string): Promise<string | null>;
storeModelVersion(modelName: string, serializedModel: string, version: number, collection?: string): Promise<void>;
getModelVersion(modelName: string, version: number, collection?: string): Promise<PerfectValidator.ModelVersion | null>;
getLatestModelVersion(modelName: string, collection?: string): Promise<PerfectValidator.ModelVersion | null>;
listModelVersions(modelName: string, collection?: string): Promise<number[]>;
insertModel(modelName: string, model: PerfectValidator.ValidationModel): Promise<void>;
updateModel(modelName: string, model: PerfectValidator.ValidationModel): Promise<void>;
deleteModel(modelName: string): Promise<void>;
}