---
title: NSObject.KeyValueObservingPublisher
framework: objectivec
role: symbol
role_heading: Structure
path: objectivec/nsobject-swift.class/keyvalueobservingpublisher
---

# NSObject.KeyValueObservingPublisher

A Combine publisher that produces a new element whenever the observed value changes.

## Declaration

```swift
struct KeyValueObservingPublisher<Subject, Value> where Subject : NSObject
```

## Overview

Overview Use this publisher to integrate a property that’s compliant with key-value observing into a Combine publishing chain. You can create a publisher of this type with the NSObject instance method publisher(for:options:), passing in the key path and a set of NSKeyValueObservingOptions.

## Topics

### Creating a KVO Publisher

- [init(object:keyPath:options:)](objectivec/nsobject-swift.class/keyvalueobservingpublisher/init(object:keypath:options:).md)

### Inspecting KVO Publisher Properties

- [object](objectivec/nsobject-swift.class/keyvalueobservingpublisher/object.md)
- [keyPath](objectivec/nsobject-swift.class/keyvalueobservingpublisher/keypath.md)
- [options](objectivec/nsobject-swift.class/keyvalueobservingpublisher/options.md)

### Instance Methods

- [didChange()](objectivec/nsobject-swift.class/keyvalueobservingpublisher/didchange().md)

## Relationships

### Conforms To

- [Copyable](swift/copyable.md)
- [Equatable](swift/equatable.md)
- [Escapable](swift/escapable.md)
- [Publisher](combine/publisher.md)
