import { type LanguageId } from '../data/languages/languages.zod'; import { TranslationsApp } from '../data/translationsApp/translationsApp.zod'; import type { AppTranslations, LanguageInfo, MeetTranslations } from '../types/languages'; import { DbsInfo, EnrichedSection, Lesson, LessonInfo, SetInfo, VideoInfo, type Section } from '../types/sets'; export declare function getSetInfo({ setId, languageId, setIds, t, }: { setId: string; languageId: LanguageId; t: MeetTranslations & TranslationsApp[string]; setIds: string[]; }): SetInfo | undefined; /** Assembles all of the audio sections for a lesson. */ export declare function assembleLessonSections({ languageInfo, setInfo, lesson, t, useSpokenQuestions, }: { languageInfo: LanguageInfo; setInfo: SetInfo; lesson: Lesson; t: MeetTranslations & AppTranslations; useSpokenQuestions: boolean | undefined; }): { sections: Section[]; fellowshipDuration: number; applicationDuration: number; }; export declare function getLessonInfo({ lessonId, languageInfo, setInfo, t, useSpokenQuestions, }: { lessonId: Lesson['lessonId'] | undefined; languageInfo: LanguageInfo; setInfo?: SetInfo; t: MeetTranslations & TranslationsApp[string]; useSpokenQuestions?: boolean; }): LessonInfo | undefined; /** Determines whether a lesson should be visible in Waha. */ export declare function shouldShowLesson(lessonInfo: LessonInfo | undefined): boolean; /** * Validates that the computed lesson duration (from section lengths) matches * the actual audio file duration. Sections must be enriched (all have `length`) * via {@link enrichSections} before calling this. * * @returns The difference between the computed length and the total duration. */ export declare function getExpectedLessonDuration({ enrichedSections, lessonInfo, }: { enrichedSections: EnrichedSection[]; lessonInfo: DbsInfo | VideoInfo; }): number;