import AdaptationProjectGeneratorBase from "./AdaptationProjectGeneratorBase";
import Generator = require("yeoman-generator");
import { Prompts } from "@sap-devx/yeoman-ui-types";
import { GeneratorTypes, DataSource, Project, Project as ProjectData } from "@sap/adp-common";
import { ODataTargetSource } from "@sap/adp-abap";
declare class SubGeneratorWithAuthBase extends AdaptationProjectGeneratorBase {
    setPromptsCallback: (fn: any) => void;
    prompts: Prompts;
    protected readonly projectData: ProjectData;
    protected readonly isCFEnv: boolean;
    protected readonly projectPath: string;
    protected readonly generatorType: GeneratorTypes;
    protected manifest: any;
    protected oDataTargetSources: ODataTargetSource[];
    protected oDataSources: DataSource;
    protected isInternalUsage: boolean;
    protected requiresAuthentication: boolean;
    private readonly vscode;
    private readonly fdcService;
    private isLoginSuccessfull;
    constructor(args: string | string[], opts: any, type: GeneratorTypes);
    protected onInit(): Promise<void>;
    protected getManifest(): Promise<void>;
    private _setPrompts;
    private _errorPage;
    private getSubGeneratorsWithAuthenticationPages;
    private getCredentialsPrompts;
    protected getABAPCredentialsPrompts(projectData: Project): Generator.Question;
    private getCFExternalLoginPrompts;
    private getExternalLoginWrongSourceMessagesPrompts;
    private getExternalLoginUnloggedMessagePrompts;
    private getMessagePrompt;
    private getUsernamePrompt;
    private getABAPPasswordPrompt;
}
export = SubGeneratorWithAuthBase;
