/**
 * Package manager type detected from environment.
 */
export type PackageManagerType = 'npm' | 'pnpm' | 'yarn' | 'bun' | null;
/**
 * Detect which package manager is currently running based on environment variables.
 * Checks npm_config_user_agent which all package managers set.
 *
 * Detection priority:
 * 1. npm_config_user_agent (most reliable, set by all package managers)
 * 2. Binary path analysis (fallback for non-standard environments)
 *
 * @returns The detected package manager or null if unable to determine
 *
 * @example
 * ```typescript
 * // During: npm install
 * detectPackageManager() // 'npm'
 *
 * // During: pnpm install
 * detectPackageManager() // 'pnpm'
 *
 * // During: yarn install
 * detectPackageManager() // 'yarn'
 *
 * // Outside package manager context
 * detectPackageManager() // null
 * ```
 */
export declare function detectPackageManager(): PackageManagerType;
/**
 * Get the package manager name and version from user agent.
 *
 * @returns Object with name and version, or null if not available
 * @example
 * ```typescript
 * getPackageManagerInfo()
 * // { name: 'pnpm', version: '8.15.1' }
 * ```
 */
export declare function getPackageManagerInfo(): {
    name: string;
    version: string;
} | null;
/**
 * Get the package manager user agent from environment.
 * Package managers set npm_config_user_agent with format: "npm/8.19.2 node/v18.12.0 darwin arm64"
 *
 * @returns The user agent string or undefined
 * @example
 * ```typescript
 * getPackageManagerUserAgent()
 * // npm: "npm/10.2.4 node/v20.11.0 darwin arm64 workspaces/false"
 * // pnpm: "pnpm/8.15.1 npm/? node/v20.11.0 darwin arm64"
 * // yarn: "yarn/1.22.19 npm/? node/v20.11.0 darwin arm64"
 * ```
 */
export declare function getPackageManagerUserAgent(): string | undefined;
