import { IActivityHandler, IActivityContext } from "../../IActivityHandler";
export interface GetPortalUserInputs {
    loadGroups: boolean;
}
/** Defines outputs from the GetPortalUser activity. */
export interface GetPortalUserOutputs {
    /** The registered user of the Portal. */
    user: __esri.PortalUser;
    /** The Portal Groups that the user belongs to. This will be empty if the Load Groups input is set to false. */
    groups: __esri.PortalGroup[];
}
export declare class GetPortalUser implements IActivityHandler {
    static action: string;
    static suite: string;
    execute(inputs: GetPortalUserInputs, context: IActivityContext): Promise<GetPortalUserOutputs>;
    /**
     * Get the current portal user if available.
     * @param portalUrl The Portal Url. Not needed if working with esri's 4x javascript api.
     */
    protected getPortalUser(portalUrl?: string): Promise<__esri.PortalUser>;
    /**
     * Gets the portal Url.
     * @param context The IActivity Context.
     */
    protected getPortalUrl(context: IActivityContext): string | undefined;
    /**
     * Gets the groups that the PortalUser belongs to.
     * @param portalUser The user whose groups are to be discovered.
     */
    private getPortalGroups;
}
