1 import Network
2 
3 extension NWInterface.InterfaceType: CaseIterable {
4   public static var allCases: [NWInterface.InterfaceType] = [
5     .other,
6     .wifi,
7     .cellular,
8     .loopback,
9     .wiredEthernet
10   ]
11 }
12 
13 enum NetworkType: CustomStringConvertible {
14   case unknown, wifi, none, cellular
15 
16   var description: String {
17     switch self {
18     case .wifi:
19       return "WIFI"
20     case .cellular:
21       return "CELLULAR"
22     case .unknown:
23       return "UNKNOWN"
24     case .none:
25       return "NONE"
26     }
27   }
28 }
29