import { LearnWorldsBaseAction } from '../learnworlds-base.action.js';
import { ActionParam, ActionResultSimple, RunActionParams } from '@memberjunction/actions-base';
import { UserInfo } from '@memberjunction/core';
import { GetUsersParams, GetUsersResult } from '../interfaces/index.js';
/**
 * Action to retrieve users from LearnWorlds LMS
 */
export declare class GetLearnWorldsUsersAction extends LearnWorldsBaseAction {
    /**
     * Description of the action
     */
    get Description(): string;
    /**
     * Typed public method for direct (non-framework) callers.
     * Throws on failure.
     */
    GetUsers(params: GetUsersParams, contextUser: UserInfo): Promise<GetUsersResult>;
    /**
     * Framework entry point -- delegates to the typed public method.
     */
    protected InternalRunAction(params: RunActionParams): Promise<ActionResultSimple>;
    /**
     * Extract typed params from the generic ActionParam array
     */
    private extractGetUsersParams;
    /**
     * Map a raw LearnWorlds API user to our typed interface
     */
    private mapLearnWorldsUser;
    /**
     * Calculate summary statistics from the mapped user list
     */
    private calculateUserSummary;
    private calculateRoleCounts;
    private findMostActiveUsers;
    private findRecentSignups;
    /**
     * Define the parameters for this action
     */
    get Params(): ActionParam[];
}
//# sourceMappingURL=get-users.action.d.ts.map