interface IdbInstallArgs { udid?: string; appPath: string; } /** * Install application to iOS target - deploy .app bundles or .ipa archives for testing * * **What it does:** * Transfers and registers application bundles (.app) or archives (.ipa) to iOS targets. Validates * app path format before transfer, handles installation process (transfer, registration, signature * validation), extracts bundle ID from output for launching, and provides detailed error guidance * for common failures (code signing, architecture mismatch, already installed). * * **Why you'd use it:** * - Deploy fresh builds to simulators and devices for automated testing - no Xcode required * - Install multiple app versions for A/B testing or regression validation * - Automated CI/CD integration for deploying test builds to device farms * - Troubleshoot installation failures with architecture-specific and signing-specific guidance * * **Parameters:** * - appPath (required): Absolute path to .app bundle or .ipa archive * - udid (optional): Target identifier - auto-detects if omitted * * **Returns:** * Installation status with success indicator, app path, extracted bundle ID (if available), * installation output, and context-specific troubleshooting guidance (code signing issues, * architecture mismatches, already installed, file not found). * * **Example:** * ```typescript * // Install simulator build * const result = await idbInstallTool({ * appPath: '/path/to/DerivedData/Build/Products/Debug-iphonesimulator/MyApp.app' * }); * * // Install signed IPA to physical device * await idbInstallTool({ * appPath: '/path/to/MyApp.ipa', * udid: 'DEVICE-UDID-123' * }); * ``` * * **Full documentation:** See idb/install.md for detailed parameters and troubleshooting * * @param args Tool arguments with app path and optional target UDID * @returns Tool result with installation status and bundle ID */ export declare function idbInstallTool(args: IdbInstallArgs): Promise<{ content: { type: "text"; text: string; }[]; isError: boolean; }>; export declare const IDB_INSTALL_DOCS = "\n# idb-install\n\nInstall application to iOS target - deploy .app bundles or .ipa archives for testing.\n\n## Overview\n\nTransfers and registers application bundles (.app) or archives (.ipa) to iOS targets. Validates app path format before transfer, handles installation process (transfer, registration, signature validation), extracts bundle ID from output for launching, and provides detailed error guidance for common failures (code signing, architecture mismatch, already installed).\n\n## Parameters\n\n### Required\n- **appPath** (string): Absolute path to .app bundle or .ipa archive\n\n### Optional\n- **udid** (string): Target identifier - auto-detects if omitted\n\n## Returns\n\nInstallation status with success indicator, app path, extracted bundle ID (if available), installation output, and context-specific troubleshooting guidance (code signing issues, architecture mismatches, already installed, file not found).\n\n## Examples\n\n### Install simulator build\n```typescript\nconst result = await idbInstallTool({\n appPath: '/path/to/DerivedData/Build/Products/Debug-iphonesimulator/MyApp.app'\n});\n```\n\n### Install signed IPA to physical device\n```typescript\nawait idbInstallTool({\n appPath: '/path/to/MyApp.ipa',\n udid: 'DEVICE-UDID-123'\n});\n```\n\n## Related Tools\n\n- idb-list-apps: Find bundle ID after installation\n- idb-launch: Launch installed app by bundle ID\n- idb-uninstall: Remove app for clean reinstall\n\n## Notes\n\n- Supports .app bundles (from Xcode build) and .ipa archives (signed/unsigned)\n- Installation can take 10-60 seconds depending on app size\n- Simulators accept unsigned .app bundles\n- Physical devices require valid provisioning profile\n- Auto-terminates running apps before installation\n- Extracts bundle ID from output when available\n"; export {}; //# sourceMappingURL=install.d.ts.map