Raycaster triggering meshes even after disposing and removing from parent

I have fetched the meshes with some specific names and want to add new model group instead of that and its working.
But on triggering the click event the raycaster is still able to get the mesh as if it is still present there, how to remove it completely.

for (let i = 0; i < seatMeshes.length; i++) {
	seatMeshes[i].geometry.dispose();
	seatMeshes[i].material.dispose();
	seatMeshes[i].parent.remove(seatMeshes[i]);
}

What you are doing in the shared code should be enough - so either (1) you are removing wrong mesh, (2) your raycasting does something weird (ex. you’re raycasting against an array, not scene.children, in which case it doesn’t matter if the object is in the scene or not - as long as it is in the array you pass to check intersections.)