diff --git a/modules/versioned-entity/db/versioned-mongo-entity.ts b/modules/versioned-entity/db/versioned-mongo-entity.ts
index 12084b8bbab93127fb26fe958932a349a136cbbf..e8318f9dd2be57d0ca4b0ecdcd2367bad4de6587 100644
--- a/modules/versioned-entity/db/versioned-mongo-entity.ts
+++ b/modules/versioned-entity/db/versioned-mongo-entity.ts
@@ -5,8 +5,9 @@ import { ID } from '@adornis/baseql/baseqlTypes.js';
 import { Arg, Entity, Field, Query } from '@adornis/baseql/decorators.js';
 import { AdornisEntity } from '@adornis/baseql/entities/adornisEntity.js';
 import { constructValue } from '@adornis/baseql/entities/construct.js';
-import type { MongoEntity } from '@adornis/baseql/entities/mongoEntity.js';
+import { MongoEntity } from '@adornis/baseql/entities/mongoEntity.js';
 import type { EntityData } from '@adornis/baseql/entities/types.js';
+import { baseqlMetaData } from '@adornis/baseql/metadata/metaDataStore.js';
 import { getRawCollection } from '@adornis/baseql/server/collections.js';
 import { context } from '@adornis/baseql/server/context.js';
 import type { BaseQLSelectionSet } from '@adornis/baseql/utils/queryGeneration.js';
@@ -207,8 +208,8 @@ export function Versioned<T extends typeof AdornisEntity>({
   ignoreFields = undefined,
 }: { versionCollection?: string; ignoreFields?: BaseQLSelectionSet<InstanceType<T>> } = {}) {
   return (TargetClass: T) => {
-    // @ts-expect-error constructing TargetClass to check if it extends MongoEntity
-    if (baseqlMetaData.entities.validSubclasses.includes(TargetClass._class)) {
+    if (baseqlMetaData.entities.validSubclasses(MongoEntity._class).includes(TargetClass._class)) {
+      console.log(true);
       const mongoEntityTarget = TargetClass as typeof AdornisEntity as typeof MongoEntity;
 
       const targetAfterUpdate = mongoEntityTarget.afterUpdate;