import { TaskName , TaskActionsEvaluator , TaskFormatter , Task , RegistrationProvider , RegistrationProviderOptions , RegisterableTaskList , } from '@checkup/core' ; export default class PluginRegistrationProvider implements RegistrationProvider { registeredActions : Map < TaskName , TaskActionsEvaluator > ; registeredTaskReporters : Map < string , TaskFormatter > ; registeredTasks : RegisterableTaskList ; constructor ( options ) { this . registeredActions = options . registeredActions ; this . registeredTaskReporters = options . registeredTaskReporters ; this . registeredTasks = options . registeredTasks ; } actions ( taskName , evaluate ) { this . registeredActions . set ( taskName , evaluate ) ; } taskFormatter ( taskName , report ) { this . registeredTaskReporters . set ( taskName , report ) ; } task ( task ) { this . registeredTasks . registerTask ( task ) ; } }