unleash-server
Version:
Unleash is an enterprise ready feature flag service. It provides different strategies for handling feature flags.
144 lines • 6.88 kB
TypeScript
import type { FromSchema } from 'json-schema-to-ts';
export declare const impactMetricsSchema: {
readonly $id: "#/components/schemas/impactMetricsSchema";
readonly type: "object";
readonly description: "Used for reporting impact metrics from SDKs";
readonly oneOf: readonly [{
readonly required: readonly ["name", "help", "type", "samples"];
readonly properties: {
readonly name: {
readonly type: "string";
readonly description: "Name of the impact metric";
readonly example: "my-counter";
};
readonly help: {
readonly description: "Human-readable description of what the metric measures";
readonly type: "string";
readonly example: "Counts the number of operations";
};
readonly type: {
readonly description: "Type of the metric";
readonly type: "string";
readonly enum: readonly ["counter", "gauge"];
readonly example: "counter";
};
readonly samples: {
readonly description: "Samples of the numeric metric";
readonly type: "array";
readonly items: {
readonly type: "object";
readonly required: readonly ["value"];
readonly description: "A sample of a numeric metric with a value and optional labels";
readonly properties: {
readonly value: {
readonly type: "number";
readonly description: "The value of the metric sample";
readonly example: 10;
};
readonly labels: {
readonly description: "Optional labels for the metric sample";
readonly type: "object";
readonly additionalProperties: {
readonly oneOf: readonly [{
readonly type: "string";
}, {
readonly type: "number";
}];
};
readonly example: {
readonly application: "my-app";
readonly environment: "production";
};
};
};
};
};
};
}, {
readonly required: readonly ["name", "help", "type", "samples"];
readonly properties: {
readonly name: {
readonly type: "string";
readonly description: "Name of the impact metric";
readonly example: "my-histogram";
};
readonly help: {
readonly description: "Human-readable description of what the metric measures";
readonly type: "string";
readonly example: "Measures request duration";
};
readonly type: {
readonly description: "Type of the metric";
readonly type: "string";
readonly enum: readonly ["histogram"];
readonly example: "histogram";
};
readonly samples: {
readonly description: "Samples of the histogram metric";
readonly type: "array";
readonly items: {
readonly type: "object";
readonly required: readonly ["count", "sum", "buckets"];
readonly description: "A sample of a histogram metric with count, sum, buckets and optional labels";
readonly properties: {
readonly count: {
readonly type: "number";
readonly description: "Total count of observations";
readonly example: 100;
};
readonly sum: {
readonly type: "number";
readonly description: "Sum of all observed values";
readonly example: 1500;
};
readonly buckets: {
readonly type: "array";
readonly description: "Histogram buckets";
readonly items: {
readonly type: "object";
readonly required: readonly ["le", "count"];
readonly properties: {
readonly le: {
readonly oneOf: readonly [{
readonly type: "number";
}, {
readonly type: "string";
readonly enum: readonly ["+Inf"];
}];
readonly description: "Upper bound of the bucket";
readonly example: 0.5;
};
readonly count: {
readonly type: "number";
readonly description: "Count of observations in this bucket";
readonly example: 30;
};
};
};
};
readonly labels: {
readonly description: "Optional labels for the metric sample";
readonly type: "object";
readonly additionalProperties: {
readonly oneOf: readonly [{
readonly type: "string";
}, {
readonly type: "number";
}];
};
readonly example: {
readonly application: "my-app";
readonly environment: "production";
};
};
};
};
};
};
}];
readonly components: {
readonly schemas: {};
};
};
export type ImpactMetricsSchema = FromSchema<typeof impactMetricsSchema>;
//# sourceMappingURL=impact-metrics-schema.d.ts.map