ENGLISH·COURSE API
    Preparing search index...
    VideoLessonRow: Omit<z.input<typeof VideoLesson>, "source" | "poster"> & {
        source: string;
        poster?: string;
    }

    A VideoLesson as it is stored in the generated seed: identical to the entity's input shape except that source and poster hold opaque content KEYS (course/module/lesson/video.mp4) rather than URLs.

    The distinction is not visible in the type system — both are string — so it is enforced by construction: only the generator writes rows, and only this module turns one into an entity.

    Type Declaration

    • source: string

      Content key, not a URL.

    • Optionalposter?: string

      Content key, not a URL. Absent when the lesson folder had no image.