import { ForkName } from "@lodestar/params";
import { SubnetID } from "@lodestar/types";
import { RegistryMetricCreator } from "../../metrics/index.js";
import { GossipType } from "./interface.js";
export type Eth2GossipsubMetrics = ReturnType<typeof createEth2GossipsubMetrics>;
export declare function createEth2GossipsubMetrics(register: RegistryMetricCreator): {
    gossipPeer: {
        scoreByThreshold: import("@lodestar/utils").GaugeExtra<{
            threshold: string;
        }>;
        meshPeersByClient: import("@lodestar/utils").GaugeExtra<{
            client: string;
        }>;
        score: import("@lodestar/utils").AvgMinMax<import("@lodestar/utils").NoLabels>;
    };
    gossipMesh: {
        peersByType: import("@lodestar/utils").GaugeExtra<{
            type: GossipType;
            fork: ForkName;
        }>;
        peersByBeaconAttestationSubnet: import("@lodestar/utils").GaugeExtra<{
            subnet: string;
            fork: ForkName;
        }>;
        peersBySyncCommitteeSubnet: import("@lodestar/utils").GaugeExtra<{
            subnet: SubnetID;
            fork: ForkName;
        }>;
    };
    gossipTopic: {
        peersByType: import("@lodestar/utils").GaugeExtra<{
            type: GossipType;
            fork: ForkName;
        }>;
        peersByBeaconAttestationSubnet: import("@lodestar/utils").GaugeExtra<{
            subnet: string;
            fork: ForkName;
        }>;
        peersBySyncCommitteeSubnet: import("@lodestar/utils").GaugeExtra<{
            subnet: SubnetID;
            fork: ForkName;
        }>;
    };
};
//# sourceMappingURL=metrics.d.ts.map