import Command, { IAccount, IAccounts } from '../../base.js';
import { DebugLogger } from '../../utils/output.js';
export default class AccountAdd extends Command {
    static description: string;
    static flags: {
        email: import("@oclif/core/lib/interfaces/parser.js").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces/parser.js").CustomOptions>;
        password: import("@oclif/core/lib/interfaces/parser.js").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces/parser.js").CustomOptions>;
        account: import("@oclif/core/lib/interfaces/parser.js").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces/parser.js").CustomOptions>;
        'from-login': import("@oclif/core/lib/interfaces/parser.js").BooleanFlag<boolean>;
        help: import("@oclif/core/lib/interfaces/parser.js").BooleanFlag<void>;
        dev: import("@oclif/core/lib/interfaces/parser.js").BooleanFlag<boolean>;
        debug: import("@oclif/core/lib/interfaces/parser.js").BooleanFlag<boolean>;
        'api-token': import("@oclif/core/lib/interfaces/parser.js").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces/parser.js").CustomOptions>;
        'team-id': import("@oclif/core/lib/interfaces/parser.js").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces/parser.js").CustomOptions>;
    };
    run(): Promise<void>;
    checkIfExists(body: {
        email: string;
    }, debug: DebugLogger): Promise<{
        status: string;
        exists: boolean;
        socialCompleted: boolean;
        twoFAEnabled: boolean;
    }>;
    login(body: {
        email: string;
        password: string;
        twoFAType?: string;
        totp?: string;
        recoveryCode?: string;
    }): Promise<{
        email: string;
        api_token: string;
        fullname: string;
        current: boolean;
        avatar: string;
    }>;
    addNewAccountToConfig(currentAccounts: IAccounts, newAccount: {
        name: string;
        email: string;
        api_token: string;
        fullname: string;
        current: boolean;
        avatar: string;
    }): void;
    promptName(email: string): Promise<string>;
    promptEmail(): Promise<string>;
    promptPassword(): Promise<string>;
    getMe(flags: any): Promise<IAccount>;
    promptTwoFA(): Promise<string>;
}
