@@ -9,20 +9,22 @@ import type { MessageVersionGeneratingFunction, PrometheusMetricParams } from '.
99export abstract class PrometheusMessageMetric <
1010 MessagePayload extends object ,
1111 MetricType extends Metric ,
12+ MetricParams extends
13+ PrometheusMetricParams < MessagePayload > = PrometheusMetricParams < MessagePayload > ,
1214> implements MessageMetricsManager < MessagePayload >
1315{
1416 /** Fallbacks to null if metrics are disabled on app level */
1517 protected readonly metric : MetricType
1618
1719 protected readonly messageVersionGeneratingFunction : MessageVersionGeneratingFunction < MessagePayload >
1820
19- private readonly metricParams : PrometheusMetricParams < MessagePayload >
21+ private readonly metricParams : MetricParams
2022
2123 /**
2224 * @param metricParams - metrics parameters (see PrometheusMetricParams)
2325 * @param client - use it to specify custom Prometheus client
2426 */
25- constructor ( metricParams : PrometheusMetricParams < MessagePayload > , client ?: typeof promClient ) {
27+ constructor ( metricParams : MetricParams , client ?: typeof promClient ) {
2628 this . metricParams = metricParams
2729 this . messageVersionGeneratingFunction =
2830 this . resolveMessageVersionGeneratingFunction ( metricParams )
@@ -38,15 +40,12 @@ export abstract class PrometheusMessageMetric<
3840 }
3941
4042 private resolveMessageVersionGeneratingFunction (
41- metricParams : PrometheusMetricParams < MessagePayload > ,
43+ metricParams : MetricParams ,
4244 ) : MessageVersionGeneratingFunction < MessagePayload > {
4345 const messageVersion = metricParams . messageVersion
4446 return typeof messageVersion === 'function' ? messageVersion : ( ) => messageVersion
4547 }
4648
47- protected abstract createMetric (
48- client : typeof promClient ,
49- metricParams : PrometheusMetricParams < MessagePayload > ,
50- ) : MetricType
49+ protected abstract createMetric ( client : typeof promClient , metricParams : MetricParams ) : MetricType
5150 abstract registerProcessedMessage ( metadata : ProcessedMessageMetadata < MessagePayload > ) : void
5251}
0 commit comments