Skip to main content
Glama
ssv445

Lorem Ipsum MCP Server

by ssv445
MetricKey.d.ts6.69 kB
/** * @since 2.0.0 */ import type * as Duration from "./Duration.js"; import type * as Equal from "./Equal.js"; import type * as MetricBoundaries from "./MetricBoundaries.js"; import type * as MetricKeyType from "./MetricKeyType.js"; import type * as MetricLabel from "./MetricLabel.js"; import type * as Option from "./Option.js"; import type { Pipeable } from "./Pipeable.js"; import type * as Types from "./Types.js"; /** * @since 2.0.0 * @category symbols */ export declare const MetricKeyTypeId: unique symbol; /** * @since 2.0.0 * @category symbols */ export type MetricKeyTypeId = typeof MetricKeyTypeId; /** * A `MetricKey` is a unique key associated with each metric. The key is based * on a combination of the metric type, the name and tags associated with the * metric, an optional description of the key, and any other information to * describe a metric, such as the boundaries of a histogram. In this way, it is * impossible to ever create different metrics with conflicting keys. * * @since 2.0.0 * @category models */ export interface MetricKey<out Type extends MetricKeyType.MetricKeyType<any, any>> extends MetricKey.Variance<Type>, Equal.Equal, Pipeable { readonly name: string; readonly keyType: Type; readonly description: Option.Option<string>; readonly tags: ReadonlyArray<MetricLabel.MetricLabel>; } /** * @since 2.0.0 */ export declare namespace MetricKey { /** * @since 2.0.0 * @category models */ type Untyped = MetricKey<any>; /** * @since 2.0.0 * @category models */ type Counter<A extends (number | bigint)> = MetricKey<MetricKeyType.MetricKeyType.Counter<A>>; /** * @since 2.0.0 * @category models */ type Gauge<A extends (number | bigint)> = MetricKey<MetricKeyType.MetricKeyType.Gauge<A>>; /** * @since 2.0.0 * @category models */ type Frequency = MetricKey<MetricKeyType.MetricKeyType.Frequency>; /** * @since 2.0.0 * @category models */ type Histogram = MetricKey<MetricKeyType.MetricKeyType.Histogram>; /** * @since 2.0.0 * @category models */ type Summary = MetricKey<MetricKeyType.MetricKeyType.Summary>; /** * @since 2.0.0 * @category models */ interface Variance<out Type> { readonly [MetricKeyTypeId]: { _Type: Types.Covariant<Type>; }; } } /** * @since 2.0.0 * @category refinements */ export declare const isMetricKey: (u: unknown) => u is MetricKey<MetricKeyType.MetricKeyType<unknown, unknown>>; /** * Creates a metric key for a counter, with the specified name. * * @since 2.0.0 * @category constructors */ export declare const counter: { /** * Creates a metric key for a counter, with the specified name. * * @since 2.0.0 * @category constructors */ (name: string, options?: { readonly description?: string | undefined; readonly bigint?: false | undefined; readonly incremental?: boolean | undefined; }): MetricKey.Counter<number>; /** * Creates a metric key for a counter, with the specified name. * * @since 2.0.0 * @category constructors */ (name: string, options: { readonly description?: string | undefined; readonly bigint: true; readonly incremental?: boolean | undefined; }): MetricKey.Counter<bigint>; }; /** * Creates a metric key for a categorical frequency table, with the specified * name. * * @since 2.0.0 * @category constructors */ export declare const frequency: (name: string, options?: { readonly description?: string | undefined; readonly preregisteredWords?: ReadonlyArray<string> | undefined; } | undefined) => MetricKey.Frequency; /** * Creates a metric key for a gauge, with the specified name. * * @since 2.0.0 * @category constructors */ export declare const gauge: { /** * Creates a metric key for a gauge, with the specified name. * * @since 2.0.0 * @category constructors */ (name: string, options?: { readonly description?: string | undefined; readonly bigint?: false | undefined; }): MetricKey.Gauge<number>; /** * Creates a metric key for a gauge, with the specified name. * * @since 2.0.0 * @category constructors */ (name: string, options: { readonly description?: string | undefined; readonly bigint: true; }): MetricKey.Gauge<bigint>; }; /** * Creates a metric key for a histogram, with the specified name and boundaries. * * @since 2.0.0 * @category constructors */ export declare const histogram: (name: string, boundaries: MetricBoundaries.MetricBoundaries, description?: string) => MetricKey.Histogram; /** * Creates a metric key for a summary, with the specified name, maxAge, * maxSize, error, and quantiles. * * @since 2.0.0 * @category constructors */ export declare const summary: (options: { readonly name: string; readonly maxAge: Duration.DurationInput; readonly maxSize: number; readonly error: number; readonly quantiles: ReadonlyArray<number>; readonly description?: string | undefined; }) => MetricKey.Summary; /** * Returns a new `MetricKey` with the specified tag appended. * * @since 2.0.0 * @category constructors */ export declare const tagged: { /** * Returns a new `MetricKey` with the specified tag appended. * * @since 2.0.0 * @category constructors */ (key: string, value: string): <Type extends MetricKeyType.MetricKeyType<any, any>>(self: MetricKey<Type>) => MetricKey<Type>; /** * Returns a new `MetricKey` with the specified tag appended. * * @since 2.0.0 * @category constructors */ <Type extends MetricKeyType.MetricKeyType<any, any>>(self: MetricKey<Type>, key: string, value: string): MetricKey<Type>; }; /** * Returns a new `MetricKey` with the specified tags appended. * * @since 2.0.0 * @category constructors */ export declare const taggedWithLabels: { /** * Returns a new `MetricKey` with the specified tags appended. * * @since 2.0.0 * @category constructors */ (extraTags: ReadonlyArray<MetricLabel.MetricLabel>): <Type extends MetricKeyType.MetricKeyType<any, any>>(self: MetricKey<Type>) => MetricKey<Type>; /** * Returns a new `MetricKey` with the specified tags appended. * * @since 2.0.0 * @category constructors */ <Type extends MetricKeyType.MetricKeyType<any, any>>(self: MetricKey<Type>, extraTags: ReadonlyArray<MetricLabel.MetricLabel>): MetricKey<Type>; }; //# sourceMappingURL=MetricKey.d.ts.map

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/ssv445/lorem-ipsum-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server