1
0
mirror of https://github.com/Unleash/unleash.git synced 2024-11-01 19:07:38 +01:00
unleash.unleash/src/lib/openapi/spec/variant-schema.ts

49 lines
1.1 KiB
TypeScript

import { FromSchema } from 'json-schema-to-ts';
import { overrideSchema } from './override-schema';
export const variantSchema = {
$id: '#/components/schemas/variantSchema',
type: 'object',
additionalProperties: false,
required: ['name', 'weight'],
properties: {
name: {
type: 'string',
},
weight: {
type: 'number',
},
weightType: {
type: 'string',
},
stickiness: {
type: 'string',
},
payload: {
type: 'object',
required: ['type', 'value'],
properties: {
type: {
type: 'string',
},
value: {
type: 'string',
},
},
},
overrides: {
type: 'array',
items: {
$ref: '#/components/schemas/overrideSchema',
},
},
},
components: {
schemas: {
overrideSchema,
},
},
} as const;
export type VariantSchema = FromSchema<typeof variantSchema>;