/**
 * OS Type Utilities
 *
 * Helper functions for working with OS types.
 */
import React from 'react';
import type { OSPlatformId } from './os-platforms';
import { OSType, OSTypeDefinition } from '../types/os.types';
/**
 * Normalize OS type string to standard OSType enum
 * Handles case-insensitive matching and various OS name variations
 *
 * @param osType - Raw OS type string from API or device data
 * @returns Normalized OSType or undefined if not recognized
 *
 * @example
 * normalizeOSType('windows') // 'WINDOWS'
 * normalizeOSType('Darwin') // 'MACOS'
 * normalizeOSType('Ubuntu') // 'LINUX'
 */
export declare function normalizeOSType(osType?: string): OSType | undefined;
/**
 * Get display label for an OS type
 *
 * @param osType - OS type string (can be raw or normalized)
 * @returns Display label
 */
export declare function getOSLabel(osType?: string): string;
/**
 * Get icon component for an OS type
 *
 * @param osType - OS type string (can be raw or normalized)
 * @returns Icon component or undefined
 */
export declare function getOSIcon(osType?: string): React.ComponentType<any> | undefined;
/**
 * Get OS type definition by OS type string
 *
 * @param osType - OS type string (can be raw or normalized)
 * @returns Complete OS type definition or undefined
 */
export declare function getOSTypeDefinition(osType?: string): OSTypeDefinition | undefined;
/**
 * Get platform ID for an OS type (for cross-referencing with OS_PLATFORMS)
 *
 * @param osType - OS type string (can be raw or normalized)
 * @returns Platform ID or undefined
 */
export declare function getOSPlatformId(osType?: string): OSPlatformId | undefined;
/**
 * Check if device OS matches a specific platform
 *
 * @param deviceOS - Device OS string
 * @param targetPlatform - Target platform to check against
 * @returns True if OS matches platform
 *
 * @example
 * isOSPlatform('Darwin', 'darwin') // true
 * isOSPlatform('Windows 10', 'windows') // true
 * isOSPlatform('Ubuntu', 'linux') // true
 */
export declare function isOSPlatform(deviceOS?: string, targetPlatform?: OSPlatformId): boolean;
//# sourceMappingURL=os-utils.d.ts.map