@mcesystems/apple-kit 1.0.96 → 1.0.98

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (79) hide show
  1. package/README.md +258 -258
  2. package/dist/index.js +140 -64
  3. package/dist/index.js.map +2 -2
  4. package/dist/index.mjs +140 -64
  5. package/dist/index.mjs.map +2 -2
  6. package/dist/resources/bin/darwin/idevice_id +0 -0
  7. package/dist/resources/bin/darwin/idevicedebug +0 -0
  8. package/dist/resources/bin/darwin/idevicediagnostics +0 -0
  9. package/dist/resources/bin/darwin/ideviceinfo +0 -0
  10. package/dist/resources/bin/darwin/ideviceinstaller +0 -0
  11. package/dist/resources/bin/darwin/idevicename +0 -0
  12. package/dist/resources/bin/darwin/idevicepair +0 -0
  13. package/dist/resources/bin/darwin/idevicescreenshot +0 -0
  14. package/dist/resources/bin/darwin/idevicesyslog +0 -0
  15. package/dist/resources/bin/darwin/iproxy +0 -0
  16. package/dist/resources/bin/darwin/libcrypto.3.dylib +0 -0
  17. package/dist/resources/bin/darwin/libimobiledevice-1.0.6.dylib +0 -0
  18. package/dist/resources/bin/darwin/libimobiledevice-glue-1.0.0.dylib +0 -0
  19. package/dist/resources/bin/darwin/liblzma.5.dylib +0 -0
  20. package/dist/resources/bin/darwin/libplist-2.0.4.dylib +0 -0
  21. package/dist/resources/bin/darwin/libssl.3.dylib +0 -0
  22. package/dist/resources/bin/darwin/libusbmuxd-2.0.7.dylib +0 -0
  23. package/dist/resources/bin/darwin/libzip.5.dylib +0 -0
  24. package/dist/resources/bin/darwin/libzstd.1.dylib +0 -0
  25. package/dist/resources/licenses/LGPL-2.1.txt +33 -0
  26. package/dist/resources/plist/certificate-trust.xml +43 -43
  27. package/dist/resources/plist/wifi-enterprise.xml +59 -59
  28. package/dist/resources/plist/wifi-standard.xml +50 -50
  29. package/dist/types/index.d.ts +111 -35
  30. package/dist/types/index.d.ts.map +1 -0
  31. package/dist/types/logic/actions/activation.d.ts +12 -0
  32. package/dist/types/logic/actions/activation.d.ts.map +1 -0
  33. package/dist/types/logic/actions/device.d.ts +15 -0
  34. package/dist/types/logic/actions/device.d.ts.map +1 -0
  35. package/dist/types/logic/actions/install.d.ts +10 -0
  36. package/dist/types/logic/actions/install.d.ts.map +1 -0
  37. package/dist/types/logic/actions/pair.d.ts +6 -0
  38. package/dist/types/logic/actions/pair.d.ts.map +1 -0
  39. package/dist/types/logic/actions/proxy.d.ts +23 -0
  40. package/dist/types/logic/actions/proxy.d.ts.map +1 -0
  41. package/dist/types/logic/actions/restore.d.ts +36 -0
  42. package/dist/types/logic/actions/restore.d.ts.map +1 -0
  43. package/dist/types/logic/actions/tool.d.ts +8 -0
  44. package/dist/types/logic/actions/tool.d.ts.map +1 -0
  45. package/dist/types/logic/activationFlow.d.ts +15 -0
  46. package/dist/types/logic/activationFlow.d.ts.map +1 -0
  47. package/dist/types/logic/appleDeviceKit.d.ts +164 -0
  48. package/dist/types/logic/appleDeviceKit.d.ts.map +1 -0
  49. package/dist/types/logic/dataParser.d.ts +23 -0
  50. package/dist/types/logic/dataParser.d.ts.map +1 -0
  51. package/dist/types/logic/iosCli.d.ts +6 -0
  52. package/dist/types/logic/iosCli.d.ts.map +1 -0
  53. package/dist/types/logic/utils/resolvePath.d.ts +13 -0
  54. package/dist/types/logic/utils/resolvePath.d.ts.map +1 -0
  55. package/dist/types/types/activation.d.ts +28 -0
  56. package/dist/types/types/activation.d.ts.map +1 -0
  57. package/dist/types/types/ios.d.ts +152 -0
  58. package/dist/types/types/ios.d.ts.map +1 -0
  59. package/dist/types/types/trust.d.ts +10 -0
  60. package/dist/types/types/trust.d.ts.map +1 -0
  61. package/dist/types/types/types.d.ts +47 -0
  62. package/dist/types/types/types.d.ts.map +1 -0
  63. package/dist/types/types/wifi.d.ts +19 -0
  64. package/dist/types/types/wifi.d.ts.map +1 -0
  65. package/dist/types/types.d.ts +140 -0
  66. package/dist/types/types.d.ts.map +1 -0
  67. package/dist/types/utils/debug.d.ts +17 -0
  68. package/dist/types/utils/debug.d.ts.map +1 -0
  69. package/dist/types/utils/templateLoader.d.ts +8 -0
  70. package/dist/types/utils/templateLoader.d.ts.map +1 -0
  71. package/dist/types/utils/wifiProfile.d.ts +14 -0
  72. package/dist/types/utils/wifiProfile.d.ts.map +1 -0
  73. package/package.json +3 -3
  74. package/scripts/README.md +209 -209
  75. package/scripts/build-windows.sh.template +222 -222
  76. package/scripts/prepare-ios.ts +9 -1
  77. package/resources/ios.exe +0 -0
  78. package/resources/wintun-LICENSE.txt +0 -84
  79. package/resources/wintun.dll +0 -0
