import { Service } from '../models';
export type TMetricPoint<K extends string = string> = {
    timestamp: number;
    values: Record<K, number>;
};
export declare class MetricsService extends Service {
    protected server: Service['server'];
    protected options?: {
        limit?: number;
    } | undefined;
    private limit;
    points: {
        containers: TMetricPoint<"count">[];
        memory: TMetricPoint<"mbs">[];
        cache: TMetricPoint<"redis_mbs" | "redis_count">[];
        rate: TMetricPoint<"count">[];
    };
    constructor(server: Service['server'], options?: {
        limit?: number;
    } | undefined);
    register<K extends keyof MetricsService['points']>(name: K, values: MetricsService['points'][K][0]['values']): this;
    static build(server: Service['server'], options?: MetricsService['options']): MetricsService;
}
//# sourceMappingURL=metrics.service.d.ts.map