UNPKG

@allmaps/annotation

Version:

Functions for generating and parsing IIIF georeference annotations

1,237 lines (1,236 loc) 196 kB
import { z } from 'zod'; import { AnnotationSchema as Annotation0Schema, AnnotationPageSchema as AnnotationPage0Schema, FeaturePropertiesSchema as Annotation0FeaturePropertiesSchema, SvgSelectorSchema as SvgSelector0Schema } from './annotation/annotation.0.js'; import { AnnotationSchema as Annotation1Schema, AnnotationPageSchema as AnnotationPage1Schema, FeaturePropertiesSchema as Annotation1FeaturePropertiesSchema } from './annotation/annotation.1.js'; import { ResourceTypeSchema, PointGeometrySchema, ImageServiceSchema, TransformationSchema, PartOfSchema } from './shared.js'; declare const DefaultAnnotationSchema: z.ZodObject<{ id: z.ZodOptional<z.ZodString>; type: z.ZodLiteral<"Annotation">; '@context': z.ZodOptional<z.ZodUnion<[z.ZodArray<z.ZodString, "many">, z.ZodString]>>; motivation: z.ZodOptional<z.ZodDefault<z.ZodString>>; created: z.ZodOptional<z.ZodString>; modified: z.ZodOptional<z.ZodString>; target: z.ZodObject<{ type: z.ZodLiteral<"SpecificResource">; source: z.ZodUnion<[z.ZodObject<{ '@id': z.ZodString; type: z.ZodEnum<["ImageService1", "ImageService2", "ImageService3"]>; height: z.ZodNumber; width: z.ZodNumber; partOf: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodArray<z.ZodType<{ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & { partOf?: ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & /*elided*/ any)[]; }, z.ZodTypeDef, { id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & { partOf?: ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & /*elided*/ any)[]; }>, "many">, z.ZodType<{ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & { partOf?: ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & /*elided*/ any)[]; }, z.ZodTypeDef, { id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & { partOf?: ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & /*elided*/ any)[]; }>]>, ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & { partOf?: ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & /*elided*/ any)[]; })[] | undefined, ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & { partOf?: ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & /*elided*/ any)[]; }) | ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & { partOf?: ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & /*elided*/ any)[]; })[]>>; }, "strip", z.ZodTypeAny, { type: "ImageService1" | "ImageService2" | "ImageService3"; '@id': string; height: number; width: number; partOf?: ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & { partOf?: ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & /*elided*/ any)[]; })[] | undefined; }, { type: "ImageService1" | "ImageService2" | "ImageService3"; '@id': string; height: number; width: number; partOf?: ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & { partOf?: ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & /*elided*/ any)[]; }) | ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & { partOf?: ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & /*elided*/ any)[]; })[] | undefined; }>, z.ZodObject<{ id: z.ZodString; type: z.ZodEnum<["ImageService1", "ImageService2", "ImageService3"]>; height: z.ZodOptional<z.ZodNumber>; width: z.ZodOptional<z.ZodNumber>; partOf: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodArray<z.ZodType<{ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & { partOf?: ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & /*elided*/ any)[]; }, z.ZodTypeDef, { id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & { partOf?: ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & /*elided*/ any)[]; }>, "many">, z.ZodType<{ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & { partOf?: ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & /*elided*/ any)[]; }, z.ZodTypeDef, { id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & { partOf?: ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & /*elided*/ any)[]; }>]>, ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & { partOf?: ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & /*elided*/ any)[]; })[] | undefined, ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & { partOf?: ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & /*elided*/ any)[]; }) | ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & { partOf?: ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & /*elided*/ any)[]; })[]>>; }, "strip", z.ZodTypeAny, { id: string; type: "ImageService1" | "ImageService2" | "ImageService3"; height?: number | undefined; width?: number | undefined; partOf?: ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & { partOf?: ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & /*elided*/ any)[]; })[] | undefined; }, { id: string; type: "ImageService1" | "ImageService2" | "ImageService3"; height?: number | undefined; width?: number | undefined; partOf?: ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & { partOf?: ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & /*elided*/ any)[]; }) | ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & { partOf?: ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & /*elided*/ any)[]; })[] | undefined; }>, z.ZodObject<{ id: z.ZodString; type: z.ZodLiteral<"Canvas">; height: z.ZodOptional<z.ZodNumber>; width: z.ZodOptional<z.ZodNumber>; partOf: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodArray<z.ZodType<{ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & { partOf?: ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & /*elided*/ any)[]; }, z.ZodTypeDef, { id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & { partOf?: ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & /*elided*/ any)[]; }>, "many">, z.ZodType<{ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & { partOf?: ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & /*elided*/ any)[]; }, z.ZodTypeDef, { id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & { partOf?: ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & /*elided*/ any)[]; }>]>, ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & { partOf?: ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & /*elided*/ any)[]; })[] | undefined, ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & { partOf?: ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & /*elided*/ any)[]; }) | ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & { partOf?: ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & /*elided*/ any)[]; })[]>>; }, "strip", z.ZodTypeAny, { id: string; type: "Canvas"; height?: number | undefined; width?: number | undefined; partOf?: ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & { partOf?: ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & /*elided*/ any)[]; })[] | undefined; }, { id: string; type: "Canvas"; height?: number | undefined; width?: number | undefined; partOf?: ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & { partOf?: ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & /*elided*/ any)[]; }) | ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & { partOf?: ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & /*elided*/ any)[]; })[] | undefined; }>]>; selector: z.ZodObject<{ type: z.ZodLiteral<"SvgSelector">; value: z.ZodUnion<[z.ZodString, z.ZodString, z.ZodString]>; }, "strip", z.ZodTypeAny, { type: "SvgSelector"; value: string; }, { type: "SvgSelector"; value: string; }>; }, "strip", z.ZodTypeAny, { type: "SpecificResource"; source: { type: "ImageService1" | "ImageService2" | "ImageService3"; '@id': string; height: number; width: number; partOf?: ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & { partOf?: ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & /*elided*/ any)[]; })[] | undefined; } | { id: string; type: "ImageService1" | "ImageService2" | "ImageService3"; height?: number | undefined; width?: number | undefined; partOf?: ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & { partOf?: ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & /*elided*/ any)[]; })[] | undefined; } | { id: string; type: "Canvas"; height?: number | undefined; width?: number | undefined; partOf?: ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & { partOf?: ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & /*elided*/ any)[]; })[] | undefined; }; selector: { type: "SvgSelector"; value: string; }; }, { type: "SpecificResource"; source: { type: "ImageService1" | "ImageService2" | "ImageService3"; '@id': string; height: number; width: number; partOf?: ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & { partOf?: ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & /*elided*/ any)[]; }) | ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & { partOf?: ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & /*elided*/ any)[]; })[] | undefined; } | { id: string; type: "ImageService1" | "ImageService2" | "ImageService3"; height?: number | undefined; width?: number | undefined; partOf?: ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & { partOf?: ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & /*elided*/ any)[]; }) | ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & { partOf?: ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & /*elided*/ any)[]; })[] | undefined; } | { id: string; type: "Canvas"; height?: number | undefined; width?: number | undefined; partOf?: ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & { partOf?: ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & /*elided*/ any)[]; }) | ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & { partOf?: ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & /*elided*/ any)[]; })[] | undefined; }; selector: { type: "SvgSelector"; value: string; }; }>; body: z.ZodObject<{ type: z.ZodLiteral<"FeatureCollection">; transformation: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodObject<{ type: z.ZodEnum<["helmert", "polynomial", "thinPlateSpline", "projective", "straight", "linear"]>; options: z.ZodOptional<z.ZodObject<{}, "passthrough", z.ZodTypeAny, z.objectOutputType<{}, z.ZodTypeAny, "passthrough">, z.objectInputType<{}, z.ZodTypeAny, "passthrough">>>; }, "strip", z.ZodTypeAny, { type: "helmert" | "polynomial" | "thinPlateSpline" | "projective" | "straight" | "linear"; options?: z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; }, { type: "helmert" | "polynomial" | "thinPlateSpline" | "projective" | "straight" | "linear"; options?: z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined; }>, z.ZodUnknown]>, { type: "helmert" | "polynomial" | "thinPlateSpline" | "projective" | "straight" | "linear"; options?: z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; } | undefined, unknown>>; resourceCrs: z.ZodOptional<z.ZodObject<{ id: z.ZodOptional<z.ZodString>; name: z.ZodOptional<z.ZodString>; definition: z.ZodUnion<[z.ZodString, z.ZodUnknown]>; }, "strip", z.ZodTypeAny, { id?: string | undefined; name?: string | undefined; definition?: unknown; }, { id?: string | undefined; name?: string | undefined; definition?: unknown; }>>; features: z.ZodArray<z.ZodObject<{ type: z.ZodLiteral<"Feature">; properties: z.ZodObject<{ resourceCoords: z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>; }, "strip", z.ZodTypeAny, { resourceCoords: [number, number]; }, { resourceCoords: [number, number]; }>; geometry: z.ZodObject<{ type: z.ZodLiteral<"Point">; coordinates: z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>; }, "strip", z.ZodTypeAny, { type: "Point"; coordinates: [number, number]; }, { type: "Point"; coordinates: [number, number]; }>; }, "strip", z.ZodTypeAny, { type: "Feature"; properties: { resourceCoords: [number, number]; }; geometry: { type: "Point"; coordinates: [number, number]; }; }, { type: "Feature"; properties: { resourceCoords: [number, number]; }; geometry: { type: "Point"; coordinates: [number, number]; }; }>, "many">; }, "strip", z.ZodTypeAny, { type: "FeatureCollection"; features: { type: "Feature"; properties: { resourceCoords: [number, number]; }; geometry: { type: "Point"; coordinates: [number, number]; }; }[]; transformation?: { type: "helmert" | "polynomial" | "thinPlateSpline" | "projective" | "straight" | "linear"; options?: z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; } | undefined; resourceCrs?: { id?: string | undefined; name?: string | undefined; definition?: unknown; } | undefined; }, { type: "FeatureCollection"; features: { type: "Feature"; properties: { resourceCoords: [number, number]; }; geometry: { type: "Point"; coordinates: [number, number]; }; }[]; transformation?: unknown; resourceCrs?: { id?: string | undefined; name?: string | undefined; definition?: unknown; } | undefined; }>; }, "strip", z.ZodTypeAny, { type: "Annotation"; target: { type: "SpecificResource"; source: { type: "ImageService1" | "ImageService2" | "ImageService3"; '@id': string; height: number; width: number; partOf?: ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & { partOf?: ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & /*elided*/ any)[]; })[] | undefined; } | { id: string; type: "ImageService1" | "ImageService2" | "ImageService3"; height?: number | undefined; width?: number | undefined; partOf?: ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & { partOf?: ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & /*elided*/ any)[]; })[] | undefined; } | { id: string; type: "Canvas"; height?: number | undefined; width?: number | undefined; partOf?: ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & { partOf?: ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & /*elided*/ any)[]; })[] | undefined; }; selector: { type: "SvgSelector"; value: string; }; }; body: { type: "FeatureCollection"; features: { type: "Feature"; properties: { resourceCoords: [number, number]; }; geometry: { type: "Point"; coordinates: [number, number]; }; }[]; transformation?: { type: "helmert" | "polynomial" | "thinPlateSpline" | "projective" | "straight" | "linear"; options?: z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined; } | undefined; resourceCrs?: { id?: string | undefined; name?: string | undefined; definition?: unknown; } | undefined; }; id?: string | undefined; '@context'?: string | string[] | undefined; motivation?: string | undefined; created?: string | undefined; modified?: string | undefined; }, { type: "Annotation"; target: { type: "SpecificResource"; source: { type: "ImageService1" | "ImageService2" | "ImageService3"; '@id': string; height: number; width: number; partOf?: ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & { partOf?: ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & /*elided*/ any)[]; }) | ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & { partOf?: ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & /*elided*/ any)[]; })[] | undefined; } | { id: string; type: "ImageService1" | "ImageService2" | "ImageService3"; height?: number | undefined; width?: number | undefined; partOf?: ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & { partOf?: ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & /*elided*/ any)[]; }) | ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & { partOf?: ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & /*elided*/ any)[]; })[] | undefined; } | { id: string; type: "Canvas"; height?: number | undefined; width?: number | undefined; partOf?: ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & { partOf?: ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & /*elided*/ any)[]; }) | ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & { partOf?: ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & /*elided*/ any)[]; })[] | undefined; }; selector: { type: "SvgSelector"; value: string; }; }; body: { type: "FeatureCollection"; features: { type: "Feature"; properties: { resourceCoords: [number, number]; }; geometry: { type: "Point"; coordinates: [number, number]; }; }[]; transformation?: unknown; resourceCrs?: { id?: string | undefined; name?: string | undefined; definition?: unknown; } | undefined; }; id?: string | undefined; '@context'?: string | string[] | undefined; motivation?: string | undefined; created?: string | undefined; modified?: string | undefined; }>; declare const DefaultAnnotationPageSchema: z.ZodObject<{ id: z.ZodOptional<z.ZodString>; type: z.ZodLiteral<"AnnotationPage">; '@context': z.ZodOptional<z.ZodUnion<[z.ZodArray<z.ZodString, "many">, z.ZodString]>>; items: z.ZodArray<z.ZodObject<{ id: z.ZodOptional<z.ZodString>; type: z.ZodLiteral<"Annotation">; '@context': z.ZodOptional<z.ZodUnion<[z.ZodArray<z.ZodString, "many">, z.ZodString]>>; motivation: z.ZodOptional<z.ZodDefault<z.ZodString>>; created: z.ZodOptional<z.ZodString>; modified: z.ZodOptional<z.ZodString>; target: z.ZodObject<{ type: z.ZodLiteral<"SpecificResource">; source: z.ZodUnion<[z.ZodObject<{ '@id': z.ZodString; type: z.ZodEnum<["ImageService1", "ImageService2", "ImageService3"]>; height: z.ZodNumber; width: z.ZodNumber; partOf: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodArray<z.ZodType<{ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & { partOf?: ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & /*elided*/ any)[]; }, z.ZodTypeDef, { id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & { partOf?: ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & /*elided*/ any)[]; }>, "many">, z.ZodType<{ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & { partOf?: ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & /*elided*/ any)[]; }, z.ZodTypeDef, { id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & { partOf?: ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & /*elided*/ any)[]; }>]>, ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & { partOf?: ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & /*elided*/ any)[]; })[] | undefined, ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & { partOf?: ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & /*elided*/ any)[]; }) | ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & { partOf?: ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & /*elided*/ any)[]; })[]>>; }, "strip", z.ZodTypeAny, { type: "ImageService1" | "ImageService2" | "ImageService3"; '@id': string; height: number; width: number; partOf?: ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & { partOf?: ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & /*elided*/ any)[]; })[] | undefined; }, { type: "ImageService1" | "ImageService2" | "ImageService3"; '@id': string; height: number; width: number; partOf?: ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & { partOf?: ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & /*elided*/ any)[]; }) | ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & { partOf?: ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & /*elided*/ any)[]; })[] | undefined; }>, z.ZodObject<{ id: z.ZodString; type: z.ZodEnum<["ImageService1", "ImageService2", "ImageService3"]>; height: z.ZodOptional<z.ZodNumber>; width: z.ZodOptional<z.ZodNumber>; partOf: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodArray<z.ZodType<{ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & { partOf?: ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & /*elided*/ any)[]; }, z.ZodTypeDef, { id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & { partOf?: ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & /*elided*/ any)[]; }>, "many">, z.ZodType<{ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & { partOf?: ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & /*elided*/ any)[]; }, z.ZodTypeDef, { id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & { partOf?: ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & /*elided*/ any)[]; }>]>, ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & { partOf?: ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & /*elided*/ any)[]; })[] | undefined, ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & { partOf?: ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & /*elided*/ any)[]; }) | ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & { partOf?: ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & /*elided*/ any)[]; })[]>>; }, "strip", z.ZodTypeAny, { id: string; type: "ImageService1" | "ImageService2" | "ImageService3"; height?: number | undefined; width?: number | undefined; partOf?: ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & { partOf?: ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & /*elided*/ any)[]; })[] | undefined; }, { id: string; type: "ImageService1" | "ImageService2" | "ImageService3"; height?: number | undefined; width?: number | undefined; partOf?: ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & { partOf?: ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & /*elided*/ any)[]; }) | ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & { partOf?: ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & /*elided*/ any)[]; })[] | undefined; }>, z.ZodObject<{ id: z.ZodString; type: z.ZodLiteral<"Canvas">; height: z.ZodOptional<z.ZodNumber>; width: z.ZodOptional<z.ZodNumber>; partOf: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodArray<z.ZodType<{ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & { partOf?: ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & /*elided*/ any)[]; }, z.ZodTypeDef, { id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & { partOf?: ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & /*elided*/ any)[]; }>, "many">, z.ZodType<{ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & { partOf?: ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & /*elided*/ any)[]; }, z.ZodTypeDef, { id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & { partOf?: ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & /*elided*/ any)[]; }>]>, ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & { partOf?: ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & /*elided*/ any)[]; })[] | undefined, ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & { partOf?: ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & /*elided*/ any)[]; }) | ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & { partOf?: ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & /*elided*/ any)[]; })[]>>; }, "strip", z.ZodTypeAny, { id: string; type: "Canvas"; height?: number | undefined; width?: number | undefined; partOf?: ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & { partOf?: ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & /*elided*/ any)[]; })[] | undefined; }, { id: string; type: "Canvas"; height?: number | undefined; width?: number | undefined; partOf?: ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & { partOf?: ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & /*elided*/ any)[]; }) | ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & { partOf?: ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & /*elided*/ any)[]; })[] | undefined; }>]>; selector: z.ZodObject<{ type: z.ZodLiteral<"SvgSelector">; value: z.ZodUnion<[z.ZodString, z.ZodString, z.ZodString]>; }, "strip", z.ZodTypeAny, { type: "SvgSelector"; value: string; }, { type: "SvgSelector"; value: string; }>; }, "strip", z.ZodTypeAny, { type: "SpecificResource"; source: { type: "ImageService1" | "ImageService2" | "ImageService3"; '@id': string; height: number; width: number; partOf?: ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & { partOf?: ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & /*elided*/ any)[]; })[] | undefined; } | { id: string; type: "ImageService1" | "ImageService2" | "ImageService3"; height?: number | undefined; width?: number | undefined; partOf?: ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & { partOf?: ({ id: string; type: string; label?: Record<string, (string | number | boolean)[]> | undefined; } & /*elided*/ any)[]; })[] | undefined; } | {