Binary file
@@ -0,0 +1,33 @@
1
+ GNU LESSER GENERAL PUBLIC LICENSE
2
+ Version 2.1, February 1999
3
+
4
+ Copyright (C) 1991, 1999 Free Software Foundation, Inc.
5
+ 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
6
+
7
+ Everyone is permitted to copy and distribute verbatim copies
8
+ of this license document, but changing it is not allowed.
9
+
10
+ [This is the first released version of the Lesser GPL. It also counts
11
+ as the successor of the GNU Library Public License, version 2, hence
12
+ the version number 2.1.]
13
+
14
+ Preamble
15
+
16
+ The licenses for most software are designed to take away your
17
+ freedom to share and change it. By contrast, the GNU General Public
18
+ Licenses are intended to guarantee your freedom to share and change
19
+ free software--to make sure the software is free for all its users.
20
+
21
+ This license, the Lesser General Public License, applies to some
22
+ specially designated software packages--typically libraries--of the
23
+ Free Software Foundation and other authors who decide to use it. You
24
+ can use it too, but we suggest you first think carefully about whether
25
+ this license or the ordinary General Public License is the better
26
+ strategy to use in any particular case, based on the explanations below.
27
+
28
+ libimobiledevice is licensed under the GNU Lesser General Public License
29
+ version 2.1 or later (LGPL-2.1+).
30
+
31
+ For the full text of the LGPL-2.1 license, see:
32
+ https://www.gnu.org/licenses/old-licenses/lgpl-2.1.html
33
+
@@ -1,43 +1,43 @@
1
- <?xml version="1.0" encoding="UTF-8"?>
2
- <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
3
- <plist version="1.0">
4
- <dict>
5
- <key>PayloadContent</key>
6
- <array>
7
- <dict>
8
- <key>PayloadCertificateFileName</key>
9
- <string>{{certificateFileName}}</string>
10
- <key>PayloadContent</key>
11
- <data>
12
- {{certificateBase64}}
13
- </data>
14
- <key>PayloadDescription</key>
15
- <string>{{certificateDescription}}</string>
16
- <key>PayloadDisplayName</key>
17
- <string>{{certificateDisplayName}}</string>
18
- <key>PayloadIdentifier</key>
19
- <string>{{payloadId}}</string>
20
- <key>PayloadType</key>
21
- <string>com.apple.security.root</string>
22
- <key>PayloadUUID</key>
23
- <string>{{certificateUuid}}</string>
24
- <key>PayloadVersion</key>
25
- <integer>1</integer>
26
- </dict>
27
- </array>
28
- <key>PayloadDisplayName</key>
29
- <string>{{profileDisplayName}}</string>
30
- <key>PayloadIdentifier</key>
31
- <string>{{profileId}}</string>
32
- <key>PayloadOrganization</key>
33
- <string>{{organizationName}}</string>
34
- <key>PayloadRemovalDisallowed</key>
35
- <{{removalDisallowed}}/>
36
- <key>PayloadType</key>
37
- <string>Configuration</string>
38
- <key>PayloadUUID</key>
39
- <string>{{profileUuid}}</string>
40
- <key>PayloadVersion</key>
41
- <integer>1</integer>
42
- </dict>
43
- </plist>
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
3
+ <plist version="1.0">
4
+ <dict>
5
+ <key>PayloadContent</key>
6
+ <array>
7
+ <dict>
8
+ <key>PayloadCertificateFileName</key>
9
+ <string>{{certificateFileName}}</string>
10
+ <key>PayloadContent</key>
11
+ <data>
12
+ {{certificateBase64}}
13
+ </data>
14
+ <key>PayloadDescription</key>
15
+ <string>{{certificateDescription}}</string>
16
+ <key>PayloadDisplayName</key>
17
+ <string>{{certificateDisplayName}}</string>
18
+ <key>PayloadIdentifier</key>
19
+ <string>{{payloadId}}</string>
20
+ <key>PayloadType</key>
21
+ <string>com.apple.security.root</string>
22
+ <key>PayloadUUID</key>
23
+ <string>{{certificateUuid}}</string>
24
+ <key>PayloadVersion</key>
25
+ <integer>1</integer>
26
+ </dict>
27
+ </array>
28
+ <key>PayloadDisplayName</key>
29
+ <string>{{profileDisplayName}}</string>
30
+ <key>PayloadIdentifier</key>
31
+ <string>{{profileId}}</string>
32
+ <key>PayloadOrganization</key>
33
+ <string>{{organizationName}}</string>
34
+ <key>PayloadRemovalDisallowed</key>
35
+ <{{removalDisallowed}}/>
36
+ <key>PayloadType</key>
37
+ <string>Configuration</string>
38
+ <key>PayloadUUID</key>
39
+ <string>{{profileUuid}}</string>
40
+ <key>PayloadVersion</key>
41
+ <integer>1</integer>
42
+ </dict>
43
+ </plist>
@@ -1,59 +1,59 @@
1
- <?xml version="1.0" encoding="UTF-8"?>
2
- <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
3
- <plist version="1.0">
4
- <dict>
5
- <key>PayloadContent</key>
6
- <array>
7
- <dict>
8
- <key>AutoJoin</key>
9
- <{{autoJoin}}/>
10
- <key>EncryptionType</key>
11
- <string>WPA2</string>
12
- <key>HIDDEN_NETWORK</key>
13
- <{{hiddenNetwork}}/>
14
- <key>IsHotspot</key>
15
- <false/>
16
- <key>PayloadDescription</key>
17
- <string>Configures WiFi settings for {{ssid}}</string>
18
- <key>PayloadDisplayName</key>
19
- <string>WiFi ({{ssid}})</string>
20
- <key>PayloadIdentifier</key>
21
- <string>{{payloadId}}</string>
22
- <key>PayloadType</key>
23
- <string>com.apple.wifi.managed</string>
24
- <key>PayloadUUID</key>
25
- <string>{{payloadUuid}}</string>
26
- <key>PayloadVersion</key>
27
- <integer>1</integer>
28
- <key>ProxyType</key>
29
- <string>None</string>
30
- <key>SSID_STR</key>
31
- <string>{{ssid}}</string>
32
- <key>EAPClientConfiguration</key>
33
- <dict>
34
- <key>AcceptEAPTypes</key>
35
- <array>
36
- <integer>{{eapTypeNumber}}</integer>
37
- </array>
38
- {{#if username}}<key>UserName</key><string>{{username}}</string>{{/if}}
39
- {{#if password}}<key>UserPassword</key><string>{{password}}</string>{{/if}}
40
- {{#if acceptAnyCertificate}}<key>TLSAllowTrustExceptions</key><true/>{{/if}}
41
- </dict>
42
- </dict>
43
- </array>
44
- <key>PayloadDisplayName</key>
45
- <string>{{displayName}}</string>
46
- <key>PayloadIdentifier</key>
47
- <string>{{profileId}}</string>
48
- <key>PayloadOrganization</key>
49
- <string>{{organizationName}}</string>
50
- <key>PayloadRemovalDisallowed</key>
51
- <false/>
52
- <key>PayloadType</key>
53
- <string>Configuration</string>
54
- <key>PayloadUUID</key>
55
- <string>{{profileUuid}}</string>
56
- <key>PayloadVersion</key>
57
- <integer>1</integer>
58
- </dict>
59
- </plist>
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
3
+ <plist version="1.0">
4
+ <dict>
5
+ <key>PayloadContent</key>
6
+ <array>
7
+ <dict>
8
+ <key>AutoJoin</key>
9
+ <{{autoJoin}}/>
10
+ <key>EncryptionType</key>
11
+ <string>WPA2</string>
12
+ <key>HIDDEN_NETWORK</key>
13
+ <{{hiddenNetwork}}/>
14
+ <key>IsHotspot</key>
15
+ <false/>
16
+ <key>PayloadDescription</key>
17
+ <string>Configures WiFi settings for {{ssid}}</string>
18
+ <key>PayloadDisplayName</key>
19
+ <string>WiFi ({{ssid}})</string>
20
+ <key>PayloadIdentifier</key>
21
+ <string>{{payloadId}}</string>
22
+ <key>PayloadType</key>
23
+ <string>com.apple.wifi.managed</string>
24
+ <key>PayloadUUID</key>
25
+ <string>{{payloadUuid}}</string>
26
+ <key>PayloadVersion</key>
27
+ <integer>1</integer>
28
+ <key>ProxyType</key>
29
+ <string>None</string>
30
+ <key>SSID_STR</key>
31
+ <string>{{ssid}}</string>
32
+ <key>EAPClientConfiguration</key>
33
+ <dict>
34
+ <key>AcceptEAPTypes</key>
35
+ <array>
36
+ <integer>{{eapTypeNumber}}</integer>
37
+ </array>
38
+ {{#if username}}<key>UserName</key><string>{{username}}</string>{{/if}}
39
+ {{#if password}}<key>UserPassword</key><string>{{password}}</string>{{/if}}
40
+ {{#if acceptAnyCertificate}}<key>TLSAllowTrustExceptions</key><true/>{{/if}}
41
+ </dict>
42
+ </dict>
43
+ </array>
44
+ <key>PayloadDisplayName</key>
45
+ <string>{{displayName}}</string>
46
+ <key>PayloadIdentifier</key>
47
+ <string>{{profileId}}</string>
48
+ <key>PayloadOrganization</key>
49
+ <string>{{organizationName}}</string>
50
+ <key>PayloadRemovalDisallowed</key>
51
+ <false/>
52
+ <key>PayloadType</key>
53
+ <string>Configuration</string>
54
+ <key>PayloadUUID</key>
55
+ <string>{{profileUuid}}</string>
56
+ <key>PayloadVersion</key>
57
+ <integer>1</integer>
58
+ </dict>
59
+ </plist>
@@ -1,50 +1,50 @@
1
- <?xml version="1.0" encoding="UTF-8"?>
2
- <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
3
- <plist version="1.0">
4
- <dict>
5
- <key>PayloadContent</key>
6
- <array>
7
- <dict>
8
- <key>AutoJoin</key>
9
- <{{autoJoin}}/>
10
- <key>EncryptionType</key>
11
- <string>{{encryptionType}}</string>
12
- <key>HIDDEN_NETWORK</key>
13
- <{{hiddenNetwork}}/>
14
- <key>IsHotspot</key>
15
- <false/>
16
- {{#if password}}<key>Password</key><string>{{password}}</string>{{/if}}
17
- <key>PayloadDescription</key>
18
- <string>Configures WiFi settings for {{ssid}}</string>
19
- <key>PayloadDisplayName</key>
20
- <string>WiFi ({{ssid}})</string>
21
- <key>PayloadIdentifier</key>
22
- <string>{{payloadId}}</string>
23
- <key>PayloadType</key>
24
- <string>com.apple.wifi.managed</string>
25
- <key>PayloadUUID</key>
26
- <string>{{payloadUuid}}</string>
27
- <key>PayloadVersion</key>
28
- <integer>1</integer>
29
- <key>ProxyType</key>
30
- <string>None</string>
31
- <key>SSID_STR</key>
32
- <string>{{ssid}}</string>
33
- </dict>
34
- </array>
35
- <key>PayloadDisplayName</key>
36
- <string>{{displayName}}</string>
37
- <key>PayloadIdentifier</key>
38
- <string>{{profileId}}</string>
39
- <key>PayloadOrganization</key>
40
- <string>{{organizationName}}</string>
41
- <key>PayloadRemovalDisallowed</key>
42
- <false/>
43
- <key>PayloadType</key>
44
- <string>Configuration</string>
45
- <key>PayloadUUID</key>
46
- <string>{{profileUuid}}</string>
47
- <key>PayloadVersion</key>
48
- <integer>1</integer>
49
- </dict>
50
- </plist>
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
3
+ <plist version="1.0">
4
+ <dict>
5
+ <key>PayloadContent</key>
6
+ <array>
7
+ <dict>
8
+ <key>AutoJoin</key>
9
+ <{{autoJoin}}/>
10
+ <key>EncryptionType</key>
11
+ <string>{{encryptionType}}</string>
12
+ <key>HIDDEN_NETWORK</key>
13
+ <{{hiddenNetwork}}/>
14
+ <key>IsHotspot</key>
15
+ <false/>
16
+ {{#if password}}<key>Password</key><string>{{password}}</string>{{/if}}
17
+ <key>PayloadDescription</key>
18
+ <string>Configures WiFi settings for {{ssid}}</string>
19
+ <key>PayloadDisplayName</key>
20
+ <string>WiFi ({{ssid}})</string>
21
+ <key>PayloadIdentifier</key>
22
+ <string>{{payloadId}}</string>
23
+ <key>PayloadType</key>
24
+ <string>com.apple.wifi.managed</string>
25
+ <key>PayloadUUID</key>
26
+ <string>{{payloadUuid}}</string>
27
+ <key>PayloadVersion</key>
28
+ <integer>1</integer>
29
+ <key>ProxyType</key>
30
+ <string>None</string>
31
+ <key>SSID_STR</key>
32
+ <string>{{ssid}}</string>
33
+ </dict>
34
+ </array>
35
+ <key>PayloadDisplayName</key>
36
+ <string>{{displayName}}</string>
37
+ <key>PayloadIdentifier</key>
38
+ <string>{{profileId}}</string>
39
+ <key>PayloadOrganization</key>
40
+ <string>{{organizationName}}</string>
41
+ <key>PayloadRemovalDisallowed</key>
42
+ <false/>
43
+ <key>PayloadType</key>
44
+ <string>Configuration</string>
45
+ <key>PayloadUUID</key>
46
+ <string>{{profileUuid}}</string>
47
+ <key>PayloadVersion</key>
48
+ <integer>1</integer>
49
+ </dict>
50
+ </plist>
@@ -114,6 +114,14 @@ export interface LogMessage {
114
114
  }
115
115
  export type CommandOutput = Record<string, unknown>[] | DeviceListOutput[] | [
116
116
  LockdownInfo
117
+ ] | [
118
+ BatteryInfo
119
+ ] | [
120
+ CapacityInfo
121
+ ] | [
122
+ CloudConfigurationInfo
123
+ ] | [
124
+ string
117
125
  ];
118
126
  export interface IosListResult {
119
127
  udids: string[];
@@ -241,6 +249,45 @@ export interface LockdownInfo {
241
249
  kCTPostponementInfoServiceProvisioningState: boolean;
242
250
  kCTPostponementStatus: string;
243
251
  }
252
+ export interface BatteryInfo {
253
+ InstantAmperage: number;
254
+ Temperature: number;
255
+ Voltage: number;
256
+ IsCharging: boolean;
257
+ CurrentCapacity: number;
258
+ DesignCapacity: number;
259
+ NominalChargeCapacity: number;
260
+ CycleCount: number;
261
+ AtCriticalLevel: boolean;
262
+ AtWarnLevel: boolean;
263
+ }
264
+ export interface CapacityInfo {
265
+ AmountDataAvailable: number;
266
+ AmountDataReserved: number;
267
+ AmountRestoreAvailable: number;
268
+ CalculateDiskUsage: string;
269
+ NANDInfo: string;
270
+ TotalDataAvailable: number;
271
+ TotalDataCapacity: number;
272
+ TotalDiskCapacity: number;
273
+ TotalSystemAvailable: number;
274
+ TotalSystemCapacity: number;
275
+ }
276
+ export interface CloudConfigurationInfo {
277
+ AllowPairing: boolean;
278
+ CloudConfigurationUIComplete: boolean;
279
+ ConfigurationSource: number;
280
+ ConfigurationWasApplied: boolean;
281
+ IsMDMUnremovable: boolean;
282
+ IsMandatory: boolean;
283
+ IsMultiUser: boolean;
284
+ IsSupervised: boolean;
285
+ OrganizationMagic: string;
286
+ OrganizationName: string;
287
+ PostSetupProfileWasInstalled: boolean;
288
+ SkipSetup: string[];
289
+ SupervisorHostCertificates: string;
290
+ }
244
291
  /**
245
292
  * Installed application info
246
293
  */
@@ -295,16 +342,26 @@ export declare class AppleDeviceKit {
295
342
  private readonly activationFlow;
296
343
  private readonly proxyActions;
297
344
  private tunnelProcess;
345
+ private tunnelReadyPromise;
298
346
  private static readonly IOS_17_VERSION;
299
347
  constructor(udid: string, logicalPort: number, usbmuxdAddress?: string);
348
+ /**
349
+ * Returns a promise that resolves when the tunnel is ready (or immediately if not needed).
350
+ * Reuses the same in-flight promise so constructor and methods don't race.
351
+ */
352
+ private getTunnelReady;
300
353
  /**
301
354
  * Check if iOS version requires tunneling (iOS 17+)
302
355
  */
303
356
  private requiresTunneling;
304
357
  /**
305
- * Ensure tunnel is started for iOS 17+ devices
358
+ * Ensure tunnel is started for iOS 17+ devices. Safe to call multiple times; reuses in-flight setup.
306
359
  */
307
360
  private ensureTunnel;
361
+ /**
362
+ * Internal tunnel startup. Called once per tunnel lifecycle; getTunnelReady() caches this promise.
363
+ */
364
+ private runEnsureTunnel;
308
365
  /**
309
366
  * Stop tunnel for a device
310
367
  */
@@ -488,6 +545,10 @@ export declare class IosClient {
488
545
  toPort: number;
489
546
  }): import("child_process").ChildProcessByStdio<null, import("stream").Readable, import("stream").Readable>;
490
547
  info(): Promise<IosCommandResult>;
548
+ batteryInfo(): Promise<IosCommandResult>;
549
+ capacityInfo(): Promise<IosCommandResult>;
550
+ cloudConfigInfo(): Promise<IosCommandResult>;
551
+ regularModelNumber(): Promise<IosCommandResult>;
491
552
  installApp(ipaPath: string): Promise<IosCommandResult>;
492
553
  uninstallApp(bundleId: string): Promise<IosCommandResult>;
493
554
  listApps(): Promise<{
@@ -496,7 +557,7 @@ export declare class IosClient {
496
557
  version: string;
497
558
  }[]>;
498
559
  devMode(): Promise<IosCommandResult>;
499
- tunnelStart(userspace?: boolean, pairRecordPath?: string): Promise<import("child_process").ChildProcessByStdio<null, import("stream").Readable, import("stream").Readable>>;
560
+ tunnelStart(userspace?: boolean, pairRecordPath?: string): Promise<ChildProcess>;
500
561
  fsyncPull({ app, srcPath, dstPath, }: {
501
562
  app: string;
502
563
  srcPath: string;
@@ -524,43 +585,11 @@ export declare class IosClient {
524
585
  path?: string;
525
586
  }): Promise<IosFsyncTreeResult>;
526
587
  }
527
- declare class DeviceActions {
528
- private readonly udid;
529
- private readonly iosClient;
530
- constructor(udid: string, iosClient: IosClient);
531
- info(): Promise<LockdownInfo>;
532
- listDevices(): Promise<IosListResult>;
533
- wipe(): Promise<void>;
534
- removeProfile(profileIdentifier: string): Promise<void>;
535
- listProfiles(): Promise<IosProfileListResult>;
536
- pair(): Promise<boolean>;
537
- trustDevice({ timeout, pollInterval, onWaitingForTrust, signal, }: {
538
- timeout?: number;
539
- pollInterval?: number;
540
- onWaitingForTrust?: () => void;
541
- signal?: AbortSignal;
542
- }): Promise<boolean>;
543
- waitForPairing({ timeout, pollInterval, signal, }: {
544
- timeout?: number;
545
- pollInterval?: number;
546
- signal?: AbortSignal;
547
- }): Promise<boolean>;
548
- /**
549
- * Returns true if device is paired and trusted.
550
- * Uses info() which only succeeds when full pairing is established (user has accepted Trust).
551
- * Prefer this over lockdown file check since file location/timing can vary by platform.
552
- */
553
- private isPairedViaInfo;
554
- isWifiConnected(timeoutMs?: number): Promise<string | undefined>;
555
- unpair(): Promise<boolean>;
556
- getLockdownPath(): string | null;
557
- }
558
588
  export declare class ActivationFlow {
559
589
  private readonly udid;
560
590
  private readonly iosClient;
561
- private readonly deviceActions;
562
591
  private mdmClient;
563
- constructor(udid: string, iosClient: IosClient, deviceActions: DeviceActions);
592
+ constructor(udid: string, iosClient: IosClient);
564
593
  run(steps?: string[], signal?: AbortSignal, config?: ActivationFlowConfig): {
565
594
  promise: Promise<(() => Promise<void>) | undefined>;
566
595
  events: EventEmitter;
@@ -629,6 +658,14 @@ interface LogMessage$1 {
629
658
  }
630
659
  type CommandOutput$1 = Record<string, unknown>[] | DeviceListOutput$1[] | [
631
660
  LockdownInfo$1
661
+ ] | [
662
+ BatteryInfo$1
663
+ ] | [
664
+ CapacityInfo$1
665
+ ] | [
666
+ CloudConfigurationInfo$1
667
+ ] | [
668
+ string
632
669
  ];
633
670
  interface IosListResult$1 {
634
671
  udids: string[];
@@ -756,6 +793,45 @@ interface LockdownInfo$1 {
756
793
  kCTPostponementInfoServiceProvisioningState: boolean;
757
794
  kCTPostponementStatus: string;
758
795
  }
796
+ interface BatteryInfo$1 {
797
+ InstantAmperage: number;
798
+ Temperature: number;
799
+ Voltage: number;
800
+ IsCharging: boolean;
801
+ CurrentCapacity: number;
802
+ DesignCapacity: number;
803
+ NominalChargeCapacity: number;
804
+ CycleCount: number;
805
+ AtCriticalLevel: boolean;
806
+ AtWarnLevel: boolean;
807
+ }
808
+ interface CapacityInfo$1 {
809
+ AmountDataAvailable: number;
810
+ AmountDataReserved: number;
811
+ AmountRestoreAvailable: number;
812
+ CalculateDiskUsage: string;
813
+ NANDInfo: string;
814
+ TotalDataAvailable: number;
815
+ TotalDataCapacity: number;
816
+ TotalDiskCapacity: number;
817
+ TotalSystemAvailable: number;
818
+ TotalSystemCapacity: number;
819
+ }
820
+ interface CloudConfigurationInfo$1 {
821
+ AllowPairing: boolean;
822
+ CloudConfigurationUIComplete: boolean;
823
+ ConfigurationSource: number;
824
+ ConfigurationWasApplied: boolean;
825
+ IsMDMUnremovable: boolean;
826
+ IsMandatory: boolean;
827
+ IsMultiUser: boolean;
828
+ IsSupervised: boolean;
829
+ OrganizationMagic: string;
830
+ OrganizationName: string;
831
+ PostSetupProfileWasInstalled: boolean;
832
+ SkipSetup: string[];
833
+ SupervisorHostCertificates: string;
834
+ }
759
835
  export interface IosCli {
760
836
  listDevices(): Promise<IosListResult$1>;
761
837
  wipe(deviceId: string): Promise<IosCommandResult$1>;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAE9C,YAAY,EAAE,MAAM,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC"}
@@ -0,0 +1,12 @@
1
+ import type { ActivationState } from "@/types";
2
+ export declare function getActivationState(udid: string): Promise<ActivationState>;
3
+ export declare function activate(udid: string): Promise<boolean>;
4
+ export interface ApplicationConfig {
5
+ name: string;
6
+ bundleId: string;
7
+ version: string;
8
+ build: string;
9
+ icon: string;
10
+ iconData: Buffer;
11
+ }
12
+ //# sourceMappingURL=activation.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"activation.d.ts","sourceRoot":"","sources":["../../../../src/logic/actions/activation.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAI/C,wBAAsB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC,CAyB/E;AAED,wBAAsB,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAiB7D;AAED,MAAM,WAAW,iBAAiB;IACjC,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;CACjB"}
@@ -0,0 +1,15 @@
1
+ import type { IosCli, IosListResult, IosProfileListResult, LockdownInfo } from "@/types/ios";
2
+ export interface ExecResult {
3
+ stdout: string;
4
+ stderr: string;
5
+ }
6
+ export declare function info(udid: string, iosCli: IosCli): Promise<LockdownInfo>;
7
+ export declare function getActivationState(udid: string, iosCli: IosCli): Promise<{
8
+ isActivated: boolean;
9
+ activationState: string;
10
+ }>;
11
+ export declare function listDevices(iosCli: IosCli): Promise<IosListResult>;
12
+ export declare function wipeDevice(udid: string, iosCli: IosCli): Promise<void>;
13
+ export declare function removeProfile(profileIdentifier: string, udid: string, iosCli: IosCli): Promise<void>;
14
+ export declare function listProfiles(udid: string, iosCli: IosCli): Promise<IosProfileListResult>;
15
+ //# sourceMappingURL=device.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"device.d.ts","sourceRoot":"","sources":["../../../../src/logic/actions/device.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,aAAa,EAAE,oBAAoB,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAG7F,MAAM,WAAW,UAAU;IAC1B,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;CACf;AAED,wBAAsB,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC,CAQ9E;AAED,wBAAsB,kBAAkB,CACvC,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,MAAM,GACZ,OAAO,CAAC;IAAE,WAAW,EAAE,OAAO,CAAC;IAAC,eAAe,EAAE,MAAM,CAAA;CAAE,CAAC,CAO5D;AAED,wBAAsB,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC,CAMxE;AAED,wBAAsB,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAG5E;AAED,wBAAsB,aAAa,CAClC,iBAAiB,EAAE,MAAM,EACzB,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,MAAM,GACZ,OAAO,CAAC,IAAI,CAAC,CAGf;AAED,wBAAsB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAG9F"}