import type { Command } from "commander";
import { CliApiClient } from "../apiClient.js";
import { type PendingAuthorization } from "../utilities/configFiles.js";
import type { LoginResult } from "../utilities/session.js";
export declare function configureLoginCommand(program: Command): Command;
export type LoginOptions = {
    defaultApiUrl?: string;
    embedded?: boolean;
    profile?: string;
    silent?: boolean;
    browser?: boolean;
    email?: string;
    name?: string;
    cancelPending?: boolean;
    wait?: boolean;
};
export declare const PENDING_AUTHORIZATION_ERROR = "A login is pending. Run `trigger.dev login` to complete it, or `trigger.dev login --cancel-pending` to keep using the current account.";
export declare function resolveLoginOptions(options?: LoginOptions): {
    profile?: string;
    browser?: boolean;
    email?: string;
    name?: string;
    cancelPending?: boolean;
    embedded: boolean;
    silent: boolean;
    wait: boolean;
    defaultApiUrl: string;
};
export declare function login(options?: LoginOptions): Promise<LoginResult>;
export declare function addEmailToAuthorizationUrl(url: string, email?: string): string;
export declare function isPendingAuthorizationValid(pendingAuthorization: PendingAuthorization | undefined, apiUrl: string, now?: number): pendingAuthorization is PendingAuthorization;
export declare function getPersonalAccessToken(apiClient: CliApiClient, authorizationCode: string): Promise<{
    token: string;
    obfuscatedToken: string;
}>;
