Add after_destroy callback support