import { ICommandArguments, ICommandOptionDefinition, IProfile, Session } from "@zowe/imperative";
import { OptionUtils } from "../../api";
/**
 * Utility Methods for Endevor Session
 */
export declare class EndevorSession extends OptionUtils {
    static readonly PROFILE_TYPE = "endevor";
    static readonly OPTION_PREFIX = "endevor-";
    static readonly ENDEVOR_SESSION_OPTION_GROUP = "Endevor options (alternatively use an 'endevor' profile)";
    static readonly DEFAULT_BASE_PATH = "EndevorService/rest";
    /**
     * Option used in profile creation and commands for protocol for Endevor
     */
    static readonly ENDEVOR_OPTION_PROTOCOL: ICommandOptionDefinition;
    /**
     * Option used in profile creation and commands for hostname for Endevor
     */
    static readonly ENDEVOR_OPTION_HOST: ICommandOptionDefinition;
    /**
     * Option used in profile creation and commands for port for Endevor
     */
    static readonly ENDEVOR_OPTION_PORT: ICommandOptionDefinition;
    /**
     * Option used in profile creation and commands for username / ID  for Endevor
     */
    static readonly ENDEVOR_OPTION_USER: ICommandOptionDefinition;
    /**
     * Option used in profile creation and commands for password/passphrase for Endevor
     */
    static readonly ENDEVOR_OPTION_PASSWORD: ICommandOptionDefinition;
    /**
     * Option used in profile creation and commands for rejectUnauthorized setting for connecting to Endevor
     */
    static readonly ENDEVOR_OPTION_REJECT_UNAUTHORIZED: ICommandOptionDefinition;
    /**
     * Option used in profile creation and commands for base path for Endevor
     */
    static readonly ENDEVOR_OPTION_BASE_PATH: ICommandOptionDefinition;
    /**
     * Options related to connecting to Endevor
     * These options can be filled in if the user creates a profile
     */
    static ENDEVOR_CONNECTION_OPTIONS: ICommandOptionDefinition[];
    /**
     * Creates the Endevor connection session if and only if all the required options are provided
     *
     * @param args command arguments
     * @param profile Endevor profile
     * @param baseProfile Base profile
     */
    createSession(args: ICommandArguments, profile?: IProfile, baseProfile?: IProfile): Session;
    protected getOptionPrefix(): string;
}
