import type { Application, BalenaSDK, Organization, PineFilter, PineTypedResult } from 'balena-sdk';
export declare function authenticate(options: object): Promise<void>;
export declare function checkLoggedIn(): Promise<void>;
export declare const checkLoggedInIf: (doCheck: boolean) => Promise<void>;
export declare const checkNotUsingOfflineMode: () => void;
export declare function askLoginType(): Promise<"token" | "web" | "credentials" | "register">;
export declare function selectDeviceType(): Promise<string>;
export declare function confirm(yesOption: boolean, message: string, yesMessage?: string, defaultValue?: boolean): Promise<void>;
declare const selectApplicationPineOptions: {
    $select: ("slug" | "id" | "app_name")[];
    $expand: {
        is_for__device_type: {
            $select: "slug";
        };
    };
};
type SelectApplicationResult = PineTypedResult<Application, typeof selectApplicationPineOptions>;
export declare function selectApplication(filter?: PineFilter<Application> | ((app: SelectApplicationResult) => boolean), errorOnEmptySelection?: boolean): Promise<Omit<import("balena-sdk/typings/pinejs-client-core").SelectResultObject<Application, "slug" | "id" | "app_name">, "is_for__device_type"> & import("balena-sdk/typings/pinejs-client-core").ExpandResourceExpandObject<Application, {
    is_for__device_type: {
        $select: "slug";
    };
}>>;
export declare function selectOrganization(organizations?: Array<Pick<Organization, 'handle' | 'name'>>): Promise<string>;
export declare function getAndSelectOrganization(): Promise<string>;
export declare function getOnlineTargetDeviceUuid(sdk: BalenaSDK, fleetOrDevice: string): Promise<string>;
export declare function selectFromList<T>(message: string, choices: Array<T & {
    name: string;
}>): Promise<T>;
export {};
