javascript – Error en repositorio mongo metodo find() en typescript


Estoy haciendo un proyecto con DDD y arquitectura hexagonal con typescript. Tengo un repositorio para la entidad de cursos que tiene dos métodos:

El primer método recopila un documento pasándole el id.
El segundo método realiza una búsqueda de todos los documentos.
El problema es que en el método searchAll la constante “documents” (Que deberia devolver el array de documentos) no contienen los documentos de la colección. Devuelve datos de mongo en RAW pero NO el array de documentos, dejo el código del repositorio aquí:

import { Nullable } from '../../../../Shared/domain/Nullable';
import { MongoRepository } from '../../../../Shared/infrastructure/persistence/mongo/MongoRepository';
import { Course } from '../../domain/Course';
import { CourseRepository } from '../../domain/CourseRepository';
import {CourseId} from '../../../Shared/domain/Courses/CourseId';

export class MongoCourseRepository extends MongoRepository<any> implements CourseRepository {

  public async search(id: CourseId): Promise<Nullable<Course>> {
    const collection = await this.collection();
    const document = await collection.findOne({ _id: id.value });
    return document ? Course.fromPrimitives({ ...document, id: id.value }) : null;
  }

  public async searchAll(): Promise<Nullable<Array<Course>>> {
    const collection = await this.collection();
    const documents = await collection.find({});
    return documents;
  }

  protected moduleName(): string {
    return 'courses';
  }
}