@memberjunction/actions-bizapps-lms
Version:
LMS system integration actions for MemberJunction
83 lines • 2.59 kB
TypeScript
import { LearnWorldsBaseAction } from '../learnworlds-base.action.js';
import { ActionParam, ActionResultSimple, RunActionParams } from '@memberjunction/actions-base';
import { UserInfo } from '@memberjunction/core';
import { GetUserProgressParams, GetUserProgressResult } from '../interfaces/index.js';
/**
* Action to retrieve detailed progress information for a LearnWorlds user
*/
export declare class GetLearnWorldsUserProgressAction extends LearnWorldsBaseAction {
/**
* Description of the action
*/
get Description(): string;
/**
* Typed public method for direct (non-framework) callers.
* Sets company context, fetches progress, and returns a strongly-typed result.
* Throws on error.
*/
GetUserProgress(params: GetUserProgressParams, contextUser: UserInfo): Promise<GetUserProgressResult>;
/**
* Framework entry-point – thin wrapper around the typed public method.
*/
protected InternalRunAction(params: RunActionParams): Promise<ActionResultSimple>;
/**
* Extract typed params from framework ActionParam[]
*/
private extractGetUserProgressParams;
/**
* Get progress for a specific course
*/
private getCourseProgress;
/**
* Get progress for all user courses
*/
private getAllCoursesProgress;
/**
* Aggregate individual course progress into overall user learning progress
*/
private aggregateCourseProgress;
/**
* Map course progress data from API response
*/
private mapCourseProgress;
/**
* Map unit progress data from API response
*/
private mapUnitProgress;
/**
* Map lesson progress data from API response
*/
private mapLessonProgress;
/**
* Determine course status from data
*/
private determineCourseStatus;
/**
* Determine unit status
*/
private determineUnitStatus;
/**
* Map lesson type string to typed union
*/
private mapLessonType;
/**
* Calculate estimated time to complete
*/
private calculateEstimatedTimeToComplete;
/**
* Calculate learning analytics and return the computed values (no mutation).
*/
private calculateLearningAnalytics;
/**
* Create progress summary
*/
private createProgressSummary;
private buildProgressOverview;
private buildPerformanceMetrics;
private buildAchievementsSummary;
/**
* Define the parameters for this action
*/
get Params(): ActionParam[];
}
//# sourceMappingURL=get-user-progress.action.d.ts.map