<!--
{
  "availability" : [
    "macCatalyst: 13.0.0 -",
    "macOS: 10.6.0 -"
  ],
  "documentType" : "symbol",
  "framework" : "CoreWLAN",
  "identifier" : "/documentation/CoreWLAN/CWEventDelegate",
  "metadataVersion" : "0.1.0",
  "role" : "Protocol",
  "symbol" : {
    "kind" : "Protocol",
    "modules" : [
      "Core WLAN"
    ],
    "preciseIdentifier" : "c:objc(pl)CWEventDelegate"
  },
  "title" : "CWEventDelegate"
}
-->

# CWEventDelegate

The interface a Wi-Fi client object uses to notify its delegate about Wi-Fi events.

```
protocol CWEventDelegate
```

## Overview

An object that adopts the `CWEventDelegate` protocol and that is assigned as the delegate of a [`CWWiFiClient`](/documentation/CoreWLAN/CWWiFiClient) object receives notifications of changes on a Wi-Fi interface. Use the [`startMonitoringEvent(with:)`](/documentation/CoreWLAN/CWWiFiClient/startMonitoringEvent(with:)) method to indicate to the client the event types for which you want to receive notifications. Use the [`stopMonitoringEvent(with:)`](/documentation/CoreWLAN/CWWiFiClient/stopMonitoringEvent(with:)) method to stop receiving a particular notification type, or the [`stopMonitoringAllEvents()`](/documentation/CoreWLAN/CWWiFiClient/stopMonitoringAllEvents()) method to stop receiving all notifications.

## Topics

### Instance Methods

[`bssidDidChangeForWiFiInterface(withName:)`](/documentation/CoreWLAN/CWEventDelegate/bssidDidChangeForWiFiInterface(withName:))

Tells the delegate that the current BSSID has changed.

[`clientConnectionInterrupted()`](/documentation/CoreWLAN/CWEventDelegate/clientConnectionInterrupted())

Tells the delegate that the connection to the Wi-Fi subsystem is temporarily interrupted.

[`clientConnectionInvalidated()`](/documentation/CoreWLAN/CWEventDelegate/clientConnectionInvalidated())

Tells the delegate that the connection to the Wi-Fi subsystem is permanently invalidated.

[`countryCodeDidChangeForWiFiInterface(withName:)`](/documentation/CoreWLAN/CWEventDelegate/countryCodeDidChangeForWiFiInterface(withName:))

Tells the delegate that the currently adopted country code has changed.

[`linkDidChangeForWiFiInterface(withName:)`](/documentation/CoreWLAN/CWEventDelegate/linkDidChangeForWiFiInterface(withName:))

Tells the delegate that the Wi-Fi link state changed.

[`linkQualityDidChangeForWiFiInterface(withName:rssi:transmitRate:)`](/documentation/CoreWLAN/CWEventDelegate/linkQualityDidChangeForWiFiInterface(withName:rssi:transmitRate:))

Tells the delegate that the link quality has changed.

[`modeDidChangeForWiFiInterface(withName:)`](/documentation/CoreWLAN/CWEventDelegate/modeDidChangeForWiFiInterface(withName:))

Tells the delegate that the operating mode has changed.

[`powerStateDidChangeForWiFiInterface(withName:)`](/documentation/CoreWLAN/CWEventDelegate/powerStateDidChangeForWiFiInterface(withName:))

Tells the delegate that the Wi-Fi power state changed.

[`scanCacheUpdatedForWiFiInterface(withName:)`](/documentation/CoreWLAN/CWEventDelegate/scanCacheUpdatedForWiFiInterface(withName:))

Tells the delegate that the Wi-Fi interface’s scan cache has been updated with new results.

[`ssidDidChangeForWiFiInterface(withName:)`](/documentation/CoreWLAN/CWEventDelegate/ssidDidChangeForWiFiInterface(withName:))

Tells the delegate that the current SSID has changed.



---

Copyright &copy; 2026 Apple Inc. All rights reserved. | [Terms of Use](https://www.apple.com/legal/internet-services/terms/site.html) | [Privacy Policy](https://www.apple.com/privacy/privacy-policy)