code: private void handleServerTextChannel(JsonNode channelJson) {
          long serverId = channelJson.get("guild_id").asLong();
          long channelId = channelJson.get("id").asLong();
          api.getPossiblyUnreadyServerById(serverId)
                  .ifPresent(server -> server.getTextChannelById(channelId).ifPresent(channel -> {
                      dispatchServerChannelDeleteEvent(channel);
                      ((ServerImpl) server).removeChannelFromCache(channel.getId());
                      api.forEachCachedMessageWhere(
                              msg -> msg.getChannel().getId() == channelId,
                              msg -> api.removeMessageFromCache(msg.getId())
                      );
                  }));
          api.removeObjectListeners(ServerTextChannel.class, channelId);
          api.removeObjectListeners(ServerChannel.class, channelId);
          api.removeObjectListeners(TextChannel.class, channelId);
          api.removeObjectListeners(Channel.class, channelId);
      }
docs: Handles server text channel deletion.
  
  @param channelJson The channel data.