@ai-matrx/desktop-protocol 0.21.38 → 0.21.39

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.
package/dist/client.cjs CHANGED
@@ -144,7 +144,7 @@ var import_zod2 = require("zod");
144
144
  var import_zod = require("zod");
145
145
  var import_uuid = require("@ai-matrx/kit/uuid");
146
146
  var PROTOCOL_MAJOR = 1;
147
- var PROTOCOL_MINOR = 46;
147
+ var PROTOCOL_MINOR = 47;
148
148
  var PROTOCOL_VERSION = `${PROTOCOL_MAJOR}.${PROTOCOL_MINOR}`;
149
149
  var ProtocolVersion = import_zod.z.string().regex(/^[1-9][0-9]{0,2}\.[0-9]{1,3}$/);
150
150
  var RequestId = import_zod.z.string().min(1).max(64).regex(/^[A-Za-z0-9_-]+$/);
@@ -3373,22 +3373,104 @@ var AppsWindowsUpdateAndReopenResult = import_zod31.z.strictObject({
3373
3373
  installed_version: import_zod31.z.string().max(64).nullable()
3374
3374
  });
3375
3375
 
3376
- // src/schema/browser.ts
3376
+ // src/schema/apps-instances.ts
3377
3377
  var import_zod32 = require("zod");
