+ /**
+ * @brief Register callback for download started.
+ *
+ * @param[in] callback callback for download started
+ */
+ void RegisterDownloadStartedCallback(Dali::WebEngineContext::WebEngineDownloadStartedCallback callback);
+
+ /**
+ * @brief Register callback for mime overridden.
+ *
+ * @param[in] callback callback for mime overridden
+ */
+ void RegisterMimeOverriddenCallback(Dali::WebEngineContext::WebEngineMimeOverriddenCallback callback);
+
+ /**
+ * @brief Callback to be called when http request need be intercepted.
+ *
+ * @param[in] callback
+ */
+ void RegisterRequestInterceptedCallback(Dali::WebEngineContext::WebEngineRequestInterceptedCallback callback);
+
+ /**
+ * @brief Toggle the cache to be enabled or disabled
+ *
+ * @param[in] cacheEnabled enable or disable cache
+ */
+ void EnableCache(bool cacheEnabled);
+
+ /**
+ * @brief Query if the cache is enabled
+ *
+ * @return true is cache is enabled or false otherwise
+ */
+ bool IsCacheEnabled() const;
+
+ /**
+ * @brief Set application id for context.
+ *
+ * @param[in] appId application id
+ */
+ void SetAppId(const std::string& appId);
+
+ /**
+ * @brief Set application version for context.
+ *
+ * @param[in] appVersion application version
+ *
+ * @return true if successful, false otherwise
+ */
+ bool SetAppVersion(const std::string& appVersion);
+
+ /**
+ * @brief To declare application type
+ *
+ * @param[in] applicationType The Application_Type enum
+ *
+ */
+ void SetApplicationType(const Dali::WebEngineContext::ApplicationType applicationType);
+
+ /**
+ * @brief Set time offset
+ *
+ * @param[in] timeOffset The value will be added to system time as offset
+ */
+ void SetTimeOffset(float timeOffset);
+
+ /**
+ * @brief Set timezone offset
+ *
+ * @param[in] timeZoneOffset offset for time zone.
+ * @param[in] daylightSavingTime The value is for daylight saving time use.
+ */
+ void SetTimeZoneOffset(float timeZoneOffset, float daylightSavingTime);
+
+ /**
+ * @brief Set default zoom factor
+ *
+ * @param[in] zoomFactor default zoom factor
+ */
+ void SetDefaultZoomFactor(float zoomFactor);
+
+ /**
+ * @brief Get default zoom factor
+ *
+ * Gets default zoom factor for all pages opened with this context.
+ *
+ * @return default zoom factor or negative value on error
+ */
+ float GetDefaultZoomFactor() const;
+
+ /**
+ * @brief Register url schemes as CORS enabled
+ *
+ * @param[in] schemes The URL schemes list which will be added to web security policy
+ *
+ */
+ void RegisterUrlSchemesAsCorsEnabled(const std::vector<std::string>& schemes);
+
+ /**
+ * @brief Register JS plugin mime types.
+ *
+ * @param[in] mimeTypes The MIME types will be checked by the renderer frame loader
+ * to skip creating default frame for the object tags with the registered MIME type.
+ */
+ void RegisterJsPluginMimeTypes(const std::vector<std::string>& mimeTypes);
+
+ /**
+ * @brief Request for deleting all web application caches.
+ *
+ * @return @c true on success, otherwise @c false
+ */
+ bool DeleteAllApplicationCache();
+
+ /**
+ * @brief Request for deleting all web indexed databases.
+ *
+ * @return @c true on success, otherwise @c false
+ */
+ bool DeleteAllWebIndexedDatabase();
+
+ /**
+ * @brief Delete a given password data list
+ *
+ * @param[in] list List with Ewk_Password_Data
+ */
+ void DeleteFormPasswordDataList(const std::vector<std::string>& list);
+
+ /**
+ * @brief Delete whole password data from DB
+ */
+ void DeleteAllFormPasswordData();
+
+ /**
+ * @brief Delete all candidate form data from DB
+ */
+ void DeleteAllFormCandidateData();
+
+ /**
+ * @brief Notify low memory to free unused memory.
+ *
+ * @return @c true on success or @c false otherwise.
+ */
+ bool FreeUnusedMemory();
+
+private:
+ Dali::WebEngineContext& mWebEngineContext;