/**
 * Docker Credential Helpers
 *
 * Functions for checking and managing Claude Code credentials
 * in Docker volumes, host filesystem, and macOS keychain.
 * Also includes tmux server keychain access management.
 */
export declare const CLAUDE_CREDENTIALS_VOLUME = "claude-credentials";
/**
 * Check if the claude-credentials Docker volume exists.
 */
export declare function credentialsVolumeExists(): boolean;
/**
 * Check if valid Claude OAuth credentials exist in the Docker volume.
 * Returns true if OAuth credentials are stored (even if access token is expired,
 * since Claude Code handles refresh internally using stored refresh tokens).
 *
 * NOTE: This intentionally does NOT check for ANTHROPIC_API_KEY. If the user
 * has an API key but no OAuth credentials, we want to prompt them to set up
 * OAuth (which uses their Max subscription) rather than silently burning API credits.
 */
export declare function dockerCredentialsExist(): boolean;
/**
 * Get Docker credential info for display.
 * Returns expiration date and subscription type if available.
 */
export declare function getDockerCredentialInfo(): {
    expiresAt: Date;
    subscriptionType?: string;
} | null;
/**
 * Check if Claude Code authentication is available on the host system.
 * Returns true if any of:
 * 1. ANTHROPIC_API_KEY environment variable is set
 * 2. OAuth credentials exist in ~/.claude/.credentials.json (Claude Code 1.x)
 * 3. OAuth credentials exist in macOS keychain (Claude Code 2.x)
 */
export declare function hostCredentialsExist(): boolean;
/**
 * Ensure tmux server has keychain access for Claude Code OAuth.
 *
 * On macOS, tmux sessions can lose access to the keychain if the tmux server
 * was started in a context without keychain access. This function tests and
 * restarts the tmux server if needed.
 */
export declare function ensureTmuxServerHasKeychainAccess(): Promise<void>;
/**
 * Copy Claude Code credentials (~/.claude.json) into the agent directory.
 * This makes the subscription credentials available inside the devcontainer.
 */
export declare function copyClaudeCredentials(agentDir: string): void;
