import { diagramTypeEnum } from "@turbostarter/db/schema/diagram";

import type { selectedElementSchema } from "./schema";
import type * as z from "zod";

export type DiagramType = (typeof diagramTypeEnum.enumValues)[number];

export const DIAGRAM_TYPES = diagramTypeEnum.enumValues;

export type SelectedElement = z.infer<typeof selectedElementSchema>;

export type { GraphPatch } from "./mutation-schema";
export { graphPatchSchema, validateGraphPatch, validateUniqueIds } from "./mutation-schema";
