namespace StellaOps.Scanner.Analyzers.Native;
///
/// Full identity information extracted from a Mach-O file.
///
/// CPU type (x86_64, arm64, etc.).
/// CPU subtype for variant detection.
/// LC_UUID in lowercase hex (no dashes).
/// Whether this is a fat/universal binary.
/// Platform from LC_BUILD_VERSION.
/// Minimum OS version from LC_VERSION_MIN_* or LC_BUILD_VERSION.
/// SDK version from LC_BUILD_VERSION.
/// Code signature information (if signed).
/// Exported symbols from LC_DYLD_INFO_ONLY or LC_DYLD_EXPORTS_TRIE.
public sealed record MachOIdentity(
string? CpuType,
uint CpuSubtype,
string? Uuid,
bool IsFatBinary,
MachOPlatform Platform,
string? MinOsVersion,
string? SdkVersion,
MachOCodeSignature? CodeSignature,
IReadOnlyList Exports);