@apistudio/apim-cli
Version:
CLI for API Management Products
27 lines (23 loc) • 582 B
text/typescript
/**
* Copyright IBM Corp. 2024, 2025
*/
import { z } from 'zod';
import {
BaseModel,
IfConditionSchema,
StopOnFailSchema,
} from './shared.schema.js';
export const AssertionSpecSchema = z.object({
name: z.string(),
key: z.string(),
value: z.any().refine((val) => val !== undefined, {
message: 'value is required in assertion',
}),
action: z.string(),
if: IfConditionSchema.optional(),
stopOnFail: StopOnFailSchema.optional(),
});
export const AssertionSchema = BaseModel.extend({
kind: z.literal('assertion'),
spec: AssertionSpecSchema.array(),
});