Delete deprecated AsyncResolver and related classes

To be submitted after downstream usage has been removed, but no earlier than December 1, 2023.

Bug: webrtc:12598
Change-Id: Id9acbac591c48c0c5883fe8f06cf6a68471b70f0
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/323004
Reviewed-by: Tomas Gunnarsson <tommi@webrtc.org>
Commit-Queue: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#41290}
diff --git a/api/packet_socket_factory.h b/api/packet_socket_factory.h
index e389ccb..78b93b5 100644
--- a/api/packet_socket_factory.h
+++ b/api/packet_socket_factory.h
@@ -16,7 +16,6 @@
 #include <vector>
 
 #include "api/async_dns_resolver.h"
-#include "api/wrapping_async_dns_resolver.h"
 #include "rtc_base/async_packet_socket.h"
 #include "rtc_base/proxy_info.h"
 #include "rtc_base/system/rtc_export.h"
@@ -72,26 +71,8 @@
       const std::string& user_agent,
       const PacketSocketTcpOptions& tcp_options) = 0;
 
-  // The AsyncResolverInterface is deprecated; users are encouraged
-  // to switch to the AsyncDnsResolverInterface.
-  // TODO(bugs.webrtc.org/12598): Remove once all downstream users
-  // are converted.
-#pragma clang diagnostic push
-#pragma clang diagnostic ignored "-Wdeprecated-declarations"
-  [[deprecated]] virtual AsyncResolverInterface* CreateAsyncResolver() {
-    // Default implementation, so that downstream users can remove this
-    // immediately after changing to CreateAsyncDnsResolver
-    RTC_DCHECK_NOTREACHED();
-    return nullptr;
-  }
-
   virtual std::unique_ptr<webrtc::AsyncDnsResolverInterface>
-  CreateAsyncDnsResolver() {
-    // Default implementation, to aid in transition to AsyncDnsResolverInterface
-    return std::make_unique<webrtc::WrappingAsyncDnsResolver>(
-        CreateAsyncResolver());
-  }
-#pragma clang diagnostic pop
+  CreateAsyncDnsResolver() = 0;
 
  private:
   PacketSocketFactory(const PacketSocketFactory&) = delete;