Variable mjAppManifestSchemaConst
mjAppManifestSchema: ZodObject<
{
$schema: ZodOptional<ZodString>;
categories: ZodOptional<ZodArray<ZodString, "many">>;
code: ZodOptional<
ZodObject<
{
sourceDirectory: ZodOptional<ZodString>;
visibility: ZodDefault<ZodOptional<ZodEnum<["public", "private"]>>>;
},
"strip",
ZodTypeAny,
{ sourceDirectory?: string; visibility?: "public"
| "private" },
{ sourceDirectory?: string; visibility?: "public" | "private" },
>,
>;
color: ZodOptional<ZodString>;
configuration: ZodOptional<
ZodObject<
{ schema: ZodOptional<ZodRecord<ZodString, ZodUnknown>> },
"strip",
ZodTypeAny,
{ schema?: Record<string, unknown> },
{ schema?: Record<string, unknown> },
>,
>;
dependencies: ZodOptional<
ZodUnion<
[
ZodEffects<
ZodArray<
ZodObject<
{
name: ZodString;
repository: ZodString;
subpath: ZodOptional<ZodString>;
versionRange: ZodString;
},
"strip",
ZodTypeAny,
{
name?: string;
repository?: string;
subpath?: string;
versionRange?: string;
},
{
name?: string;
repository?: string;
subpath?: string;
versionRange?: string;
},
>,
"many",
>,
{
[k: string]: {
repository: string;
subpath?: string;
version: string;
};
},
{
name?: string;
repository?: string;
subpath?: string;
versionRange?: string;
}[],
>,
ZodRecord<
ZodString,
ZodUnion<
[
ZodString,
ZodObject<
{
repository: ZodString;
subpath: ZodOptional<(...)>;
version: ZodString;
},
"strip",
ZodTypeAny,
{ repository?: string; subpath?: string; version?: string },
{ repository?: string; subpath?: string; version?: string },
>,
],
>,
>,
],
>,
>;
description: ZodString;
displayName: ZodString;
hooks: ZodOptional<
ZodObject<
{
postInstall: ZodOptional<ZodString>;
postInstallModule: ZodOptional<ZodString>;
postUpgrade: ZodOptional<ZodString>;
postUpgradeModule: ZodOptional<ZodString>;
preRemove: ZodOptional<ZodString>;
preRemoveModule: ZodOptional<ZodString>;
},
"strip",
ZodTypeAny,
{
postInstall?: string;
postInstallModule?: string;
postUpgrade?: string;
postUpgradeModule?: string;
preRemove?: string;
preRemoveModule?: string;
},
{
postInstall?: string;
postInstallModule?: string;
postUpgrade?: string;
postUpgradeModule?: string;
preRemove?: string;
preRemoveModule?: string;
},
>,
>;
icon: ZodOptional<ZodString>;
license: ZodOptional<ZodString>;
manifestVersion: ZodLiteral<1>;
metadata: ZodOptional<
ZodObject<
{ directory: ZodDefault<ZodOptional<ZodString>> },
"strip",
ZodTypeAny,
{ directory?: string },
{ directory?: string },
>,
>;
migrations: ZodOptional<
ZodObject<
{
directory: ZodDefault<ZodOptional<ZodString>>;
engine: ZodDefault<ZodOptional<ZodEnum<["flyway", "skyway"]>>>;
teardownDirectory: ZodOptional<ZodString>;
},
"strip",
ZodTypeAny,
{
directory?: string;
engine?: "flyway"
| "skyway";
teardownDirectory?: string;
},
{
directory?: string;
engine?: "flyway"
| "skyway";
teardownDirectory?: string;
},
>,
>;
mjVersionRange: ZodString;
name: ZodString;
packages: ZodOptional<
ZodObject<
{
client: ZodOptional<
ZodArray<
ZodEffects<
ZodObject<
{
name: ZodString;
role: ZodEnum<(...)>;
startupExport: ZodOptional<(...)>;
},
"strip",
ZodTypeAny,
{
name?: string;
role?: (...)
| (...)
| (...)
| (...)
| (...)
| (...)
| (...);
startupExport?: string;
},
{
name?: string;
role?: (...)
| (...)
| (...)
| (...)
| (...)
| (...)
| (...);
startupExport?: string;
},
>,
{
name?: string;
role?: | "bootstrap"
| "actions"
| "engine"
| "provider"
| "module"
| "components"
| "library";
startupExport?: string;
},
{
name?: string;
role?: | "bootstrap"
| "actions"
| "engine"
| "provider"
| "module"
| "components"
| "library";
startupExport?: string;
},
>,
"many",
>,
>;
prefix: ZodOptional<ZodString>;
registry: ZodOptional<ZodString>;
server: ZodOptional<
ZodArray<
ZodEffects<
ZodObject<
{
name: ZodString;
role: ZodEnum<(...)>;
startupExport: ZodOptional<(...)>;
},
"strip",
ZodTypeAny,
{
name?: string;
role?: (...)
| (...)
| (...)
| (...)
| (...)
| (...)
| (...);
startupExport?: string;
},
{
name?: string;
role?: (...)
| (...)
| (...)
| (...)
| (...)
| (...)
| (...);
startupExport?: string;
},
>,
{
name?: string;
role?: | "bootstrap"
| "actions"
| "engine"
| "provider"
| "module"
| "components"
| "library";
startupExport?: string;
},
{
name?: string;
role?: | "bootstrap"
| "actions"
| "engine"
| "provider"
| "module"
| "components"
| "library";
startupExport?: string;
},
>,
"many",
>,
>;
shared: ZodOptional<
ZodArray<
ZodEffects<
ZodObject<
{
name: ZodString;
role: ZodEnum<(...)>;
startupExport: ZodOptional<(...)>;
},
"strip",
ZodTypeAny,
{
name?: string;
role?: (...)
| (...)
| (...)
| (...)
| (...)
| (...)
| (...);
startupExport?: string;
},
{
name?: string;
role?: (...)
| (...)
| (...)
| (...)
| (...)
| (...)
| (...);
startupExport?: string;
},
>,
{
name?: string;
role?: | "bootstrap"
| "actions"
| "engine"
| "provider"
| "module"
| "components"
| "library";
startupExport?: string;
},
{
name?: string;
role?: | "bootstrap"
| "actions"
| "engine"
| "provider"
| "module"
| "components"
| "library";
startupExport?: string;
},
>,
"many",
>,
>;
},
"strip",
ZodTypeAny,
{
client?: {
name?: string;
role?: | "bootstrap"
| "actions"
| "engine"
| "provider"
| "module"
| "components"
| "library";
startupExport?: string;
}[];
prefix?: string;
registry?: string;
server?: {
name?: string;
role?: | "bootstrap"
| "actions"
| "engine"
| "provider"
| "module"
| "components"
| "library";
startupExport?: string;
}[];
shared?: {
name?: string;
role?: | "bootstrap"
| "actions"
| "engine"
| "provider"
| "module"
| "components"
| "library";
startupExport?: string;
}[];
},
{
client?: {
name?: string;
role?: | "bootstrap"
| "actions"
| "engine"
| "provider"
| "module"
| "components"
| "library";
startupExport?: string;
}[];
prefix?: string;
registry?: string;
server?: {
name?: string;
role?: | "bootstrap"
| "actions"
| "engine"
| "provider"
| "module"
| "components"
| "library";
startupExport?: string;
}[];
shared?: {
name?: string;
role?: | "bootstrap"
| "actions"
| "engine"
| "provider"
| "module"
| "components"
| "library";
startupExport?: string;
}[];
},
>,
>;
publisher: ZodObject<
{
email: ZodOptional<ZodString>;
name: ZodString;
url: ZodOptional<ZodString>;
},
"strip",
ZodTypeAny,
{ email?: string; name?: string; url?: string },
{ email?: string; name?: string; url?: string },
>;
repository: ZodString;
schema: ZodOptional<
ZodObject<
{
createIfNotExists: ZodDefault<ZodOptional<ZodBoolean>>;
entityPackage: ZodOptional<ZodString>;
name: ZodString;
},
"strip",
ZodTypeAny,
{ createIfNotExists?: boolean; entityPackage?: string; name?: string },
{ createIfNotExists?: boolean; entityPackage?: string; name?: string },
>,
>;
tags: ZodOptional<ZodArray<ZodString, "many">>;
version: ZodString;
},
"strip",
ZodTypeAny,
{
$schema?: string;
categories?: string[];
code?: { sourceDirectory?: string; visibility?: "public"
| "private" };
color?: string;
configuration?: { schema?: Record<string, unknown> };
dependencies?:
| {
[k: string]: {
repository: string;
subpath?: string;
version: string;
};
}
| Record<
string,
string
| { repository?: string; subpath?: string; version?: string },
>;
description?: string;
displayName?: string;
hooks?: {
postInstall?: string;
postInstallModule?: string;
postUpgrade?: string;
postUpgradeModule?: string;
preRemove?: string;
preRemoveModule?: string;
};
icon?: string;
license?: string;
manifestVersion?: 1;
metadata?: { directory?: string };
migrations?: {
directory?: string;
engine?: "flyway" | "skyway";
teardownDirectory?: string;
};
mjVersionRange?: string;
name?: string;
packages?: {
client?: {
name?: string;
role?: | "bootstrap"
| "actions"
| "engine"
| "provider"
| "module"
| "components"
| "library";
startupExport?: string;
}[];
prefix?: string;
registry?: string;
server?: {
name?: string;
role?: | "bootstrap"
| "actions"
| "engine"
| "provider"
| "module"
| "components"
| "library";
startupExport?: string;
}[];
shared?: {
name?: string;
role?: | "bootstrap"
| "actions"
| "engine"
| "provider"
| "module"
| "components"
| "library";
startupExport?: string;
}[];
};
publisher?: { email?: string; name?: string; url?: string };
repository?: string;
schema?: {
createIfNotExists?: boolean;
entityPackage?: string;
name?: string;
};
tags?: string[];
version?: string;
},
{
$schema?: string;
categories?: string[];
code?: { sourceDirectory?: string; visibility?: "public"
| "private" };
color?: string;
configuration?: { schema?: Record<string, unknown> };
dependencies?:
| {
name?: string;
repository?: string;
subpath?: string;
versionRange?: string;
}[]
| Record<
string,
string
| { repository?: string; subpath?: string; version?: string },
>;
description?: string;
displayName?: string;
hooks?: {
postInstall?: string;
postInstallModule?: string;
postUpgrade?: string;
postUpgradeModule?: string;
preRemove?: string;
preRemoveModule?: string;
};
icon?: string;
license?: string;
manifestVersion?: 1;
metadata?: { directory?: string };
migrations?: {
directory?: string;
engine?: "flyway" | "skyway";
teardownDirectory?: string;
};
mjVersionRange?: string;
name?: string;
packages?: {
client?: {
name?: string;
role?: | "bootstrap"
| "actions"
| "engine"
| "provider"
| "module"
| "components"
| "library";
startupExport?: string;
}[];
prefix?: string;
registry?: string;
server?: {
name?: string;
role?: | "bootstrap"
| "actions"
| "engine"
| "provider"
| "module"
| "components"
| "library";
startupExport?: string;
}[];
shared?: {
name?: string;
role?: | "bootstrap"
| "actions"
| "engine"
| "provider"
| "module"
| "components"
| "library";
startupExport?: string;
}[];
};
publisher?: { email?: string; name?: string; url?: string };
repository?: string;
schema?: {
createIfNotExists?: boolean;
entityPackage?: string;
name?: string;
};
tags?: string[];
version?: string;
},
> = ...
Complete Zod schema for the mj-app.json manifest. All validation rules match the MJ Open App specification.