@memberjunction/actions-bizapps-lms
Version:
LMS system integration actions for MemberJunction
59 lines • 1.96 kB
TypeScript
import { LearnWorldsBaseAction } from '../learnworlds-base.action.js';
import { ActionParam, ActionResultSimple, RunActionParams } from '@memberjunction/actions-base';
import { UserInfo } from '@memberjunction/core';
import { GetUserDetailsParams, GetUserDetailsResult } from '../interfaces/index.js';
/**
* Action to retrieve detailed information about a specific LearnWorlds user
*/
export declare class GetLearnWorldsUserDetailsAction extends LearnWorldsBaseAction {
/**
* Description of the action
*/
get Description(): string;
/**
* Typed public method for direct (non-framework) callers.
* Throws on failure.
*/
GetUserDetails(params: GetUserDetailsParams, contextUser: UserInfo): Promise<GetUserDetailsResult>;
/**
* Framework entry point -- delegates to the typed public method.
*/
protected InternalRunAction(params: RunActionParams): Promise<ActionResultSimple>;
/**
* Extract typed params from the generic ActionParam array
*/
private extractGetUserDetailsParams;
/**
* Map LearnWorlds user data to detailed interface
*/
private mapUserDetails;
/**
* Fetch and attach enrollment data to userDetails.
*/
private loadEnrollments;
/**
* Fetch and merge additional stats into userDetails.
*/
private loadStats;
/**
* Map raw enrollment data to our typed UserDetailEnrollment
*/
private mapEnrollment;
/**
* Calculate enrollment statistics from the enrollment list (pure — no mutation).
*/
private calculateEnrollmentStats;
/**
* Extract statistics from the stats response (pure — no mutation).
*/
private extractStatistics;
/**
* Create a summary of user information
*/
private createUserSummary;
/**
* Define the parameters for this action
*/
get Params(): ActionParam[];
}
//# sourceMappingURL=get-user-details.action.d.ts.map