async def remove(
        self, db: AsyncSession, id: UUID, organization_id: UUID, uow: Optional[UnitOfWork] = None
    ) -> None:
        """Delete an object from db for a given schema type and organization context.

        Args:
        ----
            db (AsyncSession): The database session.
            id (UUID): The UUID of the object to delete.
            organization_id (UUID): The UUID of the organization.
            uow (Optional[UnitOfWork]): The unit of work to use for the transaction.
        """
        stmt = (
            delete(self.model)
            .where(self.model.id == id, self.model.organization_id == organization_id)
            .execution_options(synchronize_session=False)
        )
        result = await db.execute(stmt)
        if result.rowcount == 0:
            raise NotFoundException(f"{self.model.__name__} not found")

        if not uow:
            await db.commit()
Delete an object from db for a given schema type and organization context.

        Args:
        ----
            db (AsyncSession): The database session.
            id (UUID): The UUID of the object to delete.
            organization_id (UUID): The UUID of the organization.
            uow (Optional[UnitOfWork]): The unit of work to use for the transaction.
        
backend/airweave/crud/_base_organization.py