Variable
CourseManifestConst
CourseManifest: ZodObject<
{
id: $ZodBranded<ZodUUID, "CourseId", "out">;
slug: $ZodBranded<ZodString, "Slug", "out">;
title: ZodString;
description: ZodString;
language: ZodString;
sequence: ZodNumber;
draft: ZodDefault<ZodBoolean>;
track: ZodDefault<ZodEnum<{ level: "level"; reference: "reference" }>>;
outcomes: ZodOptional<ZodArray<ZodString>>;
audience: ZodOptional<ZodString>;
highlights: ZodOptional<ZodArray<ZodString>>;
sounds: ZodOptional<
ZodObject<
{ vowels: ZodArray<ZodString>; consonants: ZodArray<ZodString> },
$strip,
>,
>;
translations: ZodOptional<
ZodRecord<
ZodString,
ZodObject<
{
description: ZodOptional<ZodString>;
outcomes: ZodOptional<ZodArray<ZodString>>;
audience: ZodOptional<ZodString>;
highlights: ZodOptional<ZodArray<ZodString>>;
},
$strip,
>,
>,
>;
modules: ZodArray<
ZodObject<
{
id: $ZodBranded<ZodUUID, "ModuleId", "out">;
slug: $ZodBranded<ZodString, "Slug", "out">;
title: ZodString;
sequence: ZodNumber;
lessons: ZodArray<
ZodDiscriminatedUnion<
[
ZodObject<
{
id: $ZodBranded<(...), (...), (...)>;
slug: $ZodBranded<(...), (...), (...)>;
sequence: ZodNumber;
title: ZodString;
resources: ZodDefault<(...)>;
kind: ZodLiteral<(...)>;
description: ZodString;
source: ZodString;
durationSeconds: ZodNumber;
poster: ZodOptional<(...)>;
notesKey: ZodOptional<(...)>;
uploadDate: ZodOptional<(...)>;
},
$strip,
>,
ZodObject<
{
id: $ZodBranded<(...), (...), (...)>;
slug: $ZodBranded<(...), (...), (...)>;
sequence: ZodNumber;
title: ZodString;
resources: ZodDefault<(...)>;
kind: ZodLiteral<(...)>;
body: ZodString;
},
$strip,
>,
],
"kind",
>,
>;
},
$strip,
>,
>;
},
$strip,
> = ...
One course, declared in full:
src/content/<course-slug>.json.