import { LearnWorldsBaseAction } from '../learnworlds-base.action.js';
import { ActionParam, ActionResultSimple, RunActionParams } from '@memberjunction/actions-base';
import { UserInfo } from '@memberjunction/core';
import { CreateUserParams, CreateUserResult } from '../interfaces/index.js';
/**
 * Action to create a new user in LearnWorlds
 */
export declare class CreateUserAction extends LearnWorldsBaseAction {
    /**
     * Typed public method for direct (non-framework) callers.
     * Throws on failure instead of returning ActionResultSimple.
     */
    CreateUser(params: CreateUserParams, contextUser: UserInfo): Promise<CreateUserResult>;
    /**
     * Framework entry point -- delegates to the typed public method.
     */
    protected InternalRunAction(params: RunActionParams): Promise<ActionResultSimple>;
    /**
     * Extract typed params from the generic ActionParam array
     */
    private extractCreateUserParams;
    /**
     * Map the raw LW create-user response to our typed details shape.
     */
    private buildUserDetails;
    /**
     * Enroll the newly created user in any requested courses.
     */
    private enrollInCourses;
    /**
     * Build the summary object from user details and enrollment results.
     */
    private buildSummary;
    /**
     * Define the parameters this action expects
     */
    get Params(): ActionParam[];
    /**
     * Metadata about this action
     */
    get Description(): string;
}
//# sourceMappingURL=create-user.action.d.ts.map