Transaction.currentEntitlements never returns if there are no entitlements?

I'm uncertain about the reason behind Transaction.currentEntitlements not returning nil when there are no current entitlements.

The challenge I'm facing is that, in the scenario where a trial period concludes, Transaction.currentEntitlements seems to perpetually withhold any response, leaving me without a means to discern the conclusion of the trial.

I'm puzzled as to why this method doesn't simply return nil when no entitlements are detected. It would be immensely helpful if someone could shed light on the rationale behind this behavior or point out any potential errors in my understanding.

Your insights would be greatly appreciated. Thanks.