"use strict";
/**
 * Core types for BFUI component library
 * Shared interfaces and types used across components
 */
Object.defineProperty(exports, "__esModule", { value: true });
exports.WorkflowSchema = void 0;
const zod_1 = require("zod");
exports.WorkflowSchema = zod_1.z.object({
    id: zod_1.z.string(),
    name: zod_1.z.string(),
    description: zod_1.z.string().optional(),
    nodes: zod_1.z.array(zod_1.z.object({
        id: zod_1.z.string(),
        type: zod_1.z.string(),
        position: zod_1.z.object({
            x: zod_1.z.number(),
            y: zod_1.z.number()
        }),
        data: zod_1.z.object({
            label: zod_1.z.string(),
            config: zod_1.z.record(zod_1.z.unknown())
        })
    })),
    edges: zod_1.z.array(zod_1.z.object({
        id: zod_1.z.string(),
        source: zod_1.z.string(),
        target: zod_1.z.string(),
        type: zod_1.z.string().optional(),
        data: zod_1.z.record(zod_1.z.unknown()).optional()
    })),
    metadata: zod_1.z.record(zod_1.z.unknown()).optional(),
    version: zod_1.z.string(),
    createdAt: zod_1.z.string(),
    updatedAt: zod_1.z.string()
});
//# sourceMappingURL=core.js.map