@inworld/web-core
Version:
31 lines (30 loc) • 1.06 kB
JavaScript
import * as z from "zod";
export const TypeEnumSchema = z.enum([
"ADD",
"REMOVE",
"REPLACE",
"UNSPECIFIED",
]);
export const EntityItemSchema = z.object({
"description": z.string().optional(),
"display_name": z.string().optional(),
"id": z.string().optional(),
"properties": z.record(z.string(), z.string()).optional(),
});
export const ItemsInEntitiesSchema = z.object({
"entity_names": z.array(z.string()).optional(),
"item_ids": z.array(z.string()).optional(),
"type": z.union([TypeEnumSchema, z.number()]).optional(),
});
export const RemoveItemsSchema = z.object({
"item_ids": z.array(z.string()).optional(),
});
export const CreateOrUpdateItemsSchema = z.object({
"add_to_entities": z.array(z.string()).optional(),
"items": z.array(EntityItemSchema).optional(),
});
export const ItemsOperationEventSchema = z.object({
"create_or_update_items": CreateOrUpdateItemsSchema.optional(),
"items_in_entities": ItemsInEntitiesSchema.optional(),
"remove_items": RemoveItemsSchema.optional(),
});