/**
 * Shared types and utilities for codex-auth command handlers.
 */
import type { CodexProfileRegistry } from '../codex-profile-registry';
import { getCodexProfileNameError, isValidCodexProfileName } from '../types';
export { formatRelativeTime } from '../../utils/time';
export interface CodexCommandContext {
    registry: CodexProfileRegistry;
    version: string;
}
export interface CodexAuthArgs {
    profileName?: string;
    yes?: boolean;
    json?: boolean;
    force?: boolean;
    shell?: string;
    unknownFlags?: string[];
    seenOptions?: string[];
    extraPositionals?: string[];
}
export interface CodexProfileOutput {
    name: string;
    is_default: boolean;
    is_active: boolean;
    created: string;
    last_used: string | null;
    email: string | null;
    plan: string | null;
    account_id: string | null;
    profile_dir: string;
    auth_json_exists: boolean;
    auth_json_mtime: string | null;
    config_toml_link_target: string | null;
}
export { isValidCodexProfileName };
export declare const getProfileNameError: typeof getCodexProfileNameError;
export declare function parseArgs(args: string[]): CodexAuthArgs;
export interface AllowedCodexAuthOptions {
    yes?: boolean;
    json?: boolean;
    force?: boolean;
    shell?: boolean;
}
export declare function rejectUnsupportedOptions(parsed: CodexAuthArgs, usage: string, allowed?: AllowedCodexAuthOptions): void;
//# sourceMappingURL=types.d.ts.map