import { OneOrMany, SourceRecord } from "../source.js";
import { z } from "zod";

//#region src/lib/sources/processing-library-properties.d.ts
declare const processingLibraryPropertiesSchema: z.ZodObject<{
  authors: z.ZodArray<z.ZodObject<{
    name: z.ZodString;
    url: z.ZodOptional<z.ZodString>;
  }, z.core.$strip>>;
  categories: z.ZodArray<z.ZodEnum<{
    "3D": "3D";
    Animation: "Animation";
    Compilations: "Compilations";
    Data: "Data";
    Fabrication: "Fabrication";
    Geometry: "Geometry";
    GUI: "GUI";
    Hardware: "Hardware";
    "I/O": "I/O";
    Language: "Language";
    Math: "Math";
    Simulation: "Simulation";
    Sound: "Sound";
    Utilities: "Utilities";
    Typography: "Typography";
    "Video & Vision": "Video & Vision";
  }>>;
  download: z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>;
  id: z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>;
  maxRevision: z.ZodNumber;
  minRevision: z.ZodNumber;
  name: z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>;
  paragraph: z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>;
  prettyVersion: z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>;
  raw: z.ZodRecord<z.ZodString, z.ZodString>;
  sentence: z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>;
  type: z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>;
  url: z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>;
  version: z.ZodNumber;
}, z.core.$strip>;
type ProcessingLibraryProperties = z.infer<typeof processingLibraryPropertiesSchema>;
type ProcessingLibraryPropertiesData = OneOrMany<SourceRecord<ProcessingLibraryProperties>> | undefined;
//#endregion
export { ProcessingLibraryPropertiesData };