changes property
Active entitlement identifiers, emitting on every change.
A stream, not a one-shot check, because entitlements change mid
session: a purchase completes, a restore lands, a subscription lapses, a
renewal fails. A bool read once at startup goes stale silently, and the
bug shows up as a paying user seeing a paywall.
Implementation
@override
Stream<Set<String>> get changes => _controller.stream;