constructor({api, config, request, sendEmail}) {
        this.api = api;
        this.config = config;
        this.logging = logging;
        this.request = request;
        this.sendEmail = sendEmail;
    }
@param {Object} options
@param {Object} options.api - set of Ghost's API methods needed for update check to function
@param {Object} options.api.settings - Settings API methods
@param {Function} options.api.settings.read - method allowing to read Ghost's settings
@param {Function} options.api.settings.edit - method allowing to edit Ghost's settings
@param {Object} options.api.posts - Posts API methods
@param {Function} options.api.posts.browse - method allowing to read Ghost's posts
@param {Object} options.api.users - Users API methods
@param {Function} options.api.users.browse - method allowing to read Ghost's users
@param {Object} options.api.notifications - Notification API methods
@param {Function} options.api.notifications.add - method allowing to add Ghost notifications
@param {Object} options.config
@param {Object} options.config.mail
@param {string} options.config.env
@param {string} options.config.databaseType
@param {string} options.config.checkEndpoint - update check service URL
@param {boolean} [options.config.isPrivacyDisabled]
@param {string[]} [options.config.notificationGroups] - example values ["migration", "something"]
@param {boolean} [options.config.rethrowErrors] - allows to force throwing errors (useful in worker threads)
@param {string} options.config.siteUrl - Ghost instance URL
@param {boolean} [options.config.forceUpdate]
@param {string} options.config.ghostVersion - Ghost instance version
@param {Function} options.request - a HTTP request proxy function
@param {Function} options.sendEmail - function handling sending an email