Converted Mongoose models and schemas to Typegoose classes (also removed now unnecessary files from interfaces folder). The structure of each entities/ file is:
import { prop, getModelForClass, DocumentType } from '@typegoose/typegoose';
// create the class (using `@prop()` decorator for added metadata)
class SomeClass {
@prop({ foo: 'bar' })
someProperty: string;
}
// this is a document of the above class
// it's used, for example, as a function parameter:
// function saveDocument(document: SomeClassDocument) {
// return someClassDocument.save()
// }
export type SomeClassDocument = DocumentType<SomeClass>;
// this is the main model and default export
// used for .findOne(), .updateMany(), etc. (same usage as mongoose models)
export default getModelForClass(SomeClass);
Converted Mongoose models and schemas to Typegoose classes (also removed now unnecessary files from interfaces folder). The structure of each
entities/
file is:Closes #23