#import <Foundation/Foundation.h>
#import <Capacitor/Capacitor.h>

// Define the plugin using the CAP_PLUGIN Macro, and
// each method the plugin supports using the CAP_PLUGIN_METHOD macro.
CAP_PLUGIN(RookSDKPlugin, "RookSDK",
           CAP_PLUGIN_METHOD(initRook, CAPPluginReturnPromise);
           CAP_PLUGIN_METHOD(getDiagnostic, CAPPluginReturnPromise);
           CAP_PLUGIN_METHOD(updateUserId, CAPPluginReturnPromise);
           CAP_PLUGIN_METHOD(getUserId, CAPPluginReturnPromise);
           CAP_PLUGIN_METHOD(clearUserId, CAPPluginReturnPromise);
           CAP_PLUGIN_METHOD(deleteUserFromRook, CAPPluginReturnPromise);
           CAP_PLUGIN_METHOD(enableAppleHealthSync, CAPPluginReturnPromise);
           CAP_PLUGIN_METHOD(disableAppleHealthSync, CAPPluginReturnPromise);
           CAP_PLUGIN_METHOD(isAppleHealthSyncEnable, CAPPluginReturnPromise);
           CAP_PLUGIN_METHOD(syncUserTimeZone, CAPPluginReturnPromise);
           CAP_PLUGIN_METHOD(revokeDataSource, CAPPluginReturnPromise);
           CAP_PLUGIN_METHOD(checkAvailability, CAPPluginReturnPromise);
           CAP_PLUGIN_METHOD(requestAppleHealthPermissions, CAPPluginReturnPromise);
           CAP_PLUGIN_METHOD(requestAllHealthConnectPermissions, CAPPluginReturnPromise);
           CAP_PLUGIN_METHOD(openIOSAppleHealth, CAPPluginReturnPromise);
           CAP_PLUGIN_METHOD(openHealthConnectSettings, CAPPluginReturnPromise);
           CAP_PLUGIN_METHOD(healthConnectHasPermissions, CAPPluginReturnPromise);
           CAP_PLUGIN_METHOD(requestAndroidBackgroundPermissions, CAPPluginReturnPromise);
           CAP_PLUGIN_METHOD(requestDietaryWritePermissions, CAPPluginReturnPromise);
           CAP_PLUGIN_METHOD(enableBackGroundUpdates, CAPPluginReturnPromise);
           CAP_PLUGIN_METHOD(disableBackGroundUpdates, CAPPluginReturnPromise);
           CAP_PLUGIN_METHOD(isBackGroundUpdatesEnable, CAPPluginReturnPromise);
           CAP_PLUGIN_METHOD(enableBackGroundEventsUpdates, CAPPluginReturnPromise);
           CAP_PLUGIN_METHOD(disableBackGroundEventsUpdates, CAPPluginReturnPromise);
           CAP_PLUGIN_METHOD(isBackGroundEventsUpdatesEnable, CAPPluginReturnPromise);
           CAP_PLUGIN_METHOD(startListening, CAPPluginReturnPromise);
           CAP_PLUGIN_METHOD(stopListening, CAPPluginReturnPromise);
           CAP_PLUGIN_METHOD(shouldSyncFor, CAPPluginReturnPromise);
           CAP_PLUGIN_METHOD(getSleepSummaries, CAPPluginReturnPromise);
           CAP_PLUGIN_METHOD(getPhysicalSummary, CAPPluginReturnPromise);
           CAP_PLUGIN_METHOD(getBodySummary, CAPPluginReturnPromise);
           CAP_PLUGIN_METHOD(getActivityEvents, CAPPluginReturnPromise);
           CAP_PLUGIN_METHOD(sync, CAPPluginReturnPromise);
           CAP_PLUGIN_METHOD(syncSummaries, CAPPluginReturnPromise);
           CAP_PLUGIN_METHOD(syncSleepSummary, CAPPluginReturnPromise);
           CAP_PLUGIN_METHOD(syncPhysicalSummary, CAPPluginReturnPromise);
           CAP_PLUGIN_METHOD(syncBodySummary, CAPPluginReturnPromise);
           CAP_PLUGIN_METHOD(reSyncFailedSummaries, CAPPluginReturnPromise);
           CAP_PLUGIN_METHOD(syncPendingEvents, CAPPluginReturnPromise);
           CAP_PLUGIN_METHOD(syncEvents, CAPPluginReturnPromise);
           CAP_PLUGIN_METHOD(writeNutritionEvent, CAPPluginReturnPromise);
           CAP_PLUGIN_METHOD(getTodayStepCount, CAPPluginReturnPromise);
           CAP_PLUGIN_METHOD(getTodayCalories, CAPPluginReturnPromise);
           CAP_PLUGIN_METHOD(getTodayHeartRate, CAPPluginReturnPromise);
           CAP_PLUGIN_METHOD(getDataSourcesAuthorized, CAPPluginReturnPromise);
           CAP_PLUGIN_METHOD(getDataSourceAuthorizer, CAPPluginReturnPromise);
)