3378
- var BrowserClientInstance = import_zod32.z.string().min(1).max(64).regex(/^[A-Za-z0-9_.:-]+$/);
3379
- var BrowserKind = import_zod32.z.enum(["chrome", "edge", "brave", "arc", "opera", "vivaldi", "chromium", "firefox", "other"]);
3380
- var BrowserSessionState = import_zod32.z.enum(["connected", "different_account", "extension_signed_out", "device_signed_out", "unverified"]);
3381
- var BrowserSession = import_zod32.z.strictObject({
3378
+ var InstanceStatus = import_zod32.z.enum(["open", "closed", "wrong_account", "update_waiting", "folder_missing"]);
3379
+ var AppInstall = import_zod32.z.strictObject({
3380
+ location: import_zod32.z.string().max(1024),
3381
+ version: import_zod32.z.string().max(80).nullable()
3382
+ });
3383
+ var AppInstance = import_zod32.z.strictObject({
3384
+ app_key: AppKey,
3385
+ /** "main", or the instance's name: the same key every window action takes. */
3386
+ key: ChatPlace,
3387
+ main: import_zod32.z.boolean(),
3388
+ status: InstanceStatus,
3389
+ running: import_zod32.z.boolean(),
3390
+ /** Its process while open. */
3391
+ pid: nonNegInt.nullable(),
3392
+ /** Its data folder on this device. */
3393
+ folder: import_zod32.z.string().max(1024).nullable(),
3394
+ folder_exists: import_zod32.z.boolean(),
3395
+ /** The provider's id of the account signed in there now, when the app records it. */
3396
+ account_id: import_zod32.z.string().max(200).nullable(),
3397
+ /** That account's email, when known. */
3398
+ account: import_zod32.z.string().max(320).nullable(),
3399
+ /** The account this instance is kept for (null for main: it signs into any). */
3400
+ meant_for: import_zod32.z.string().max(320).nullable(),
3401
+ /** The version running in it now, or the one it last ran when closed. */
3402
+ version: import_zod32.z.string().max(80).nullable(),
3403
+ installed_version: import_zod32.z.string().max(80).nullable(),
3404
+ /** Chats open in it now. */
3405
+ open_chats: nonNegInt,
3406
+ launched_ms: epochMs.nullable(),
3407
+ quit_ms: epochMs.nullable(),
3408
+ first_launch_ms: epochMs.nullable()
3409
+ });
3410
+ var AccountResetSource = import_zod32.z.enum(["app", "usage_history", "your_list"]);
3411
+ var AccountGap = import_zod32.z.enum(["email", "plan", "usage"]);
3412
+ var AppAccount = import_zod32.z.strictObject({
3413
+ app_key: AppKey,
3414
+ /** The provider's own account id (Claude's account uuid, ChatGPT's account id); `org:<uuid>` when only its organization is known. */
3415
+ account_id: import_zod32.z.string().max(200),
3416
+ email: import_zod32.z.string().max(320).nullable(),
3417
+ plan: import_zod32.z.string().max(80).nullable(),
3418
+ /** The provider organizations its readings are filed under. */
3419
+ orgs: import_zod32.z.array(import_zod32.z.string().max(80)).max(20),
3420
+ /** Weekly use in percent; 0 once the week reset after the reading. */
3421
+ weekly: import_zod32.z.number().nullable(),
3422
+ weekly_reset_since: import_zod32.z.boolean(),
3423
+ weekly_resets_at_ms: epochMs.nullable(),
3424
+ weekly_reset_source: AccountResetSource.nullable(),
3425
+ /** 5-hour use in percent; 0 once the 5-hour window passed after the reading. */
3426
+ five_hour: import_zod32.z.number().nullable(),
3427
+ five_hour_reset_since: import_zod32.z.boolean(),
3428
+ /** The latest the 5-hour window resets. */
3429
+ five_hour_resets_at_ms: epochMs.nullable(),
3430
+ /** Claude: extra-usage spend as a percent of its cap. */
3431
+ extra_usage: import_zod32.z.number().nullable(),
3432
+ /** Codex: the credit balance. */
3433
+ credits: import_zod32.z.number().nullable(),
3434
+ /** When the newest reading was taken, and in which instance. */
3435
+ read_at_ms: epochMs.nullable(),
3436
+ read_in: ChatPlace.nullable(),
3437
+ /** Instances signed into it now. */
3438
+ instances: import_zod32.z.array(ChatPlace).max(200),
3439
+ first_seen_ms: epochMs.nullable(),
3440
+ last_seen_ms: epochMs.nullable(),
3441
+ missing: import_zod32.z.array(AccountGap).max(3)
3442
+ });
3443
+ var AppsInstancesListParams = import_zod32.z.strictObject({ app_key: AppKey });
3444
+ var AppsInstancesListResult = import_zod32.z.strictObject({
3445
+ app_key: AppKey,
3446
+ install: AppInstall.nullable(),
3447
+ instances: import_zod32.z.array(AppInstance).max(200),
3448
+ /** The rows are right but something around them failed; shown, never hidden. */
3449
+ problem: import_zod32.z.string().max(400).optional()
3450
+ });
3451
+ var AppsAccountsListParams = import_zod32.z.strictObject({ app_key: AppKey });
3452
+ var AppsAccountsListResult = import_zod32.z.strictObject({
3453
+ app_key: AppKey,
3454
+ accounts: import_zod32.z.array(AppAccount).max(500),
3455
+ problem: import_zod32.z.string().max(400).optional()
3456
+ });
3457
+
3458
+ // src/schema/browser.ts
3459
+ var import_zod33 = require("zod");
3460
+ var BrowserClientInstance = import_zod33.z.string().min(1).max(64).regex(/^[A-Za-z0-9_.:-]+$/);
3461
+ var BrowserKind = import_zod33.z.enum(["chrome", "edge", "brave", "arc", "opera", "vivaldi", "chromium", "firefox", "other"]);
3462
+ var BrowserSessionState = import_zod33.z.enum(["connected", "different_account", "extension_signed_out", "device_signed_out", "unverified"]);
3463
+ var BrowserSession = import_zod33.z.strictObject({
3382
3464
  client_instance: BrowserClientInstance,
3383
3465
  /** What the person sees ("Chrome — Work"), set by the extension. */
3384
- client_label: import_zod32.z.string().min(1).max(128),
3466
+ client_label: import_zod33.z.string().min(1).max(128),
3385
3467
  browser: BrowserKind,
3386
- extension_version: import_zod32.z.string().min(1).max(32),
3468
+ extension_version: import_zod33.z.string().min(1).max(32),
3387
3469
  state: BrowserSessionState,
3388
3470
  /** True only for `connected`: an agent's call can reach this session. */
3389
- routable: import_zod32.z.boolean(),
3471
+ routable: import_zod33.z.boolean(),
3390
3472
  /** The extension's account email from its token (null when signed out or unknown). */
3391
- account_email: import_zod32.z.string().max(320).nullable(),
3473
+ account_email: import_zod33.z.string().max(320).nullable(),
3392
3474
  connected_at_ms: epochMs,
3393
3475
  last_call_at_ms: epochMs.nullable(),
3394
3476
  calls: nonNegInt,
@@ -3397,756 +3479,756 @@ var BrowserSession = import_zod32.z.strictObject({
3397
3479
  p50_ms: nonNegInt.nullable(),
3398
3480
  p95_ms: nonNegInt.nullable(),
3399
3481
  /** A call is waiting for the person to confirm it in the browser. */
3400
- awaiting_confirmation: import_zod32.z.boolean()
3482
+ awaiting_confirmation: import_zod33.z.boolean()
3401
3483
  });
3402
- var BrowserRegisterParams = import_zod32.z.strictObject({
3484
+ var BrowserRegisterParams = import_zod33.z.strictObject({
3403
3485
  client_instance: BrowserClientInstance,
3404
- client_label: import_zod32.z.string().min(1).max(128),
3486
+ client_label: import_zod33.z.string().min(1).max(128),
3405
3487
  browser: BrowserKind,
3406
- extension_version: import_zod32.z.string().min(1).max(32),
3488
+ extension_version: import_zod33.z.string().min(1).max(32),
3407
3489
  /** The extension's current AI Matrx access token, checked against the device owner; null when signed out. */
3408
- account_token: import_zod32.z.string().min(16).max(8192).nullable()
3490
+ account_token: import_zod33.z.string().min(16).max(8192).nullable()
3409
3491
  });
3410
- var BrowserRegisterResult = import_zod32.z.strictObject({ session: BrowserSession });
3411
- var BrowserCallError = import_zod32.z.strictObject({
3412
- message: import_zod32.z.string().max(1e3),
3492
+ var BrowserRegisterResult = import_zod33.z.strictObject({ session: BrowserSession });
3493
+ var BrowserCallError = import_zod33.z.strictObject({
3494
+ message: import_zod33.z.string().max(1e3),
3413
3495
  /** The extension's own error code, when it has one ("tool_not_found", "denied"). */
3414
- code: import_zod32.z.string().max(64).nullable()
3496
+ code: import_zod33.z.string().max(64).nullable()
3415
3497
  });
3416
- var BrowserResultParams = import_zod32.z.strictObject({
3417
- call_id: import_zod32.z.string().min(1).max(64),
3418
- ok: import_zod32.z.boolean(),
3498
+ var BrowserResultParams = import_zod33.z.strictObject({
3499
+ call_id: import_zod33.z.string().min(1).max(64),
3500
+ ok: import_zod33.z.boolean(),
3419
3501
  /** The tool's result when ok (any JSON). */
3420
- result: import_zod32.z.unknown(),
3502
+ result: import_zod33.z.unknown(),
3421
3503
  error: BrowserCallError.nullable()
3422
3504
  });
3423
- var BrowserResultResult = import_zod32.z.strictObject({ accepted: import_zod32.z.boolean() });
3424
- var BrowserCallPhase = import_zod32.z.enum(["awaiting_confirmation", "running"]);
3425
- var BrowserProgressParams = import_zod32.z.strictObject({ call_id: import_zod32.z.string().min(1).max(64), phase: BrowserCallPhase });
3426
- var BrowserProgressResult = import_zod32.z.strictObject({ accepted: import_zod32.z.boolean() });
3427
- var BrowserSessionsParams = import_zod32.z.strictObject({});
3428
- var BrowserSessionsResult = import_zod32.z.strictObject({
3505
+ var BrowserResultResult = import_zod33.z.strictObject({ accepted: import_zod33.z.boolean() });
3506
+ var BrowserCallPhase = import_zod33.z.enum(["awaiting_confirmation", "running"]);
3507
+ var BrowserProgressParams = import_zod33.z.strictObject({ call_id: import_zod33.z.string().min(1).max(64), phase: BrowserCallPhase });
3508
+ var BrowserProgressResult = import_zod33.z.strictObject({ accepted: import_zod33.z.boolean() });
3509
+ var BrowserSessionsParams = import_zod33.z.strictObject({});
3510
+ var BrowserSessionsResult = import_zod33.z.strictObject({
3429
3511
  /** The person's Browser connection switch. Off: no pairing, no extension sessions. */
3430
- enabled: import_zod32.z.boolean(),
3512
+ enabled: import_zod33.z.boolean(),
3431
3513
  /** Whether Matrx 2 is signed in (without an owner no session is routable). */
3432
- owner_signed_in: import_zod32.z.boolean(),
3433
- sessions: import_zod32.z.array(BrowserSession).max(64)
3434
- });
3435
- var BrowserDisconnectParams = import_zod32.z.strictObject({ client_instance: BrowserClientInstance });
3436
- var BrowserDisconnectResult = import_zod32.z.strictObject({ disconnected: import_zod32.z.boolean() });
3437
- var BrowserSetEnabledParams = import_zod32.z.strictObject({ enabled: import_zod32.z.boolean() });
3438
- var BrowserSetEnabledResult = import_zod32.z.strictObject({ enabled: import_zod32.z.boolean() });
3439
- var BrowserPairCodeParams = import_zod32.z.strictObject({});
3440
- var BrowserPairCodeResult = import_zod32.z.strictObject({ code: import_zod32.z.string().min(16).max(128) });
3441
- var BrowserPairResetParams = import_zod32.z.strictObject({});
3442
- var BrowserCallParams = import_zod32.z.strictObject({
3443
- tool: import_zod32.z.string().min(1).max(96).regex(/^[a-z][a-z0-9_]*$/),
3444
- args: import_zod32.z.record(import_zod32.z.string(), import_zod32.z.unknown()),
3514
+ owner_signed_in: import_zod33.z.boolean(),
3515
+ sessions: import_zod33.z.array(BrowserSession).max(64)
3516
+ });
3517
+ var BrowserDisconnectParams = import_zod33.z.strictObject({ client_instance: BrowserClientInstance });
3518
+ var BrowserDisconnectResult = import_zod33.z.strictObject({ disconnected: import_zod33.z.boolean() });
3519
+ var BrowserSetEnabledParams = import_zod33.z.strictObject({ enabled: import_zod33.z.boolean() });
3520
+ var BrowserSetEnabledResult = import_zod33.z.strictObject({ enabled: import_zod33.z.boolean() });
3521
+ var BrowserPairCodeParams = import_zod33.z.strictObject({});
3522
+ var BrowserPairCodeResult = import_zod33.z.strictObject({ code: import_zod33.z.string().min(16).max(128) });
3523
+ var BrowserPairResetParams = import_zod33.z.strictObject({});
3524
+ var BrowserCallParams = import_zod33.z.strictObject({
3525
+ tool: import_zod33.z.string().min(1).max(96).regex(/^[a-z][a-z0-9_]*$/),
3526
+ args: import_zod33.z.record(import_zod33.z.string(), import_zod33.z.unknown()),
3445
3527
  /** Which session; default: the most recently active routable one (BROWSER ambiguity → CONFLICT). */
3446
3528
  client_instance: BrowserClientInstance.optional(),
3447
3529
  /** How long to wait, including a person's confirmation; default 120 s. */
3448
- timeout_ms: import_zod32.z.int().min(1e3).max(6e5).optional()
3530
+ timeout_ms: import_zod33.z.int().min(1e3).max(6e5).optional()
3449
3531
  });
3450
- var BrowserCallResult = import_zod32.z.strictObject({
3532
+ var BrowserCallResult = import_zod33.z.strictObject({
3451
3533
  client_instance: BrowserClientInstance,
3452
- result: import_zod32.z.unknown(),
3534
+ result: import_zod33.z.unknown(),
3453
3535
  duration_ms: nonNegInt
3454
3536
  });
3455
- var BrowserToolMetricsParams = import_zod32.z.strictObject({ client_instance: BrowserClientInstance });
3456
- var BrowserToolMetric = import_zod32.z.strictObject({
3457
- tool: import_zod32.z.string().max(256),
3537
+ var BrowserToolMetricsParams = import_zod33.z.strictObject({ client_instance: BrowserClientInstance });
3538
+ var BrowserToolMetric = import_zod33.z.strictObject({
3539
+ tool: import_zod33.z.string().max(256),
3458
3540
  calls: nonNegInt,
3459
3541
  errors: nonNegInt,
3460
3542
  /** Over the last 200 answered calls; null before the first answer. */
3461
3543
  p50_ms: nonNegInt.nullable(),
3462
3544
  p95_ms: nonNegInt.nullable(),
3463
3545
  last_call_at_ms: epochMs.nullable(),
3464
- last_error: import_zod32.z.string().max(2048).nullable()
3546
+ last_error: import_zod33.z.string().max(2048).nullable()
3465
3547
  });
3466
- var BrowserToolMetricsResult = import_zod32.z.strictObject({ client_instance: import_zod32.z.string(), tools: import_zod32.z.array(BrowserToolMetric) });
3467
- var BrowserResetCountersParams = import_zod32.z.strictObject({ client_instance: BrowserClientInstance });
3468
- var BrowserResetCountersResult = import_zod32.z.strictObject({ reset: import_zod32.z.boolean() });
3469
- var BrowserLogParams = import_zod32.z.strictObject({
3548
+ var BrowserToolMetricsResult = import_zod33.z.strictObject({ client_instance: import_zod33.z.string(), tools: import_zod33.z.array(BrowserToolMetric) });
3549
+ var BrowserResetCountersParams = import_zod33.z.strictObject({ client_instance: BrowserClientInstance });
3550
+ var BrowserResetCountersResult = import_zod33.z.strictObject({ reset: import_zod33.z.boolean() });
3551
+ var BrowserLogParams = import_zod33.z.strictObject({
3470
3552
  /** Only messages after this seq (0: from the oldest kept; the core keeps the last 500). */
3471
3553
  after_seq: nonNegInt.default(0),
3472
- limit: import_zod32.z.int().min(1).max(500).default(500)
3554
+ limit: import_zod33.z.int().min(1).max(500).default(500)
3473
3555
  });
3474
- var BrowserLogMessage = import_zod32.z.strictObject({
3556
+ var BrowserLogMessage = import_zod33.z.strictObject({
3475
3557
  seq: nonNegInt,
3476
3558
  at_ms: epochMs,
3477
- direction: import_zod32.z.enum(["to_browser", "from_browser", "core"]),
3478
- client_instance: import_zod32.z.string(),
3479
- kind: import_zod32.z.enum(["register", "invoke", "result", "progress", "timeout", "closed"]),
3480
- tool: import_zod32.z.string().nullable(),
3481
- call_id: import_zod32.z.string().nullable(),
3482
- ok: import_zod32.z.boolean().nullable(),
3483
- detail: import_zod32.z.string().max(1024)
3484
- });
3485
- var BrowserLogResult = import_zod32.z.strictObject({
3486
- messages: import_zod32.z.array(BrowserLogMessage),
3559
+ direction: import_zod33.z.enum(["to_browser", "from_browser", "core"]),
3560
+ client_instance: import_zod33.z.string(),
3561
+ kind: import_zod33.z.enum(["register", "invoke", "result", "progress", "timeout", "closed"]),
3562
+ tool: import_zod33.z.string().nullable(),
3563
+ call_id: import_zod33.z.string().nullable(),
3564
+ ok: import_zod33.z.boolean().nullable(),
3565
+ detail: import_zod33.z.string().max(1024)
3566
+ });
3567
+ var BrowserLogResult = import_zod33.z.strictObject({
3568
+ messages: import_zod33.z.array(BrowserLogMessage),
3487
3569
  /** The newest seq the core has written (pass it back as after_seq to follow the log). */
3488
3570
  last_seq: nonNegInt
3489
3571
  });
3490
- var BrowserInvokeEvent = import_zod32.z.strictObject({
3491
- call_id: import_zod32.z.string().min(1).max(64),
3492
- tool: import_zod32.z.string().min(1).max(96),
3493
- args: import_zod32.z.record(import_zod32.z.string(), import_zod32.z.unknown()),
3572
+ var BrowserInvokeEvent = import_zod33.z.strictObject({
3573
+ call_id: import_zod33.z.string().min(1).max(64),
3574
+ tool: import_zod33.z.string().min(1).max(96),
3575
+ args: import_zod33.z.record(import_zod33.z.string(), import_zod33.z.unknown()),
3494
3576
  deadline_ms: epochMs
3495
3577
  });
3496
- var BrowserSessionsChangedEvent = import_zod32.z.strictObject({ count: nonNegInt, enabled: import_zod32.z.boolean() });
3497
- var BrowserProgressEvent = import_zod32.z.strictObject({
3498
- call_id: import_zod32.z.string().min(1).max(64),
3578
+ var BrowserSessionsChangedEvent = import_zod33.z.strictObject({ count: nonNegInt, enabled: import_zod33.z.boolean() });
3579
+ var BrowserProgressEvent = import_zod33.z.strictObject({
3580
+ call_id: import_zod33.z.string().min(1).max(64),
3499
3581
  client_instance: BrowserClientInstance,
3500
3582
  phase: BrowserCallPhase
3501
3583
  });
3502
- var DesktopHealth = import_zod32.z.strictObject({
3503
- status: import_zod32.z.literal("ok"),
3504
- service: import_zod32.z.literal("matrx-desktop"),
3505
- version: import_zod32.z.string().max(32),
3506
- protocol_version: import_zod32.z.string().max(16),
3507
- ws_path: import_zod32.z.literal("/v1/connect"),
3508
- device_id: import_zod32.z.string().max(64),
3509
- browser_connection: import_zod32.z.enum(["on", "off"])
3510
- });
3511
- var BrowserPairRequest = import_zod32.z.strictObject({ client_instance: BrowserClientInstance });
3512
- var BrowserPairResult = import_zod32.z.strictObject({ pair_token: import_zod32.z.string().min(16).max(128), ws_path: import_zod32.z.literal("/v1/connect") });
3584
+ var DesktopHealth = import_zod33.z.strictObject({
3585
+ status: import_zod33.z.literal("ok"),
3586
+ service: import_zod33.z.literal("matrx-desktop"),
3587
+ version: import_zod33.z.string().max(32),
3588
+ protocol_version: import_zod33.z.string().max(16),
3589
+ ws_path: import_zod33.z.literal("/v1/connect"),
3590
+ device_id: import_zod33.z.string().max(64),
3591
+ browser_connection: import_zod33.z.enum(["on", "off"])
3592
+ });
3593
+ var BrowserPairRequest = import_zod33.z.strictObject({ client_instance: BrowserClientInstance });
3594
+ var BrowserPairResult = import_zod33.z.strictObject({ pair_token: import_zod33.z.string().min(16).max(128), ws_path: import_zod33.z.literal("/v1/connect") });
3513
3595
 
3514
3596
  // src/schema/net.ts
3515
- var import_zod33 = require("zod");
3516
- var NetInfoParams = import_zod33.z.strictObject({});
3517
- var NetAddress = import_zod33.z.strictObject({
3518
- address: import_zod33.z.string(),
3519
- family: import_zod33.z.enum(["ipv4", "ipv6"]),
3520
- netmask: import_zod33.z.string().nullable(),
3597
+ var import_zod34 = require("zod");
3598
+ var NetInfoParams = import_zod34.z.strictObject({});
3599
+ var NetAddress = import_zod34.z.strictObject({
3600
+ address: import_zod34.z.string(),
3601
+ family: import_zod34.z.enum(["ipv4", "ipv6"]),
3602
+ netmask: import_zod34.z.string().nullable(),
3521
3603
  /** CIDR form ("192.168.1.20/24"); null where the OS gives no prefix. */
3522
- cidr: import_zod33.z.string().nullable()
3604
+ cidr: import_zod34.z.string().nullable()
3523
3605
  });
3524
- var NetInterface = import_zod33.z.strictObject({
3525
- name: import_zod33.z.string(),
3526
- mac: import_zod33.z.string().nullable(),
3606
+ var NetInterface = import_zod34.z.strictObject({
3607
+ name: import_zod34.z.string(),
3608
+ mac: import_zod34.z.string().nullable(),
3527
3609
  /** Loopback and other internal interfaces. */
3528
- internal: import_zod33.z.boolean(),
3529
- addresses: import_zod33.z.array(NetAddress)
3610
+ internal: import_zod34.z.boolean(),
3611
+ addresses: import_zod34.z.array(NetAddress)
3530
3612
  });
3531
- var NetInfoResult = import_zod33.z.strictObject({
3532
- hostname: import_zod33.z.string(),
3533
- interfaces: import_zod33.z.array(NetInterface),
3613
+ var NetInfoResult = import_zod34.z.strictObject({
3614
+ hostname: import_zod34.z.string(),
3615
+ interfaces: import_zod34.z.array(NetInterface),
3534
3616
  /** The default route's gateway; null when the OS does not say (or there is none). */
3535
- gateway: import_zod33.z.string().nullable(),
3617
+ gateway: import_zod34.z.string().nullable(),
3536
3618
  /** The DNS servers the OS uses; empty when it does not say. */
3537
- dns: import_zod33.z.array(import_zod33.z.string())
3619
+ dns: import_zod34.z.array(import_zod34.z.string())
3538
3620
  });
3539
- var NetWifiParams = import_zod33.z.strictObject({});
3540
- var NetWifiNetwork = import_zod33.z.strictObject({
3621
+ var NetWifiParams = import_zod34.z.strictObject({});
3622
+ var NetWifiNetwork = import_zod34.z.strictObject({
3541
3623
  /** null: the OS hides the name (macOS without Location Services for this app). */
3542
- ssid: import_zod33.z.string().nullable(),
3624
+ ssid: import_zod34.z.string().nullable(),
3543
3625
  /** dBm; null where the OS does not say. */
3544
- rssi: import_zod33.z.int().nullable(),
3545
- channel: import_zod33.z.string().nullable(),
3546
- security: import_zod33.z.string().nullable()
3626
+ rssi: import_zod34.z.int().nullable(),
3627
+ channel: import_zod34.z.string().nullable(),
3628
+ security: import_zod34.z.string().nullable()
3547
3629
  });
3548
- var NetWifiResult = import_zod33.z.strictObject({
3630
+ var NetWifiResult = import_zod34.z.strictObject({
3549
3631
  /** Whether the computer has a Wi-Fi interface at all. */
3550
- available: import_zod33.z.boolean(),
3632
+ available: import_zod34.z.boolean(),
3551
3633
  /** The network the computer is on; null when it is on none. */
3552
3634
  current: NetWifiNetwork.nullable(),
3553
3635
  /** Networks in range (may be empty where the OS lists none to apps). */
3554
- networks: import_zod33.z.array(NetWifiNetwork)
3636
+ networks: import_zod34.z.array(NetWifiNetwork)
3555
3637
  });
3556
- var NetBluetoothParams = import_zod33.z.strictObject({});
3557
- var NetBluetoothDevice = import_zod33.z.strictObject({
3558
- name: import_zod33.z.string(),
3559
- address: import_zod33.z.string().nullable(),
3560
- connected: import_zod33.z.boolean(),
3638
+ var NetBluetoothParams = import_zod34.z.strictObject({});
3639
+ var NetBluetoothDevice = import_zod34.z.strictObject({
3640
+ name: import_zod34.z.string(),
3641
+ address: import_zod34.z.string().nullable(),
3642
+ connected: import_zod34.z.boolean(),
3561
3643
  /** What it is, in the OS's words ("Headphones", "Keyboard"); null where it does not say. */
3562
- kind: import_zod33.z.string().nullable(),
3644
+ kind: import_zod34.z.string().nullable(),
3563
3645
  /** Battery percent, where the OS reports it. */
3564
- battery: import_zod33.z.int().min(0).max(100).nullable()
3646
+ battery: import_zod34.z.int().min(0).max(100).nullable()
3565
3647
  });
3566
- var NetBluetoothResult = import_zod33.z.strictObject({
3648
+ var NetBluetoothResult = import_zod34.z.strictObject({
3567
3649
  /** Bluetooth is on; null where the OS does not say. */
3568
- powered: import_zod33.z.boolean().nullable(),
3569
- devices: import_zod33.z.array(NetBluetoothDevice)
3570
- });
3571
- var NetDevicesParams = import_zod33.z.strictObject({});
3572
- var NetDevice = import_zod33.z.strictObject({
3573
- ip: import_zod33.z.string(),
3574
- mac: import_zod33.z.string().nullable(),
3575
- interface: import_zod33.z.string().nullable(),
3650
+ powered: import_zod34.z.boolean().nullable(),
3651
+ devices: import_zod34.z.array(NetBluetoothDevice)
3652
+ });
3653
+ var NetDevicesParams = import_zod34.z.strictObject({});
3654
+ var NetDevice = import_zod34.z.strictObject({
3655
+ ip: import_zod34.z.string(),
3656
+ mac: import_zod34.z.string().nullable(),
3657
+ interface: import_zod34.z.string().nullable(),
3576
3658
  /** The name the local network gives it (reverse DNS / mDNS), when the table carries one. */
3577
- hostname: import_zod33.z.string().nullable()
3659
+ hostname: import_zod34.z.string().nullable()
3578
3660
  });
3579
- var NetDevicesResult = import_zod33.z.strictObject({ devices: import_zod33.z.array(NetDevice) });
3580
- var NetMdnsParams = import_zod33.z.strictObject({
3661
+ var NetDevicesResult = import_zod34.z.strictObject({ devices: import_zod34.z.array(NetDevice) });
3662
+ var NetMdnsParams = import_zod34.z.strictObject({
3581
3663
  /** A service type ("_http._tcp"); absent lists the service types found. */
3582
- service_type: import_zod33.z.string().min(1).max(64).regex(/^_[A-Za-z0-9-]+\._(tcp|udp)$/).optional(),
3664
+ service_type: import_zod34.z.string().min(1).max(64).regex(/^_[A-Za-z0-9-]+\._(tcp|udp)$/).optional(),
3583
3665
  /** How long to listen. */
3584
- timeout_s: import_zod33.z.int().min(1).max(30).default(3)
3666
+ timeout_s: import_zod34.z.int().min(1).max(30).default(3)
3585
3667
  });
3586
- var NetMdnsService = import_zod33.z.strictObject({
3587
- name: import_zod33.z.string(),
3588
- type: import_zod33.z.string(),
3589
- domain: import_zod33.z.string(),
3590
- interface: import_zod33.z.string().nullable()
3668
+ var NetMdnsService = import_zod34.z.strictObject({
3669
+ name: import_zod34.z.string(),
3670
+ type: import_zod34.z.string(),
3671
+ domain: import_zod34.z.string(),
3672
+ interface: import_zod34.z.string().nullable()
3591
3673
  });
3592
- var NetMdnsResult = import_zod33.z.strictObject({ services: import_zod33.z.array(NetMdnsService) });
3593
- var NetScanParams = import_zod33.z.strictObject({
3674
+ var NetMdnsResult = import_zod34.z.strictObject({ services: import_zod34.z.array(NetMdnsService) });
3675
+ var NetScanParams = import_zod34.z.strictObject({
3594
3676
  /** A host name or address; a private or loopback address unless `allow_public`. */
3595
- host: import_zod33.z.string().min(1).max(253),
3596
- ports: import_zod33.z.array(import_zod33.z.int().min(1).max(65535)).min(1).max(1024),
3597
- timeout_ms: import_zod33.z.int().min(50).max(1e4).default(800),
3677
+ host: import_zod34.z.string().min(1).max(253),
3678
+ ports: import_zod34.z.array(import_zod34.z.int().min(1).max(65535)).min(1).max(1024),
3679
+ timeout_ms: import_zod34.z.int().min(50).max(1e4).default(800),
3598
3680
  /** Scanning a host on the public internet needs saying so. */
3599
- allow_public: import_zod33.z.boolean().default(false)
3681
+ allow_public: import_zod34.z.boolean().default(false)
3600
3682
  });
3601
- var NetScanResult = import_zod33.z.strictObject({
3602
- host: import_zod33.z.string(),
3683
+ var NetScanResult = import_zod34.z.strictObject({
3684
+ host: import_zod34.z.string(),
3603
3685
  /** The address the host resolved to. */
3604
- address: import_zod33.z.string(),
3605
- open: import_zod33.z.array(import_zod33.z.int().min(1).max(65535)),
3686
+ address: import_zod34.z.string(),
3687
+ open: import_zod34.z.array(import_zod34.z.int().min(1).max(65535)),
3606
3688
  closed: nonNegInt,
3607
3689
  elapsed_ms: nonNegInt
3608
3690
  });
3609
- var NetDownloadParams = import_zod33.z.strictObject({
3610
- url: import_zod33.z.string().min(1).max(8192).regex(/^https?:\/\//),
3691
+ var NetDownloadParams = import_zod34.z.strictObject({
3692
+ url: import_zod34.z.string().min(1).max(8192).regex(/^https?:\/\//),
3611
3693
  /** Where to save it: an absolute path (a folder keeps the URL's file name). */
3612
3694
  path: AbsPath,
3613
- overwrite: import_zod33.z.boolean().default(false),
3614
- timeout_s: import_zod33.z.int().min(1).max(3600).default(300),
3695
+ overwrite: import_zod34.z.boolean().default(false),
3696
+ timeout_s: import_zod34.z.int().min(1).max(3600).default(300),
3615
3697
  /** Refuse anything larger. */
3616
- max_bytes: import_zod33.z.int().min(1).max(10737418240).default(2147483648)
3698
+ max_bytes: import_zod34.z.int().min(1).max(10737418240).default(2147483648)
3617
3699
  });
3618
- var NetDownloadResult = import_zod33.z.strictObject({
3619
- path: import_zod33.z.string(),
3700
+ var NetDownloadResult = import_zod34.z.strictObject({
3701
+ path: import_zod34.z.string(),
3620
3702
  bytes: nonNegInt,
3621
- content_type: import_zod33.z.string().nullable(),
3703
+ content_type: import_zod34.z.string().nullable(),
3622
3704
  /** The final URL after redirects. */
3623
- url: import_zod33.z.string(),
3705
+ url: import_zod34.z.string(),
3624
3706
  elapsed_ms: nonNegInt
3625
3707
  });
3626
3708
 
3627
3709
  // src/schema/personal.ts
3628
- var import_zod34 = require("zod");
3629
- var Text = import_zod34.z.string().max(65536);
3630
- var AutomationScriptParams = import_zod34.z.strictObject({
3710
+ var import_zod35 = require("zod");
3711
+ var Text = import_zod35.z.string().max(65536);
3712
+ var AutomationScriptParams = import_zod35.z.strictObject({
3631
3713
  /** applescript and jxa: macOS (osascript); powershell: Windows (and pwsh where installed). */
3632
- language: import_zod34.z.enum(["applescript", "jxa", "powershell"]),
3633
- script: import_zod34.z.string().min(1).max(262144),
3634
- timeout_s: import_zod34.z.int().min(1).max(600).default(60)
3635
- });
3636
- var AutomationScriptResult = import_zod34.z.strictObject({
3637
- stdout: import_zod34.z.string(),
3638
- stderr: import_zod34.z.string(),
3639
- exit_code: import_zod34.z.int(),
3640
- timed_out: import_zod34.z.boolean(),
3714
+ language: import_zod35.z.enum(["applescript", "jxa", "powershell"]),
3715
+ script: import_zod35.z.string().min(1).max(262144),
3716
+ timeout_s: import_zod35.z.int().min(1).max(600).default(60)
3717
+ });
3718
+ var AutomationScriptResult = import_zod35.z.strictObject({
3719
+ stdout: import_zod35.z.string(),
3720
+ stderr: import_zod35.z.string(),
3721
+ exit_code: import_zod35.z.int(),
3722
+ timed_out: import_zod35.z.boolean(),
3641
3723
  /** stdout or stderr was cut at 1 MiB. */
3642
- truncated: import_zod34.z.boolean(),
3724
+ truncated: import_zod35.z.boolean(),
3643
3725
  elapsed_ms: nonNegInt
3644
3726
  });
3645
- var MailAccountsParams = import_zod34.z.strictObject({});
3646
- var MailAccount = import_zod34.z.strictObject({ name: import_zod34.z.string(), emails: import_zod34.z.array(import_zod34.z.string()), enabled: import_zod34.z.boolean() });
3647
- var MailAccountsResult = import_zod34.z.strictObject({ accounts: import_zod34.z.array(MailAccount) });
3648
- var MailListParams = import_zod34.z.strictObject({
3727
+ var MailAccountsParams = import_zod35.z.strictObject({});
3728
+ var MailAccount = import_zod35.z.strictObject({ name: import_zod35.z.string(), emails: import_zod35.z.array(import_zod35.z.string()), enabled: import_zod35.z.boolean() });
3729
+ var MailAccountsResult = import_zod35.z.strictObject({ accounts: import_zod35.z.array(MailAccount) });
3730
+ var MailListParams = import_zod35.z.strictObject({
3649
3731
  /** The account's name in Mail; absent: every account. */
3650
- account: import_zod34.z.string().min(1).max(256).optional(),
3732
+ account: import_zod35.z.string().min(1).max(256).optional(),
3651
3733
  /** The mailbox's name ("INBOX", "Sent Messages"). */
3652
- mailbox: import_zod34.z.string().min(1).max(256).default("INBOX"),
3653
- unread_only: import_zod34.z.boolean().default(false),
3654
- limit: import_zod34.z.int().min(1).max(200).default(25)
3655
- });
3656
- var MailMessage = import_zod34.z.strictObject({
3657
- id: import_zod34.z.string(),
3658
- subject: import_zod34.z.string(),
3659
- sender: import_zod34.z.string(),
3734
+ mailbox: import_zod35.z.string().min(1).max(256).default("INBOX"),
3735
+ unread_only: import_zod35.z.boolean().default(false),
3736
+ limit: import_zod35.z.int().min(1).max(200).default(25)
3737
+ });
3738
+ var MailMessage = import_zod35.z.strictObject({
3739
+ id: import_zod35.z.string(),
3740
+ subject: import_zod35.z.string(),
3741
+ sender: import_zod35.z.string(),
3660
3742
  received_at_ms: epochMs.nullable(),
3661
- read: import_zod34.z.boolean(),
3662
- account: import_zod34.z.string(),
3663
- mailbox: import_zod34.z.string(),
3743
+ read: import_zod35.z.boolean(),
3744
+ account: import_zod35.z.string(),
3745
+ mailbox: import_zod35.z.string(),
3664
3746
  /** The first lines of the message's text. */
3665
- preview: import_zod34.z.string()
3747
+ preview: import_zod35.z.string()
3666
3748
  });
3667
- var MailListResult = import_zod34.z.strictObject({ messages: import_zod34.z.array(MailMessage) });
3668
- var MailSendParams = import_zod34.z.strictObject({
3669
- to: import_zod34.z.array(import_zod34.z.string().min(3).max(320)).min(1).max(50),
3670
- cc: import_zod34.z.array(import_zod34.z.string().min(3).max(320)).max(50).default([]),
3671
- subject: import_zod34.z.string().max(998),
3749
+ var MailListResult = import_zod35.z.strictObject({ messages: import_zod35.z.array(MailMessage) });
3750
+ var MailSendParams = import_zod35.z.strictObject({
3751
+ to: import_zod35.z.array(import_zod35.z.string().min(3).max(320)).min(1).max(50),
3752
+ cc: import_zod35.z.array(import_zod35.z.string().min(3).max(320)).max(50).default([]),
3753
+ subject: import_zod35.z.string().max(998),
3672
3754
  body: Text,
3673
3755
  /** The sending account's address; absent: Mail's default. */
3674
- from: import_zod34.z.string().min(3).max(320).optional(),
3756
+ from: import_zod35.z.string().min(3).max(320).optional(),
3675
3757
  /** false leaves it open in Mail as a draft for the person to send. */
3676
- send: import_zod34.z.boolean().default(true)
3758
+ send: import_zod35.z.boolean().default(true)
3677
3759
  });
3678
- var MailSendResult = import_zod34.z.strictObject({ sent: import_zod34.z.boolean() });
3679
- var OutlookStatusParams = import_zod34.z.strictObject({});
3680
- var OutlookAccount = import_zod34.z.strictObject({ name: import_zod34.z.string(), email: import_zod34.z.string().nullable() });
3681
- var OutlookStatusResult = import_zod34.z.strictObject({
3760
+ var MailSendResult = import_zod35.z.strictObject({ sent: import_zod35.z.boolean() });
3761
+ var OutlookStatusParams = import_zod35.z.strictObject({});
3762
+ var OutlookAccount = import_zod35.z.strictObject({ name: import_zod35.z.string(), email: import_zod35.z.string().nullable() });
3763
+ var OutlookStatusResult = import_zod35.z.strictObject({
3682
3764
  /** classic_windows: scriptable. new_windows / mac: installed, not scriptable. none: not found. */
3683
- client: import_zod34.z.enum(["classic_windows", "new_windows", "mac", "none"]),
3684
- scriptable: import_zod34.z.boolean(),
3685
- version: import_zod34.z.string().nullable(),
3686
- accounts: import_zod34.z.array(OutlookAccount),
3765
+ client: import_zod35.z.enum(["classic_windows", "new_windows", "mac", "none"]),
3766
+ scriptable: import_zod35.z.boolean(),
3767
+ version: import_zod35.z.string().nullable(),
3768
+ accounts: import_zod35.z.array(OutlookAccount),
3687
3769
  /** Why it is not scriptable here, in a sentence the person can act on; null when it is. */
3688
- reason: import_zod34.z.string().nullable()
3689
- });
3690
- var Address = import_zod34.z.string().min(3).max(320);
3691
- var OutlookDraftParams = import_zod34.z.strictObject({
3692
- to: import_zod34.z.array(Address).max(100).default([]),
3693
- cc: import_zod34.z.array(Address).max(100).default([]),
3694
- bcc: import_zod34.z.array(Address).max(100).default([]),
3695
- subject: import_zod34.z.string().max(998).default(""),
3696
- body: import_zod34.z.string().max(1048576).default(""),
3697
- body_format: import_zod34.z.enum(["text", "html"]).default("text"),
3770
+ reason: import_zod35.z.string().nullable()
3771
+ });
3772
+ var Address = import_zod35.z.string().min(3).max(320);
3773
+ var OutlookDraftParams = import_zod35.z.strictObject({
3774
+ to: import_zod35.z.array(Address).max(100).default([]),
3775
+ cc: import_zod35.z.array(Address).max(100).default([]),
3776
+ bcc: import_zod35.z.array(Address).max(100).default([]),
3777
+ subject: import_zod35.z.string().max(998).default(""),
3778
+ body: import_zod35.z.string().max(1048576).default(""),
3779
+ body_format: import_zod35.z.enum(["text", "html"]).default("text"),
3698
3780
  /** Files on this computer to attach (absolute paths). */
3699
- attachments: import_zod34.z.array(import_zod34.z.string().min(1).max(4096)).max(50).default([]),
3781
+ attachments: import_zod35.z.array(import_zod35.z.string().min(1).max(4096)).max(50).default([]),
3700
3782
  /** The sending account's address (one of outlook.status's accounts); absent: Outlook's default. */
3701
3783
  account: Address.optional(),
3702
3784
  /** true also opens the draft in a window for the person. */
3703
- display: import_zod34.z.boolean().default(false)
3785
+ display: import_zod35.z.boolean().default(false)
3704
3786
  });
3705
- var OutlookDraftResult = import_zod34.z.strictObject({
3787
+ var OutlookDraftResult = import_zod35.z.strictObject({
3706
3788
  /** The draft's id in Outlook (outlook.read takes it). */
3707
- id: import_zod34.z.string(),
3708
- account: import_zod34.z.string().nullable(),
3709
- folder: import_zod34.z.string(),
3789
+ id: import_zod35.z.string(),
3790
+ account: import_zod35.z.string().nullable(),
3791
+ folder: import_zod35.z.string(),
3710
3792
  attachments: nonNegInt,
3711
- displayed: import_zod34.z.boolean()
3793
+ displayed: import_zod35.z.boolean()
3712
3794
  });
3713
- var OutlookListParams = import_zod34.z.strictObject({
3714
- folder: import_zod34.z.enum(["inbox", "sent", "drafts"]).default("inbox"),
3795
+ var OutlookListParams = import_zod35.z.strictObject({
3796
+ folder: import_zod35.z.enum(["inbox", "sent", "drafts"]).default("inbox"),
3715
3797
  /** The account's address; absent: the default account. */
3716
3798
  account: Address.optional(),
3717
- unread_only: import_zod34.z.boolean().default(false),
3718
- limit: import_zod34.z.int().min(1).max(200).default(25)
3799
+ unread_only: import_zod35.z.boolean().default(false),
3800
+ limit: import_zod35.z.int().min(1).max(200).default(25)
3719
3801
  });
3720
- var OutlookMessage = import_zod34.z.strictObject({
3721
- id: import_zod34.z.string(),
3722
- subject: import_zod34.z.string(),
3723
- sender: import_zod34.z.string(),
3802
+ var OutlookMessage = import_zod35.z.strictObject({
3803
+ id: import_zod35.z.string(),
3804
+ subject: import_zod35.z.string(),
3805
+ sender: import_zod35.z.string(),
3724
3806
  received_at_ms: epochMs.nullable(),
3725
- read: import_zod34.z.boolean(),
3726
- has_attachments: import_zod34.z.boolean(),
3807
+ read: import_zod35.z.boolean(),
3808
+ has_attachments: import_zod35.z.boolean(),
3727
3809
  /** The first lines of the message's text. */
3728
- preview: import_zod34.z.string()
3729
- });
3730
- var OutlookListResult = import_zod34.z.strictObject({ folder: import_zod34.z.string(), messages: import_zod34.z.array(OutlookMessage) });
3731
- var OutlookReadParams = import_zod34.z.strictObject({ id: import_zod34.z.string().min(1).max(1024) });
3732
- var OutlookReadResult = import_zod34.z.strictObject({
3733
- id: import_zod34.z.string(),
3734
- subject: import_zod34.z.string(),
3735
- sender: import_zod34.z.string(),
3736
- to: import_zod34.z.array(import_zod34.z.string()),
3737
- cc: import_zod34.z.array(import_zod34.z.string()),
3810
+ preview: import_zod35.z.string()
3811
+ });
3812
+ var OutlookListResult = import_zod35.z.strictObject({ folder: import_zod35.z.string(), messages: import_zod35.z.array(OutlookMessage) });
3813
+ var OutlookReadParams = import_zod35.z.strictObject({ id: import_zod35.z.string().min(1).max(1024) });
3814
+ var OutlookReadResult = import_zod35.z.strictObject({
3815
+ id: import_zod35.z.string(),
3816
+ subject: import_zod35.z.string(),
3817
+ sender: import_zod35.z.string(),
3818
+ to: import_zod35.z.array(import_zod35.z.string()),
3819
+ cc: import_zod35.z.array(import_zod35.z.string()),
3738
3820
  received_at_ms: epochMs.nullable(),
3739
3821
  /** The plain text body, cut at 1 MiB. */
3740
- body: import_zod34.z.string(),
3741
- attachments: import_zod34.z.array(import_zod34.z.strictObject({ name: import_zod34.z.string(), size: nonNegInt }))
3742
- });
3743
- var MessagesChatsParams = import_zod34.z.strictObject({ limit: import_zod34.z.int().min(1).max(200).default(25) });
3744
- var MessagesChat = import_zod34.z.strictObject({
3745
- chat_id: import_zod34.z.string(),
3746
- name: import_zod34.z.string().nullable(),
3747
- participants: import_zod34.z.array(import_zod34.z.string()),
3822
+ body: import_zod35.z.string(),
3823
+ attachments: import_zod35.z.array(import_zod35.z.strictObject({ name: import_zod35.z.string(), size: nonNegInt }))
3824
+ });
3825
+ var MessagesChatsParams = import_zod35.z.strictObject({ limit: import_zod35.z.int().min(1).max(200).default(25) });
3826
+ var MessagesChat = import_zod35.z.strictObject({
3827
+ chat_id: import_zod35.z.string(),
3828
+ name: import_zod35.z.string().nullable(),
3829
+ participants: import_zod35.z.array(import_zod35.z.string()),
3748
3830
  last_message_at_ms: epochMs.nullable(),
3749
- service: import_zod34.z.string().nullable()
3831
+ service: import_zod35.z.string().nullable()
3750
3832
  });
3751
- var MessagesChatsResult = import_zod34.z.strictObject({ chats: import_zod34.z.array(MessagesChat) });
3752
- var MessagesListParams = import_zod34.z.strictObject({
3833
+ var MessagesChatsResult = import_zod35.z.strictObject({ chats: import_zod35.z.array(MessagesChat) });
3834
+ var MessagesListParams = import_zod35.z.strictObject({
3753
3835
  /** One chat (messages.chats' chat_id); absent: the newest across all. */
3754
- chat_id: import_zod34.z.string().min(1).max(512).optional(),
3755
- limit: import_zod34.z.int().min(1).max(500).default(50)
3756
- });
3757
- var MessagesMessage = import_zod34.z.strictObject({
3758
- id: import_zod34.z.string(),
3759
- chat_id: import_zod34.z.string().nullable(),
3760
- text: import_zod34.z.string(),
3761
- from_me: import_zod34.z.boolean(),
3836
+ chat_id: import_zod35.z.string().min(1).max(512).optional(),
3837
+ limit: import_zod35.z.int().min(1).max(500).default(50)
3838
+ });
3839
+ var MessagesMessage = import_zod35.z.strictObject({
3840
+ id: import_zod35.z.string(),
3841
+ chat_id: import_zod35.z.string().nullable(),
3842
+ text: import_zod35.z.string(),
3843
+ from_me: import_zod35.z.boolean(),
3762
3844
  /** The other person's handle (phone or email); null for the person's own messages. */
3763
- sender: import_zod34.z.string().nullable(),
3845
+ sender: import_zod35.z.string().nullable(),
3764
3846
  sent_at_ms: epochMs.nullable()
3765
3847
  });
3766
- var MessagesListResult = import_zod34.z.strictObject({ messages: import_zod34.z.array(MessagesMessage) });
3767
- var MessagesSendParams = import_zod34.z.strictObject({
3848
+ var MessagesListResult = import_zod35.z.strictObject({ messages: import_zod35.z.array(MessagesMessage) });
3849
+ var MessagesSendParams = import_zod35.z.strictObject({
3768
3850
  /** A phone number or email the person can message. */
3769
- to: import_zod34.z.string().min(3).max(320),
3770
- text: import_zod34.z.string().min(1).max(2e4),
3851
+ to: import_zod35.z.string().min(3).max(320),
3852
+ text: import_zod35.z.string().min(1).max(2e4),
3771
3853
  /**
3772
3854
  * Send only over this service (Matrx Local's SendMessage `service`). Absent: iMessage first, and
3773
3855
  * SMS when the recipient has no iMessage (since 1.42).
3774
3856
  */
3775
- service: import_zod34.z.enum(["iMessage", "SMS"]).optional()
3857
+ service: import_zod35.z.enum(["iMessage", "SMS"]).optional()
3776
3858
  });
3777
- var MessagesSendResult = import_zod34.z.strictObject({ sent: import_zod34.z.boolean() });
3778
- var ContactsSearchParams = import_zod34.z.strictObject({
3859
+ var MessagesSendResult = import_zod35.z.strictObject({ sent: import_zod35.z.boolean() });
3860
+ var ContactsSearchParams = import_zod35.z.strictObject({
3779
3861
  /** Matched against names, organizations, emails and phone numbers. */
3780
- query: import_zod34.z.string().min(1).max(256),
3781
- limit: import_zod34.z.int().min(1).max(200).default(25)
3862
+ query: import_zod35.z.string().min(1).max(256),
3863
+ limit: import_zod35.z.int().min(1).max(200).default(25)
3782
3864
  });
3783
- var ContactLabeled = import_zod34.z.strictObject({ label: import_zod34.z.string().nullable(), value: import_zod34.z.string() });
3784
- var ContactSummary = import_zod34.z.strictObject({
3785
- id: import_zod34.z.string(),
3786
- name: import_zod34.z.string(),
3787
- organization: import_zod34.z.string().nullable(),
3788
- emails: import_zod34.z.array(ContactLabeled),
3789
- phones: import_zod34.z.array(ContactLabeled)
3790
- });
3791
- var ContactsSearchResult = import_zod34.z.strictObject({ contacts: import_zod34.z.array(ContactSummary) });
3792
- var ContactsGetParams = import_zod34.z.strictObject({ id: import_zod34.z.string().min(1).max(256) });
3793
- var ContactDetail = import_zod34.z.strictObject({
3794
- id: import_zod34.z.string(),
3795
- name: import_zod34.z.string(),
3796
- organization: import_zod34.z.string().nullable(),
3797
- job_title: import_zod34.z.string().nullable(),
3798
- emails: import_zod34.z.array(ContactLabeled),
3799
- phones: import_zod34.z.array(ContactLabeled),
3800
- addresses: import_zod34.z.array(ContactLabeled),
3801
- birthday: import_zod34.z.string().nullable(),
3802
- note: import_zod34.z.string().nullable()
3803
- });
3804
- var ContactsGetResult = import_zod34.z.strictObject({ contact: ContactDetail });
3805
- var CalendarListParams = import_zod34.z.strictObject({
3865
+ var ContactLabeled = import_zod35.z.strictObject({ label: import_zod35.z.string().nullable(), value: import_zod35.z.string() });
3866
+ var ContactSummary = import_zod35.z.strictObject({
3867
+ id: import_zod35.z.string(),
3868
+ name: import_zod35.z.string(),
3869
+ organization: import_zod35.z.string().nullable(),
3870
+ emails: import_zod35.z.array(ContactLabeled),
3871
+ phones: import_zod35.z.array(ContactLabeled)
3872
+ });
3873
+ var ContactsSearchResult = import_zod35.z.strictObject({ contacts: import_zod35.z.array(ContactSummary) });
3874
+ var ContactsGetParams = import_zod35.z.strictObject({ id: import_zod35.z.string().min(1).max(256) });
3875
+ var ContactDetail = import_zod35.z.strictObject({
3876
+ id: import_zod35.z.string(),
3877
+ name: import_zod35.z.string(),
3878
+ organization: import_zod35.z.string().nullable(),
3879
+ job_title: import_zod35.z.string().nullable(),
3880
+ emails: import_zod35.z.array(ContactLabeled),
3881
+ phones: import_zod35.z.array(ContactLabeled),
3882
+ addresses: import_zod35.z.array(ContactLabeled),
3883
+ birthday: import_zod35.z.string().nullable(),
3884
+ note: import_zod35.z.string().nullable()
3885
+ });
3886
+ var ContactsGetResult = import_zod35.z.strictObject({ contact: ContactDetail });
3887
+ var CalendarListParams = import_zod35.z.strictObject({
3806
3888
  from_ms: epochMs,
3807
3889
  to_ms: epochMs,
3808
3890
  /** One calendar's name; absent: every calendar. */
3809
- calendar: import_zod34.z.string().min(1).max(256).optional(),
3810
- limit: import_zod34.z.int().min(1).max(500).default(100)
3891
+ calendar: import_zod35.z.string().min(1).max(256).optional(),
3892
+ limit: import_zod35.z.int().min(1).max(500).default(100)
3811
3893
  });
3812
- var CalendarEvent = import_zod34.z.strictObject({
3813
- id: import_zod34.z.string(),
3814
- title: import_zod34.z.string(),
3894
+ var CalendarEvent = import_zod35.z.strictObject({
3895
+ id: import_zod35.z.string(),
3896
+ title: import_zod35.z.string(),
3815
3897
  start_ms: epochMs,
3816
3898
  end_ms: epochMs,
3817
- all_day: import_zod34.z.boolean(),
3818
- calendar: import_zod34.z.string(),
3819
- location: import_zod34.z.string().nullable(),
3820
- notes: import_zod34.z.string().nullable()
3821
- });
3822
- var CalendarListResult = import_zod34.z.strictObject({ events: import_zod34.z.array(CalendarEvent) });
3823
- var CalendarCreateParams = import_zod34.z.strictObject({
3824
- title: import_zod34.z.string().min(1).max(1024),
3899
+ all_day: import_zod35.z.boolean(),
3900
+ calendar: import_zod35.z.string(),
3901
+ location: import_zod35.z.string().nullable(),
3902
+ notes: import_zod35.z.string().nullable()
3903
+ });
3904
+ var CalendarListResult = import_zod35.z.strictObject({ events: import_zod35.z.array(CalendarEvent) });
3905
+ var CalendarCreateParams = import_zod35.z.strictObject({
3906
+ title: import_zod35.z.string().min(1).max(1024),
3825
3907
  start_ms: epochMs,
3826
3908
  end_ms: epochMs,
3827
- all_day: import_zod34.z.boolean().default(false),
3909
+ all_day: import_zod35.z.boolean().default(false),
3828
3910
  /** The calendar's name; absent: the first writable calendar. */
3829
- calendar: import_zod34.z.string().min(1).max(256).optional(),
3830
- location: import_zod34.z.string().max(1024).optional(),
3911
+ calendar: import_zod35.z.string().min(1).max(256).optional(),
3912
+ location: import_zod35.z.string().max(1024).optional(),
3831
3913
  notes: Text.optional()
3832
3914
  });
3833
- var CalendarCreateResult = import_zod34.z.strictObject({ id: import_zod34.z.string(), calendar: import_zod34.z.string() });
3834
- var RemindersListParams = import_zod34.z.strictObject({
3915
+ var CalendarCreateResult = import_zod35.z.strictObject({ id: import_zod35.z.string(), calendar: import_zod35.z.string() });
3916
+ var RemindersListParams = import_zod35.z.strictObject({
3835
3917
  /** One list's name; absent: every list. */
3836
- list: import_zod34.z.string().min(1).max(256).optional(),
3837
- include_completed: import_zod34.z.boolean().default(false),
3838
- limit: import_zod34.z.int().min(1).max(500).default(100)
3839
- });
3840
- var Reminder = import_zod34.z.strictObject({
3841
- id: import_zod34.z.string(),
3842
- title: import_zod34.z.string(),
3843
- list: import_zod34.z.string(),
3918
+ list: import_zod35.z.string().min(1).max(256).optional(),
3919
+ include_completed: import_zod35.z.boolean().default(false),
3920
+ limit: import_zod35.z.int().min(1).max(500).default(100)
3921
+ });
3922
+ var Reminder = import_zod35.z.strictObject({
3923
+ id: import_zod35.z.string(),
3924
+ title: import_zod35.z.string(),
3925
+ list: import_zod35.z.string(),
3844
3926
  due_ms: epochMs.nullable(),
3845
- completed: import_zod34.z.boolean(),
3846
- notes: import_zod34.z.string().nullable()
3927
+ completed: import_zod35.z.boolean(),
3928
+ notes: import_zod35.z.string().nullable()
3847
3929
  });
3848
- var RemindersListResult = import_zod34.z.strictObject({ reminders: import_zod34.z.array(Reminder) });
3849
- var RemindersCreateParams = import_zod34.z.strictObject({
3850
- title: import_zod34.z.string().min(1).max(1024),
3930
+ var RemindersListResult = import_zod35.z.strictObject({ reminders: import_zod35.z.array(Reminder) });
3931
+ var RemindersCreateParams = import_zod35.z.strictObject({
3932
+ title: import_zod35.z.string().min(1).max(1024),
3851
3933
  due_ms: epochMs.optional(),
3852
- list: import_zod34.z.string().min(1).max(256).optional(),
3934
+ list: import_zod35.z.string().min(1).max(256).optional(),
3853
3935
  notes: Text.optional()
3854
3936
  });
3855
- var RemindersCreateResult = import_zod34.z.strictObject({ id: import_zod34.z.string(), list: import_zod34.z.string() });
3856
- var PhotosSearchParams = import_zod34.z.strictObject({
3937
+ var RemindersCreateResult = import_zod35.z.strictObject({ id: import_zod35.z.string(), list: import_zod35.z.string() });
3938
+ var PhotosSearchParams = import_zod35.z.strictObject({
3857
3939
  /** Matched against file names, titles, descriptions and keywords; absent: the newest. */
3858
- query: import_zod34.z.string().min(1).max(256).optional(),
3940
+ query: import_zod35.z.string().min(1).max(256).optional(),
3859
3941
  from_ms: epochMs.optional(),
3860
3942
  to_ms: epochMs.optional(),
3861
- favorites_only: import_zod34.z.boolean().default(false),
3862
- limit: import_zod34.z.int().min(1).max(200).default(25)
3943
+ favorites_only: import_zod35.z.boolean().default(false),
3944
+ limit: import_zod35.z.int().min(1).max(200).default(25)
3863
3945
  });
3864
- var Photo = import_zod34.z.strictObject({
3865
- id: import_zod34.z.string(),
3866
- filename: import_zod34.z.string(),
3946
+ var Photo = import_zod35.z.strictObject({
3947
+ id: import_zod35.z.string(),
3948
+ filename: import_zod35.z.string(),
3867
3949
  taken_at_ms: epochMs.nullable(),
3868
3950
  width: nonNegInt.nullable(),
3869
3951
  height: nonNegInt.nullable(),
3870
- favorite: import_zod34.z.boolean(),
3871
- title: import_zod34.z.string().nullable()
3952
+ favorite: import_zod35.z.boolean(),
3953
+ title: import_zod35.z.string().nullable()
3872
3954
  });
3873
- var PhotosSearchResult = import_zod34.z.strictObject({ photos: import_zod34.z.array(Photo) });
3874
- var PhotosGetParams = import_zod34.z.strictObject({
3875
- id: import_zod34.z.string().min(1).max(256),
3955
+ var PhotosSearchResult = import_zod35.z.strictObject({ photos: import_zod35.z.array(Photo) });
3956
+ var PhotosGetParams = import_zod35.z.strictObject({
3957
+ id: import_zod35.z.string().min(1).max(256),
3876
3958
  /** Copy the original into a folder Matrx 2 owns and answer its path (then fs_read or desktop_documents reads it). */
3877
- export: import_zod34.z.boolean().default(false)
3959
+ export: import_zod35.z.boolean().default(false)
3878
3960
  });
3879
- var PhotosGetResult = import_zod34.z.strictObject({ photo: Photo, path: import_zod34.z.string().nullable() });
3880
- var LocationGetParams = import_zod34.z.strictObject({ timeout_s: import_zod34.z.int().min(1).max(60).default(15) });
3881
- var LocationGetResult = import_zod34.z.strictObject({
3882
- latitude: import_zod34.z.number().min(-90).max(90),
3883
- longitude: import_zod34.z.number().min(-180).max(180),
3961
+ var PhotosGetResult = import_zod35.z.strictObject({ photo: Photo, path: import_zod35.z.string().nullable() });
3962
+ var LocationGetParams = import_zod35.z.strictObject({ timeout_s: import_zod35.z.int().min(1).max(60).default(15) });
3963
+ var LocationGetResult = import_zod35.z.strictObject({
3964
+ latitude: import_zod35.z.number().min(-90).max(90),
3965
+ longitude: import_zod35.z.number().min(-180).max(180),
3884
3966
  /** Metres; null where the OS does not say. */
3885
- accuracy_m: import_zod34.z.number().min(0).nullable(),
3967
+ accuracy_m: import_zod35.z.number().min(0).nullable(),
3886
3968
  at_ms: epochMs,
3887
3969
  /** Who answered: the OS's own location service. */
3888
- source: import_zod34.z.enum(["corelocation", "windows", "geoclue"])
3970
+ source: import_zod35.z.enum(["corelocation", "windows", "geoclue"])
3889
3971
  });
3890
3972
 
3891
3973
  // src/schema/windows.ts
3892
- var import_zod35 = require("zod");
3893
- var RegistryKey = import_zod35.z.string().min(6).max(1024).regex(/^(HKLM|HKCU|HKCR|HKU|HKCC|HKEY_LOCAL_MACHINE|HKEY_CURRENT_USER|HKEY_CLASSES_ROOT|HKEY_USERS|HKEY_CURRENT_CONFIG)(\\.*)?$/);
3894
- var RegistryValueType = import_zod35.z.enum(["REG_SZ", "REG_EXPAND_SZ", "REG_MULTI_SZ", "REG_DWORD", "REG_QWORD", "REG_BINARY", "REG_NONE"]);
3895
- var WindowsRegistryReadParams = import_zod35.z.strictObject({
3974
+ var import_zod36 = require("zod");
3975
+ var RegistryKey = import_zod36.z.string().min(6).max(1024).regex(/^(HKLM|HKCU|HKCR|HKU|HKCC|HKEY_LOCAL_MACHINE|HKEY_CURRENT_USER|HKEY_CLASSES_ROOT|HKEY_USERS|HKEY_CURRENT_CONFIG)(\\.*)?$/);
3976
+ var RegistryValueType = import_zod36.z.enum(["REG_SZ", "REG_EXPAND_SZ", "REG_MULTI_SZ", "REG_DWORD", "REG_QWORD", "REG_BINARY", "REG_NONE"]);
3977
+ var WindowsRegistryReadParams = import_zod36.z.strictObject({
3896
3978
  key: RegistryKey,
3897
3979
  /** One value's name ("" is the key's default value); absent: every value and the subkeys. */
3898
- name: import_zod35.z.string().max(16383).optional()
3980
+ name: import_zod36.z.string().max(16383).optional()
3899
3981
  });
3900
- var RegistryValue = import_zod35.z.strictObject({ name: import_zod35.z.string(), type: RegistryValueType, data: import_zod35.z.string() });
3901
- var WindowsRegistryReadResult = import_zod35.z.strictObject({
3902
- key: import_zod35.z.string(),
3903
- exists: import_zod35.z.boolean(),
3904
- values: import_zod35.z.array(RegistryValue),
3905
- subkeys: import_zod35.z.array(import_zod35.z.string())
3982
+ var RegistryValue = import_zod36.z.strictObject({ name: import_zod36.z.string(), type: RegistryValueType, data: import_zod36.z.string() });
3983
+ var WindowsRegistryReadResult = import_zod36.z.strictObject({
3984
+ key: import_zod36.z.string(),
3985
+ exists: import_zod36.z.boolean(),
3986
+ values: import_zod36.z.array(RegistryValue),
3987
+ subkeys: import_zod36.z.array(import_zod36.z.string())
3906
3988
  });
3907
- var WindowsRegistryWriteParams = import_zod35.z.strictObject({
3989
+ var WindowsRegistryWriteParams = import_zod36.z.strictObject({
3908
3990
  key: RegistryKey,
3909
- name: import_zod35.z.string().max(16383),
3991
+ name: import_zod36.z.string().max(16383),
3910
3992
  type: RegistryValueType.default("REG_SZ"),
3911
3993
  /** As reg.exe takes it: text, a number, hex for binary, \\0 between the strings of a multi-string. */
3912
- data: import_zod35.z.string().max(1048576),
3994
+ data: import_zod36.z.string().max(1048576),
3913
3995
  /** Remove the value instead of writing it. */
3914
- delete: import_zod35.z.boolean().default(false)
3996
+ delete: import_zod36.z.boolean().default(false)
3915
3997
  });
3916
- var WindowsRegistryWriteResult = import_zod35.z.strictObject({ key: import_zod35.z.string(), name: import_zod35.z.string(), deleted: import_zod35.z.boolean() });
3917
- var WindowsServicesParams = import_zod35.z.strictObject({
3998
+ var WindowsRegistryWriteResult = import_zod36.z.strictObject({ key: import_zod36.z.string(), name: import_zod36.z.string(), deleted: import_zod36.z.boolean() });
3999
+ var WindowsServicesParams = import_zod36.z.strictObject({
3918
4000
  /** Matched against the service's name and display name. */
3919
- filter: import_zod35.z.string().min(1).max(256).optional(),
3920
- limit: import_zod35.z.int().min(1).max(1e3).default(200)
4001
+ filter: import_zod36.z.string().min(1).max(256).optional(),
4002
+ limit: import_zod36.z.int().min(1).max(1e3).default(200)
3921
4003
  });
3922
- var WindowsService = import_zod35.z.strictObject({
3923
- name: import_zod35.z.string(),
3924
- display_name: import_zod35.z.string(),
4004
+ var WindowsService = import_zod36.z.strictObject({
4005
+ name: import_zod36.z.string(),
4006
+ display_name: import_zod36.z.string(),
3925
4007
  /** Running, Stopped, Paused… as Windows says it. */
3926
- status: import_zod35.z.string(),
4008
+ status: import_zod36.z.string(),
3927
4009
  /** Automatic, Manual, Disabled…; null where Windows does not say. */
3928
- start_type: import_zod35.z.string().nullable()
4010
+ start_type: import_zod36.z.string().nullable()
3929
4011
  });
3930
- var WindowsServicesResult = import_zod35.z.strictObject({ services: import_zod35.z.array(WindowsService) });
3931
- var WindowsServiceControlParams = import_zod35.z.strictObject({
3932
- name: import_zod35.z.string().min(1).max(256),
3933
- action: import_zod35.z.enum(["start", "stop", "restart"])
4012
+ var WindowsServicesResult = import_zod36.z.strictObject({ services: import_zod36.z.array(WindowsService) });
4013
+ var WindowsServiceControlParams = import_zod36.z.strictObject({
4014
+ name: import_zod36.z.string().min(1).max(256),
4015
+ action: import_zod36.z.enum(["start", "stop", "restart"])
3934
4016
  });
3935
- var WindowsServiceControlResult = import_zod35.z.strictObject({ name: import_zod35.z.string(), status: import_zod35.z.string() });
3936
- var WindowsEventLogParams = import_zod35.z.strictObject({
3937
- log: import_zod35.z.string().min(1).max(256).default("System"),
4017
+ var WindowsServiceControlResult = import_zod36.z.strictObject({ name: import_zod36.z.string(), status: import_zod36.z.string() });
4018
+ var WindowsEventLogParams = import_zod36.z.strictObject({
4019
+ log: import_zod36.z.string().min(1).max(256).default("System"),
3938
4020
  /** Only these levels; absent: all. */
3939
- levels: import_zod35.z.array(import_zod35.z.enum(["critical", "error", "warning", "information", "verbose"])).max(5).optional(),
4021
+ levels: import_zod36.z.array(import_zod36.z.enum(["critical", "error", "warning", "information", "verbose"])).max(5).optional(),
3940
4022
  since_ms: epochMs.optional(),
3941
- limit: import_zod35.z.int().min(1).max(500).default(50)
4023
+ limit: import_zod36.z.int().min(1).max(500).default(50)
3942
4024
  });
3943
- var WindowsEvent = import_zod35.z.strictObject({
3944
- id: import_zod35.z.int(),
3945
- level: import_zod35.z.string(),
3946
- source: import_zod35.z.string(),
4025
+ var WindowsEvent = import_zod36.z.strictObject({
4026
+ id: import_zod36.z.int(),
4027
+ level: import_zod36.z.string(),
4028
+ source: import_zod36.z.string(),
3947
4029
  at_ms: epochMs,
3948
- message: import_zod35.z.string()
4030
+ message: import_zod36.z.string()
3949
4031
  });
3950
- var WindowsEventLogResult = import_zod35.z.strictObject({ log: import_zod35.z.string(), events: import_zod35.z.array(WindowsEvent) });
3951
- var WindowsFeaturesParams = import_zod35.z.strictObject({ filter: import_zod35.z.string().min(1).max(256).optional() });
3952
- var WindowsFeature = import_zod35.z.strictObject({ name: import_zod35.z.string(), state: import_zod35.z.string() });
3953
- var WindowsFeaturesResult = import_zod35.z.strictObject({ features: import_zod35.z.array(WindowsFeature) });
4032
+ var WindowsEventLogResult = import_zod36.z.strictObject({ log: import_zod36.z.string(), events: import_zod36.z.array(WindowsEvent) });
4033
+ var WindowsFeaturesParams = import_zod36.z.strictObject({ filter: import_zod36.z.string().min(1).max(256).optional() });
4034
+ var WindowsFeature = import_zod36.z.strictObject({ name: import_zod36.z.string(), state: import_zod36.z.string() });
4035
+ var WindowsFeaturesResult = import_zod36.z.strictObject({ features: import_zod36.z.array(WindowsFeature) });
3954
4036
 
3955
4037
  // src/schema/schedule.ts
3956
- var import_zod36 = require("zod");
3957
- var OpRef = import_zod36.z.string().min(3).max(128).regex(/^[a-z_]+(\.[a-z_]+)+$/);
3958
- var ScheduleCreateParams = import_zod36.z.strictObject({
3959
- name: import_zod36.z.string().min(1).max(200),
4038
+ var import_zod37 = require("zod");
4039
+ var OpRef = import_zod37.z.string().min(3).max(128).regex(/^[a-z_]+(\.[a-z_]+)+$/);
4040
+ var ScheduleCreateParams = import_zod37.z.strictObject({
4041
+ name: import_zod37.z.string().min(1).max(200),
3960
4042
  op: OpRef,
3961
4043
  /** The op's params, exactly as the op takes them; checked when the task is created. */
3962
- params: import_zod36.z.record(import_zod36.z.string(), import_zod36.z.unknown()).default({}),
3963
- interval_s: import_zod36.z.int().min(10).max(2592e3),
4044
+ params: import_zod37.z.record(import_zod37.z.string(), import_zod37.z.unknown()).default({}),
4045
+ interval_s: import_zod37.z.int().min(10).max(2592e3),
3964
4046
  /** Stop after this many runs; absent: until cancelled. */
3965
- max_runs: import_zod36.z.int().min(1).max(1e5).optional(),
4047
+ max_runs: import_zod37.z.int().min(1).max(1e5).optional(),
3966
4048
  /** Run once now, before the first interval. */
3967
- run_now: import_zod36.z.boolean().default(false)
4049
+ run_now: import_zod37.z.boolean().default(false)
3968
4050
  });
3969
- var ScheduleRun = import_zod36.z.strictObject({
4051
+ var ScheduleRun = import_zod37.z.strictObject({
3970
4052
  at_ms: epochMs,
3971
- ok: import_zod36.z.boolean(),
4053
+ ok: import_zod37.z.boolean(),
3972
4054
  elapsed_ms: nonNegInt,
3973
4055
  /** The error's code and message when the run failed. */
3974
- error: import_zod36.z.string().nullable(),
4056
+ error: import_zod37.z.string().nullable(),
3975
4057
  /** The start of the answer, as JSON (cut at 4 KiB). */
3976
- result_preview: import_zod36.z.string().nullable()
4058
+ result_preview: import_zod37.z.string().nullable()
3977
4059
  });
3978
- var ScheduledTask = import_zod36.z.strictObject({
3979
- id: import_zod36.z.string(),
3980
- name: import_zod36.z.string(),
3981
- op: import_zod36.z.string(),
3982
- params: import_zod36.z.record(import_zod36.z.string(), import_zod36.z.unknown()),
4060
+ var ScheduledTask = import_zod37.z.strictObject({
4061
+ id: import_zod37.z.string(),
4062
+ name: import_zod37.z.string(),
4063
+ op: import_zod37.z.string(),
4064
+ params: import_zod37.z.record(import_zod37.z.string(), import_zod37.z.unknown()),
3983
4065
  interval_s: nonNegInt,
3984
4066
  max_runs: nonNegInt.nullable(),
3985
4067
  runs: nonNegInt,
3986
4068
  created_at_ms: epochMs,
3987
4069
  next_run_at_ms: epochMs.nullable(),
3988
4070
  /** active, done (ran max_runs), cancelled. */
3989
- state: import_zod36.z.enum(["active", "done", "cancelled"]),
4071
+ state: import_zod37.z.enum(["active", "done", "cancelled"]),
3990
4072
  /** The newest runs, newest first (at most 10). */
3991
- recent: import_zod36.z.array(ScheduleRun)
4073
+ recent: import_zod37.z.array(ScheduleRun)
3992
4074
  });
3993
- var ScheduleCreateResult = import_zod36.z.strictObject({ task: ScheduledTask });
3994
- var ScheduleListParams = import_zod36.z.strictObject({ include_finished: import_zod36.z.boolean().default(false) });
3995
- var ScheduleListResult = import_zod36.z.strictObject({ tasks: import_zod36.z.array(ScheduledTask) });
3996
- var ScheduleCancelParams = import_zod36.z.strictObject({ id: import_zod36.z.string().min(1).max(64) });
3997
- var ScheduleCancelResult = import_zod36.z.strictObject({ task: ScheduledTask });
4075
+ var ScheduleCreateResult = import_zod37.z.strictObject({ task: ScheduledTask });
4076
+ var ScheduleListParams = import_zod37.z.strictObject({ include_finished: import_zod37.z.boolean().default(false) });
4077
+ var ScheduleListResult = import_zod37.z.strictObject({ tasks: import_zod37.z.array(ScheduledTask) });
4078
+ var ScheduleCancelParams = import_zod37.z.strictObject({ id: import_zod37.z.string().min(1).max(64) });
4079
+ var ScheduleCancelResult = import_zod37.z.strictObject({ task: ScheduledTask });
3998
4080
 
3999
4081
  // src/schema/notes.ts
4000
- var import_zod37 = require("zod");
4001
- var NoteFolder = import_zod37.z.string().min(1).max(512).regex(/^[^/\\:*?"<>|][^\\:*?"<>|]*$/);
4002
- var NotePath = import_zod37.z.string().min(4).max(1024).regex(/^[^/\\:*?"<>|][^\\:*?"<>|]*\.md$/);
4003
- var NotesFoldersParams = import_zod37.z.strictObject({});
4004
- var NotesFolder = import_zod37.z.strictObject({ folder: import_zod37.z.string(), notes: nonNegInt });
4005
- var NotesFoldersResult = import_zod37.z.strictObject({
4082
+ var import_zod38 = require("zod");
4083
+ var NoteFolder = import_zod38.z.string().min(1).max(512).regex(/^[^/\\:*?"<>|][^\\:*?"<>|]*$/);
4084
+ var NotePath = import_zod38.z.string().min(4).max(1024).regex(/^[^/\\:*?"<>|][^\\:*?"<>|]*\.md$/);
4085
+ var NotesFoldersParams = import_zod38.z.strictObject({});
4086
+ var NotesFolder = import_zod38.z.strictObject({ folder: import_zod38.z.string(), notes: nonNegInt });
4087
+ var NotesFoldersResult = import_zod38.z.strictObject({
4006
4088
  /** The notes root on this computer. */
4007
- root: import_zod37.z.string(),
4008
- folders: import_zod37.z.array(NotesFolder)
4089
+ root: import_zod38.z.string(),
4090
+ folders: import_zod38.z.array(NotesFolder)
4009
4091
  });
4010
- var NotesListParams = import_zod37.z.strictObject({
4092
+ var NotesListParams = import_zod38.z.strictObject({
4011
4093
  folder: NoteFolder.optional(),
4012
- limit: import_zod37.z.int().min(1).max(2e3).default(500)
4094
+ limit: import_zod38.z.int().min(1).max(2e3).default(500)
4013
4095
  });
4014
- var NoteEntry = import_zod37.z.strictObject({
4015
- path: import_zod37.z.string(),
4016
- label: import_zod37.z.string(),
4017
- folder: import_zod37.z.string(),
4096
+ var NoteEntry = import_zod38.z.strictObject({
4097
+ path: import_zod38.z.string(),
4098
+ label: import_zod38.z.string(),
4099
+ folder: import_zod38.z.string(),
4018
4100
  bytes: nonNegInt,
4019
4101
  modified_at_ms: epochMs
4020
4102
  });
4021
- var NotesListResult = import_zod37.z.strictObject({ root: import_zod37.z.string(), notes: import_zod37.z.array(NoteEntry), total: nonNegInt });
4022
- var NotesReadParams = import_zod37.z.strictObject({ path: NotePath });
4023
- var NotesReadResult = import_zod37.z.strictObject({
4024
- path: import_zod37.z.string(),
4025
- content: import_zod37.z.string(),
4103
+ var NotesListResult = import_zod38.z.strictObject({ root: import_zod38.z.string(), notes: import_zod38.z.array(NoteEntry), total: nonNegInt });
4104
+ var NotesReadParams = import_zod38.z.strictObject({ path: NotePath });
4105
+ var NotesReadResult = import_zod38.z.strictObject({
4106
+ path: import_zod38.z.string(),
4107
+ content: import_zod38.z.string(),
4026
4108
  bytes: nonNegInt,
4027
4109
  modified_at_ms: epochMs,
4028
4110
  /** SHA-256 of the content: pass it back as `if_hash` to write only over this version. */
4029
- hash: import_zod37.z.string()
4111
+ hash: import_zod38.z.string()
4030
4112
  });
4031
- var NotesWriteParams = import_zod37.z.strictObject({
4113
+ var NotesWriteParams = import_zod38.z.strictObject({
4032
4114
  folder: NoteFolder.default("General"),
4033
4115
  /** The note's name, without ".md". */
4034
- label: import_zod37.z.string().min(1).max(200).regex(/^[^/\\:*?"<>|]+$/),
4035
- content: import_zod37.z.string().max(10485760),
4116
+ label: import_zod38.z.string().min(1).max(200).regex(/^[^/\\:*?"<>|]+$/),
4117
+ content: import_zod38.z.string().max(10485760),
4036
4118
  /** Write only when the note is still this version (notes.read's hash); a change since answers CONFLICT. */
4037
- if_hash: import_zod37.z.string().length(64).optional()
4119
+ if_hash: import_zod38.z.string().length(64).optional()
4038
4120
  });
4039
- var NotesWriteResult = import_zod37.z.strictObject({ path: import_zod37.z.string(), bytes: nonNegInt, created: import_zod37.z.boolean(), hash: import_zod37.z.string() });
4040
- var NotesSearchParams = import_zod37.z.strictObject({
4041
- query: import_zod37.z.string().min(1).max(512),
4042
- limit: import_zod37.z.int().min(1).max(200).default(50)
4121
+ var NotesWriteResult = import_zod38.z.strictObject({ path: import_zod38.z.string(), bytes: nonNegInt, created: import_zod38.z.boolean(), hash: import_zod38.z.string() });
4122
+ var NotesSearchParams = import_zod38.z.strictObject({
4123
+ query: import_zod38.z.string().min(1).max(512),
4124
+ limit: import_zod38.z.int().min(1).max(200).default(50)
4043
4125
  });
4044
- var NotesMatch = import_zod37.z.strictObject({
4045
- path: import_zod37.z.string(),
4046
- label: import_zod37.z.string(),
4047
- folder: import_zod37.z.string(),
4126
+ var NotesMatch = import_zod38.z.strictObject({
4127
+ path: import_zod38.z.string(),
4128
+ label: import_zod38.z.string(),
4129
+ folder: import_zod38.z.string(),
4048
4130
  /** The matching lines (at most five), trimmed. */
4049
- lines: import_zod37.z.array(import_zod37.z.string())
4131
+ lines: import_zod38.z.array(import_zod38.z.string())
4050
4132
  });
4051
- var NotesSearchResult = import_zod37.z.strictObject({ matches: import_zod37.z.array(NotesMatch), total: nonNegInt });
4133
+ var NotesSearchResult = import_zod38.z.strictObject({ matches: import_zod38.z.array(NotesMatch), total: nonNegInt });
4052
4134
 
4053
4135
  // src/schema/documents.ts
4054
- var import_zod38 = require("zod");
4136
+ var import_zod39 = require("zod");
4055
4137
  var DOCUMENTS_MAX_TEXT_CHARS = 1048576;
4056
- var DocumentsPdfTextParams = import_zod38.z.strictObject({
4138
+ var DocumentsPdfTextParams = import_zod39.z.strictObject({
4057
4139
  path: AbsPath,
4058
4140
  /** 1-based, inclusive. */
4059
- first_page: import_zod38.z.int().min(1).optional(),
4060
- last_page: import_zod38.z.int().min(1).optional(),
4061
- max_chars: import_zod38.z.int().min(1).max(DOCUMENTS_MAX_TEXT_CHARS).default(2e5)
4141
+ first_page: import_zod39.z.int().min(1).optional(),
4142
+ last_page: import_zod39.z.int().min(1).optional(),
4143
+ max_chars: import_zod39.z.int().min(1).max(DOCUMENTS_MAX_TEXT_CHARS).default(2e5)
4062
4144
  });
4063
- var DocumentsPdfPage = import_zod38.z.strictObject({ page: import_zod38.z.int().min(1), text: import_zod38.z.string() });
4064
- var DocumentsPdfTextResult = import_zod38.z.strictObject({
4145
+ var DocumentsPdfPage = import_zod39.z.strictObject({ page: import_zod39.z.int().min(1), text: import_zod39.z.string() });
4146
+ var DocumentsPdfTextResult = import_zod39.z.strictObject({
4065
4147
  pages: nonNegInt,
4066
4148
  /** Each page read, in order (an image-only page has empty text: OCR it). */
4067
- read: import_zod38.z.array(DocumentsPdfPage),
4068
- truncated: import_zod38.z.boolean(),
4069
- title: import_zod38.z.string().nullable(),
4070
- author: import_zod38.z.string().nullable()
4149
+ read: import_zod39.z.array(DocumentsPdfPage),
4150
+ truncated: import_zod39.z.boolean(),
4151
+ title: import_zod39.z.string().nullable(),
4152
+ author: import_zod39.z.string().nullable()
4071
4153
  });
4072
- var DocumentsOcrParams = import_zod38.z.strictObject({
4154
+ var DocumentsOcrParams = import_zod39.z.strictObject({
4073
4155
  path: AbsPath,
4074
4156
  /** BCP-47 language hints ("en-US", "fr-FR"); absent: the OS's own choice. */
4075
- languages: import_zod38.z.array(import_zod38.z.string().min(2).max(16)).max(8).optional(),
4157
+ languages: import_zod39.z.array(import_zod39.z.string().min(2).max(16)).max(8).optional(),
4076
4158
  /** Faster, less accurate. */
4077
- fast: import_zod38.z.boolean().default(false)
4159
+ fast: import_zod39.z.boolean().default(false)
4078
4160
  });
4079
- var DocumentsOcrLine = import_zod38.z.strictObject({
4080
- text: import_zod38.z.string(),
4161
+ var DocumentsOcrLine = import_zod39.z.strictObject({
4162
+ text: import_zod39.z.string(),
4081
4163
  /** 0–1; null where the engine does not say. */
4082
- confidence: import_zod38.z.number().min(0).max(1).nullable()
4164
+ confidence: import_zod39.z.number().min(0).max(1).nullable()
4083
4165
  });
4084
- var DocumentsOcrResult = import_zod38.z.strictObject({
4085
- text: import_zod38.z.string(),
4086
- lines: import_zod38.z.array(DocumentsOcrLine),
4087
- truncated: import_zod38.z.boolean(),
4166
+ var DocumentsOcrResult = import_zod39.z.strictObject({
4167
+ text: import_zod39.z.string(),
4168
+ lines: import_zod39.z.array(DocumentsOcrLine),
4169
+ truncated: import_zod39.z.boolean(),
4088
4170
  /** Which engine read it ("vision" on macOS, "windows-ocr", "tesseract"). */
4089
- engine: import_zod38.z.string()
4171
+ engine: import_zod39.z.string()
4090
4172
  });
4091
- var DocumentsImageResizeParams = import_zod38.z.strictObject({
4173
+ var DocumentsImageResizeParams = import_zod39.z.strictObject({
4092
4174
  path: AbsPath,
4093
4175
  /** Where to write it; absent: next to the original, "<name>-resized.<ext>". */
4094
4176
  out_path: AbsPath.optional(),
4095
4177
  /** The longest side, kept in proportion; absent: the size stays (a format change only). */
4096
- max_size: import_zod38.z.int().min(1).max(32768).optional(),
4097
- format: import_zod38.z.enum(["png", "jpeg", "tiff", "heic", "bmp", "gif"]).optional(),
4098
- overwrite: import_zod38.z.boolean().default(false)
4178
+ max_size: import_zod39.z.int().min(1).max(32768).optional(),
4179
+ format: import_zod39.z.enum(["png", "jpeg", "tiff", "heic", "bmp", "gif"]).optional(),
4180
+ overwrite: import_zod39.z.boolean().default(false)
4099
4181
  });
4100
- var DocumentsImageResizeResult = import_zod38.z.strictObject({
4101
- path: import_zod38.z.string(),
4182
+ var DocumentsImageResizeResult = import_zod39.z.strictObject({
4183
+ path: import_zod39.z.string(),
4102
4184
  width: nonNegInt,
4103
4185
  height: nonNegInt,
4104
4186
  bytes: nonNegInt
4105
4187
  });
4106
- var DocumentsParagraph = import_zod38.z.strictObject({
4107
- style: import_zod38.z.enum(["title", "heading1", "heading2", "heading3", "body", "bullet", "numbered", "quote", "code"]).default("body"),
4108
- text: import_zod38.z.string().max(1e5)
4188
+ var DocumentsParagraph = import_zod39.z.strictObject({
4189
+ style: import_zod39.z.enum(["title", "heading1", "heading2", "heading3", "body", "bullet", "numbered", "quote", "code"]).default("body"),
4190
+ text: import_zod39.z.string().max(1e5)
4109
4191
  });
4110
- var DocumentsSheet = import_zod38.z.strictObject({
4111
- name: import_zod38.z.string().min(1).max(31),
4192
+ var DocumentsSheet = import_zod39.z.strictObject({
4193
+ name: import_zod39.z.string().min(1).max(31),
4112
4194
  /** Rows of cells; the first row is the header when `header` is true. */
4113
- rows: import_zod38.z.array(import_zod38.z.array(import_zod38.z.union([import_zod38.z.string().max(32767), import_zod38.z.number(), import_zod38.z.boolean(), import_zod38.z.null()])).max(16384)).max(1e5),
4114
- header: import_zod38.z.boolean().default(true)
4195
+ rows: import_zod39.z.array(import_zod39.z.array(import_zod39.z.union([import_zod39.z.string().max(32767), import_zod39.z.number(), import_zod39.z.boolean(), import_zod39.z.null()])).max(16384)).max(1e5),
4196
+ header: import_zod39.z.boolean().default(true)
4115
4197
  });
4116
- var DocumentsOfficeGenerateParams = import_zod38.z.strictObject({
4117
- kind: import_zod38.z.enum(["docx", "xlsx"]),
4198
+ var DocumentsOfficeGenerateParams = import_zod39.z.strictObject({
4199
+ kind: import_zod39.z.enum(["docx", "xlsx"]),
4118
4200
  path: AbsPath,
4119
- title: import_zod38.z.string().max(1024).optional(),
4201
+ title: import_zod39.z.string().max(1024).optional(),
4120
4202
  /** docx: the document's paragraphs, in order. */
4121
- paragraphs: import_zod38.z.array(DocumentsParagraph).max(5e4).optional(),
4203
+ paragraphs: import_zod39.z.array(DocumentsParagraph).max(5e4).optional(),
4122
4204
  /** xlsx: the workbook's sheets, in order. */
4123
- sheets: import_zod38.z.array(DocumentsSheet).min(1).max(64).optional(),
4124
- overwrite: import_zod38.z.boolean().default(false)
4205
+ sheets: import_zod39.z.array(DocumentsSheet).min(1).max(64).optional(),
4206
+ overwrite: import_zod39.z.boolean().default(false)
4125
4207
  });
4126
- var DocumentsOfficeGenerateResult = import_zod38.z.strictObject({ path: import_zod38.z.string(), bytes: nonNegInt });
4127
- var EntitiesNerParams = import_zod38.z.strictObject({
4128
- text: import_zod38.z.string().min(1).max(DOCUMENTS_MAX_TEXT_CHARS),
4208
+ var DocumentsOfficeGenerateResult = import_zod39.z.strictObject({ path: import_zod39.z.string(), bytes: nonNegInt });
4209
+ var EntitiesNerParams = import_zod39.z.strictObject({
4210
+ text: import_zod39.z.string().min(1).max(DOCUMENTS_MAX_TEXT_CHARS),
4129
4211
  /** Which kinds to keep; absent: all three. */
4130
- labels: import_zod38.z.array(import_zod38.z.enum(["person", "place", "organization"])).min(1).max(3).optional()
4212
+ labels: import_zod39.z.array(import_zod39.z.enum(["person", "place", "organization"])).min(1).max(3).optional()
4131
4213
  });
4132
- var EntitySpan = import_zod38.z.strictObject({
4133
- text: import_zod38.z.string(),
4134
- label: import_zod38.z.string(),
4214
+ var EntitySpan = import_zod39.z.strictObject({
4215
+ text: import_zod39.z.string(),
4216
+ label: import_zod39.z.string(),
4135
4217
  /** Character offsets into the text (UTF-16, as JavaScript counts). */
4136
4218
  start: nonNegInt,
4137
4219
  end: nonNegInt
4138
4220
  });
4139
- var EntitiesNerResult = import_zod38.z.strictObject({ entities: import_zod38.z.array(EntitySpan), engine: import_zod38.z.string() });
4140
- var PiiKind = import_zod38.z.enum(["email", "phone", "credit_card", "us_ssn", "iban", "ip_address", "url", "api_key"]);
4141
- var EntitiesPiiParams = import_zod38.z.strictObject({
4142
- text: import_zod38.z.string().min(1).max(DOCUMENTS_MAX_TEXT_CHARS),
4143
- kinds: import_zod38.z.array(PiiKind).min(1).max(8).optional(),
4221
+ var EntitiesNerResult = import_zod39.z.strictObject({ entities: import_zod39.z.array(EntitySpan), engine: import_zod39.z.string() });
4222
+ var PiiKind = import_zod39.z.enum(["email", "phone", "credit_card", "us_ssn", "iban", "ip_address", "url", "api_key"]);
4223
+ var EntitiesPiiParams = import_zod39.z.strictObject({
4224
+ text: import_zod39.z.string().min(1).max(DOCUMENTS_MAX_TEXT_CHARS),
4225
+ kinds: import_zod39.z.array(PiiKind).min(1).max(8).optional(),
4144
4226
  /** Also answer the text with each finding replaced by its kind ("[email]"). */
4145
- redact: import_zod38.z.boolean().default(false)
4227
+ redact: import_zod39.z.boolean().default(false)
4146
4228
  });
4147
- var EntitiesPiiResult = import_zod38.z.strictObject({
4148
- findings: import_zod38.z.array(import_zod38.z.strictObject({ kind: PiiKind, text: import_zod38.z.string(), start: nonNegInt, end: nonNegInt })),
4149
- redacted: import_zod38.z.string().nullable()
4229
+ var EntitiesPiiResult = import_zod39.z.strictObject({
4230
+ findings: import_zod39.z.array(import_zod39.z.strictObject({ kind: PiiKind, text: import_zod39.z.string(), start: nonNegInt, end: nonNegInt })),
4231
+ redacted: import_zod39.z.string().nullable()
4150
4232
  });
4151
4233
 
4152
4234
  // src/schema/registry.ts
@@ -4213,6 +4295,9 @@ var OPS = {
4213
4295
  "apps.windows.refresh_usage": { params: AppsWindowsRefreshUsageParams, result: AppsWindowActionResult, kind: "unary", since: "1.10", errors: ["NOT_FOUND", "TIMEOUT", "PLATFORM_UNSUPPORTED", "INTERNAL"] },
4214
4296
  "apps.accounts.usage": { params: AppsAccountsUsageParams, result: AppsAccountsUsageResult, kind: "unary", since: "1.10", errors: ["NOT_FOUND", "PLATFORM_UNSUPPORTED", "INTERNAL"] },
4215
4297
  "apps.accounts.resets": { params: AppsAccountsResetsParams, result: AppsAccountsResetsResult, kind: "unary", since: "1.10", errors: ["NOT_FOUND", "PLATFORM_UNSUPPORTED", "INTERNAL"] },
4298
+ // 1.47: instances and accounts kept apart — an account's usage is the account's, every instance shows it by id.
4299
+ "apps.instances.list": { params: AppsInstancesListParams, result: AppsInstancesListResult, kind: "unary", since: "1.47", errors: ["NOT_FOUND", "PLATFORM_UNSUPPORTED", "INTERNAL"] },
4300
+ "apps.accounts.list": { params: AppsAccountsListParams, result: AppsAccountsListResult, kind: "unary", since: "1.47", errors: ["NOT_FOUND", "PLATFORM_UNSUPPORTED", "INTERNAL"] },
4216
4301
  "apps.projects.move": { params: AppsProjectsMoveParams, result: AppsProjectsMoveResult, kind: "unary", since: "1.10", errors: ["NOT_FOUND", "INVALID_PARAMS", "CONFLICT", "PLATFORM_UNSUPPORTED", "INTERNAL"] },
4217
4302
  "apps.projects.create": { params: AppsProjectsCreateParams, result: AppsProjectsCreateResult, kind: "unary", since: "1.10", errors: ["INVALID_PARAMS", "CONFLICT", "PLATFORM_UNSUPPORTED", "INTERNAL"] },
4218
4303
  "apps.projects.import_pins": { params: AppsProjectsImportPinsParams, result: AppsProjectsImportPinsResult, kind: "unary", since: "1.10", errors: ["CONFLICT", "PLATFORM_UNSUPPORTED", "INTERNAL"] },