/** * API Client for Surna eLearning Creator * Provides typed interface to the Surna REST API */ export interface SurnaConfig { apiUrl: string; apiKey?: string; } export declare class SurnaApiClient { private baseUrl; private apiKey?; constructor(config: SurnaConfig); private request; getCourses(): Promise; getCourse(id: string): Promise; createCourse(data: { title: string; description?: string; bannerAssetId?: string; label?: string; lessonLabel?: string; accentColor?: string; defaultFont?: string; defaultLanguage?: string; numberLessons?: boolean; showLessonTitles?: boolean; }): Promise; updateCourse(id: string, data: any): Promise; deleteCourse(id: string): Promise; duplicateCourse(id: string): Promise; reorderLessons(courseId: string, lessonIds: string[]): Promise; exportCourse(id: string): Promise; importCourse(data: any): Promise; getLanguageVersions(courseId: string): Promise; createLanguageVersion(courseId: string, languageCode: string, metadata?: { title?: string; description?: string; courseLabel?: string; lessonLabel?: string; }): Promise; updateLanguageVersionMetadata(courseId: string, languageCode: string, title?: string, description?: string, courseLabel?: string, lessonLabel?: string): Promise; deleteLanguageVersion(courseId: string, languageCode: string): Promise; getLessons(courseId: string, languageCode?: string): Promise; getLesson(id: string): Promise; createLesson(courseId: string, data: { title: string; languageCode?: string; }): Promise; updateLesson(id: string, data: any): Promise; deleteLesson(id: string): Promise; duplicateLesson(id: string, targetCourseId?: string): Promise; reorderBlocks(lessonId: string, blockIds: string[]): Promise; getBlocks(lessonId: string): Promise; getBlock(id: string): Promise; createBlock(lessonId: string, data: any): Promise; updateBlock(id: string, data: any): Promise; deleteBlock(id: string): Promise; duplicateBlock(id: string, targetLessonId?: string): Promise; moveBlockUp(id: string): Promise; moveBlockDown(id: string): Promise; batchCreateBlocks(lessonId: string, blocks: any[]): Promise; batchUpdateBlocks(updates: Array<{ blockId: string; updates: any; }>): Promise; batchCreateLessons(courseId: string, lessons: Array<{ title: string; languageCode?: string; }>): Promise; getAssets(): Promise; getAsset(id: string): Promise; deleteAsset(id: string): Promise; updateAssetMetadata(id: string, data: { altText: string; }): Promise; createAssetFromUrl(url: string, altText: string): Promise; generateAiImage(prompt: string): Promise; getSavedVoices(): Promise<{ voices: any[]; }>; generateAiNarration(text: string, voiceId?: string): Promise; replaceAssetFile(assetId: string, fileBuffer: Buffer, filename: string, mimeType?: string): Promise; replaceAssetFromUrl(assetId: string, fileUrl: string): Promise; } //# sourceMappingURL=api-client.d.ts.map