import { ObjectId } from 'mongodb'; export interface IDocument { getCollection(): string; toArray(): { [key: string]: unknown; }; } export default abstract class ADocument implements IDocument { protected _id?: ObjectId; getId(): string; getObjectId(): ObjectId; getCollection: () => string; static getCollection(): string; toArray: () => { [key: string]: unknown; }; }