{
  "api": {
    "name": "MoECapacitorCorePlugin",
    "slug": "moecapacitorcoreplugin",
    "docs": "",
    "tags": [],
    "methods": [
      {
        "name": "initialize",
        "signature": "(options: { appId: string; initConfig: MoEInitConfig; }) => Promise<void>",
        "parameters": [
          {
            "name": "options",
            "docs": "",
            "type": "{ appId: string; initConfig: MoEInitConfig; }"
          }
        ],
        "returns": "Promise<void>",
        "tags": [
          {
            "name": "param",
            "text": "appId Account Identifier"
          },
          {
            "name": "since",
            "text": "2.0.0"
          }
        ],
        "docs": "Initialise MoEngage Capacitor Plugin",
        "complexTypes": [
          "MoEInitConfig"
        ],
        "slug": "initialize"
      },
      {
        "name": "trackEvent",
        "signature": "(options: { eventName: string; eventAttributes?: MoEProperties; appId: string; }) => Promise<void>",
        "parameters": [
          {
            "name": "options",
            "docs": "",
            "type": "{ eventName: string; eventAttributes?: MoEProperties | undefined; appId: string; }"
          }
        ],
        "returns": "Promise<void>",
        "tags": [
          {
            "name": "param",
            "text": "eventName Event Name"
          },
          {
            "name": "param",
            "text": "properties \\} properties of the event."
          },
          {
            "name": "param",
            "text": "appId Account Identifier"
          },
          {
            "name": "since",
            "text": "2.0.0"
          }
        ],
        "docs": "Track user behaviour as events with properties",
        "complexTypes": [
          "MoEProperties"
        ],
        "slug": "trackevent"
      },
      {
        "name": "setUniqueId",
        "signature": "(options: { uniqueId: string; appId: string; }) => Promise<void>",
        "parameters": [
          {
            "name": "options",
            "docs": "",
            "type": "{ uniqueId: string; appId: string; }"
          }
        ],
        "returns": "Promise<void>",
        "tags": [
          {
            "name": "param",
            "text": "uniqueId identifier"
          },
          {
            "name": "param",
            "text": "appId Account Identifier"
          },
          {
            "name": "since",
            "text": "2.0.0"
          }
        ],
        "docs": "Set a Unique Identifier for the user.",
        "complexTypes": [],
        "slug": "setuniqueid"
      },
      {
        "name": "setAlias",
        "signature": "(options: { alias: string; appId: string; }) => Promise<void>",
        "parameters": [
          {
            "name": "options",
            "docs": "",
            "type": "{ alias: string; appId: string; }"
          }
        ],
        "returns": "Promise<void>",
        "tags": [
          {
            "name": "param",
            "text": "alias identifier"
          },
          {
            "name": "param",
            "text": "appId Account Identifier"
          },
          {
            "name": "since",
            "text": "2.0.0"
          }
        ],
        "docs": "Set an Alias to update the existing Unique Id",
        "complexTypes": [],
        "slug": "setalias"
      },
      {
        "name": "setUserName",
        "signature": "(options: { userName: string; appId: string; }) => Promise<void>",
        "parameters": [
          {
            "name": "options",
            "docs": "",
            "type": "{ userName: string; appId: string; }"
          }
        ],
        "returns": "Promise<void>",
        "tags": [
          {
            "name": "param",
            "text": "userName full name of the user"
          },
          {
            "name": "param",
            "text": "appId Account Identifier"
          },
          {
            "name": "since",
            "text": "2.0.0"
          }
        ],
        "docs": "Set user's full name",
        "complexTypes": [],
        "slug": "setusername"
      },
      {
        "name": "setFirstName",
        "signature": "(options: { firstName: string; appId: string; }) => Promise<void>",
        "parameters": [
          {
            "name": "options",
            "docs": "",
            "type": "{ firstName: string; appId: string; }"
          }
        ],
        "returns": "Promise<void>",
        "tags": [
          {
            "name": "param",
            "text": "firstName first name of the user"
          },
          {
            "name": "param",
            "text": "appId Account Identifier"
          },
          {
            "name": "since",
            "text": "2.0.0"
          }
        ],
        "docs": "Set user's first name",
        "complexTypes": [],
        "slug": "setfirstname"
      },
      {
        "name": "setLastName",
        "signature": "(options: { lastName: string; appId: string; }) => Promise<void>",
        "parameters": [
          {
            "name": "options",
            "docs": "",
            "type": "{ lastName: string; appId: string; }"
          }
        ],
        "returns": "Promise<void>",
        "tags": [
          {
            "name": "param",
            "text": "lastName last name of the user"
          },
          {
            "name": "param",
            "text": "appId Account Identifier"
          }
        ],
        "docs": "Set user's last name",
        "complexTypes": [],
        "slug": "setlastname"
      },
      {
        "name": "setEmailId",
        "signature": "(options: { emailId: string; appId: string; }) => Promise<void>",
        "parameters": [
          {
            "name": "options",
            "docs": "",
            "type": "{ emailId: string; appId: string; }"
          }
        ],
        "returns": "Promise<void>",
        "tags": [
          {
            "name": "param",
            "text": "emailId email id"
          },
          {
            "name": "param",
            "text": "appId Account Identifier"
          },
          {
            "name": "since",
            "text": "2.0.0"
          }
        ],
        "docs": "Set user's email id",
        "complexTypes": [],
        "slug": "setemailid"
      },
      {
        "name": "setMobileNumber",
        "signature": "(options: { mobileNumber: string; appId: string; }) => Promise<void>",
        "parameters": [
          {
            "name": "options",
            "docs": "",
            "type": "{ mobileNumber: string; appId: string; }"
          }
        ],
        "returns": "Promise<void>",
        "tags": [
          {
            "name": "param",
            "text": "mobileNumber mobile number"
          },
          {
            "name": "param",
            "text": "appId Account Identifier"
          }
        ],
        "docs": "Set user's mobile number",
        "complexTypes": [],
        "slug": "setmobilenumber"
      },
      {
        "name": "setBirthDate",
        "signature": "(options: { birthdate: string; appId: string; }) => Promise<void>",
        "parameters": [
          {
            "name": "options",
            "docs": "",
            "type": "{ birthdate: string; appId: string; }"
          }
        ],
        "returns": "Promise<void>",
        "tags": [
          {
            "name": "param",
            "text": "birthdate birthdate to be set in ISO8601 format [yyyy-MM-dd'T'HH:mm:ss'Z']."
          },
          {
            "name": "param",
            "text": "appId Account Identifier"
          },
          {
            "name": "since",
            "text": "1.0.0"
          }
        ],
        "docs": "Set user's birthdate.",
        "complexTypes": [],
        "slug": "setbirthdate"
      },
      {
        "name": "setGender",
        "signature": "(options: { gender: MoEUserGender; appId: string; }) => Promise<void>",
        "parameters": [
          {
            "name": "options",
            "docs": "",
            "type": "{ gender: MoEUserGender; appId: string; }"
          }
        ],
        "returns": "Promise<void>",
        "tags": [
          {
            "name": "param",
            "text": "gender value"
          },
          {
            "name": "param",
            "text": "appId Account Identifier"
          },
          {
            "name": "since",
            "text": "2.0.0"
          }
        ],
        "docs": "Set user's gender.",
        "complexTypes": [
          "MoEUserGender"
        ],
        "slug": "setgender"
      },
      {
        "name": "setUserLocation",
        "signature": "(options: { location: MoEGeoLocation; appId: string; }) => Promise<void>",
        "parameters": [
          {
            "name": "options",
            "docs": "",
            "type": "{ location: MoEGeoLocation; appId: string; }"
          }
        ],
        "returns": "Promise<void>",
        "tags": [
          {
            "name": "param",
            "text": "location of the user"
          },
          {
            "name": "param",
            "text": "appId Account Identifier"
          },
          {
            "name": "since",
            "text": "2.0.0"
          }
        ],
        "docs": "Set user's location",
        "complexTypes": [
          "MoEGeoLocation"
        ],
        "slug": "setuserlocation"
      },
      {
        "name": "setUserAttribute",
        "signature": "(options: { name: string; value: string | number | boolean | Array<string> | Array<number>; appId: string; }) => Promise<void>",
        "parameters": [
          {
            "name": "options",
            "docs": "",
            "type": "{ name: string; value: string | number | boolean | string[] | number[]; appId: string; }"
          }
        ],
        "returns": "Promise<void>",
        "tags": [
          {
            "name": "param",
            "text": "name user attribute name"
          },
          {
            "name": "param",
            "text": "value user attribute value"
          },
          {
            "name": "param",
            "text": "appId Account Identifier"
          },
          {
            "name": "since",
            "text": "2.0.0"
          }
        ],
        "docs": "Set the user defined attribute with value.",
        "complexTypes": [
          "Array"
        ],
        "slug": "setuserattribute"
      },
      {
        "name": "setUserAttributeDate",
        "signature": "(options: { name: string; value: string; appId: string; }) => Promise<void>",
        "parameters": [
          {
            "name": "options",
            "docs": "",
            "type": "{ name: string; value: string; appId: string; }"
          }
        ],
        "returns": "Promise<void>",
        "tags": [
          {
            "name": "param",
            "text": "name attribute name"
          },
          {
            "name": "param",
            "text": "value User attribute value in ISO8601 format [yyyy-MM-dd'T'HH:mm:ss'Z']."
          },
          {
            "name": "param",
            "text": "appId Account Identifier"
          },
          {
            "name": "since",
            "text": "2.0.0"
          }
        ],
        "docs": "Set a user attribute timestamp for the current user",
        "complexTypes": [],
        "slug": "setuserattributedate"
      },
      {
        "name": "setUserAttributeLocation",
        "signature": "(options: { name: string; location: MoEGeoLocation; appId: string; }) => Promise<void>",
        "parameters": [
          {
            "name": "options",
            "docs": "",
            "type": "{ name: string; location: MoEGeoLocation; appId: string; }"
          }
        ],
        "returns": "Promise<void>",
        "tags": [
          {
            "name": "param",
            "text": "name attribute name"
          },
          {
            "name": "param",
            "text": "location"
          },
          {
            "name": "param",
            "text": "appId Account Identifier"
          },
          {
            "name": "since",
            "text": "2.0.0"
          }
        ],
        "docs": "Set the user attribute location",
        "complexTypes": [
          "MoEGeoLocation"
        ],
        "slug": "setuserattributelocation"
      },
      {
        "name": "setAppStatus",
        "signature": "(options: { appStatus: MoEAppStatus; appId: string; }) => Promise<void>",
        "parameters": [
          {
            "name": "options",
            "docs": "",
            "type": "{ appStatus: MoEAppStatus; appId: string; }"
          }
        ],
        "returns": "Promise<void>",
        "tags": [
          {
            "name": "param",
            "text": "appStatus if it is an existing user set \"update\" else set \"install\""
          },
          {
            "name": "param",
            "text": "appId Account Identifier"
          },
          {
            "name": "since",
            "text": "2.0.0"
          }
        ],
        "docs": "This API tells the SDK whether it is a fresh install or an existing application was updated.",
        "complexTypes": [
          "MoEAppStatus"
        ],
        "slug": "setappstatus"
      },
      {
        "name": "logoutUser",
        "signature": "(options: { appId: string; }) => Promise<void>",
        "parameters": [
          {
            "name": "options",
            "docs": "",
            "type": "{ appId: string; }"
          }
        ],
        "returns": "Promise<void>",
        "tags": [
          {
            "name": "param",
            "text": "appId Account Identifier"
          },
          {
            "name": "since",
            "text": "2.0.0"
          }
        ],
        "docs": "Notify the SDK that the user has logged out of the application",
        "complexTypes": [],
        "slug": "logoutuser"
      },
      {
        "name": "enableSdk",
        "signature": "(options: { appId: string; }) => Promise<void>",
        "parameters": [
          {
            "name": "options",
            "docs": "",
            "type": "{ appId: string; }"
          }
        ],
        "returns": "Promise<void>",
        "tags": [
          {
            "name": "param",
            "text": "appId Account Identifier"
          },
          {
            "name": "remarks",
            "text": "By default the SDK is enabled, this API should only be called if you have called\n`disableSdk()` at some point."
          },
          {
            "name": "since",
            "text": "2.0.0"
          }
        ],
        "docs": "API to enable SDK usage.",
        "complexTypes": [],
        "slug": "enablesdk"
      },
      {
        "name": "disableSdk",
        "signature": "(options: { appId: string; }) => Promise<void>",
        "parameters": [
          {
            "name": "options",
            "docs": "",
            "type": "{ appId: string; }"
          }
        ],
        "returns": "Promise<void>",
        "tags": [
          {
            "name": "param",
            "text": "appId Account Identifier"
          },
          {
            "name": "since",
            "text": "2.0.0"
          }
        ],
        "docs": "API to disable all features of the SDK.",
        "complexTypes": [],
        "slug": "disablesdk"
      },
      {
        "name": "showInApp",
        "signature": "(options: { appId: string; }) => Promise<void>",
        "parameters": [
          {
            "name": "options",
            "docs": "",
            "type": "{ appId: string; }"
          }
        ],
        "returns": "Promise<void>",
        "tags": [
          {
            "name": "param",
            "text": "appId Account Identifier"
          },
          {
            "name": "since",
            "text": "2.0.0"
          }
        ],
        "docs": "Call this method wherever InApp message has to be shown, if available.",
        "complexTypes": [],
        "slug": "showinapp"
      },
      {
        "name": "getSelfHandledInApp",
        "signature": "(options: { appId: string; }) => Promise<void>",
        "parameters": [
          {
            "name": "options",
            "docs": "",
            "type": "{ appId: string; }"
          }
        ],
        "returns": "Promise<void>",
        "tags": [
          {
            "name": "param",
            "text": "appId Account Identifier"
          },
          {
            "name": "since",
            "text": "2.0.0"
          }
        ],
        "docs": "Triggers fetching self handled in-app, the result is returned in the `inAppCampaignSelfHandled` listener",
        "complexTypes": [],
        "slug": "getselfhandledinapp"
      },
      {
        "name": "selfHandledShown",
        "signature": "(campaignData: MoEInAppSelfHandledCampaignData) => Promise<void>",
        "parameters": [
          {
            "name": "campaignData",
            "docs": "in-app campaign",
            "type": "MoEInAppSelfHandledCampaignData"
          }
        ],
        "returns": "Promise<void>",
        "tags": [
          {
            "name": "param",
            "text": "campaignData in-app campaign"
          },
          {
            "name": "since",
            "text": "2.0.0"
          }
        ],
        "docs": "API to track self handled in-app shown event.",
        "complexTypes": [
          "MoEInAppSelfHandledCampaignData"
        ],
        "slug": "selfhandledshown"
      },
      {
        "name": "selfHandledClicked",
        "signature": "(campaignData: MoEInAppSelfHandledCampaignData) => Promise<void>",
        "parameters": [
          {
            "name": "campaignData",
            "docs": "in-app campaign",
            "type": "MoEInAppSelfHandledCampaignData"
          }
        ],
        "returns": "Promise<void>",
        "tags": [
          {
            "name": "param",
            "text": "campaignData in-app campaign"
          },
          {
            "name": "since",
            "text": "2.0.0"
          }
        ],
        "docs": "API to track click event of any other widget apart from primary widget in the self handled in-app.",
        "complexTypes": [
          "MoEInAppSelfHandledCampaignData"
        ],
        "slug": "selfhandledclicked"
      },
      {
        "name": "selfHandledDismissed",
        "signature": "(campaignData: MoEInAppSelfHandledCampaignData) => Promise<void>",
        "parameters": [
          {
            "name": "campaignData",
            "docs": "in-app campaign",
            "type": "MoEInAppSelfHandledCampaignData"
          }
        ],
        "returns": "Promise<void>",
        "tags": [
          {
            "name": "param",
            "text": "campaignData in-app campaign"
          },
          {
            "name": "since",
            "text": "2.0.0"
          }
        ],
        "docs": "API to track self handled in-app's dismiss event.",
        "complexTypes": [
          "MoEInAppSelfHandledCampaignData"
        ],
        "slug": "selfhandleddismissed"
      },
      {
        "name": "setInAppContext",
        "signature": "(options: { contexts: Array<string>; appId: string; }) => Promise<void>",
        "parameters": [
          {
            "name": "options",
            "docs": "",
            "type": "{ contexts: string[]; appId: string; }"
          }
        ],
        "returns": "Promise<void>",
        "tags": [
          {
            "name": "param",
            "text": "contexts array of contexts"
          },
          {
            "name": "param",
            "text": "appId Account Identifier"
          },
          {
            "name": "since",
            "text": "2.0.0"
          }
        ],
        "docs": "Set current context for in-app module.",
        "complexTypes": [
          "Array"
        ],
        "slug": "setinappcontext"
      },
      {
        "name": "resetInAppContext",
        "signature": "(options: { appId: string; }) => Promise<void>",
        "parameters": [
          {
            "name": "options",
            "docs": "",
            "type": "{ appId: string; }"
          }
        ],
        "returns": "Promise<void>",
        "tags": [
          {
            "name": "param",
            "text": "appId Account Identifier"
          },
          {
            "name": "since",
            "text": "2.0.0"
          }
        ],
        "docs": "Resets/Clears the previously set context for in-app module.",
        "complexTypes": [],
        "slug": "resetinappcontext"
      },
      {
        "name": "enableDataTracking",
        "signature": "(options: { appId: string; }) => Promise<void>",
        "parameters": [
          {
            "name": "options",
            "docs": "",
            "type": "{ appId: string; }"
          }
        ],
        "returns": "Promise<void>",
        "tags": [
          {
            "name": "param",
            "text": "appId Account Identifier"
          },
          {
            "name": "since",
            "text": "2.0.0"
          }
        ],
        "docs": "Optionally opt-in data tracking.",
        "complexTypes": [],
        "slug": "enabledatatracking"
      },
      {
        "name": "disableDataTracking",
        "signature": "(options: { appId: string; }) => Promise<void>",
        "parameters": [
          {
            "name": "options",
            "docs": "",
            "type": "{ appId: string; }"
          }
        ],
        "returns": "Promise<void>",
        "tags": [
          {
            "name": "param",
            "text": "appId Account Identifier"
          },
          {
            "name": "since",
            "text": "2.0.0"
          }
        ],
        "docs": "Optionally opt-out of data tracking. When data tracking is opted no event or user\nattribute is tracked on MoEngage Platform.",
        "complexTypes": [],
        "slug": "disabledatatracking"
      },
      {
        "name": "passFcmPushToken",
        "signature": "(options: { token: string; appId: string; }) => Promise<void>",
        "parameters": [
          {
            "name": "options",
            "docs": "",
            "type": "{ token: string; appId: string; }"
          }
        ],
        "returns": "Promise<void>",
        "tags": [
          {
            "name": "remarks",
            "text": "This API is only for `Android`"
          },
          {
            "name": "param",
            "text": "token FCM token"
          },
          {
            "name": "since",
            "text": "2.0.0"
          }
        ],
        "docs": "Pass FCM Push Token to the MoEngage SDK",
        "complexTypes": [],
        "slug": "passfcmpushtoken"
      },
      {
        "name": "passFcmPushPayload",
        "signature": "(options: { payload: object; appId: string; }) => Promise<void>",
        "parameters": [
          {
            "name": "options",
            "docs": "",
            "type": "{ payload: object; appId: string; }"
          }
        ],
        "returns": "Promise<void>",
        "tags": [
          {
            "name": "remarks",
            "text": "This API is only for `Android`"
          },
          {
            "name": "param",
            "text": "payload Push payload"
          },
          {
            "name": "since",
            "text": "2.0.0"
          }
        ],
        "docs": "Pass FCM payload to MoEngage SDK",
        "complexTypes": [],
        "slug": "passfcmpushpayload"
      },
      {
        "name": "registerForPush",
        "signature": "() => Promise<void>",
        "parameters": [],
        "returns": "Promise<void>",
        "tags": [
          {
            "name": "remarks",
            "text": "This API is only for `iOS`"
          },
          {
            "name": "since",
            "text": "2.0.0"
          }
        ],
        "docs": "Register For Push Notification for iOS",
        "complexTypes": [],
        "slug": "registerforpush"
      },
      {
        "name": "onOrientationChanged",
        "signature": "() => Promise<void>",
        "parameters": [],
        "returns": "Promise<void>",
        "tags": [
          {
            "name": "remarks",
            "text": "This API is only for `Android`"
          },
          {
            "name": "since",
            "text": "2.0.0"
          }
        ],
        "docs": "Notifies MoEngage SDK of device orientation change",
        "complexTypes": [],
        "slug": "onorientationchanged"
      },
      {
        "name": "addListener",
        "signature": "(eventName: 'pushTokenGenerated', listenerFunc: MoEPushTokenListener) => Promise<PluginListenerHandle> & PluginListenerHandle",
        "parameters": [
          {
            "name": "eventName",
            "docs": "",
            "type": "'pushTokenGenerated'"
          },
          {
            "name": "listenerFunc",
            "docs": "",
            "type": "MoEPushTokenListener"
          }
        ],
        "returns": "Promise<PluginListenerHandle> & PluginListenerHandle",
        "tags": [
          {
            "name": "since",
            "text": "2.0.0"
          }
        ],
        "docs": "Listen for push token generated event",
        "complexTypes": [
          "PluginListenerHandle",
          "MoEPushTokenListener"
        ],
        "slug": "addlistenerpushtokengenerated-"
      },
      {
        "name": "addListener",
        "signature": "(eventName: 'pushClicked', listenerFunc: MoEPushClickListener) => Promise<PluginListenerHandle> & PluginListenerHandle",
        "parameters": [
          {
            "name": "eventName",
            "docs": "",
            "type": "'pushClicked'"
          },
          {
            "name": "listenerFunc",
            "docs": "",
            "type": "MoEPushClickListener"
          }
        ],
        "returns": "Promise<PluginListenerHandle> & PluginListenerHandle",
        "tags": [
          {
            "name": "since",
            "text": "1.0.0"
          }
        ],
        "docs": "Listen for push clicked event",
        "complexTypes": [
          "PluginListenerHandle",
          "MoEPushClickListener"
        ],
        "slug": "addlistenerpushclicked-"
      },
      {
        "name": "addListener",
        "signature": "(eventName: 'inAppCampaignShown', listenerFunc: MoEInAppShownListener) => Promise<PluginListenerHandle> & PluginListenerHandle",
        "parameters": [
          {
            "name": "eventName",
            "docs": "",
            "type": "'inAppCampaignShown'"
          },
          {
            "name": "listenerFunc",
            "docs": "",
            "type": "MoEInAppShownListener"
          }
        ],
        "returns": "Promise<PluginListenerHandle> & PluginListenerHandle",
        "tags": [
          {
            "name": "since",
            "text": "1.0.0"
          }
        ],
        "docs": "Listen for in-app campaign shown event",
        "complexTypes": [
          "PluginListenerHandle",
          "MoEInAppShownListener"
        ],
        "slug": "addlistenerinappcampaignshown-"
      },
      {
        "name": "addListener",
        "signature": "(eventName: 'inAppCampaignClicked', listenerFunc: MoEInAppClickedListener) => Promise<PluginListenerHandle> & PluginListenerHandle",
        "parameters": [
          {
            "name": "eventName",
            "docs": "",
            "type": "'inAppCampaignClicked'"
          },
          {
            "name": "listenerFunc",
            "docs": "",
            "type": "MoEInAppClickedListener"
          }
        ],
        "returns": "Promise<PluginListenerHandle> & PluginListenerHandle",
        "tags": [
          {
            "name": "since",
            "text": "1.0.0"
          }
        ],
        "docs": "Listen for in-app campaign clicked event",
        "complexTypes": [
          "PluginListenerHandle",
          "MoEInAppClickedListener"
        ],
        "slug": "addlistenerinappcampaignclicked-"
      },
      {
        "name": "addListener",
        "signature": "(eventName: 'inAppCampaignDismissed', listenerFunc: MoEInAppDismissedListener) => Promise<PluginListenerHandle> & PluginListenerHandle",
        "parameters": [
          {
            "name": "eventName",
            "docs": "",
            "type": "'inAppCampaignDismissed'"
          },
          {
            "name": "listenerFunc",
            "docs": "",
            "type": "MoEInAppDismissedListener"
          }
        ],
        "returns": "Promise<PluginListenerHandle> & PluginListenerHandle",
        "tags": [],
        "docs": "",
        "complexTypes": [
          "PluginListenerHandle",
          "MoEInAppDismissedListener"
        ],
        "slug": "addlistenerinappcampaigndismissed-"
      },
      {
        "name": "addListener",
        "signature": "(eventName: 'inAppCampaignCustomAction', listenerFunc: MoEInAppCustomActionListener) => Promise<PluginListenerHandle> & PluginListenerHandle",
        "parameters": [
          {
            "name": "eventName",
            "docs": "",
            "type": "'inAppCampaignCustomAction'"
          },
          {
            "name": "listenerFunc",
            "docs": "",
            "type": "MoEInAppCustomActionListener"
          }
        ],
        "returns": "Promise<PluginListenerHandle> & PluginListenerHandle",
        "tags": [
          {
            "name": "since",
            "text": "1.0.0"
          }
        ],
        "docs": "Listen for in-app campaign custom action event",
        "complexTypes": [
          "PluginListenerHandle",
          "MoEInAppCustomActionListener"
        ],
        "slug": "addlistenerinappcampaigncustomaction-"
      },
      {
        "name": "addListener",
        "signature": "(eventName: 'inAppCampaignSelfHandled', listenerFunc: MoEInAppSelfHandledListener) => Promise<PluginListenerHandle> & PluginListenerHandle",
        "parameters": [
          {
            "name": "eventName",
            "docs": "",
            "type": "'inAppCampaignSelfHandled'"
          },
          {
            "name": "listenerFunc",
            "docs": "",
            "type": "MoEInAppSelfHandledListener"
          }
        ],
        "returns": "Promise<PluginListenerHandle> & PluginListenerHandle",
        "tags": [
          {
            "name": "since",
            "text": "1.0.0"
          }
        ],
        "docs": "Listen for in-app campaign self handled available event\n\n`getSelfHandledInApp()` api call returns the available self handled in-app via this listener.",
        "complexTypes": [
          "PluginListenerHandle",
          "MoEInAppSelfHandledListener"
        ],
        "slug": "addlistenerinappcampaignselfhandled-"
      },
      {
        "name": "enableAdIdTracking",
        "signature": "(options: { appId: string; }) => Promise<void>",
        "parameters": [
          {
            "name": "options",
            "docs": "",
            "type": "{ appId: string; }"
          }
        ],
        "returns": "Promise<void>",
        "tags": [
          {
            "name": "remarks",
            "text": "This API is only for `Android`"
          },
          {
            "name": "since",
            "text": "2.0.0"
          }
        ],
        "docs": "Enables GAID tracking, by default GAID tracking is disabled.",
        "complexTypes": [],
        "slug": "enableadidtracking"
      },
      {
        "name": "disableAdIdTracking",
        "signature": "(options: { appId: string; }) => Promise<void>",
        "parameters": [
          {
            "name": "options",
            "docs": "",
            "type": "{ appId: string; }"
          }
        ],
        "returns": "Promise<void>",
        "tags": [
          {
            "name": "remarks",
            "text": "This API is only for `Android`"
          },
          {
            "name": "since",
            "text": "2.0.0"
          }
        ],
        "docs": "Disables GAID tracking.",
        "complexTypes": [],
        "slug": "disableadidtracking"
      },
      {
        "name": "enableAndroidIdTracking",
        "signature": "(options: { appId: string; }) => Promise<void>",
        "parameters": [
          {
            "name": "options",
            "docs": "",
            "type": "{ appId: string; }"
          }
        ],
        "returns": "Promise<void>",
        "tags": [
          {
            "name": "remarks",
            "text": "This API is only for `Android`"
          },
          {
            "name": "since",
            "text": "2.0.0"
          }
        ],
        "docs": "Enables Android ID tracking, by default ANdroid ID tracking is disabled.",
        "complexTypes": [],
        "slug": "enableandroididtracking"
      },
      {
        "name": "disableAndroidIdTracking",
        "signature": "(options: { appId: string; }) => Promise<void>",
        "parameters": [
          {
            "name": "options",
            "docs": "",
            "type": "{ appId: string; }"
          }
        ],
        "returns": "Promise<void>",
        "tags": [
          {
            "name": "remarks",
            "text": "This API is only for `Android`"
          },
          {
            "name": "since",
            "text": "2.0.0"
          }
        ],
        "docs": "Disables Android ID tracking.",
        "complexTypes": [],
        "slug": "disableandroididtracking"
      },
      {
        "name": "setupNotificationChannelsAndroid",
        "signature": "() => Promise<void>",
        "parameters": [],
        "returns": "Promise<void>",
        "tags": [
          {
            "name": "remarks",
            "text": "This API is only for `Android`"
          },
          {
            "name": "since",
            "text": "2.0.0"
          }
        ],
        "docs": "API to create notification channels on Android.",
        "complexTypes": [],
        "slug": "setupnotificationchannelsandroid"
      },
      {
        "name": "pushPermissionResponseAndroid",
        "signature": "(options: { isGranted: boolean; }) => Promise<void>",
        "parameters": [
          {
            "name": "options",
            "docs": "",
            "type": "{ isGranted: boolean; }"
          }
        ],
        "returns": "Promise<void>",
        "tags": [
          {
            "name": "remarks",
            "text": "This API is only for `Android`"
          },
          {
            "name": "param",
            "text": "isGranted true if the permission is granted else false"
          },
          {
            "name": "since",
            "text": "2.0.0"
          }
        ],
        "docs": "Notify the SDK on notification permission granted to the application.",
        "complexTypes": [],
        "slug": "pushpermissionresponseandroid"
      },
      {
        "name": "navigateToSettingsAndroid",
        "signature": "() => Promise<void>",
        "parameters": [],
        "returns": "Promise<void>",
        "tags": [
          {
            "name": "remarks",
            "text": "This API is only for `Android`"
          }
        ],
        "docs": "Navigates the user to the Notification settings on Android 8 or above,\non older versions the user is navigated the application settings or\napplication info screen.",
        "complexTypes": [],
        "slug": "navigatetosettingsandroid"
      },
      {
        "name": "requestPushPermissionAndroid",
        "signature": "() => Promise<void>",
        "parameters": [],
        "returns": "Promise<void>",
        "tags": [
          {
            "name": "remarks",
            "text": "This API is only for `Android`"
          }
        ],
        "docs": "Requests the push permission on Android 13 and above.",
        "complexTypes": [],
        "slug": "requestpushpermissionandroid"
      },
      {
        "name": "addListener",
        "signature": "(eventName: 'onPermissionResult', listenerFunc: MoEPermissionListener) => Promise<PluginListenerHandle> & PluginListenerHandle",
        "parameters": [
          {
            "name": "eventName",
            "docs": "",
            "type": "'onPermissionResult'"
          },
          {
            "name": "listenerFunc",
            "docs": "",
            "type": "MoEPermissionListener"
          }
        ],
        "returns": "Promise<PluginListenerHandle> & PluginListenerHandle",
        "tags": [
          {
            "name": "remarks",
            "text": "This API is only for `Android`\n\n`requestPushPermissionAndroid()` api call returns the state of permission via this listener."
          },
          {
            "name": "since",
            "text": "2.0.0"
          }
        ],
        "docs": "Listen for permission response",
        "complexTypes": [
          "PluginListenerHandle",
          "MoEPermissionListener"
        ],
        "slug": "addlisteneronpermissionresult-"
      },
      {
        "name": "enableDeviceIdTracking",
        "signature": "(options: { appId: string; }) => Promise<void>",
        "parameters": [
          {
            "name": "options",
            "docs": "",
            "type": "{ appId: string; }"
          }
        ],
        "returns": "Promise<void>",
        "tags": [],
        "docs": "Enable Device-id tracking. It is enabled by default and should be called only if tracking is disabled at some point.",
        "complexTypes": [],
        "slug": "enabledeviceidtracking"
      },
      {
        "name": "disableDeviceIdTracking",
        "signature": "(options: { appId: string; }) => Promise<void>",
        "parameters": [
          {
            "name": "options",
            "docs": "",
            "type": "{ appId: string; }"
          }
        ],
        "returns": "Promise<void>",
        "tags": [],
        "docs": "Disables Device-id tracking.",
        "complexTypes": [],
        "slug": "disabledeviceidtracking"
      },
      {
        "name": "updatePushPermissionRequestCountAndroid",
        "signature": "(options: { appId: string; count: number; }) => Promise<void>",
        "parameters": [
          {
            "name": "options",
            "docs": "",
            "type": "{ appId: string; count: number; }"
          }
        ],
        "returns": "Promise<void>",
        "tags": [
          {
            "name": "remarks",
            "text": "This API is only for `Android`"
          },
          {
            "name": "param",
            "text": "appId Account Identifier"
          },
          {
            "name": "param",
            "text": "count - Number of fresh request attempts."
          }
        ],
        "docs": "Updates the Notification request attempt count, the request attempt count will be\nincremented by the passed fresh count.\n\nNOTE: Call this API only when the Application is handling the Notification request\npermission.",
        "complexTypes": [],
        "slug": "updatepushpermissionrequestcountandroid"
      },
      {
        "name": "deleteUser",
        "signature": "(options: { appId: string; }, callback: MoEUserDeleteCallback) => Promise<void>",
        "parameters": [
          {
            "name": "options",
            "docs": "",
            "type": "{ appId: string; }"
          },
          {
            "name": "callback",
            "docs": "instance of {@link MoEUserDeleteCallback} to get the API response",
            "type": "MoEUserDeleteCallback"
          }
        ],
        "returns": "Promise<void>",
        "tags": [
          {
            "name": "remarks",
            "text": "This API is only for `Android`"
          },
          {
            "name": "param",
            "text": "appId Account Identifier"
          },
          {
            "name": "param",
            "text": "callback instance of {@link MoEUserDeleteCallback} to get the API response"
          }
        ],
        "docs": "Delete Current User Data From MoEngage Server",
        "complexTypes": [
          "MoEUserDeleteCallback"
        ],
        "slug": "deleteuser"
      },
      {
        "name": "showNudge",
        "signature": "(options: { position: MoENudgePosition; appId: string; }) => Promise<void>",
        "parameters": [
          {
            "name": "options",
            "docs": "",
            "type": "{ position: MoENudgePosition; appId: string; }"
          }
        ],
        "returns": "Promise<void>",
        "tags": [
          {
            "name": "param",
            "text": "position Place on the screen to show the Nudge."
          },
          {
            "name": "param",
            "text": "appId Account Identifier"
          }
        ],
        "docs": "Show Nudge",
        "complexTypes": [
          "MoENudgePosition"
        ],
        "slug": "shownudge"
      }
    ],
    "properties": []
  },
  "interfaces": [
    {
      "name": "MoEInitConfig",
      "slug": "moeinitconfig",
      "docs": "",
      "tags": [],
      "methods": [],
      "properties": [
        {
          "name": "analyticsConfig",
          "tags": [],
          "docs": "Analytics Config data",
          "complexTypes": [
            "MoEAnalyticsConfig"
          ],
          "type": "MoEAnalyticsConfig"
        }
      ]
    },
    {
      "name": "MoEAnalyticsConfig",
      "slug": "moeanalyticsconfig",
      "docs": "",
      "tags": [],
      "methods": [],
      "properties": [
        {
          "name": "shouldTrackUserAttributeBooleanAsNumber",
          "tags": [],
          "docs": "Status of whether boolean user attribute should be tracked as number or not.",
          "complexTypes": [],
          "type": "boolean"
        }
      ]
    },
    {
      "name": "MoEProperties",
      "slug": "moeproperties",
      "docs": "User attributes object",
      "tags": [],
      "methods": [],
      "properties": [
        {
          "name": "generalAttributes",
          "tags": [],
          "docs": "General Attributes",
          "complexTypes": [
            "Array",
            "MoEGeneralAttributes"
          ],
          "type": "Array<MoEGeneralAttributes>"
        },
        {
          "name": "dateTimeAttributes",
          "tags": [],
          "docs": "Location Attributes",
          "complexTypes": [
            "Array",
            "MoEDateTimeAttributes"
          ],
          "type": "Array<MoEDateTimeAttributes>"
        },
        {
          "name": "locationAttributes",
          "tags": [],
          "docs": "Date time Attributes",
          "complexTypes": [
            "Array",
            "MoELocationAttributes"
          ],
          "type": "Array<MoELocationAttributes>"
        },
        {
          "name": "isNonInteractive",
          "tags": [],
          "docs": "Is the event non-interactive",
          "complexTypes": [],
          "type": "boolean | undefined"
        }
      ]
    },
    {
      "name": "Array",
      "slug": "array",
      "docs": "",
      "tags": [],
      "methods": [
        {
          "name": "toString",
          "signature": "() => string",
          "parameters": [],
          "returns": "string",
          "tags": [],
          "docs": "Returns a string representation of an array.",
          "complexTypes": [],
          "slug": "tostring"
        },
        {
          "name": "toLocaleString",
          "signature": "() => string",
          "parameters": [],
          "returns": "string",
          "tags": [],
          "docs": "Returns a string representation of an array. The elements are converted to string using their toLocalString methods.",
          "complexTypes": [],
          "slug": "tolocalestring"
        },
        {
          "name": "pop",
          "signature": "() => T | undefined",
          "parameters": [],
          "returns": "T | undefined",
          "tags": [],
          "docs": "Removes the last element from an array and returns it.\r\nIf the array is empty, undefined is returned and the array is not modified.",
          "complexTypes": [
            "T"
          ],
          "slug": "pop"
        },
        {
          "name": "push",
          "signature": "(...items: T[]) => number",
          "parameters": [
            {
              "name": "items",
              "docs": "New elements to add to the array.",
              "type": "T[]"
            }
          ],
          "returns": "number",
          "tags": [
            {
              "name": "param",
              "text": "items New elements to add to the array."
            }
          ],
          "docs": "Appends new elements to the end of an array, and returns the new length of the array.",
          "complexTypes": [
            "T"
          ],
          "slug": "push"
        },
        {
          "name": "concat",
          "signature": "(...items: ConcatArray<T>[]) => T[]",
          "parameters": [
            {
              "name": "items",
              "docs": "Additional arrays and/or items to add to the end of the array.",
              "type": "ConcatArray<T>[]"
            }
          ],
          "returns": "T[]",
          "tags": [
            {
              "name": "param",
              "text": "items Additional arrays and/or items to add to the end of the array."
            }
          ],
          "docs": "Combines two or more arrays.\r\nThis method returns a new array without modifying any existing arrays.",
          "complexTypes": [
            "T",
            "ConcatArray"
          ],
          "slug": "concat"
        },
        {
          "name": "concat",
          "signature": "(...items: (T | ConcatArray<T>)[]) => T[]",
          "parameters": [
            {
              "name": "items",
              "docs": "Additional arrays and/or items to add to the end of the array.",
              "type": "(T | ConcatArray<T>)[]"
            }
          ],
          "returns": "T[]",
          "tags": [
            {
              "name": "param",
              "text": "items Additional arrays and/or items to add to the end of the array."
            }
          ],
          "docs": "Combines two or more arrays.\r\nThis method returns a new array without modifying any existing arrays.",
          "complexTypes": [
            "T",
            "ConcatArray"
          ],
          "slug": "concat"
        },
        {
          "name": "join",
          "signature": "(separator?: string | undefined) => string",
          "parameters": [
            {
              "name": "separator",
              "docs": "A string used to separate one element of the array from the next in the resulting string. If omitted, the array elements are separated with a comma.",
              "type": "string | undefined"
            }
          ],
          "returns": "string",
          "tags": [
            {
              "name": "param",
              "text": "separator A string used to separate one element of the array from the next in the resulting string. If omitted, the array elements are separated with a comma."
            }
          ],
          "docs": "Adds all the elements of an array into a string, separated by the specified separator string.",
          "complexTypes": [],
          "slug": "join"
        },
        {
          "name": "reverse",
          "signature": "() => T[]",
          "parameters": [],
          "returns": "T[]",
          "tags": [],
          "docs": "Reverses the elements in an array in place.\r\nThis method mutates the array and returns a reference to the same array.",
          "complexTypes": [
            "T"
          ],
          "slug": "reverse"
        },
        {
          "name": "shift",
          "signature": "() => T | undefined",
          "parameters": [],
          "returns": "T | undefined",
          "tags": [],
          "docs": "Removes the first element from an array and returns it.\r\nIf the array is empty, undefined is returned and the array is not modified.",
          "complexTypes": [
            "T"
          ],
          "slug": "shift"
        },
        {
          "name": "slice",
          "signature": "(start?: number | undefined, end?: number | undefined) => T[]",
          "parameters": [
            {
              "name": "start",
              "docs": "The beginning index of the specified portion of the array.\r\nIf start is undefined, then the slice begins at index 0.",
              "type": "number | undefined"
            },
            {
              "name": "end",
              "docs": "The end index of the specified portion of the array. This is exclusive of the element at the index 'end'.\r\nIf end is undefined, then the slice extends to the end of the array.",
              "type": "number | undefined"
            }
          ],
          "returns": "T[]",
          "tags": [
            {
              "name": "param",
              "text": "start The beginning index of the specified portion of the array.\r\nIf start is undefined, then the slice begins at index 0."
            },
            {
              "name": "param",
              "text": "end The end index of the specified portion of the array. This is exclusive of the element at the index 'end'.\r\nIf end is undefined, then the slice extends to the end of the array."
            }
          ],
          "docs": "Returns a copy of a section of an array.\r\nFor both start and end, a negative index can be used to indicate an offset from the end of the array.\r\nFor example, -2 refers to the second to last element of the array.",
          "complexTypes": [
            "T"
          ],
          "slug": "slice"
        },
        {
          "name": "sort",
          "signature": "(compareFn?: ((a: T, b: T) => number) | undefined) => this",
          "parameters": [
            {
              "name": "compareFn",
              "docs": "Function used to determine the order of the elements. It is expected to return\r\na negative value if first argument is less than second argument, zero if they're equal and a positive\r\nvalue otherwise. If omitted, the elements are sorted in ascending, ASCII character order.\r\n```ts\r\n[11,2,22,1].sort((a, b) => a - b)\r\n```",
              "type": "((a: T, b: T) => number) | undefined"
            }
          ],
          "returns": "this",
          "tags": [
            {
              "name": "param",
              "text": "compareFn Function used to determine the order of the elements. It is expected to return\r\na negative value if first argument is less than second argument, zero if they're equal and a positive\r\nvalue otherwise. If omitted, the elements are sorted in ascending, ASCII character order.\r\n```ts\r\n[11,2,22,1].sort((a, b) => a - b)\r\n```"
            }
          ],
          "docs": "Sorts an array in place.\r\nThis method mutates the array and returns a reference to the same array.",
          "complexTypes": [
            "T"
          ],
          "slug": "sort"
        },
        {
          "name": "splice",
          "signature": "(start: number, deleteCount?: number | undefined) => T[]",
          "parameters": [
            {
              "name": "start",
              "docs": "The zero-based location in the array from which to start removing elements.",
              "type": "number"
            },
            {
              "name": "deleteCount",
              "docs": "The number of elements to remove.",
              "type": "number | undefined"
            }
          ],
          "returns": "T[]",
          "tags": [
            {
              "name": "param",
              "text": "start The zero-based location in the array from which to start removing elements."
            },
            {
              "name": "param",
              "text": "deleteCount The number of elements to remove."
            },
            {
              "name": "returns",
              "text": "An array containing the elements that were deleted."
            }
          ],
          "docs": "Removes elements from an array and, if necessary, inserts new elements in their place, returning the deleted elements.",
          "complexTypes": [
            "T"
          ],
          "slug": "splice"
        },
        {
          "name": "splice",
          "signature": "(start: number, deleteCount: number, ...items: T[]) => T[]",
          "parameters": [
            {
              "name": "start",
              "docs": "The zero-based location in the array from which to start removing elements.",
              "type": "number"
            },
            {
              "name": "deleteCount",
              "docs": "The number of elements to remove.",
              "type": "number"
            },
            {
              "name": "items",
              "docs": "Elements to insert into the array in place of the deleted elements.",
              "type": "T[]"
            }
          ],
          "returns": "T[]",
          "tags": [
            {
              "name": "param",
              "text": "start The zero-based location in the array from which to start removing elements."
            },
            {
              "name": "param",
              "text": "deleteCount The number of elements to remove."
            },
            {
              "name": "param",
              "text": "items Elements to insert into the array in place of the deleted elements."
            },
            {
              "name": "returns",
              "text": "An array containing the elements that were deleted."
            }
          ],
          "docs": "Removes elements from an array and, if necessary, inserts new elements in their place, returning the deleted elements.",
          "complexTypes": [
            "T"
          ],
          "slug": "splice"
        },
        {
          "name": "unshift",
          "signature": "(...items: T[]) => number",
          "parameters": [
            {
              "name": "items",
              "docs": "Elements to insert at the start of the array.",
              "type": "T[]"
            }
          ],
          "returns": "number",
          "tags": [
            {
              "name": "param",
              "text": "items Elements to insert at the start of the array."
            }
          ],
          "docs": "Inserts new elements at the start of an array, and returns the new length of the array.",
          "complexTypes": [
            "T"
          ],
          "slug": "unshift"
        },
        {
          "name": "indexOf",
          "signature": "(searchElement: T, fromIndex?: number | undefined) => number",
          "parameters": [
            {
              "name": "searchElement",
              "docs": "The value to locate in the array.",
              "type": "T"
            },
            {
              "name": "fromIndex",
              "docs": "The array index at which to begin the search. If fromIndex is omitted, the search starts at index 0.",
              "type": "number | undefined"
            }
          ],
          "returns": "number",
          "tags": [
            {
              "name": "param",
              "text": "searchElement The value to locate in the array."
            },
            {
              "name": "param",
              "text": "fromIndex The array index at which to begin the search. If fromIndex is omitted, the search starts at index 0."
            }
          ],
          "docs": "Returns the index of the first occurrence of a value in an array, or -1 if it is not present.",
          "complexTypes": [
            "T"
          ],
          "slug": "indexof"
        },
        {
          "name": "lastIndexOf",
          "signature": "(searchElement: T, fromIndex?: number | undefined) => number",
          "parameters": [
            {
              "name": "searchElement",
              "docs": "The value to locate in the array.",
              "type": "T"
            },
            {
              "name": "fromIndex",
              "docs": "The array index at which to begin searching backward. If fromIndex is omitted, the search starts at the last index in the array.",
              "type": "number | undefined"
            }
          ],
          "returns": "number",
          "tags": [
            {
              "name": "param",
              "text": "searchElement The value to locate in the array."
            },
            {
              "name": "param",
              "text": "fromIndex The array index at which to begin searching backward. If fromIndex is omitted, the search starts at the last index in the array."
            }
          ],
          "docs": "Returns the index of the last occurrence of a specified value in an array, or -1 if it is not present.",
          "complexTypes": [
            "T"
          ],
          "slug": "lastindexof"
        },
        {
          "name": "every",
          "signature": "<S extends T>(predicate: (value: T, index: number, array: T[]) => value is S, thisArg?: any) => this is S[]",
          "parameters": [
            {
              "name": "predicate",
              "docs": "A function that accepts up to three arguments. The every method calls\r\nthe predicate function for each element in the array until the predicate returns a value\r\nwhich is coercible to the Boolean value false, or until the end of the array.",
              "type": "(value: T, index: number, array: T[]) => value is S"
            },
            {
              "name": "thisArg",
              "docs": "An object to which the this keyword can refer in the predicate function.\r\nIf thisArg is omitted, undefined is used as the this value.",
              "type": "any"
            }
          ],
          "returns": "boolean",
          "tags": [
            {
              "name": "param",
              "text": "predicate A function that accepts up to three arguments. The every method calls\r\nthe predicate function for each element in the array until the predicate returns a value\r\nwhich is coercible to the Boolean value false, or until the end of the array."
            },
            {
              "name": "param",
              "text": "thisArg An object to which the this keyword can refer in the predicate function.\r\nIf thisArg is omitted, undefined is used as the this value."
            }
          ],
          "docs": "Determines whether all the members of an array satisfy the specified test.",
          "complexTypes": [
            "T",
            "S"
          ],
          "slug": "every"
        },
        {
          "name": "every",
          "signature": "(predicate: (value: T, index: number, array: T[]) => unknown, thisArg?: any) => boolean",
          "parameters": [
            {
              "name": "predicate",
              "docs": "A function that accepts up to three arguments. The every method calls\r\nthe predicate function for each element in the array until the predicate returns a value\r\nwhich is coercible to the Boolean value false, or until the end of the array.",
              "type": "(value: T, index: number, array: T[]) => unknown"
            },
            {
              "name": "thisArg",
              "docs": "An object to which the this keyword can refer in the predicate function.\r\nIf thisArg is omitted, undefined is used as the this value.",
              "type": "any"
            }
          ],
          "returns": "boolean",
          "tags": [
            {
              "name": "param",
              "text": "predicate A function that accepts up to three arguments. The every method calls\r\nthe predicate function for each element in the array until the predicate returns a value\r\nwhich is coercible to the Boolean value false, or until the end of the array."
            },
            {
              "name": "param",
              "text": "thisArg An object to which the this keyword can refer in the predicate function.\r\nIf thisArg is omitted, undefined is used as the this value."
            }
          ],
          "docs": "Determines whether all the members of an array satisfy the specified test.",
          "complexTypes": [
            "T"
          ],
          "slug": "every"
        },
        {
          "name": "some",
          "signature": "(predicate: (value: T, index: number, array: T[]) => unknown, thisArg?: any) => boolean",
          "parameters": [
            {
              "name": "predicate",
              "docs": "A function that accepts up to three arguments. The some method calls\r\nthe predicate function for each element in the array until the predicate returns a value\r\nwhich is coercible to the Boolean value true, or until the end of the array.",
              "type": "(value: T, index: number, array: T[]) => unknown"
            },
            {
              "name": "thisArg",
              "docs": "An object to which the this keyword can refer in the predicate function.\r\nIf thisArg is omitted, undefined is used as the this value.",
              "type": "any"
            }
          ],
          "returns": "boolean",
          "tags": [
            {
              "name": "param",
              "text": "predicate A function that accepts up to three arguments. The some method calls\r\nthe predicate function for each element in the array until the predicate returns a value\r\nwhich is coercible to the Boolean value true, or until the end of the array."
            },
            {
              "name": "param",
              "text": "thisArg An object to which the this keyword can refer in the predicate function.\r\nIf thisArg is omitted, undefined is used as the this value."
            }
          ],
          "docs": "Determines whether the specified callback function returns true for any element of an array.",
          "complexTypes": [
            "T"
          ],
          "slug": "some"
        },
        {
          "name": "forEach",
          "signature": "(callbackfn: (value: T, index: number, array: T[]) => void, thisArg?: any) => void",
          "parameters": [
            {
              "name": "callbackfn",
              "docs": "A function that accepts up to three arguments. forEach calls the callbackfn function one time for each element in the array.",
              "type": "(value: T, index: number, array: T[]) => void"
            },
            {
              "name": "thisArg",
              "docs": "An object to which the this keyword can refer in the callbackfn function. If thisArg is omitted, undefined is used as the this value.",
              "type": "any"
            }
          ],
          "returns": "void",
          "tags": [
            {
              "name": "param",
              "text": "callbackfn A function that accepts up to three arguments. forEach calls the callbackfn function one time for each element in the array."
            },
            {
              "name": "param",
              "text": "thisArg An object to which the this keyword can refer in the callbackfn function. If thisArg is omitted, undefined is used as the this value."
            }
          ],
          "docs": "Performs the specified action for each element in an array.",
          "complexTypes": [
            "T"
          ],
          "slug": "foreach"
        },
        {
          "name": "map",
          "signature": "<U>(callbackfn: (value: T, index: number, array: T[]) => U, thisArg?: any) => U[]",
          "parameters": [
            {
              "name": "callbackfn",
              "docs": "A function that accepts up to three arguments. The map method calls the callbackfn function one time for each element in the array.",
              "type": "(value: T, index: number, array: T[]) => U"
            },
            {
              "name": "thisArg",
              "docs": "An object to which the this keyword can refer in the callbackfn function. If thisArg is omitted, undefined is used as the this value.",
              "type": "any"
            }
          ],
          "returns": "U[]",
          "tags": [
            {
              "name": "param",
              "text": "callbackfn A function that accepts up to three arguments. The map method calls the callbackfn function one time for each element in the array."
            },
            {
              "name": "param",
              "text": "thisArg An object to which the this keyword can refer in the callbackfn function. If thisArg is omitted, undefined is used as the this value."
            }
          ],
          "docs": "Calls a defined callback function on each element of an array, and returns an array that contains the results.",
          "complexTypes": [
            "U",
            "T"
          ],
          "slug": "map"
        },
        {
          "name": "filter",
          "signature": "<S extends T>(predicate: (value: T, index: number, array: T[]) => value is S, thisArg?: any) => S[]",
          "parameters": [
            {
              "name": "predicate",
              "docs": "A function that accepts up to three arguments. The filter method calls the predicate function one time for each element in the array.",
              "type": "(value: T, index: number, array: T[]) => value is S"
            },
            {
              "name": "thisArg",
              "docs": "An object to which the this keyword can refer in the predicate function. If thisArg is omitted, undefined is used as the this value.",
              "type": "any"
            }
          ],
          "returns": "S[]",
          "tags": [
            {
              "name": "param",
              "text": "predicate A function that accepts up to three arguments. The filter method calls the predicate function one time for each element in the array."
            },
            {
              "name": "param",
              "text": "thisArg An object to which the this keyword can refer in the predicate function. If thisArg is omitted, undefined is used as the this value."
            }
          ],
          "docs": "Returns the elements of an array that meet the condition specified in a callback function.",
          "complexTypes": [
            "S",
            "T"
          ],
          "slug": "filter"
        },
        {
          "name": "filter",
          "signature": "(predicate: (value: T, index: number, array: T[]) => unknown, thisArg?: any) => T[]",
          "parameters": [
            {
              "name": "predicate",
              "docs": "A function that accepts up to three arguments. The filter method calls the predicate function one time for each element in the array.",
              "type": "(value: T, index: number, array: T[]) => unknown"
            },
            {
              "name": "thisArg",
              "docs": "An object to which the this keyword can refer in the predicate function. If thisArg is omitted, undefined is used as the this value.",
              "type": "any"
            }
          ],
          "returns": "T[]",
          "tags": [
            {
              "name": "param",
              "text": "predicate A function that accepts up to three arguments. The filter method calls the predicate function one time for each element in the array."
            },
            {
              "name": "param",
              "text": "thisArg An object to which the this keyword can refer in the predicate function. If thisArg is omitted, undefined is used as the this value."
            }
          ],
          "docs": "Returns the elements of an array that meet the condition specified in a callback function.",
          "complexTypes": [
            "T"
          ],
          "slug": "filter"
        },
        {
          "name": "reduce",
          "signature": "(callbackfn: (previousValue: T, currentValue: T, currentIndex: number, array: T[]) => T) => T",
          "parameters": [
            {
              "name": "callbackfn",
              "docs": "A function that accepts up to four arguments. The reduce method calls the callbackfn function one time for each element in the array.",
              "type": "(previousValue: T, currentValue: T, currentIndex: number, array: T[]) => T"
            }
          ],
          "returns": "T",
          "tags": [
            {
              "name": "param",
              "text": "callbackfn A function that accepts up to four arguments. The reduce method calls the callbackfn function one time for each element in the array."
            },
            {
              "name": "param",
              "text": "initialValue If initialValue is specified, it is used as the initial value to start the accumulation. The first call to the callbackfn function provides this value as an argument instead of an array value."
            }
          ],
          "docs": "Calls the specified callback function for all the elements in an array. The return value of the callback function is the accumulated result, and is provided as an argument in the next call to the callback function.",
          "complexTypes": [
            "T"
          ],
          "slug": "reduce"
        },
        {
          "name": "reduce",
          "signature": "(callbackfn: (previousValue: T, currentValue: T, currentIndex: number, array: T[]) => T, initialValue: T) => T",
          "parameters": [
            {
              "name": "callbackfn",
              "docs": "",
              "type": "(previousValue: T, currentValue: T, currentIndex: number, array: T[]) => T"
            },
            {
              "name": "initialValue",
              "docs": "",
              "type": "T"
            }
          ],
          "returns": "T",
          "tags": [],
          "docs": "",
          "complexTypes": [
            "T"
          ],
          "slug": "reduce"
        },
        {
          "name": "reduce",
          "signature": "<U>(callbackfn: (previousValue: U, currentValue: T, currentIndex: number, array: T[]) => U, initialValue: U) => U",
          "parameters": [
            {
              "name": "callbackfn",
              "docs": "A function that accepts up to four arguments. The reduce method calls the callbackfn function one time for each element in the array.",
              "type": "(previousValue: U, currentValue: T, currentIndex: number, array: T[]) => U"
            },
            {
              "name": "initialValue",
              "docs": "If initialValue is specified, it is used as the initial value to start the accumulation. The first call to the callbackfn function provides this value as an argument instead of an array value.",
              "type": "U"
            }
          ],
          "returns": "U",
          "tags": [
            {
              "name": "param",
              "text": "callbackfn A function that accepts up to four arguments. The reduce method calls the callbackfn function one time for each element in the array."
            },
            {
              "name": "param",
              "text": "initialValue If initialValue is specified, it is used as the initial value to start the accumulation. The first call to the callbackfn function provides this value as an argument instead of an array value."
            }
          ],
          "docs": "Calls the specified callback function for all the elements in an array. The return value of the callback function is the accumulated result, and is provided as an argument in the next call to the callback function.",
          "complexTypes": [
            "U",
            "T"
          ],
          "slug": "reduce"
        },
        {
          "name": "reduceRight",
          "signature": "(callbackfn: (previousValue: T, currentValue: T, currentIndex: number, array: T[]) => T) => T",
          "parameters": [
            {
              "name": "callbackfn",
              "docs": "A function that accepts up to four arguments. The reduceRight method calls the callbackfn function one time for each element in the array.",
              "type": "(previousValue: T, currentValue: T, currentIndex: number, array: T[]) => T"
            }
          ],
          "returns": "T",
          "tags": [
            {
              "name": "param",
              "text": "callbackfn A function that accepts up to four arguments. The reduceRight method calls the callbackfn function one time for each element in the array."
            },
            {
              "name": "param",
              "text": "initialValue If initialValue is specified, it is used as the initial value to start the accumulation. The first call to the callbackfn function provides this value as an argument instead of an array value."
            }
          ],
          "docs": "Calls the specified callback function for all the elements in an array, in descending order. The return value of the callback function is the accumulated result, and is provided as an argument in the next call to the callback function.",
          "complexTypes": [
            "T"
          ],
          "slug": "reduceright"
        },
        {
          "name": "reduceRight",
          "signature": "(callbackfn: (previousValue: T, currentValue: T, currentIndex: number, array: T[]) => T, initialValue: T) => T",
          "parameters": [
            {
              "name": "callbackfn",
              "docs": "",
              "type": "(previousValue: T, currentValue: T, currentIndex: number, array: T[]) => T"
            },
            {
              "name": "initialValue",
              "docs": "",
              "type": "T"
            }
          ],
          "returns": "T",
          "tags": [],
          "docs": "",
          "complexTypes": [
            "T"
          ],
          "slug": "reduceright"
        },
        {
          "name": "reduceRight",
          "signature": "<U>(callbackfn: (previousValue: U, currentValue: T, currentIndex: number, array: T[]) => U, initialValue: U) => U",
          "parameters": [
            {
              "name": "callbackfn",
              "docs": "A function that accepts up to four arguments. The reduceRight method calls the callbackfn function one time for each element in the array.",
              "type": "(previousValue: U, currentValue: T, currentIndex: number, array: T[]) => U"
            },
            {
              "name": "initialValue",
              "docs": "If initialValue is specified, it is used as the initial value to start the accumulation. The first call to the callbackfn function provides this value as an argument instead of an array value.",
              "type": "U"
            }
          ],
          "returns": "U",
          "tags": [
            {
              "name": "param",
              "text": "callbackfn A function that accepts up to four arguments. The reduceRight method calls the callbackfn function one time for each element in the array."
            },
            {
              "name": "param",
              "text": "initialValue If initialValue is specified, it is used as the initial value to start the accumulation. The first call to the callbackfn function provides this value as an argument instead of an array value."
            }
          ],
          "docs": "Calls the specified callback function for all the elements in an array, in descending order. The return value of the callback function is the accumulated result, and is provided as an argument in the next call to the callback function.",
          "complexTypes": [
            "U",
            "T"
          ],
          "slug": "reduceright"
        }
      ],
      "properties": [
        {
          "name": "length",
          "tags": [],
          "docs": "Gets or sets the length of the array. This is a number one higher than the highest index in the array.",
          "complexTypes": [],
          "type": "number"
        }
      ]
    },
    {
      "name": "ConcatArray",
      "slug": "concatarray",
      "docs": "",
      "tags": [],
      "methods": [
        {
          "name": "join",
          "signature": "(separator?: string | undefined) => string",
          "parameters": [
            {
              "name": "separator",
              "docs": "",
              "type": "string | undefined"
            }
          ],
          "returns": "string",
          "tags": [],
          "docs": "",
          "complexTypes": [],
          "slug": "join"
        },
        {
          "name": "slice",
          "signature": "(start?: number | undefined, end?: number | undefined) => T[]",
          "parameters": [
            {
              "name": "start",
              "docs": "",
              "type": "number | undefined"
            },
            {
              "name": "end",
              "docs": "",
              "type": "number | undefined"
            }
          ],
          "returns": "T[]",
          "tags": [],
          "docs": "",
          "complexTypes": [
            "T"
          ],
          "slug": "slice"
        }
      ],
      "properties": [
        {
          "name": "length",
          "tags": [],
          "docs": "",
          "complexTypes": [],
          "type": "number"
        }
      ]
    },
    {
      "name": "MoEGeneralAttributes",
      "slug": "moegeneralattributes",
      "docs": "General Attributes for tracking events",
      "tags": [],
      "methods": [],
      "properties": [
        {
          "name": "name",
          "tags": [],
          "docs": "",
          "complexTypes": [],
          "type": "string"
        },
        {
          "name": "value",
          "tags": [],
          "docs": "",
          "complexTypes": [
            "Array"
          ],
          "type": "string | number | boolean | string[] | number[]"
        }
      ]
    },
    {
      "name": "MoEDateTimeAttributes",
      "slug": "moedatetimeattributes",
      "docs": "Date and time attribute object",
      "tags": [],
      "methods": [],
      "properties": [
        {
          "name": "name",
          "tags": [],
          "docs": "Date and time attribute name",
          "complexTypes": [],
          "type": "string"
        },
        {
          "name": "value",
          "tags": [],
          "docs": "Attribute value in ISO8601 format [yyyy-MM-dd'T'HH:mm:ss'Z'].",
          "complexTypes": [],
          "type": "string"
        }
      ]
    },
    {
      "name": "MoELocationAttributes",
      "slug": "moelocationattributes",
      "docs": "Location attribute object",
      "tags": [],
      "methods": [],
      "properties": [
        {
          "name": "name",
          "tags": [],
          "docs": "Location Attribute name",
          "complexTypes": [],
          "type": "string"
        },
        {
          "name": "value",
          "tags": [],
          "docs": "Location attribute value.",
          "complexTypes": [
            "MoEGeoLocation"
          ],
          "type": "MoEGeoLocation"
        }
      ]
    },
    {
      "name": "MoEGeoLocation",
      "slug": "moegeolocation",
      "docs": "Location object",
      "tags": [],
      "methods": [],
      "properties": [
        {
          "name": "latitude",
          "tags": [],
          "docs": "",
          "complexTypes": [],
          "type": "number"
        },
        {
          "name": "longitude",
          "tags": [],
          "docs": "",
          "complexTypes": [],
          "type": "number"
        }
      ]
    },
    {
      "name": "MoEInAppSelfHandledCampaignData",
      "slug": "moeinappselfhandledcampaigndata",
      "docs": "Data for self handled campaign.",
      "tags": [],
      "methods": [],
      "properties": [
        {
          "name": "accountMeta",
          "tags": [],
          "docs": "Account information",
          "complexTypes": [
            "MoEAccountMeta"
          ],
          "type": "MoEAccountMeta"
        },
        {
          "name": "campaignData",
          "tags": [],
          "docs": "In-App Campaign data",
          "complexTypes": [
            "MoEInAppCampaignData"
          ],
          "type": "MoEInAppCampaignData"
        },
        {
          "name": "selfHandled",
          "tags": [],
          "docs": "SelfHandled data",
          "complexTypes": [
            "MoEInAppSelfHandledCampaign"
          ],
          "type": "MoEInAppSelfHandledCampaign"
        }
      ]
    },
    {
      "name": "MoEAccountMeta",
      "slug": "moeaccountmeta",
      "docs": "Account Object",
      "tags": [],
      "methods": [],
      "properties": [
        {
          "name": "appId",
          "tags": [],
          "docs": "Account identifier",
          "complexTypes": [],
          "type": "string"
        }
      ]
    },
    {
      "name": "MoEInAppCampaignData",
      "slug": "moeinappcampaigndata",
      "docs": "Campaign data.",
      "tags": [],
      "methods": [],
      "properties": [
        {
          "name": "campaignId",
          "tags": [],
          "docs": "Unique Identifier for the campaign",
          "complexTypes": [],
          "type": "string"
        },
        {
          "name": "campaignName",
          "tags": [],
          "docs": "Name given to the campaign while creation on the MoEngage Dashboard.",
          "complexTypes": [],
          "type": "string"
        },
        {
          "name": "campaignContext",
          "tags": [],
          "docs": "Additional Meta data related to the campaign.",
          "complexTypes": [
            "MoEInAppCampaignContext"
          ],
          "type": "MoEInAppCampaignContext"
        }
      ]
    },
    {
      "name": "MoEInAppCampaignContext",
      "slug": "moeinappcampaigncontext",
      "docs": "Additional Meta data related to the campaign.",
      "tags": [],
      "methods": [],
      "properties": [
        {
          "name": "formattedCampaignId",
          "tags": [],
          "docs": "Formatted Campaign Id",
          "complexTypes": [],
          "type": "string"
        },
        {
          "name": "attributes",
          "tags": [],
          "docs": "Additional Meta data related to the campaign.",
          "complexTypes": [
            "Map"
          ],
          "type": "Map<string, object>"
        }
      ]
    },
    {
      "name": "Map",
      "slug": "map",
      "docs": "",
      "tags": [],
      "methods": [
        {
          "name": "clear",
          "signature": "() => void",
          "parameters": [],
          "returns": "void",
          "tags": [],
          "docs": "",
          "complexTypes": [],
          "slug": "clear"
        },
        {
          "name": "delete",
          "signature": "(key: K) => boolean",
          "parameters": [
            {
              "name": "key",
              "docs": "",
              "type": "K"
            }
          ],
          "returns": "boolean",
          "tags": [],
          "docs": "",
          "complexTypes": [
            "K"
          ],
          "slug": "delete"
        },
        {
          "name": "forEach",
          "signature": "(callbackfn: (value: V, key: K, map: Map<K, V>) => void, thisArg?: any) => void",
          "parameters": [
            {
              "name": "callbackfn",
              "docs": "",
              "type": "(value: V, key: K, map: Map<K, V>) => void"
            },
            {
              "name": "thisArg",
              "docs": "",
              "type": "any"
            }
          ],
          "returns": "void",
          "tags": [],
          "docs": "",
          "complexTypes": [
            "V",
            "K",
            "Map"
          ],
          "slug": "foreach"
        },
        {
          "name": "get",
          "signature": "(key: K) => V | undefined",
          "parameters": [
            {
              "name": "key",
              "docs": "",
              "type": "K"
            }
          ],
          "returns": "V | undefined",
          "tags": [],
          "docs": "",
          "complexTypes": [
            "V",
            "K"
          ],
          "slug": "get"
        },
        {
          "name": "has",
          "signature": "(key: K) => boolean",
          "parameters": [
            {
              "name": "key",
              "docs": "",
              "type": "K"
            }
          ],
          "returns": "boolean",
          "tags": [],
          "docs": "",
          "complexTypes": [
            "K"
          ],
          "slug": "has"
        },
        {
          "name": "set",
          "signature": "(key: K, value: V) => this",
          "parameters": [
            {
              "name": "key",
              "docs": "",
              "type": "K"
            },
            {
              "name": "value",
              "docs": "",
              "type": "V"
            }
          ],
          "returns": "this",
          "tags": [],
          "docs": "",
          "complexTypes": [
            "K",
            "V"
          ],
          "slug": "set"
        }
      ],
      "properties": [
        {
          "name": "size",
          "tags": [],
          "docs": "",
          "complexTypes": [],
          "type": "number"
        }
      ]
    },
    {
      "name": "MoEInAppSelfHandledCampaign",
      "slug": "moeinappselfhandledcampaign",
      "docs": "Self Handled campaign object",
      "tags": [],
      "methods": [],
      "properties": [
        {
          "name": "payload",
          "tags": [],
          "docs": "Self handled campaign payload.",
          "complexTypes": [],
          "type": "string"
        },
        {
          "name": "dismissInterval",
          "tags": [],
          "docs": "Interval after which in-app should be dismissed, unit - Seconds",
          "complexTypes": [],
          "type": "number"
        },
        {
          "name": "isCancellable",
          "tags": [],
          "docs": "Should the campaign be dismissed by pressing the back button or using the back gesture.\nif the value is true campaign should be dismissed on back press.",
          "complexTypes": [],
          "type": "boolean"
        }
      ]
    },
    {
      "name": "PluginListenerHandle",
      "slug": "pluginlistenerhandle",
      "docs": "",
      "tags": [],
      "methods": [],
      "properties": [
        {
          "name": "remove",
          "tags": [],
          "docs": "",
          "complexTypes": [],
          "type": "() => Promise<void>"
        }
      ]
    },
    {
      "name": "MoEPushTokenData",
      "slug": "moepushtokendata",
      "docs": "Push token object",
      "tags": [],
      "methods": [],
      "properties": [
        {
          "name": "platform",
          "tags": [],
          "docs": "Platform type",
          "complexTypes": [
            "MoEPlatform"
          ],
          "type": "MoEPlatform"
        },
        {
          "name": "pushService",
          "tags": [],
          "docs": "Type of push service",
          "complexTypes": [
            "MoEPushService"
          ],
          "type": "MoEPushService"
        },
        {
          "name": "token",
          "tags": [],
          "docs": "Push Token",
          "complexTypes": [
            "String"
          ],
          "type": "String"
        }
      ]
    },
    {
      "name": "String",
      "slug": "string",
      "docs": "Allows manipulation and formatting of text strings and determination and location of substrings within strings.",
      "tags": [],
      "methods": [
        {
          "name": "toString",
          "signature": "() => string",
          "parameters": [],
          "returns": "string",
          "tags": [],
          "docs": "Returns a string representation of a string.",
          "complexTypes": [],
          "slug": "tostring"
        },
        {
          "name": "charAt",
          "signature": "(pos: number) => string",
          "parameters": [
            {
              "name": "pos",
              "docs": "The zero-based index of the desired character.",
              "type": "number"
            }
          ],
          "returns": "string",
          "tags": [
            {
              "name": "param",
              "text": "pos The zero-based index of the desired character."
            }
          ],
          "docs": "Returns the character at the specified index.",
          "complexTypes": [],
          "slug": "charat"
        },
        {
          "name": "charCodeAt",
          "signature": "(index: number) => number",
          "parameters": [
            {
              "name": "index",
              "docs": "The zero-based index of the desired character. If there is no character at the specified index, NaN is returned.",
              "type": "number"
            }
          ],
          "returns": "number",
          "tags": [
            {
              "name": "param",
              "text": "index The zero-based index of the desired character. If there is no character at the specified index, NaN is returned."
            }
          ],
          "docs": "Returns the Unicode value of the character at the specified location.",
          "complexTypes": [],
          "slug": "charcodeat"
        },
        {
          "name": "concat",
          "signature": "(...strings: string[]) => string",
          "parameters": [
            {
              "name": "strings",
              "docs": "The strings to append to the end of the string.",
              "type": "string[]"
            }
          ],
          "returns": "string",
          "tags": [
            {
              "name": "param",
              "text": "strings The strings to append to the end of the string."
            }
          ],
          "docs": "Returns a string that contains the concatenation of two or more strings.",
          "complexTypes": [],
          "slug": "concat"
        },
        {
          "name": "indexOf",
          "signature": "(searchString: string, position?: number | undefined) => number",
          "parameters": [
            {
              "name": "searchString",
              "docs": "The substring to search for in the string",
              "type": "string"
            },
            {
              "name": "position",
              "docs": "The index at which to begin searching the String object. If omitted, search starts at the beginning of the string.",
              "type": "number | undefined"
            }
          ],
          "returns": "number",
          "tags": [
            {
              "name": "param",
              "text": "searchString The substring to search for in the string"
            },
            {
              "name": "param",
              "text": "position The index at which to begin searching the String object. If omitted, search starts at the beginning of the string."
            }
          ],
          "docs": "Returns the position of the first occurrence of a substring.",
          "complexTypes": [],
          "slug": "indexof"
        },
        {
          "name": "lastIndexOf",
          "signature": "(searchString: string, position?: number | undefined) => number",
          "parameters": [
            {
              "name": "searchString",
              "docs": "The substring to search for.",
              "type": "string"
            },
            {
              "name": "position",
              "docs": "The index at which to begin searching. If omitted, the search begins at the end of the string.",
              "type": "number | undefined"
            }
          ],
          "returns": "number",
          "tags": [
            {
              "name": "param",
              "text": "searchString The substring to search for."
            },
            {
              "name": "param",
              "text": "position The index at which to begin searching. If omitted, the search begins at the end of the string."
            }
          ],
          "docs": "Returns the last occurrence of a substring in the string.",
          "complexTypes": [],
          "slug": "lastindexof"
        },
        {
          "name": "localeCompare",
          "signature": "(that: string) => number",
          "parameters": [
            {
              "name": "that",
              "docs": "String to compare to target string",
              "type": "string"
            }
          ],
          "returns": "number",
          "tags": [
            {
              "name": "param",
              "text": "that String to compare to target string"
            }
          ],
          "docs": "Determines whether two strings are equivalent in the current locale.",
          "complexTypes": [],
          "slug": "localecompare"
        },
        {
          "name": "match",
          "signature": "(regexp: string | RegExp) => RegExpMatchArray | null",
          "parameters": [
            {
              "name": "regexp",
              "docs": "A variable name or string literal containing the regular expression pattern and flags.",
              "type": "string | RegExp"
            }
          ],
          "returns": "RegExpMatchArray | null",
          "tags": [
            {
              "name": "param",
              "text": "regexp A variable name or string literal containing the regular expression pattern and flags."
            }
          ],
          "docs": "Matches a string with a regular expression, and returns an array containing the results of that search.",
          "complexTypes": [
            "RegExpMatchArray",
            "RegExp"
          ],
          "slug": "match"
        },
        {
          "name": "replace",
          "signature": "(searchValue: string | RegExp, replaceValue: string) => string",
          "parameters": [
            {
              "name": "searchValue",
              "docs": "A string to search for.",
              "type": "string | RegExp"
            },
            {
              "name": "replaceValue",
              "docs": "A string containing the text to replace for every successful match of searchValue in this string.",
              "type": "string"
            }
          ],
          "returns": "string",
          "tags": [
            {
              "name": "param",
              "text": "searchValue A string to search for."
            },
            {
              "name": "param",
              "text": "replaceValue A string containing the text to replace for every successful match of searchValue in this string."
            }
          ],
          "docs": "Replaces text in a string, using a regular expression or search string.",
          "complexTypes": [
            "RegExp"
          ],
          "slug": "replace"
        },
        {
          "name": "replace",
          "signature": "(searchValue: string | RegExp, replacer: (substring: string, ...args: any[]) => string) => string",
          "parameters": [
            {
              "name": "searchValue",
              "docs": "A string to search for.",
              "type": "string | RegExp"
            },
            {
              "name": "replacer",
              "docs": "A function that returns the replacement text.",
              "type": "(substring: string, ...args: any[]) => string"
            }
          ],
          "returns": "string",
          "tags": [
            {
              "name": "param",
              "text": "searchValue A string to search for."
            },
            {
              "name": "param",
              "text": "replacer A function that returns the replacement text."
            }
          ],
          "docs": "Replaces text in a string, using a regular expression or search string.",
          "complexTypes": [
            "RegExp"
          ],
          "slug": "replace"
        },
        {
          "name": "search",
          "signature": "(regexp: string | RegExp) => number",
          "parameters": [
            {
              "name": "regexp",
              "docs": "The regular expression pattern and applicable flags.",
              "type": "string | RegExp"
            }
          ],
          "returns": "number",
          "tags": [
            {
              "name": "param",
              "text": "regexp The regular expression pattern and applicable flags."
            }
          ],
          "docs": "Finds the first substring match in a regular expression search.",
          "complexTypes": [
            "RegExp"
          ],
          "slug": "search"
        },
        {
          "name": "slice",
          "signature": "(start?: number | undefined, end?: number | undefined) => string",
          "parameters": [
            {
              "name": "start",
              "docs": "The index to the beginning of the specified portion of stringObj.",
              "type": "number | undefined"
            },
            {
              "name": "end",
              "docs": "The index to the end of the specified portion of stringObj. The substring includes the characters up to, but not including, the character indicated by end.\r\nIf this value is not specified, the substring continues to the end of stringObj.",
              "type": "number | undefined"
            }
          ],
          "returns": "string",
          "tags": [
            {
              "name": "param",
              "text": "start The index to the beginning of the specified portion of stringObj."
            },
            {
              "name": "param",
              "text": "end The index to the end of the specified portion of stringObj. The substring includes the characters up to, but not including, the character indicated by end.\r\nIf this value is not specified, the substring continues to the end of stringObj."
            }
          ],
          "docs": "Returns a section of a string.",
          "complexTypes": [],
          "slug": "slice"
        },
        {
          "name": "split",
          "signature": "(separator: string | RegExp, limit?: number | undefined) => string[]",
          "parameters": [
            {
              "name": "separator",
              "docs": "A string that identifies character or characters to use in separating the string. If omitted, a single-element array containing the entire string is returned.",
              "type": "string | RegExp"
            },
            {
              "name": "limit",
              "docs": "A value used to limit the number of elements returned in the array.",
              "type": "number | undefined"
            }
          ],
          "returns": "string[]",
          "tags": [
            {
              "name": "param",
              "text": "separator A string that identifies character or characters to use in separating the string. If omitted, a single-element array containing the entire string is returned."
            },
            {
              "name": "param",
              "text": "limit A value used to limit the number of elements returned in the array."
            }
          ],
          "docs": "Split a string into substrings using the specified separator and return them as an array.",
          "complexTypes": [
            "RegExp"
          ],
          "slug": "split"
        },
        {
          "name": "substring",
          "signature": "(start: number, end?: number | undefined) => string",
          "parameters": [
            {
              "name": "start",
              "docs": "The zero-based index number indicating the beginning of the substring.",
              "type": "number"
            },
            {
              "name": "end",
              "docs": "Zero-based index number indicating the end of the substring. The substring includes the characters up to, but not including, the character indicated by end.\r\nIf end is omitted, the characters from start through the end of the original string are returned.",
              "type": "number | undefined"
            }
          ],
          "returns": "string",
          "tags": [
            {
              "name": "param",
              "text": "start The zero-based index number indicating the beginning of the substring."
            },
            {
              "name": "param",
              "text": "end Zero-based index number indicating the end of the substring. The substring includes the characters up to, but not including, the character indicated by end.\r\nIf end is omitted, the characters from start through the end of the original string are returned."
            }
          ],
          "docs": "Returns the substring at the specified location within a String object.",
          "complexTypes": [],
          "slug": "substring"
        },
        {
          "name": "toLowerCase",
          "signature": "() => string",
          "parameters": [],
          "returns": "string",
          "tags": [],
          "docs": "Converts all the alphabetic characters in a string to lowercase.",
          "complexTypes": [],
          "slug": "tolowercase"
        },
        {
          "name": "toLocaleLowerCase",
          "signature": "(locales?: string | string[] | undefined) => string",
          "parameters": [
            {
              "name": "locales",
              "docs": "",
              "type": "string | string[] | undefined"
            }
          ],
          "returns": "string",
          "tags": [],
          "docs": "Converts all alphabetic characters to lowercase, taking into account the host environment's current locale.",
          "complexTypes": [],
          "slug": "tolocalelowercase"
        },
        {
          "name": "toUpperCase",
          "signature": "() => string",
          "parameters": [],
          "returns": "string",
          "tags": [],
          "docs": "Converts all the alphabetic characters in a string to uppercase.",
          "complexTypes": [],
          "slug": "touppercase"
        },
        {
          "name": "toLocaleUpperCase",
          "signature": "(locales?: string | string[] | undefined) => string",
          "parameters": [
            {
              "name": "locales",
              "docs": "",
              "type": "string | string[] | undefined"
            }
          ],
          "returns": "string",
          "tags": [],
          "docs": "Returns a string where all alphabetic characters have been converted to uppercase, taking into account the host environment's current locale.",
          "complexTypes": [],
          "slug": "tolocaleuppercase"
        },
        {
          "name": "trim",
          "signature": "() => string",
          "parameters": [],
          "returns": "string",
          "tags": [],
          "docs": "Removes the leading and trailing white space and line terminator characters from a string.",
          "complexTypes": [],
          "slug": "trim"
        },
        {
          "name": "substr",
          "signature": "(from: number, length?: number | undefined) => string",
          "parameters": [
            {
              "name": "from",
              "docs": "The starting position of the desired substring. The index of the first character in the string is zero.",
              "type": "number"
            },
            {
              "name": "length",
              "docs": "The number of characters to include in the returned substring.",
              "type": "number | undefined"
            }
          ],
          "returns": "string",
          "tags": [
            {
              "name": "param",
              "text": "from The starting position of the desired substring. The index of the first character in the string is zero."
            },
            {
              "name": "param",
              "text": "length The number of characters to include in the returned substring."
            }
          ],
          "docs": "Gets a substring beginning at the specified location and having the specified length.",
          "complexTypes": [],
          "slug": "substr"
        },
        {
          "name": "valueOf",
          "signature": "() => string",
          "parameters": [],
          "returns": "string",
          "tags": [],
          "docs": "Returns the primitive value of the specified object.",
          "complexTypes": [],
          "slug": "valueof"
        }
      ],
      "properties": [
        {
          "name": "length",
          "tags": [],
          "docs": "Returns the length of a String object.",
          "complexTypes": [],
          "type": "number"
        }
      ]
    },
    {
      "name": "RegExpMatchArray",
      "slug": "regexpmatcharray",
      "docs": "",
      "tags": [],
      "methods": [],
      "properties": [
        {
          "name": "index",
          "tags": [],
          "docs": "",
          "complexTypes": [],
          "type": "number | undefined"
        },
        {
          "name": "input",
          "tags": [],
          "docs": "",
          "complexTypes": [],
          "type": "string | undefined"
        }
      ]
    },
    {
      "name": "RegExp",
      "slug": "regexp",
      "docs": "",
      "tags": [],
      "methods": [
        {
          "name": "exec",
          "signature": "(string: string) => RegExpExecArray | null",
          "parameters": [
            {
              "name": "string",
              "docs": "The String object or string literal on which to perform the search.",
              "type": "string"
            }
          ],
          "returns": "RegExpExecArray | null",
          "tags": [
            {
              "name": "param",
              "text": "string The String object or string literal on which to perform the search."
            }
          ],
          "docs": "Executes a search on a string using a regular expression pattern, and returns an array containing the results of that search.",
          "complexTypes": [
            "RegExpExecArray"
          ],
          "slug": "exec"
        },
        {
          "name": "test",
          "signature": "(string: string) => boolean",
          "parameters": [
            {
              "name": "string",
              "docs": "String on which to perform the search.",
              "type": "string"
            }
          ],
          "returns": "boolean",
          "tags": [
            {
              "name": "param",
              "text": "string String on which to perform the search."
            }
          ],
          "docs": "Returns a Boolean value that indicates whether or not a pattern exists in a searched string.",
          "complexTypes": [],
          "slug": "test"
        },
        {
          "name": "compile",
          "signature": "() => this",
          "parameters": [],
          "returns": "this",
          "tags": [],
          "docs": "",
          "complexTypes": [],
          "slug": "compile"
        }
      ],
      "properties": [
        {
          "name": "source",
          "tags": [],
          "docs": "Returns a copy of the text of the regular expression pattern. Read-only. The regExp argument is a Regular expression object. It can be a variable name or a literal.",
          "complexTypes": [],
          "type": "string"
        },
        {
          "name": "global",
          "tags": [],
          "docs": "Returns a Boolean value indicating the state of the global flag (g) used with a regular expression. Default is false. Read-only.",
          "complexTypes": [],
          "type": "boolean"
        },
        {
          "name": "ignoreCase",
          "tags": [],
          "docs": "Returns a Boolean value indicating the state of the ignoreCase flag (i) used with a regular expression. Default is false. Read-only.",
          "complexTypes": [],
          "type": "boolean"
        },
        {
          "name": "multiline",
          "tags": [],
          "docs": "Returns a Boolean value indicating the state of the multiline flag (m) used with a regular expression. Default is false. Read-only.",
          "complexTypes": [],
          "type": "boolean"
        },
        {
          "name": "lastIndex",
          "tags": [],
          "docs": "",
          "complexTypes": [],
          "type": "number"
        }
      ]
    },
    {
      "name": "RegExpExecArray",
      "slug": "regexpexecarray",
      "docs": "",
      "tags": [],
      "methods": [],
      "properties": [
        {
          "name": "index",
          "tags": [],
          "docs": "",
          "complexTypes": [],
          "type": "number"
        },
        {
          "name": "input",
          "tags": [],
          "docs": "",
          "complexTypes": [],
          "type": "string"
        }
      ]
    },
    {
      "name": "MoEPushCampaignData",
      "slug": "moepushcampaigndata",
      "docs": "Push event data",
      "tags": [],
      "methods": [],
      "properties": [
        {
          "name": "accountMeta",
          "tags": [],
          "docs": "Account information",
          "complexTypes": [
            "MoEAccountMeta"
          ],
          "type": "MoEAccountMeta"
        },
        {
          "name": "pushCampaign",
          "tags": [],
          "docs": "Push campaign object",
          "complexTypes": [
            "MoEPushCampaign"
          ],
          "type": "MoEPushCampaign"
        },
        {
          "name": "platform",
          "tags": [],
          "docs": "Platform data",
          "complexTypes": [
            "MoEPlatform"
          ],
          "type": "MoEPlatform"
        }
      ]
    },
    {
      "name": "MoEPushCampaign",
      "slug": "moepushcampaign",
      "docs": "Push campaign object",
      "tags": [],
      "methods": [],
      "properties": [
        {
          "name": "isDefaultAction",
          "tags": [],
          "docs": "Is the click action a defualt action",
          "complexTypes": [],
          "type": "boolean"
        },
        {
          "name": "clickedAction",
          "tags": [],
          "docs": "Clicked Action data",
          "complexTypes": [
            "Map",
            "String"
          ],
          "type": "Map<String, object>"
        },
        {
          "name": "payload",
          "tags": [],
          "docs": "Key-Value Pair entered on the MoEngage Platform during campaign creation.",
          "complexTypes": [
            "Map",
            "String"
          ],
          "type": "Map<String, object>"
        }
      ]
    },
    {
      "name": "MoEInAppLifecycleData",
      "slug": "moeinapplifecycledata",
      "docs": "In-App lifecycle event camapaign data",
      "tags": [],
      "methods": [],
      "properties": [
        {
          "name": "accountMeta",
          "tags": [],
          "docs": "Account information",
          "complexTypes": [
            "MoEAccountMeta"
          ],
          "type": "MoEAccountMeta"
        },
        {
          "name": "campaignData",
          "tags": [],
          "docs": "In-App Campaign data",
          "complexTypes": [
            "MoEInAppCampaignData"
          ],
          "type": "MoEInAppCampaignData"
        },
        {
          "name": "platform",
          "tags": [],
          "docs": "Platform information",
          "complexTypes": [
            "MoEPlatform"
          ],
          "type": "MoEPlatform"
        }
      ]
    },
    {
      "name": "MoEInAppNavigationData",
      "slug": "moeinappnavigationdata",
      "docs": "In-App navigation event campaign data",
      "tags": [],
      "methods": [],
      "properties": [
        {
          "name": "accountMeta",
          "tags": [],
          "docs": "Account information",
          "complexTypes": [
            "MoEAccountMeta"
          ],
          "type": "MoEAccountMeta"
        },
        {
          "name": "campaignData",
          "tags": [],
          "docs": "In-App Campaign data",
          "complexTypes": [
            "MoEInAppCampaignData"
          ],
          "type": "MoEInAppCampaignData"
        },
        {
          "name": "navigation",
          "tags": [],
          "docs": "Navigation action data",
          "complexTypes": [
            "MoEInAppNavigation"
          ],
          "type": "MoEInAppNavigation"
        },
        {
          "name": "platform",
          "tags": [],
          "docs": "Platform Data",
          "complexTypes": [
            "MoEPlatform"
          ],
          "type": "MoEPlatform"
        }
      ]
    },
    {
      "name": "MoEInAppNavigation",
      "slug": "moeinappnavigation",
      "docs": "In-App navigation action data",
      "tags": [],
      "methods": [],
      "properties": [
        {
          "name": "actionType",
          "tags": [],
          "docs": "InApp Action type",
          "complexTypes": [
            "MoEInAppActionType"
          ],
          "type": "MoEInAppActionType"
        },
        {
          "name": "navigationType",
          "tags": [],
          "docs": "Type of Navigation.",
          "complexTypes": [],
          "type": "string"
        },
        {
          "name": "navigationUrl",
          "tags": [],
          "docs": "Navigation URL",
          "complexTypes": [],
          "type": "string"
        },
        {
          "name": "kvPair",
          "tags": [],
          "docs": "Key-Value Pair entered on the MoEngage Platform during campaign creation.",
          "complexTypes": [
            "Map",
            "Object"
          ],
          "type": "Map<string, Object>"
        }
      ]
    },
    {
      "name": "Object",
      "slug": "object",
      "docs": "Provides functionality common to all JavaScript objects.",
      "tags": [],
      "methods": [
        {
          "name": "toString",
          "signature": "() => string",
          "parameters": [],
          "returns": "string",
          "tags": [],
          "docs": "Returns a string representation of an object.",
          "complexTypes": [],
          "slug": "tostring"
        },
        {
          "name": "toLocaleString",
          "signature": "() => string",
          "parameters": [],
          "returns": "string",
          "tags": [],
          "docs": "Returns a date converted to a string using the current locale.",
          "complexTypes": [],
          "slug": "tolocalestring"
        },
        {
          "name": "valueOf",
          "signature": "() => Object",
          "parameters": [],
          "returns": "Object",
          "tags": [],
          "docs": "Returns the primitive value of the specified object.",
          "complexTypes": [
            "Object"
          ],
          "slug": "valueof"
        },
        {
          "name": "hasOwnProperty",
          "signature": "(v: PropertyKey) => boolean",
          "parameters": [
            {
              "name": "v",
              "docs": "A property name.",
              "type": "PropertyKey"
            }
          ],
          "returns": "boolean",
          "tags": [
            {
              "name": "param",
              "text": "v A property name."
            }
          ],
          "docs": "Determines whether an object has a property with the specified name.",
          "complexTypes": [
            "PropertyKey"
          ],
          "slug": "hasownproperty"
        },
        {
          "name": "isPrototypeOf",
          "signature": "(v: Object) => boolean",
          "parameters": [
            {
              "name": "v",
              "docs": "Another object whose prototype chain is to be checked.",
              "type": "Object"
            }
          ],
          "returns": "boolean",
          "tags": [
            {
              "name": "param",
              "text": "v Another object whose prototype chain is to be checked."
            }
          ],
          "docs": "Determines whether an object exists in another object's prototype chain.",
          "complexTypes": [
            "Object"
          ],
          "slug": "isprototypeof"
        },
        {
          "name": "propertyIsEnumerable",
          "signature": "(v: PropertyKey) => boolean",
          "parameters": [
            {
              "name": "v",
              "docs": "A property name.",
              "type": "PropertyKey"
            }
          ],
          "returns": "boolean",
          "tags": [
            {
              "name": "param",
              "text": "v A property name."
            }
          ],
          "docs": "Determines whether a specified property is enumerable.",
          "complexTypes": [
            "PropertyKey"
          ],
          "slug": "propertyisenumerable"
        }
      ],
      "properties": [
        {
          "name": "constructor",
          "tags": [],
          "docs": "The initial value of Object.prototype.constructor is the standard built-in Object constructor.",
          "complexTypes": [
            "Function"
          ],
          "type": "Function"
        }
      ]
    },
    {
      "name": "Function",
      "slug": "function",
      "docs": "Creates a new function.",
      "tags": [],
      "methods": [
        {
          "name": "apply",
          "signature": "(this: Function, thisArg: any, argArray?: any) => any",
          "parameters": [
            {
              "name": "thisArg",
              "docs": "The object to be used as the this object.",
              "type": "any"
            },
            {
              "name": "argArray",
              "docs": "A set of arguments to be passed to the function.",
              "type": "any"
            }
          ],
          "returns": "any",
          "tags": [
            {
              "name": "param",
              "text": "thisArg The object to be used as the this object."
            },
            {
              "name": "param",
              "text": "argArray A set of arguments to be passed to the function."
            }
          ],
          "docs": "Calls the function, substituting the specified object for the this value of the function, and the specified array for the arguments of the function.",
          "complexTypes": [
            "Function"
          ],
          "slug": "apply"
        },
        {
          "name": "call",
          "signature": "(this: Function, thisArg: any, ...argArray: any[]) => any",
          "parameters": [
            {
              "name": "thisArg",
              "docs": "The object to be used as the current object.",
              "type": "any"
            },
            {
              "name": "argArray",
              "docs": "A list of arguments to be passed to the method.",
              "type": "any[]"
            }
          ],
          "returns": "any",
          "tags": [
            {
              "name": "param",
              "text": "thisArg The object to be used as the current object."
            },
            {
              "name": "param",
              "text": "argArray A list of arguments to be passed to the method."
            }
          ],
          "docs": "Calls a method of an object, substituting another object for the current object.",
          "complexTypes": [
            "Function"
          ],
          "slug": "call"
        },
        {
          "name": "bind",
          "signature": "(this: Function, thisArg: any, ...argArray: any[]) => any",
          "parameters": [
            {
              "name": "thisArg",
              "docs": "An object to which the this keyword can refer inside the new function.",
              "type": "any"
            },
            {
              "name": "argArray",
              "docs": "A list of arguments to be passed to the new function.",
              "type": "any[]"
            }
          ],
          "returns": "any",
          "tags": [
            {
              "name": "param",
              "text": "thisArg An object to which the this keyword can refer inside the new function."
            },
            {
              "name": "param",
              "text": "argArray A list of arguments to be passed to the new function."
            }
          ],
          "docs": "For a given function, creates a bound function that has the same body as the original function.\r\nThe this object of the bound function is associated with the specified object, and has the specified initial parameters.",
          "complexTypes": [
            "Function"
          ],
          "slug": "bind"
        },
        {
          "name": "toString",
          "signature": "() => string",
          "parameters": [],
          "returns": "string",
          "tags": [],
          "docs": "Returns a string representation of a function.",
          "complexTypes": [],
          "slug": "tostring"
        }
      ],
      "properties": [
        {
          "name": "prototype",
          "tags": [],
          "docs": "",
          "complexTypes": [],
          "type": "any"
        },
        {
          "name": "length",
          "tags": [],
          "docs": "",
          "complexTypes": [],
          "type": "number"
        },
        {
          "name": "arguments",
          "tags": [],
          "docs": "",
          "complexTypes": [],
          "type": "any"
        },
        {
          "name": "caller",
          "tags": [],
          "docs": "",
          "complexTypes": [
            "Function"
          ],
          "type": "Function"
        }
      ]
    },
    {
      "name": "MoEInAppCustomActionData",
      "slug": "moeinappcustomactiondata",
      "docs": "In-App custom event campaign data",
      "tags": [],
      "methods": [],
      "properties": [
        {
          "name": "accountMeta",
          "tags": [],
          "docs": "Account information",
          "complexTypes": [
            "MoEAccountMeta"
          ],
          "type": "MoEAccountMeta"
        },
        {
          "name": "campaignData",
          "tags": [],
          "docs": "In-App Campaign data",
          "complexTypes": [
            "MoEInAppCampaignData"
          ],
          "type": "MoEInAppCampaignData"
        },
        {
          "name": "customAction",
          "tags": [],
          "docs": "Custom Action data",
          "complexTypes": [
            "MoEInAppCustomAction"
          ],
          "type": "MoEInAppCustomAction"
        },
        {
          "name": "platform",
          "tags": [],
          "docs": "Platform information",
          "complexTypes": [
            "MoEPlatform"
          ],
          "type": "MoEPlatform"
        }
      ]
    },
    {
      "name": "MoEInAppCustomAction",
      "slug": "moeinappcustomaction",
      "docs": "In-App custom action data",
      "tags": [],
      "methods": [],
      "properties": [
        {
          "name": "actionType",
          "tags": [],
          "docs": "InApp Action type",
          "complexTypes": [
            "MoEInAppActionType"
          ],
          "type": "MoEInAppActionType"
        },
        {
          "name": "kvPair",
          "tags": [],
          "docs": "Key-Value Pair entered on the MoEngage Platform during campaign creation.",
          "complexTypes": [
            "Map"
          ],
          "type": "Map<string, object>"
        }
      ]
    },
    {
      "name": "MoEPermissionResultData",
      "slug": "moepermissionresultdata",
      "docs": "Permission Response Data",
      "tags": [],
      "methods": [],
      "properties": [
        {
          "name": "platform",
          "tags": [],
          "docs": "Platform type",
          "complexTypes": [
            "MoEPlatform"
          ],
          "type": "MoEPlatform"
        },
        {
          "name": "isGranted",
          "tags": [],
          "docs": "State of permission",
          "complexTypes": [],
          "type": "boolean"
        },
        {
          "name": "type",
          "tags": [],
          "docs": "Type of permission",
          "complexTypes": [
            "MoEPermissionType"
          ],
          "type": "MoEPermissionType"
        }
      ]
    },
    {
      "name": "MoEUserDeleteData",
      "slug": "moeuserdeletedata",
      "docs": "User Delete Response Data",
      "tags": [],
      "methods": [],
      "properties": [
        {
          "name": "accountMeta",
          "tags": [],
          "docs": "Account information",
          "complexTypes": [
            "MoEAccountMeta"
          ],
          "type": "MoEAccountMeta"
        },
        {
          "name": "isSuccess",
          "tags": [],
          "docs": "Status of user deletion",
          "complexTypes": [],
          "type": "boolean"
        }
      ]
    }
  ],
  "enums": [
    {
      "name": "MoEUserGender",
      "slug": "moeusergender",
      "members": [
        {
          "name": "MALE",
          "value": "\"male\"",
          "tags": [],
          "docs": ""
        },
        {
          "name": "FEMALE",
          "value": "\"female\"",
          "tags": [],
          "docs": ""
        },
        {
          "name": "OTHER",
          "value": "\"other\"",
          "tags": [],
          "docs": ""
        }
      ]
    },
    {
      "name": "MoEAppStatus",
      "slug": "moeappstatus",
      "members": [
        {
          "name": "INSTALL",
          "value": "\"install\"",
          "tags": [],
          "docs": "Fresh installation of the app instance."
        },
        {
          "name": "UPDATE",
          "value": "\"update\"",
          "tags": [],
          "docs": "App was already present and user has updated the app."
        }
      ]
    },
    {
      "name": "MoEPlatform",
      "slug": "moeplatform",
      "members": [
        {
          "name": "iOS",
          "value": "\"iOS\"",
          "tags": [],
          "docs": ""
        },
        {
          "name": "ANDROID",
          "value": "\"android\"",
          "tags": [],
          "docs": ""
        }
      ]
    },
    {
      "name": "MoEPushService",
      "slug": "moepushservice",
      "members": [
        {
          "name": "APNS",
          "tags": [],
          "docs": ""
        },
        {
          "name": "FCM",
          "tags": [],
          "docs": ""
        },
        {
          "name": "MI_PUSH",
          "tags": [],
          "docs": ""
        },
        {
          "name": "PUSH_KIT",
          "tags": [],
          "docs": ""
        }
      ]
    },
    {
      "name": "MoEInAppActionType",
      "slug": "moeinappactiontype",
      "members": [
        {
          "name": "NAVIGATION",
          "value": "\"navigation\"",
          "tags": [],
          "docs": ""
        },
        {
          "name": "CUSTOM",
          "value": "\"custom\"",
          "tags": [],
          "docs": ""
        }
      ]
    },
    {
      "name": "MoEPermissionType",
      "slug": "moepermissiontype",
      "members": [
        {
          "name": "PUSH",
          "value": "\"push\"",
          "tags": [],
          "docs": ""
        }
      ]
    },
    {
      "name": "MoENudgePosition",
      "slug": "moenudgeposition",
      "members": [
        {
          "name": "Top",
          "value": "\"top\"",
          "tags": [],
          "docs": ""
        },
        {
          "name": "Bottom",
          "value": "\"bottom\"",
          "tags": [],
          "docs": ""
        },
        {
          "name": "BottomLeft",
          "value": "\"bottomLeft\"",
          "tags": [],
          "docs": ""
        },
        {
          "name": "BottomRight",
          "value": "\"bottomRight\"",
          "tags": [],
          "docs": ""
        },
        {
          "name": "Any",
          "value": "\"any\"",
          "tags": [],
          "docs": ""
        }
      ]
    }
  ],
  "typeAliases": [
    {
      "name": "MoEPushTokenListener",
      "slug": "moepushtokenlistener",
      "docs": "",
      "types": [
        {
          "text": "(event: MoEPushTokenData): void",
          "complexTypes": [
            "MoEPushTokenData"
          ]
        }
      ]
    },
    {
      "name": "MoEPushClickListener",
      "slug": "moepushclicklistener",
      "docs": "",
      "types": [
        {
          "text": "(event: MoEPushCampaignData): void",
          "complexTypes": [
            "MoEPushCampaignData"
          ]
        }
      ]
    },
    {
      "name": "MoEInAppShownListener",
      "slug": "moeinappshownlistener",
      "docs": "",
      "types": [
        {
          "text": "(event: MoEInAppLifecycleData): void",
          "complexTypes": [
            "MoEInAppLifecycleData"
          ]
        }
      ]
    },
    {
      "name": "MoEInAppClickedListener",
      "slug": "moeinappclickedlistener",
      "docs": "",
      "types": [
        {
          "text": "(event: MoEInAppNavigationData): void",
          "complexTypes": [
            "MoEInAppNavigationData"
          ]
        }
      ]
    },
    {
      "name": "PropertyKey",
      "slug": "propertykey",
      "docs": "",
      "types": [
        {
          "text": "string",
          "complexTypes": []
        },
        {
          "text": "number",
          "complexTypes": []
        },
        {
          "text": "symbol",
          "complexTypes": []
        }
      ]
    },
    {
      "name": "MoEInAppDismissedListener",
      "slug": "moeinappdismissedlistener",
      "docs": "",
      "types": [
        {
          "text": "(event: MoEInAppLifecycleData): void",
          "complexTypes": [
            "MoEInAppLifecycleData"
          ]
        }
      ]
    },
    {
      "name": "MoEInAppCustomActionListener",
      "slug": "moeinappcustomactionlistener",
      "docs": "",
      "types": [
        {
          "text": "(event: MoEInAppCustomActionData): void",
          "complexTypes": [
            "MoEInAppCustomActionData"
          ]
        }
      ]
    },
    {
      "name": "MoEInAppSelfHandledListener",
      "slug": "moeinappselfhandledlistener",
      "docs": "",
      "types": [
        {
          "text": "(event: MoEInAppSelfHandledCampaignData): void",
          "complexTypes": [
            "MoEInAppSelfHandledCampaignData"
          ]
        }
      ]
    },
    {
      "name": "MoEPermissionListener",
      "slug": "moepermissionlistener",
      "docs": "",
      "types": [
        {
          "text": "(event: MoEPermissionResultData): void",
          "complexTypes": [
            "MoEPermissionResultData"
          ]
        }
      ]
    },
    {
      "name": "MoEUserDeleteCallback",
      "slug": "moeuserdeletecallback",
      "docs": "",
      "types": [
        {
          "text": "(userDeleteData: MoEUserDeleteData): void",
          "complexTypes": [
            "MoEUserDeleteData"
          ]
        }
      ]
    }
  ],
  "pluginConfigs": []
}