import { Metric } from "@effect/core/io/Metrics/definition";
import { HashSet } from "@tsplus/stdlib/collections/HashSet/definition";
import { MetricLabel } from "@effect/core/io/Metrics/MetricLabel";
/**
 * Returns a new metric, which is identical in every way to this one, except
 * the specified tags have been added to the tags of this metric.
 * @tsplus fluent ets/Metrics/Metric taggedWithLabelSet
 * @tsplus location "@effect/core/io/Metrics/operations/taggedWithLabelSet"
 */
export declare function taggedWithLabelSet_<Type, In, Out>(self: Metric<Type, In, Out>, extraTags: HashSet<MetricLabel>): Metric<Type, In, Out>;
/**
 * Returns a new metric, which is identical in every way to this one, except
 * the specified tags have been added to the tags of this metric.
 * @tsplus static ets/Metrics/Metric/Aspects taggedWithLabelSet
 * @tsplus pipeable ets/Metrics/Metric taggedWithLabelSet
 * @tsplus location "@effect/core/io/Metrics/operations/taggedWithLabelSet"
 */
export declare const taggedWithLabelSet: (extraTags: HashSet<MetricLabel>) => <Type, In, Out>(self: import("../definition").Metric<Type, In, Out>) => import("../definition").Metric<Type, In, Out>;
//# sourceMappingURL=taggedWithLabelSet.d.ts.map