/** * Mach-O Type. */ export interface IMachoType { /** * CPU type. */ cpuType: number; /** * CPU subtype. */ cpuSubtype: number; } /** * Get types of Mach-O data, array if FAT binary, else a single object. * * @param data Mach-O data. * @returns Mach-O types. */ export declare function machoTypesData(data: Readonly): IMachoType | IMachoType[]; /** * Get types of Mach-O file, array if FAT binary, else a single object. * * @param path Mach-O file. * @returns Mach-O types. */ export declare function machoTypesFile(path: string): Promise; /** * Create FAT Mach-O data from thin Mach-O binaries. * * @param machos Mach-O binary datas. * @returns FAT binary. */ export declare function machoFat(machos: readonly Readonly[]): Uint8Array; /** * Read THIN binaries in a Mach-O binary which might be FAT. * Returns slices of the original buffer if a FAT binary. * Else it just returns the single THIN binary. * * @param data Mach-O binary data. * @returns Mach-O binary data or datas. */ export declare function machoThins>(data: T): T | T[]; /** * Mac projector patch. */ export interface IMacProjectorMachoPatch { /** * Remove signature if present and true. * * @default false */ removeCodeSignature?: boolean; /** * Attempt to replace the window title if not null. * * @default null */ patchWindowTitle?: string | null; } /** * Apply patches to projector Mach-O binary. * * @param macho Mach-O data. * @param options Patch options. * @returns Patched Mach-O. */ export declare function macProjectorMachoPatch(macho: Readonly, options: Readonly): Uint8Array; /** * Get Mach-O app launcher for a single type. * * @param type Mach-O type. * @returns Launcher data. */ export declare function machoAppLauncherThin(type: Readonly): Promise; /** * Get Mach-O app launcher for a type list. * * @param types Mach-O types. * @returns Launcher data. */ export declare function machoAppLauncherFat(types: readonly Readonly[]): Promise; /** * Get Mach-O app launcher for a single or multiple types. * * @param types Mach-O types. * @returns Launcher data. */ export declare function machoAppLauncher(types: Readonly | readonly Readonly[]): Promise;