UNPKG

@timescaledb/schemas

Version:

This package contains Zod schemas and types for all TimescaleDB objects.

36 lines 1.34 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.GetTimeBucketOptionsSchema = exports.TimeBucketResultSchema = exports.TimeBucketRowSchema = exports.TimeBucketConfigSchema = exports.MetricConfigSchema = exports.TimeBucketMetricTypeSchema = void 0; const zod_1 = require("zod"); const by_range_1 = require("./by-range"); exports.TimeBucketMetricTypeSchema = zod_1.z.enum([ 'count', 'distinct_count', 'sum', 'avg', 'min', 'max', 'first', 'last', ]); exports.MetricConfigSchema = zod_1.z.object({ type: exports.TimeBucketMetricTypeSchema, column: zod_1.z.string().optional(), alias: zod_1.z.string().optional(), }); exports.TimeBucketConfigSchema = zod_1.z.object({ interval: zod_1.z.string(), metrics: zod_1.z.array(exports.MetricConfigSchema), }); exports.TimeBucketRowSchema = zod_1.z .object({ interval: zod_1.z.string(), }) .and(zod_1.z.record(zod_1.z.string(), zod_1.z.union([zod_1.z.number(), zod_1.z.string()]))); exports.TimeBucketResultSchema = zod_1.z.array(exports.TimeBucketRowSchema); exports.GetTimeBucketOptionsSchema = zod_1.z.object({ range: by_range_1.ByRangeSchema.required(), where: zod_1.z.string().optional(), config: exports.TimeBucketConfigSchema.required(), }); //# sourceMappingURL=time-bucket.js.map