constructor({
        getApiTriggerThreshold,
        getAdminTriggerThreshold,
        getImportTriggerThreshold,
        isVerified,
        isVerificationRequired,
        sendVerificationEmail,
        Settings,
        eventRepository
    }) {
        this._getApiTriggerThreshold = getApiTriggerThreshold;
        this._getAdminTriggerThreshold = getAdminTriggerThreshold;
        this._getImportTriggerThreshold = getImportTriggerThreshold;
        this._isVerified = isVerified;
        this._isVerificationRequired = isVerificationRequired;
        this._sendVerificationEmail = sendVerificationEmail;
        this._Settings = Settings;
        this._eventRepository = eventRepository;

        this._handleMemberCreatedEvent = this._handleMemberCreatedEvent.bind(this);
        DomainEvents.subscribe(MemberCreatedEvent, this._handleMemberCreatedEvent);
    }
@param {object} deps
@param {() => number} deps.getApiTriggerThreshold Threshold for triggering API&Import sourced verifications
@param {() => number} deps.getAdminTriggerThreshold Threshold for triggering Admin sourced verifications
@param {() => number} deps.getImportTriggerThreshold Threshold for triggering Import sourced verifications
@param {() => boolean} deps.isVerified Check Ghost config to see if we are already verified
@param {() => boolean} deps.isVerificationRequired Check Ghost settings to see whether verification has been requested
@param {(content: {subject: string, message: string, amountTriggered: number}) => Promise<void>} deps.sendVerificationEmail Sends an email to the escalation address to confirm that customer needs to be verified
@param {any} deps.Settings Ghost Settings model
@param {any} deps.eventRepository For querying events