         }
         configuration.objectTypes = [SyncedEntity.self, Record.self, PendingRelationship.self, ServerToken.self]
         return configuration
+    }
+    
+    func setupTypeNamesLookup() {
+        
+        targetRealmConfiguration.objectTypes?.forEach { objectType in
+
+            modelTypes[objectType.className()] = objectType
+        }
     }
     
     func setup() {

        super.init()
        
        executeOnMainQueue {
            setup()
            setupChildrenRelationshipsLookup()
        }

    var objectNotificationTokens = [String: NotificationToken]()
    var pendingTrackingUpdates = [ObjectUpdate]()
    var childRelationships = [String: Array<ChildRelationship>]()
    var modelTypes = [String: Object.Type]()
    var hasChangesValue = false
    
    /* Should be initialized on main queue */
