As a user if I'm choosing to delete my account I'm expecting to do just that.
If in the service I had saved various projects with info in each, pictures, attachments etc. Then I'm expecting that these would be deleted.
This does present a bit of a weird UX scenario as you really want to show the user a clear confirmation that the action took place but there isn't a "real" user account to display it in.
My recommendation is to keep the user logged in and show them an "account deleted" screen listing what happened:
- 12 collaboration contacts deleted
- 4 integration plugins deleted
- 17 projects deleted
All of your account data has been deleted. Your account login will be deleted automatically when you logout.
Behind the scenes all of the stuff attached to the account is actually deleted and the account is flagged as "dead". After the user logs out delete the login profile too. In case the user does nothing, i'd also hook up an event in your systems background tasks too to remove the login profile at a time period equal to your default session timeout.