"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.createFakeInactiveUsersService = exports.createInactiveUsersService = exports.DAYS_TO_BE_COUNTED_AS_INACTIVE = void 0;
const inactive_users_service_1 = require("./inactive-users-service");
const inactive_users_store_1 = require("./inactive-users-store");
const fake_inactive_users_store_1 = require("./fakes/fake-inactive-users-store");
exports.DAYS_TO_BE_COUNTED_AS_INACTIVE = 180;
const createInactiveUsersService = (db, config, userService) => {
    const { eventBus, getLogger } = config;
    const inactiveUsersStore = new inactive_users_store_1.InactiveUsersStore(db, eventBus, getLogger);
    return new inactive_users_service_1.InactiveUsersService({ inactiveUsersStore }, { getLogger }, { userService });
};
exports.createInactiveUsersService = createInactiveUsersService;
const createFakeInactiveUsersService = ({ getLogger, eventBus }, userService) => {
    const fakeStore = new fake_inactive_users_store_1.FakeInactiveUsersStore();
    return new inactive_users_service_1.InactiveUsersService({ inactiveUsersStore: fakeStore }, { getLogger }, { userService });
};
exports.createFakeInactiveUsersService = createFakeInactiveUsersService;
//# sourceMappingURL=createInactiveUsersService.js.map