A common platform interface for the moengage_geofence plugin.

This interface allows platform-specific implementations of the moengage_geofence plugin, as well as the plugin itself, to ensure they are supporting the same interface.


To implement a new platform-specific implementation of moengage_geofence, extend MoEngageGeofencePlatform with an implementation that performs the platform-specific behavior, and when you register your plugin, set the default MoEngageGeofencePlatform by calling MoEngageGeofencePlatform.instance = MyPlatformMoEngageGeofence().

Note on breaking changes

Strongly prefer non-breaking changes (such as adding a method to the interface) over breaking changes for this package.

See for a discussion on why a less-clean interface is preferable to a breaking change.