craft-hub / pluginManifestV1Schema
Variable: pluginManifestV1Schema
constpluginManifestV1Schema:ZodObject<{contributes:ZodObject<{commandPresets:ZodDefault<ZodArray<ZodObject<{applyToCommands:ZodDefault<ZodBoolean>;commands:ZodArray<ZodString>;id:ZodString;inputs:ZodRecord<ZodString,ZodUnion<readonly [..., ..., ..., ..., ..., ...]>>;optionSources:ZodDefault<ZodRecord<ZodString,ZodDiscriminatedUnion<..., ...>>>;package:ZodObject<{allFiles:ZodDefault<...>;anyFiles:ZodDefault<...>; },$strict>;unlessCommands:ZodDefault<ZodArray<ZodString>>; },$strict>>>;commands:ZodDefault<ZodArray<ZodObject<{args:ZodDefault<ZodArray<ZodString>>;command:ZodString;description:ZodOptional<ZodString>;id:ZodString;name:ZodString;requiredEnv:ZodDefault<ZodArray<ZodString>>; },$strip>>>;commandTemplates:ZodDefault<ZodArray<ZodObject<{args:ZodDefault<ZodArray<ZodString>>;category:ZodOptional<ZodEnum<{build: ...;deploy: ...;develop: ...;other: ...;preview: ...;quality: ...;test: ...; }>>;command:ZodString;description:ZodOptional<ZodString>;id:ZodString;inputPreset:ZodOptional<ZodString>;inputs:ZodDefault<ZodRecord<ZodString,ZodUnion<...>>>;name:ZodString;package:ZodObject<{allFiles:ZodDefault<...>;anyFiles:ZodDefault<...>; },$strict>;prerequisites:ZodDefault<ZodArray<ZodObject<..., ...>>>;requiredEnv:ZodDefault<ZodArray<ZodString>>;toolGroup:ZodOptional<ZodString>;unlessCommands:ZodDefault<ZodArray<ZodString>>; },$strict>>>;integrations:ZodDefault<ZodArray<ZodObject<{actions:ZodDefault<ZodArray<ZodObject<..., ...>>>;id:ZodString;provider:ZodObject<{id:ZodString;requires:ZodString; },$strip>;translations:ZodOptional<ZodRecord<ZodString,ZodRecord<..., ...>>>;views:ZodDefault<ZodArray<ZodObject<..., ...>>>; },$strip>>>;navigationPanels:ZodDefault<ZodArray<ZodObject<{description:ZodOptional<ZodUnion<readonly [..., ...]>>;icon:ZodOptional<ZodString>;id:ZodString;links:ZodArray<ZodObject<{description: ...;icon: ...;id: ...;keywords: ...;title: ...;url: ...; },$strict>>;title:ZodUnion<readonly [ZodString,ZodObject<..., ...>]>; },$strict>>>;packageLinks:ZodDefault<ZodArray<ZodObject<{description:ZodOptional<ZodUnion<readonly [..., ...]>>;id:ZodString;package:ZodObject<{allFiles:ZodDefault<...>;anyFiles:ZodDefault<...>; },$strict>;title:ZodUnion<readonly [ZodString,ZodObject<..., ...>]>;toolGroup:ZodOptional<ZodString>;urlTemplate:ZodString;value:ZodObject<{files:ZodArray<...>;key:ZodString; },$strict>; },$strict>>>;packageQuickActions:ZodDefault<ZodArray<ZodObject<{capabilities:ZodArray<ZodString>;id:ZodString;package:ZodObject<{allFiles:ZodDefault<...>;anyFiles:ZodDefault<...>; },$strict>; },$strict>>>;packageToolGroups:ZodDefault<ZodArray<ZodObject<{description:ZodOptional<ZodUnion<readonly [..., ...]>>;id:ZodString;package:ZodObject<{allFiles:ZodDefault<...>;anyFiles:ZodDefault<...>; },$strict>;title:ZodUnion<readonly [ZodString,ZodObject<..., ...>]>; },$strict>>>;projectTemplates:ZodDefault<ZodArray<ZodObject<{id:ZodString;path:ZodString; },$strip>>>;skills:ZodDefault<ZodArray<ZodPipe<ZodObject<{activation:ZodOptional<ZodType<..., ..., ...>>;id:ZodOptional<ZodString>;path:ZodString; },$strict>,ZodTransform<{activation?:SkillActivationCondition;id:string;path:string; }, {activation?:SkillActivationCondition;id?:string;path:string; }>>>>;workbenches:ZodDefault<ZodArray<ZodObject<{description:ZodOptional<ZodUnion<readonly [..., ...]>>;icon:ZodOptional<ZodString>;id:ZodString;order:ZodOptional<ZodNumber>;title:ZodUnion<readonly [ZodString,ZodObject<..., ...>]>;views:ZodArray<ZodDiscriminatedUnion<[..., ..., ...],"type">>; },$strict>>>; },$strip>;craftHub:ZodDefault<ZodObject<{minVersion:ZodOptional<ZodString>; },$strip>>;description:ZodOptional<ZodString>;displayName:ZodString;icon:ZodOptional<ZodUnion<readonly [ZodString,ZodString]>>;id:ZodString;includesPlugins:ZodDefault<ZodArray<ZodObject<{package:ZodString;version:ZodString; },$strip>>>;links:ZodOptional<ZodObject<{documentation:ZodOptional<ZodString>;feedback:ZodOptional<ZodString>;homepage:ZodOptional<ZodString>;repository:ZodOptional<ZodString>; },$strip>>;localizations:ZodOptional<ZodRecord<ZodString,ZodObject<{description:ZodOptional<ZodString>;displayName:ZodOptional<ZodString>;permissionReasons:ZodOptional<ZodRecord<ZodString,ZodString>>; },$strip>>>;maintainers:ZodOptional<ZodArray<ZodObject<{handle:ZodOptional<ZodString>;name:ZodOptional<ZodString>;url:ZodOptional<ZodString>; },$strip>>>;permissionReasons:ZodOptional<ZodRecord<ZodString,ZodString>>;permissions:ZodDefault<ZodArray<ZodEnum<{command-presets:"command-presets";commands:"commands";local-read:"local-read";local-write:"local-write";read-project-files:"read-project-files";read-user-settings:"read-user-settings";remote-read:"remote-read";remote-write:"remote-write"; }>>>;projectFiles:ZodDefault<ZodArray<ZodString>>;requiresPlugins:ZodDefault<ZodArray<ZodObject<{package:ZodString;version:ZodString; },$strip>>>;schemaVersion:ZodLiteral<1>;slug:ZodOptional<ZodString>; },$strip>
Defined in: packages/craft-hub/src/marketplace.ts:88
Validation schema for installed Craft Hub plugin manifests.