import { Parameter } from '@/services/data/tuples/factor-calculator-types' ; import { Factor } from '@/services/data/tuples/factor-types' ; import { Topic } from '@/services/data/tuples/topic-types' ; export enum ParameterEventTypes { /**
     * any change will lead this event. no fire explicitly
     */ PARAM_CHANGED = 'param-changed' , FROM_CHANGED = 'from-changed' , CONDITION_CHANGED = 'condition-changed' , CONSTANT_VALUE_CHANGED = 'constant-value-changed' , TOPIC_CHANGED = 'topic-changed' , FACTOR_CHANGED = 'factor-changed' , COMPUTE_TYPE_CHANGED = 'compute-type-changed' , COMPUTE_CONTENT_CHANGED = 'compute-content-changed' , COMPUTE_PARAMETER_ADDED = 'compute-parameter-added' , COMPUTE_PARAMETER_REMOVED = 'compute-parameter-removed' } export interface ParameterEventBus { on ( type , listener ) : this ; off ( type , listener ) : this ; fire ( type , parameter ) : this ; on ( type , listener ) : this ; off ( type , listener ) : this ; fire ( type , parameter ) : this ; on ( type , listener ) : this ; off ( type , listener ) : this ; fire ( type , parameter ) : this ; on ( type , listener ) : this ; off ( type , listener ) : this ; fire ( type , parameter , topic ) : this ; on ( type , listener ) : this ; off ( type , listener ) : this ; fire ( type , parameter , factor ? ) : this ; on ( type , listener ) : this ; off ( type , listener ) : this ; fire ( type , parameter ) : this ; on ( type , listener ) : this ; off ( type , listener ) : this ; fire ( type , parameter ) : this ; on ( type , listener ) : this ; off ( type , listener ) : this ; fire ( type , parameter ) : this ; on ( type , listener ) : this ; off ( type , listener ) : this ; fire ( type , parameter ) : this ; on ( type , listener ) : this ; off ( type , listener ) : this ; }