@intentic/sandbox-contract 1.337.0 → 1.339.0
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/README.md +41 -0
- package/dist/chores/probes.d.ts.map +1 -1
- package/dist/chores/probes.js +4 -7
- package/dist/chores/probes.js.map +1 -1
- package/dist/contracts/agent.contract.d.ts +32 -23
- package/dist/contracts/agent.contract.d.ts.map +1 -1
- package/dist/contracts/agents.contract.d.ts +6020 -5994
- package/dist/contracts/agents.contract.d.ts.map +1 -1
- package/dist/contracts/agents.contract.js +13 -1
- package/dist/contracts/agents.contract.js.map +1 -1
- package/dist/contracts/approvals.contract.d.ts +8 -0
- package/dist/contracts/approvals.contract.d.ts.map +1 -1
- package/dist/contracts/automations.contract.d.ts +3 -3
- package/dist/contracts/capabilities.contract.d.ts +28 -0
- package/dist/contracts/capabilities.contract.d.ts.map +1 -1
- package/dist/contracts/capabilities.contract.js +11 -1
- package/dist/contracts/capabilities.contract.js.map +1 -1
- package/dist/contracts/device.contract.d.ts +225 -0
- package/dist/contracts/device.contract.d.ts.map +1 -1
- package/dist/contracts/device.contract.js +10 -0
- package/dist/contracts/device.contract.js.map +1 -1
- package/dist/contracts/extensions.contract.d.ts +16 -0
- package/dist/contracts/extensions.contract.d.ts.map +1 -1
- package/dist/contracts/needs.contract.d.ts +22 -7
- package/dist/contracts/needs.contract.d.ts.map +1 -1
- package/dist/contracts/org.contract.d.ts +35 -0
- package/dist/contracts/org.contract.d.ts.map +1 -0
- package/dist/contracts/org.contract.js +14 -0
- package/dist/contracts/org.contract.js.map +1 -0
- package/dist/contracts/phone.contract.d.ts +1 -0
- package/dist/contracts/phone.contract.d.ts.map +1 -1
- package/dist/contracts/privacy.contract.d.ts +115 -0
- package/dist/contracts/privacy.contract.d.ts.map +1 -1
- package/dist/contracts/privacy.contract.js +11 -2
- package/dist/contracts/privacy.contract.js.map +1 -1
- package/dist/contracts/runner.contract.d.ts +11 -7
- package/dist/contracts/runner.contract.d.ts.map +1 -1
- package/dist/contracts/secrets.contract.d.ts +85 -0
- package/dist/contracts/secrets.contract.d.ts.map +1 -1
- package/dist/contracts/secrets.contract.js +48 -1
- package/dist/contracts/secrets.contract.js.map +1 -1
- package/dist/contracts/sessions.contract.d.ts +4 -1
- package/dist/contracts/sessions.contract.d.ts.map +1 -1
- package/dist/contracts/settings.contract.d.ts +11 -3
- package/dist/contracts/settings.contract.d.ts.map +1 -1
- package/dist/contracts/system.contract.d.ts +23 -2
- package/dist/contracts/system.contract.d.ts.map +1 -1
- package/dist/events/agent-events.d.ts +17 -4
- package/dist/events/agent-events.d.ts.map +1 -1
- package/dist/events/requests.d.ts +4 -0
- package/dist/events/requests.d.ts.map +1 -1
- package/dist/events/requests.js +1 -1
- package/dist/events/requests.js.map +1 -1
- package/dist/events/system-events.d.ts +4 -0
- package/dist/events/system-events.d.ts.map +1 -1
- package/dist/events/system-events.js +2 -0
- package/dist/events/system-events.js.map +1 -1
- package/dist/events/transcript.d.ts +27 -6
- package/dist/events/transcript.d.ts.map +1 -1
- package/dist/index.d.ts +7562 -7426
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +31 -257
- package/dist/index.js.map +1 -1
- package/dist/models/agent-lanes.d.ts +30 -0
- package/dist/models/agent-lanes.d.ts.map +1 -0
- package/dist/models/agent-lanes.js +67 -0
- package/dist/models/agent-lanes.js.map +1 -0
- package/dist/models/agent-standing.d.ts +55 -0
- package/dist/models/agent-standing.d.ts.map +1 -0
- package/dist/models/agent-standing.js +82 -0
- package/dist/models/agent-standing.js.map +1 -0
- package/dist/models/agent-starter.d.ts +10 -0
- package/dist/models/agent-starter.d.ts.map +1 -0
- package/dist/models/agent-starter.js +16 -0
- package/dist/models/agent-starter.js.map +1 -0
- package/dist/netd/generated/wire.d.ts +1 -1
- package/dist/netd/generated/wire.d.ts.map +1 -1
- package/dist/policy/identity-assertion.d.ts.map +1 -1
- package/dist/policy/identity-assertion.js +2 -8
- package/dist/policy/identity-assertion.js.map +1 -1
- package/dist/policy/keyring-seal.d.ts +48 -0
- package/dist/policy/keyring-seal.d.ts.map +1 -0
- package/dist/policy/keyring-seal.js +94 -0
- package/dist/policy/keyring-seal.js.map +1 -0
- package/dist/policy/message-limits.d.ts +2 -0
- package/dist/policy/message-limits.d.ts.map +1 -1
- package/dist/policy/message-limits.js +2 -0
- package/dist/policy/message-limits.js.map +1 -1
- package/dist/policy/org-locks.d.ts +58 -0
- package/dist/policy/org-locks.d.ts.map +1 -0
- package/dist/policy/org-locks.js +113 -0
- package/dist/policy/org-locks.js.map +1 -0
- package/dist/policy/persona-capability.d.ts +14 -0
- package/dist/policy/persona-capability.d.ts.map +1 -0
- package/dist/policy/persona-capability.js +23 -0
- package/dist/policy/persona-capability.js.map +1 -0
- package/dist/policy/reserved-servers.d.ts.map +1 -1
- package/dist/policy/reserved-servers.js +1 -1
- package/dist/policy/reserved-servers.js.map +1 -1
- package/dist/protocol/doors/phone-links.d.ts +5 -0
- package/dist/protocol/doors/phone-links.d.ts.map +1 -1
- package/dist/protocol/doors/phone-links.js +3 -1
- package/dist/protocol/doors/phone-links.js.map +1 -1
- package/dist/protocol/doors/webext-links.d.ts +3 -0
- package/dist/protocol/doors/webext-links.d.ts.map +1 -1
- package/dist/protocol/doors/webext-links.js +3 -0
- package/dist/protocol/doors/webext-links.js.map +1 -1
- package/dist/protocol/raw/raw-json-routes.d.ts +270 -0
- package/dist/protocol/raw/raw-json-routes.d.ts.map +1 -1
- package/dist/protocol/raw/raw-json-routes.js +14 -1
- package/dist/protocol/raw/raw-json-routes.js.map +1 -1
- package/dist/protocol/raw/raw-routes.d.ts +70 -0
- package/dist/protocol/raw/raw-routes.d.ts.map +1 -1
- package/dist/protocol/raw/raw-routes.js +18 -0
- package/dist/protocol/raw/raw-routes.js.map +1 -1
- package/dist/protocol/route-meta.d.ts.map +1 -1
- package/dist/protocol/route-meta.js.map +1 -1
- package/dist/protocol/routes.d.ts +4 -0
- package/dist/protocol/routes.d.ts.map +1 -1
- package/dist/protocol/routes.js +12 -0
- package/dist/protocol/routes.js.map +1 -1
- package/dist/schemas/agents-list.d.ts +5 -0
- package/dist/schemas/agents-list.d.ts.map +1 -1
- package/dist/schemas/agents-list.js +8 -0
- package/dist/schemas/agents-list.js.map +1 -1
- package/dist/schemas/agents.d.ts +1 -0
- package/dist/schemas/agents.d.ts.map +1 -1
- package/dist/schemas/agents.js +1 -0
- package/dist/schemas/agents.js.map +1 -1
- package/dist/schemas/approvals.d.ts +20 -0
- package/dist/schemas/approvals.d.ts.map +1 -1
- package/dist/schemas/approvals.js +10 -0
- package/dist/schemas/approvals.js.map +1 -1
- package/dist/schemas/capabilities.d.ts +26 -0
- package/dist/schemas/capabilities.d.ts.map +1 -1
- package/dist/schemas/capabilities.js +17 -0
- package/dist/schemas/capabilities.js.map +1 -1
- package/dist/schemas/data-protection.d.ts +5 -0
- package/dist/schemas/data-protection.d.ts.map +1 -1
- package/dist/schemas/data-protection.js +29 -0
- package/dist/schemas/data-protection.js.map +1 -1
- package/dist/schemas/devices.d.ts +20 -0
- package/dist/schemas/devices.d.ts.map +1 -1
- package/dist/schemas/devices.js +5 -1
- package/dist/schemas/devices.js.map +1 -1
- package/dist/schemas/extension-updates.d.ts +32 -0
- package/dist/schemas/extension-updates.d.ts.map +1 -1
- package/dist/schemas/git/git.d.ts +19 -0
- package/dist/schemas/git/git.d.ts.map +1 -1
- package/dist/schemas/git/git.js +12 -1
- package/dist/schemas/git/git.js.map +1 -1
- package/dist/schemas/hosts.d.ts +2 -0
- package/dist/schemas/hosts.d.ts.map +1 -1
- package/dist/schemas/hosts.js +11 -1
- package/dist/schemas/hosts.js.map +1 -1
- package/dist/schemas/intentic-os.d.ts +218 -0
- package/dist/schemas/intentic-os.d.ts.map +1 -1
- package/dist/schemas/intentic-os.js +166 -0
- package/dist/schemas/intentic-os.js.map +1 -1
- package/dist/schemas/keyring.d.ts +421 -0
- package/dist/schemas/keyring.d.ts.map +1 -0
- package/dist/schemas/keyring.js +176 -0
- package/dist/schemas/keyring.js.map +1 -0
- package/dist/schemas/links.d.ts +208 -0
- package/dist/schemas/links.d.ts.map +1 -0
- package/dist/schemas/links.js +116 -0
- package/dist/schemas/links.js.map +1 -0
- package/dist/schemas/maintenance.d.ts.map +1 -1
- package/dist/schemas/maintenance.js.map +1 -1
- package/dist/schemas/members.d.ts.map +1 -1
- package/dist/schemas/members.js +2 -0
- package/dist/schemas/members.js.map +1 -1
- package/dist/schemas/needs.d.ts +25 -8
- package/dist/schemas/needs.d.ts.map +1 -1
- package/dist/schemas/needs.js +15 -3
- package/dist/schemas/needs.js.map +1 -1
- package/dist/schemas/organisation.d.ts +106 -0
- package/dist/schemas/organisation.d.ts.map +1 -0
- package/dist/schemas/organisation.js +52 -0
- package/dist/schemas/organisation.js.map +1 -0
- package/dist/schemas/phone.d.ts +3 -0
- package/dist/schemas/phone.d.ts.map +1 -1
- package/dist/schemas/phone.js +1 -0
- package/dist/schemas/phone.js.map +1 -1
- package/dist/schemas/privacy.d.ts +232 -0
- package/dist/schemas/privacy.d.ts.map +1 -1
- package/dist/schemas/privacy.js +154 -4
- package/dist/schemas/privacy.js.map +1 -1
- package/dist/schemas/secrets.d.ts +151 -0
- package/dist/schemas/secrets.d.ts.map +1 -1
- package/dist/schemas/secrets.js +71 -8
- package/dist/schemas/secrets.js.map +1 -1
- package/dist/schemas/settings.d.ts +8 -0
- package/dist/schemas/settings.d.ts.map +1 -1
- package/dist/schemas/settings.js +4 -0
- package/dist/schemas/settings.js.map +1 -1
- package/dist/schemas/speech.d.ts +12 -0
- package/dist/schemas/speech.d.ts.map +1 -1
- package/dist/schemas/speech.js +23 -0
- package/dist/schemas/speech.js.map +1 -1
- package/dist/schemas/system.d.ts +2 -0
- package/dist/schemas/system.d.ts.map +1 -1
- package/dist/schemas/system.js +1 -1
- package/dist/schemas/system.js.map +1 -1
- package/dist/schemas/terminal.d.ts +15 -0
- package/dist/schemas/terminal.d.ts.map +1 -1
- package/dist/schemas/terminal.js +11 -2
- package/dist/schemas/terminal.js.map +1 -1
- package/dist/schemas/voice.d.ts +3 -0
- package/dist/schemas/voice.d.ts.map +1 -1
- package/dist/schemas/voice.js +7 -0
- package/dist/schemas/voice.js.map +1 -1
- package/dist/schemas/webext.d.ts +17 -0
- package/dist/schemas/webext.d.ts.map +1 -1
- package/dist/schemas/webext.js +7 -1
- package/dist/schemas/webext.js.map +1 -1
- package/dist/state/contract-lock.d.ts +3 -1
- package/dist/state/contract-lock.d.ts.map +1 -1
- package/dist/state/contract-lock.js +34 -9
- package/dist/state/contract-lock.js.map +1 -1
- package/dist/state/contract-modules.d.ts +4 -0
- package/dist/state/contract-modules.d.ts.map +1 -0
- package/dist/state/contract-modules.js +28 -0
- package/dist/state/contract-modules.js.map +1 -0
- package/dist/state/daemon-floor.d.ts +4 -0
- package/dist/state/daemon-floor.d.ts.map +1 -0
- package/dist/state/daemon-floor.js +8 -0
- package/dist/state/daemon-floor.js.map +1 -0
- package/dist/state/definition.d.ts +34 -0
- package/dist/state/definition.d.ts.map +1 -1
- package/dist/state/history-state.d.ts.map +1 -1
- package/dist/state/history-state.js +8 -0
- package/dist/state/history-state.js.map +1 -1
- package/dist/text/documents.d.ts +3 -1
- package/dist/text/documents.d.ts.map +1 -1
- package/dist/text/documents.js +30 -0
- package/dist/text/documents.js.map +1 -1
- package/dist/text/pages.d.ts.map +1 -1
- package/dist/text/pages.js +3 -7
- package/dist/text/pages.js.map +1 -1
- package/package.json +27 -5
- package/src/chores/probes.ts +4 -6
- package/src/contracts/agents.contract.ts +18 -1
- package/src/contracts/capabilities.contract.ts +14 -0
- package/src/contracts/device.contract.ts +30 -0
- package/src/contracts/org.contract.ts +19 -0
- package/src/contracts/privacy.contract.ts +13 -1
- package/src/contracts/secrets.contract.ts +64 -0
- package/src/events/requests.ts +3 -1
- package/src/events/system-events.ts +9 -0
- package/src/index.ts +41 -279
- package/src/models/agent-lanes.ts +152 -0
- package/src/models/agent-standing.ts +279 -0
- package/src/models/agent-starter.ts +26 -0
- package/src/netd/generated/netd-wire.json +2 -1
- package/src/netd/generated/wire.ts +1 -1
- package/src/policy/identity-assertion.ts +2 -8
- package/src/policy/keyring-seal.test.ts +93 -0
- package/src/policy/keyring-seal.ts +148 -0
- package/src/policy/message-limits.ts +3 -0
- package/src/policy/org-locks.ts +173 -0
- package/src/policy/persona-capability.ts +57 -0
- package/src/policy/reserved-servers.ts +3 -2
- package/src/policy/tests/org-locks.test.ts +92 -0
- package/src/policy/tests/reserved-servers.test.ts +3 -2
- package/src/protocol/doors/listener-protocol.ts +1 -1
- package/src/protocol/doors/phone-links.ts +11 -2
- package/src/protocol/doors/phone-protocol.test.ts +8 -1
- package/src/protocol/doors/webext-links.ts +13 -0
- package/src/protocol/ingress-contract.fixture.json +2 -0
- package/src/protocol/pairing-redeem.ts +1 -1
- package/src/protocol/peer-dial.test.ts +6 -6
- package/src/protocol/peer-mcp-server.test.ts +2 -1
- package/src/protocol/raw/raw-json-routes.ts +31 -1
- package/src/protocol/raw/raw-routes.ts +35 -1
- package/src/protocol/route-meta.ts +2 -1
- package/src/protocol/routes.test.ts +33 -1
- package/src/protocol/routes.ts +18 -0
- package/src/protocol/sse.ts +1 -1
- package/src/schemas/agent.ts +1 -1
- package/src/schemas/agents-list.ts +13 -0
- package/src/schemas/agents.ts +1 -0
- package/src/schemas/approvals.ts +14 -0
- package/src/schemas/capabilities.ts +25 -0
- package/src/schemas/data-protection.ts +47 -0
- package/src/schemas/devices.ts +15 -1
- package/src/schemas/git/git.ts +22 -2
- package/src/schemas/hosts.ts +14 -1
- package/src/schemas/intentic-os.test.ts +148 -0
- package/src/schemas/intentic-os.ts +259 -0
- package/src/schemas/keyring.ts +277 -0
- package/src/schemas/links.ts +180 -0
- package/src/schemas/maintenance.ts +1 -0
- package/src/schemas/members.ts +4 -0
- package/src/schemas/needs.ts +21 -5
- package/src/schemas/organisation.ts +110 -0
- package/src/schemas/phone.ts +3 -0
- package/src/schemas/privacy.test.ts +63 -0
- package/src/schemas/privacy.ts +213 -5
- package/src/schemas/secrets.ts +96 -8
- package/src/schemas/settings.ts +8 -0
- package/src/schemas/speech.ts +38 -1
- package/src/schemas/system.ts +5 -2
- package/src/schemas/terminal.ts +13 -2
- package/src/schemas/voice.ts +11 -0
- package/src/schemas/webext.ts +16 -1
- package/src/state/contract-lock.test.ts +12 -12
- package/src/state/contract-lock.ts +43 -12
- package/src/state/contract-modules.ts +41 -0
- package/src/state/daemon-floor.test.ts +81 -0
- package/src/state/daemon-floor.ts +32 -0
- package/src/state/history-state.ts +17 -0
- package/src/state/workspace-state.ts +1 -1
- package/src/text/documents.test.ts +30 -1
- package/src/text/documents.ts +43 -1
- package/src/text/pages.ts +5 -7
|
@@ -0,0 +1,421 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
export declare const KEYRING_KEY_RE: RegExp;
|
|
3
|
+
export declare const KeyringPublicKeySchema: z.ZodString;
|
|
4
|
+
export declare const KEYRING_NAME_RE: RegExp;
|
|
5
|
+
export declare const KeyringSecretNameSchema: z.ZodString;
|
|
6
|
+
export declare const KeyringShareModeSchema: z.ZodEnum<{
|
|
7
|
+
copy: "copy";
|
|
8
|
+
"each-use": "each-use";
|
|
9
|
+
"while-here": "while-here";
|
|
10
|
+
}>;
|
|
11
|
+
export type KeyringShareMode = z.infer<typeof KeyringShareModeSchema>;
|
|
12
|
+
export declare const KEYRING_PROGRAM_MAX = 260;
|
|
13
|
+
export declare const KeyringProgramSchema: z.ZodString;
|
|
14
|
+
export declare const KEYRING_PACKAGE_RE: RegExp;
|
|
15
|
+
export declare const KeyringPackageSchema: z.ZodString;
|
|
16
|
+
export declare const KEYRING_PROGRAMS_MAX = 32;
|
|
17
|
+
export declare const KeyringSourceSchema: z.ZodEnum<{
|
|
18
|
+
"1password": "1password";
|
|
19
|
+
bitwarden: "bitwarden";
|
|
20
|
+
keepassxc: "keepassxc";
|
|
21
|
+
keyring: "keyring";
|
|
22
|
+
}>;
|
|
23
|
+
export type KeyringSource = z.infer<typeof KeyringSourceSchema>;
|
|
24
|
+
export declare const KeyringPointerSchema: z.ZodObject<{
|
|
25
|
+
name: z.ZodString;
|
|
26
|
+
mode: z.ZodEnum<{
|
|
27
|
+
copy: "copy";
|
|
28
|
+
"each-use": "each-use";
|
|
29
|
+
"while-here": "while-here";
|
|
30
|
+
}>;
|
|
31
|
+
kind: z.ZodEnum<{
|
|
32
|
+
password: "password";
|
|
33
|
+
text: "text";
|
|
34
|
+
}>;
|
|
35
|
+
programs: z.ZodArray<z.ZodString>;
|
|
36
|
+
packages: z.ZodArray<z.ZodString>;
|
|
37
|
+
hosts: z.ZodArray<z.ZodString>;
|
|
38
|
+
anyField: z.ZodBoolean;
|
|
39
|
+
source: z.ZodEnum<{
|
|
40
|
+
"1password": "1password";
|
|
41
|
+
bitwarden: "bitwarden";
|
|
42
|
+
keepassxc: "keepassxc";
|
|
43
|
+
keyring: "keyring";
|
|
44
|
+
}>;
|
|
45
|
+
updatedAt: z.ZodNumber;
|
|
46
|
+
}, z.core.$strip>;
|
|
47
|
+
export type KeyringPointer = z.infer<typeof KeyringPointerSchema>;
|
|
48
|
+
export declare const KeyringDeviceKeysSchema: z.ZodObject<{
|
|
49
|
+
seal: z.ZodString;
|
|
50
|
+
inbox: z.ZodString;
|
|
51
|
+
}, z.core.$strip>;
|
|
52
|
+
export type KeyringDeviceKeys = z.infer<typeof KeyringDeviceKeysSchema>;
|
|
53
|
+
export declare const KeyringSandboxKeysSchema: z.ZodObject<{
|
|
54
|
+
sign: z.ZodString;
|
|
55
|
+
seal: z.ZodString;
|
|
56
|
+
}, z.core.$strip>;
|
|
57
|
+
export type KeyringSandboxKeys = z.infer<typeof KeyringSandboxKeysSchema>;
|
|
58
|
+
export declare const KeyringStateSchema: z.ZodObject<{
|
|
59
|
+
version: z.ZodString;
|
|
60
|
+
locked: z.ZodBoolean;
|
|
61
|
+
unlockedUntil: z.ZodOptional<z.ZodNumber>;
|
|
62
|
+
unlock: z.ZodArray<z.ZodEnum<{
|
|
63
|
+
hello: "hello";
|
|
64
|
+
passphrase: "passphrase";
|
|
65
|
+
}>>;
|
|
66
|
+
keys: z.ZodOptional<z.ZodObject<{
|
|
67
|
+
seal: z.ZodString;
|
|
68
|
+
inbox: z.ZodString;
|
|
69
|
+
}, z.core.$strip>>;
|
|
70
|
+
pendingInbox: z.ZodNumber;
|
|
71
|
+
}, z.core.$strip>;
|
|
72
|
+
export type KeyringState = z.infer<typeof KeyringStateSchema>;
|
|
73
|
+
export declare const KeyringSharesSchema: z.ZodObject<{
|
|
74
|
+
keyring: z.ZodOptional<z.ZodObject<{
|
|
75
|
+
version: z.ZodString;
|
|
76
|
+
locked: z.ZodBoolean;
|
|
77
|
+
unlockedUntil: z.ZodOptional<z.ZodNumber>;
|
|
78
|
+
unlock: z.ZodArray<z.ZodEnum<{
|
|
79
|
+
hello: "hello";
|
|
80
|
+
passphrase: "passphrase";
|
|
81
|
+
}>>;
|
|
82
|
+
keys: z.ZodOptional<z.ZodObject<{
|
|
83
|
+
seal: z.ZodString;
|
|
84
|
+
inbox: z.ZodString;
|
|
85
|
+
}, z.core.$strip>>;
|
|
86
|
+
pendingInbox: z.ZodNumber;
|
|
87
|
+
}, z.core.$strip>>;
|
|
88
|
+
pointers: z.ZodArray<z.ZodObject<{
|
|
89
|
+
name: z.ZodString;
|
|
90
|
+
mode: z.ZodEnum<{
|
|
91
|
+
copy: "copy";
|
|
92
|
+
"each-use": "each-use";
|
|
93
|
+
"while-here": "while-here";
|
|
94
|
+
}>;
|
|
95
|
+
kind: z.ZodEnum<{
|
|
96
|
+
password: "password";
|
|
97
|
+
text: "text";
|
|
98
|
+
}>;
|
|
99
|
+
programs: z.ZodArray<z.ZodString>;
|
|
100
|
+
packages: z.ZodArray<z.ZodString>;
|
|
101
|
+
hosts: z.ZodArray<z.ZodString>;
|
|
102
|
+
anyField: z.ZodBoolean;
|
|
103
|
+
source: z.ZodEnum<{
|
|
104
|
+
"1password": "1password";
|
|
105
|
+
bitwarden: "bitwarden";
|
|
106
|
+
keepassxc: "keepassxc";
|
|
107
|
+
keyring: "keyring";
|
|
108
|
+
}>;
|
|
109
|
+
updatedAt: z.ZodNumber;
|
|
110
|
+
}, z.core.$strip>>;
|
|
111
|
+
reason: z.ZodOptional<z.ZodString>;
|
|
112
|
+
}, z.core.$strip>;
|
|
113
|
+
export type KeyringShares = z.infer<typeof KeyringSharesSchema>;
|
|
114
|
+
export declare const KeyringLaneSchema: z.ZodEnum<{
|
|
115
|
+
browser: "browser";
|
|
116
|
+
code: "code";
|
|
117
|
+
desktop: "desktop";
|
|
118
|
+
shell: "shell";
|
|
119
|
+
}>;
|
|
120
|
+
export declare const KeyringGrantTargetSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
121
|
+
kind: z.ZodLiteral<"sandbox">;
|
|
122
|
+
lane: z.ZodEnum<{
|
|
123
|
+
browser: "browser";
|
|
124
|
+
code: "code";
|
|
125
|
+
desktop: "desktop";
|
|
126
|
+
shell: "shell";
|
|
127
|
+
}>;
|
|
128
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
129
|
+
kind: z.ZodLiteral<"window">;
|
|
130
|
+
programs: z.ZodArray<z.ZodString>;
|
|
131
|
+
anyField: z.ZodBoolean;
|
|
132
|
+
countdownSeconds: z.ZodOptional<z.ZodNumber>;
|
|
133
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
134
|
+
kind: z.ZodLiteral<"android">;
|
|
135
|
+
serial: z.ZodString;
|
|
136
|
+
packages: z.ZodArray<z.ZodString>;
|
|
137
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
138
|
+
kind: z.ZodLiteral<"relay">;
|
|
139
|
+
sealTo: z.ZodString;
|
|
140
|
+
toMachine: z.ZodString;
|
|
141
|
+
}, z.core.$strip>], "kind">;
|
|
142
|
+
export type KeyringGrantTarget = z.infer<typeof KeyringGrantTargetSchema>;
|
|
143
|
+
export declare const KEYRING_GRANT_TTL_MAX_MS: number;
|
|
144
|
+
export declare const KEYRING_NONCE_RE: RegExp;
|
|
145
|
+
export declare const KeyringGrantSchema: z.ZodObject<{
|
|
146
|
+
v: z.ZodLiteral<1>;
|
|
147
|
+
sandbox: z.ZodString;
|
|
148
|
+
secret: z.ZodString;
|
|
149
|
+
target: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
150
|
+
kind: z.ZodLiteral<"sandbox">;
|
|
151
|
+
lane: z.ZodEnum<{
|
|
152
|
+
browser: "browser";
|
|
153
|
+
code: "code";
|
|
154
|
+
desktop: "desktop";
|
|
155
|
+
shell: "shell";
|
|
156
|
+
}>;
|
|
157
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
158
|
+
kind: z.ZodLiteral<"window">;
|
|
159
|
+
programs: z.ZodArray<z.ZodString>;
|
|
160
|
+
anyField: z.ZodBoolean;
|
|
161
|
+
countdownSeconds: z.ZodOptional<z.ZodNumber>;
|
|
162
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
163
|
+
kind: z.ZodLiteral<"android">;
|
|
164
|
+
serial: z.ZodString;
|
|
165
|
+
packages: z.ZodArray<z.ZodString>;
|
|
166
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
167
|
+
kind: z.ZodLiteral<"relay">;
|
|
168
|
+
sealTo: z.ZodString;
|
|
169
|
+
toMachine: z.ZodString;
|
|
170
|
+
}, z.core.$strip>], "kind">;
|
|
171
|
+
purpose: z.ZodEnum<{
|
|
172
|
+
agent: "agent";
|
|
173
|
+
owner: "owner";
|
|
174
|
+
}>;
|
|
175
|
+
conversation: z.ZodOptional<z.ZodString>;
|
|
176
|
+
detail: z.ZodString;
|
|
177
|
+
nonce: z.ZodString;
|
|
178
|
+
issuedAt: z.ZodNumber;
|
|
179
|
+
expiresAt: z.ZodNumber;
|
|
180
|
+
}, z.core.$strict>;
|
|
181
|
+
export type KeyringGrant = z.infer<typeof KeyringGrantSchema>;
|
|
182
|
+
export declare const SignedKeyringGrantSchema: z.ZodObject<{
|
|
183
|
+
payload: z.ZodString;
|
|
184
|
+
sig: z.ZodString;
|
|
185
|
+
}, z.core.$strict>;
|
|
186
|
+
export type SignedKeyringGrant = z.infer<typeof SignedKeyringGrantSchema>;
|
|
187
|
+
export declare const SealedBoxSchema: z.ZodObject<{
|
|
188
|
+
v: z.ZodLiteral<1>;
|
|
189
|
+
epk: z.ZodString;
|
|
190
|
+
iv: z.ZodString;
|
|
191
|
+
tag: z.ZodString;
|
|
192
|
+
data: z.ZodString;
|
|
193
|
+
}, z.core.$strict>;
|
|
194
|
+
export type SealedBox = z.infer<typeof SealedBoxSchema>;
|
|
195
|
+
export declare const KeyringRefusalCodeSchema: z.ZodEnum<{
|
|
196
|
+
"bad-grant": "bad-grant";
|
|
197
|
+
busy: "busy";
|
|
198
|
+
declined: "declined";
|
|
199
|
+
expired: "expired";
|
|
200
|
+
guard: "guard";
|
|
201
|
+
locked: "locked";
|
|
202
|
+
"no-keyring": "no-keyring";
|
|
203
|
+
"not-shared": "not-shared";
|
|
204
|
+
replayed: "replayed";
|
|
205
|
+
unavailable: "unavailable";
|
|
206
|
+
unknown: "unknown";
|
|
207
|
+
}>;
|
|
208
|
+
export type KeyringRefusalCode = z.infer<typeof KeyringRefusalCodeSchema>;
|
|
209
|
+
export declare const KeyringReleaseResultSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
210
|
+
ok: z.ZodLiteral<true>;
|
|
211
|
+
sealed: z.ZodObject<{
|
|
212
|
+
v: z.ZodLiteral<1>;
|
|
213
|
+
epk: z.ZodString;
|
|
214
|
+
iv: z.ZodString;
|
|
215
|
+
tag: z.ZodString;
|
|
216
|
+
data: z.ZodString;
|
|
217
|
+
}, z.core.$strict>;
|
|
218
|
+
asked: z.ZodBoolean;
|
|
219
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
220
|
+
ok: z.ZodLiteral<false>;
|
|
221
|
+
code: z.ZodEnum<{
|
|
222
|
+
"bad-grant": "bad-grant";
|
|
223
|
+
busy: "busy";
|
|
224
|
+
declined: "declined";
|
|
225
|
+
expired: "expired";
|
|
226
|
+
guard: "guard";
|
|
227
|
+
locked: "locked";
|
|
228
|
+
"no-keyring": "no-keyring";
|
|
229
|
+
"not-shared": "not-shared";
|
|
230
|
+
replayed: "replayed";
|
|
231
|
+
unavailable: "unavailable";
|
|
232
|
+
unknown: "unknown";
|
|
233
|
+
}>;
|
|
234
|
+
refusal: z.ZodString;
|
|
235
|
+
}, z.core.$strip>], "ok">;
|
|
236
|
+
export type KeyringReleaseResult = z.infer<typeof KeyringReleaseResultSchema>;
|
|
237
|
+
export declare const KeyringTypeInputSchema: z.ZodObject<{
|
|
238
|
+
grant: z.ZodObject<{
|
|
239
|
+
payload: z.ZodString;
|
|
240
|
+
sig: z.ZodString;
|
|
241
|
+
}, z.core.$strict>;
|
|
242
|
+
sealed: z.ZodOptional<z.ZodObject<{
|
|
243
|
+
v: z.ZodLiteral<1>;
|
|
244
|
+
epk: z.ZodString;
|
|
245
|
+
iv: z.ZodString;
|
|
246
|
+
tag: z.ZodString;
|
|
247
|
+
data: z.ZodString;
|
|
248
|
+
}, z.core.$strict>>;
|
|
249
|
+
}, z.core.$strict>;
|
|
250
|
+
export type KeyringTypeInput = z.infer<typeof KeyringTypeInputSchema>;
|
|
251
|
+
export declare const KeyringTypeResultSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
252
|
+
ok: z.ZodLiteral<true>;
|
|
253
|
+
program: z.ZodString;
|
|
254
|
+
field: z.ZodEnum<{
|
|
255
|
+
password: "password";
|
|
256
|
+
text: "text";
|
|
257
|
+
}>;
|
|
258
|
+
asked: z.ZodBoolean;
|
|
259
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
260
|
+
ok: z.ZodLiteral<false>;
|
|
261
|
+
code: z.ZodEnum<{
|
|
262
|
+
"bad-grant": "bad-grant";
|
|
263
|
+
busy: "busy";
|
|
264
|
+
declined: "declined";
|
|
265
|
+
expired: "expired";
|
|
266
|
+
guard: "guard";
|
|
267
|
+
locked: "locked";
|
|
268
|
+
"no-keyring": "no-keyring";
|
|
269
|
+
"not-shared": "not-shared";
|
|
270
|
+
replayed: "replayed";
|
|
271
|
+
unavailable: "unavailable";
|
|
272
|
+
unknown: "unknown";
|
|
273
|
+
}>;
|
|
274
|
+
refusal: z.ZodString;
|
|
275
|
+
}, z.core.$strip>], "ok">;
|
|
276
|
+
export type KeyringTypeResult = z.infer<typeof KeyringTypeResultSchema>;
|
|
277
|
+
export declare const KeyringInboxItemSchema: z.ZodObject<{
|
|
278
|
+
name: z.ZodString;
|
|
279
|
+
sealed: z.ZodObject<{
|
|
280
|
+
v: z.ZodLiteral<1>;
|
|
281
|
+
epk: z.ZodString;
|
|
282
|
+
iv: z.ZodString;
|
|
283
|
+
tag: z.ZodString;
|
|
284
|
+
data: z.ZodString;
|
|
285
|
+
}, z.core.$strict>;
|
|
286
|
+
mode: z.ZodEnum<{
|
|
287
|
+
copy: "copy";
|
|
288
|
+
"each-use": "each-use";
|
|
289
|
+
"while-here": "while-here";
|
|
290
|
+
}>;
|
|
291
|
+
kind: z.ZodEnum<{
|
|
292
|
+
password: "password";
|
|
293
|
+
text: "text";
|
|
294
|
+
}>;
|
|
295
|
+
programs: z.ZodArray<z.ZodString>;
|
|
296
|
+
hosts: z.ZodArray<z.ZodString>;
|
|
297
|
+
sandbox: z.ZodString;
|
|
298
|
+
}, z.core.$strict>;
|
|
299
|
+
export type KeyringInboxItem = z.infer<typeof KeyringInboxItemSchema>;
|
|
300
|
+
export declare const KeyringInboxResultSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
301
|
+
ok: z.ZodLiteral<true>;
|
|
302
|
+
pending: z.ZodBoolean;
|
|
303
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
304
|
+
ok: z.ZodLiteral<false>;
|
|
305
|
+
code: z.ZodEnum<{
|
|
306
|
+
"bad-grant": "bad-grant";
|
|
307
|
+
busy: "busy";
|
|
308
|
+
declined: "declined";
|
|
309
|
+
expired: "expired";
|
|
310
|
+
guard: "guard";
|
|
311
|
+
locked: "locked";
|
|
312
|
+
"no-keyring": "no-keyring";
|
|
313
|
+
"not-shared": "not-shared";
|
|
314
|
+
replayed: "replayed";
|
|
315
|
+
unavailable: "unavailable";
|
|
316
|
+
unknown: "unknown";
|
|
317
|
+
}>;
|
|
318
|
+
refusal: z.ZodString;
|
|
319
|
+
}, z.core.$strip>], "ok">;
|
|
320
|
+
export type KeyringInboxResult = z.infer<typeof KeyringInboxResultSchema>;
|
|
321
|
+
export declare const KeyringCopiesSchema: z.ZodObject<{
|
|
322
|
+
copies: z.ZodArray<z.ZodObject<{
|
|
323
|
+
name: z.ZodString;
|
|
324
|
+
sealed: z.ZodObject<{
|
|
325
|
+
v: z.ZodLiteral<1>;
|
|
326
|
+
epk: z.ZodString;
|
|
327
|
+
iv: z.ZodString;
|
|
328
|
+
tag: z.ZodString;
|
|
329
|
+
data: z.ZodString;
|
|
330
|
+
}, z.core.$strict>;
|
|
331
|
+
updatedAt: z.ZodNumber;
|
|
332
|
+
}, z.core.$strip>>;
|
|
333
|
+
}, z.core.$strip>;
|
|
334
|
+
export type KeyringCopies = z.infer<typeof KeyringCopiesSchema>;
|
|
335
|
+
export declare const KeyringSyncPeerSchema: z.ZodObject<{
|
|
336
|
+
device: z.ZodString;
|
|
337
|
+
key: z.ZodString;
|
|
338
|
+
pairedAt: z.ZodNumber;
|
|
339
|
+
}, z.core.$strip>;
|
|
340
|
+
export type KeyringSyncPeer = z.infer<typeof KeyringSyncPeerSchema>;
|
|
341
|
+
export declare const KeyringSyncStateSchema: z.ZodObject<{
|
|
342
|
+
key: z.ZodString;
|
|
343
|
+
peers: z.ZodArray<z.ZodObject<{
|
|
344
|
+
device: z.ZodString;
|
|
345
|
+
key: z.ZodString;
|
|
346
|
+
pairedAt: z.ZodNumber;
|
|
347
|
+
}, z.core.$strip>>;
|
|
348
|
+
revision: z.ZodNumber;
|
|
349
|
+
}, z.core.$strip>;
|
|
350
|
+
export type KeyringSyncState = z.infer<typeof KeyringSyncStateSchema>;
|
|
351
|
+
export declare const KeyringSyncItemSchema: z.ZodObject<{
|
|
352
|
+
from: z.ZodString;
|
|
353
|
+
to: z.ZodString;
|
|
354
|
+
revision: z.ZodNumber;
|
|
355
|
+
sealed: z.ZodObject<{
|
|
356
|
+
v: z.ZodLiteral<1>;
|
|
357
|
+
epk: z.ZodString;
|
|
358
|
+
iv: z.ZodString;
|
|
359
|
+
tag: z.ZodString;
|
|
360
|
+
data: z.ZodString;
|
|
361
|
+
}, z.core.$strict>;
|
|
362
|
+
}, z.core.$strict>;
|
|
363
|
+
export type KeyringSyncItem = z.infer<typeof KeyringSyncItemSchema>;
|
|
364
|
+
export declare const KeyringSyncPairSchema: z.ZodObject<{
|
|
365
|
+
peer: z.ZodObject<{
|
|
366
|
+
device: z.ZodString;
|
|
367
|
+
key: z.ZodString;
|
|
368
|
+
}, z.core.$strict>;
|
|
369
|
+
self: z.ZodString;
|
|
370
|
+
}, z.core.$strict>;
|
|
371
|
+
export declare const KeyringSyncPairResultSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
372
|
+
ok: z.ZodLiteral<true>;
|
|
373
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
374
|
+
ok: z.ZodLiteral<false>;
|
|
375
|
+
code: z.ZodEnum<{
|
|
376
|
+
"bad-grant": "bad-grant";
|
|
377
|
+
busy: "busy";
|
|
378
|
+
declined: "declined";
|
|
379
|
+
expired: "expired";
|
|
380
|
+
guard: "guard";
|
|
381
|
+
locked: "locked";
|
|
382
|
+
"no-keyring": "no-keyring";
|
|
383
|
+
"not-shared": "not-shared";
|
|
384
|
+
replayed: "replayed";
|
|
385
|
+
unavailable: "unavailable";
|
|
386
|
+
unknown: "unknown";
|
|
387
|
+
}>;
|
|
388
|
+
refusal: z.ZodString;
|
|
389
|
+
}, z.core.$strip>], "ok">;
|
|
390
|
+
export declare const KeyringSyncOutboxSchema: z.ZodObject<{
|
|
391
|
+
items: z.ZodArray<z.ZodObject<{
|
|
392
|
+
from: z.ZodString;
|
|
393
|
+
to: z.ZodString;
|
|
394
|
+
revision: z.ZodNumber;
|
|
395
|
+
sealed: z.ZodObject<{
|
|
396
|
+
v: z.ZodLiteral<1>;
|
|
397
|
+
epk: z.ZodString;
|
|
398
|
+
iv: z.ZodString;
|
|
399
|
+
tag: z.ZodString;
|
|
400
|
+
data: z.ZodString;
|
|
401
|
+
}, z.core.$strict>;
|
|
402
|
+
}, z.core.$strict>>;
|
|
403
|
+
}, z.core.$strip>;
|
|
404
|
+
export declare const KeyringSyncDeliverSchema: z.ZodObject<{
|
|
405
|
+
items: z.ZodArray<z.ZodObject<{
|
|
406
|
+
from: z.ZodString;
|
|
407
|
+
to: z.ZodString;
|
|
408
|
+
revision: z.ZodNumber;
|
|
409
|
+
sealed: z.ZodObject<{
|
|
410
|
+
v: z.ZodLiteral<1>;
|
|
411
|
+
epk: z.ZodString;
|
|
412
|
+
iv: z.ZodString;
|
|
413
|
+
tag: z.ZodString;
|
|
414
|
+
data: z.ZodString;
|
|
415
|
+
}, z.core.$strict>;
|
|
416
|
+
}, z.core.$strict>>;
|
|
417
|
+
}, z.core.$strict>;
|
|
418
|
+
export declare const KeyringSyncDeliverResultSchema: z.ZodObject<{
|
|
419
|
+
accepted: z.ZodNumber;
|
|
420
|
+
}, z.core.$strip>;
|
|
421
|
+
//# sourceMappingURL=keyring.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"keyring.d.ts","sourceRoot":"","sources":["../../src/schemas/keyring.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAUxB,eAAO,MAAM,cAAc,QAAyB,CAAC;AACrD,eAAO,MAAM,sBAAsB,aAAoG,CAAC;AAIxI,eAAO,MAAM,eAAe,QAAoC,CAAC;AACjE,eAAO,MAAM,uBAAuB,aAGqF,CAAC;AAE1H,eAAO,MAAM,sBAAsB;;;;EAI9B,CAAC;AACN,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC;AAItE,eAAO,MAAM,mBAAmB,MAAM,CAAC;AACvC,eAAO,MAAM,oBAAoB,aAKmF,CAAC;AACrH,eAAO,MAAM,kBAAkB,QAA+C,CAAC;AAC/E,eAAO,MAAM,oBAAoB,aAA8H,CAAC;AAChK,eAAO,MAAM,oBAAoB,KAAK,CAAC;AAEvC,eAAO,MAAM,mBAAmB;;;;;EAE+G,CAAC;AAChJ,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAIhE,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;iBAgB/B,CAAC;AACH,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAIlE,eAAO,MAAM,uBAAuB;;;iBAGlC,CAAC;AACH,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAKxE,eAAO,MAAM,wBAAwB;;;iBAGnC,CAAC;AACH,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC;AAE1E,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;iBAS7B,CAAC;AACH,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAI9D,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAI9B,CAAC;AACH,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAIhE,eAAO,MAAM,iBAAiB;;;;;EAEmH,CAAC;AAGlJ,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;;2BAiBnC,CAAC;AACH,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC;AAI1E,eAAO,MAAM,wBAAwB,QAAa,CAAC;AACnD,eAAO,MAAM,gBAAgB,QAAyB,CAAC;AAEvD,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAalB,CAAC;AACd,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAE9D,eAAO,MAAM,wBAAwB;;;kBAKxB,CAAC;AACd,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC;AAI1E,eAAO,MAAM,eAAe;;;;;;kBAQf,CAAC;AACd,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAC;AAExD,eAAO,MAAM,wBAAwB;;;;;;;;;;;;EAIhC,CAAC;AACN,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC;AAI1E,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;;;;;;;;;yBAGrC,CAAC;AACH,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAC;AAE9E,eAAO,MAAM,sBAAsB;;;;;;;;;;;;kBAOtB,CAAC;AACd,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC;AAEtE,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;yBAQlC,CAAC;AACH,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAIxE,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;kBAUtB,CAAC;AACd,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC;AAEtE,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;yBAAmJ,CAAC;AACzL,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC;AAI1E,eAAO,MAAM,mBAAmB;;;;;;;;;;;;iBAE9B,CAAC;AACH,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAQhE,eAAO,MAAM,qBAAqB;;;;iBAIhC,CAAC;AACH,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAEpE,eAAO,MAAM,sBAAsB;;;;;;;;iBAIjC,CAAC;AACH,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC;AAEtE,eAAO,MAAM,qBAAqB;;;;;;;;;;;kBAOrB,CAAC;AACd,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAEpE,eAAO,MAAM,qBAAqB;;;;;;kBAMrB,CAAC;AAEd,eAAO,MAAM,2BAA2B;;;;;;;;;;;;;;;;;;yBAA2E,CAAC;AACpH,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;iBAAsD,CAAC;AAC3F,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;kBAAuE,CAAC;AAC7G,eAAO,MAAM,8BAA8B;;iBAAgJ,CAAC"}
|
|
@@ -0,0 +1,176 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
export const KEYRING_KEY_RE = /^[A-Za-z0-9_-]{43}$/u;
|
|
3
|
+
export const KeyringPublicKeySchema = z.string().regex(KEYRING_KEY_RE).describe("A raw 32-byte public key, base64url without padding.");
|
|
4
|
+
export const KEYRING_NAME_RE = /^[A-Za-z_][A-Za-z0-9_]{0,127}$/u;
|
|
5
|
+
export const KeyringSecretNameSchema = z
|
|
6
|
+
.string()
|
|
7
|
+
.regex(KEYRING_NAME_RE)
|
|
8
|
+
.describe("The secret's name, as a reference to it carries it: a letter or underscore, then letters, digits or `_`.");
|
|
9
|
+
export const KeyringShareModeSchema = z
|
|
10
|
+
.enum(["each-use", "while-here", "copy"])
|
|
11
|
+
.describe("How the keyring answers this sandbox: `each-use` asks the person at the computer every time (Windows Hello, or the keyring's passphrase); `while-here` answers unasked while the keyring is unlocked, for as long as the unlock lasts; `copy` keeps a copy in the sandbox, so it works with the computer off, which makes it an ordinary sandbox secret.");
|
|
12
|
+
export const KEYRING_PROGRAM_MAX = 260;
|
|
13
|
+
export const KeyringProgramSchema = z
|
|
14
|
+
.string()
|
|
15
|
+
.min(1)
|
|
16
|
+
.max(KEYRING_PROGRAM_MAX)
|
|
17
|
+
.refine((value) => !/[\0\r\n]/u.test(value), "one program per entry, no line breaks")
|
|
18
|
+
.describe("A program, by its executable's file name (`FortiClient.exe`, `mstsc.exe`, `ssh`) or its whole path.");
|
|
19
|
+
export const KEYRING_PACKAGE_RE = /^[A-Za-z][A-Za-z0-9_]*(\.[A-Za-z0-9_]+)+$/u;
|
|
20
|
+
export const KeyringPackageSchema = z.string().regex(KEYRING_PACKAGE_RE).max(255).describe("An Android app, by its package name (`com.fortinet.forticlient`).");
|
|
21
|
+
export const KEYRING_PROGRAMS_MAX = 32;
|
|
22
|
+
export const KeyringSourceSchema = z
|
|
23
|
+
.enum(["keyring", "bitwarden", "1password", "keepassxc"])
|
|
24
|
+
.describe("Where the value itself is read from when it is used: the keyring's own vault, or a password manager the keyring reads it from.");
|
|
25
|
+
export const KeyringPointerSchema = z.object({
|
|
26
|
+
name: KeyringSecretNameSchema,
|
|
27
|
+
mode: KeyringShareModeSchema,
|
|
28
|
+
kind: z.enum(["password", "text"]).describe("A password, typed only into a password field unless `anyField` says otherwise; or text, typed anywhere a program on the list has focus."),
|
|
29
|
+
programs: z
|
|
30
|
+
.array(KeyringProgramSchema)
|
|
31
|
+
.max(KEYRING_PROGRAMS_MAX)
|
|
32
|
+
.describe("Programs on this computer it may be typed into without asking. Empty: typing it into any window asks the person at the computer."),
|
|
33
|
+
packages: z.array(KeyringPackageSchema).max(KEYRING_PROGRAMS_MAX).describe("Android apps on a phone attached to this computer it may be typed into."),
|
|
34
|
+
hosts: z
|
|
35
|
+
.array(z.string().min(1).max(253))
|
|
36
|
+
.max(KEYRING_PROGRAMS_MAX)
|
|
37
|
+
.describe("Sites it may be typed into or sent to, exact or `*.domain`, the same shape as a sandbox secret's host guard."),
|
|
38
|
+
anyField: z.boolean().describe("Whether it may be typed into a field the program does not mark as a password field."),
|
|
39
|
+
source: KeyringSourceSchema,
|
|
40
|
+
updatedAt: z.number().describe("When the entry last changed, in milliseconds."),
|
|
41
|
+
});
|
|
42
|
+
export const KeyringDeviceKeysSchema = z.object({
|
|
43
|
+
seal: KeyringPublicKeySchema.describe("Seals a value this keyring is asked to type. Its private half sits beside the vault, readable while locked."),
|
|
44
|
+
inbox: KeyringPublicKeySchema.describe("Seals a value sent to be kept. Its private half is inside the vault, so nothing reads an inbox item until a person unlocks it."),
|
|
45
|
+
});
|
|
46
|
+
export const KeyringSandboxKeysSchema = z.object({
|
|
47
|
+
sign: KeyringPublicKeySchema.describe("Verifies the grants this sandbox signs (Ed25519)."),
|
|
48
|
+
seal: KeyringPublicKeySchema.describe("What a value released to this sandbox is sealed to (X25519)."),
|
|
49
|
+
});
|
|
50
|
+
export const KeyringStateSchema = z.object({
|
|
51
|
+
version: z.string().describe("The keyring's own release."),
|
|
52
|
+
locked: z.boolean().describe("Whether the vault is locked. Locked, `while-here` entries ask like `each-use` ones."),
|
|
53
|
+
unlockedUntil: z.number().optional().describe("When the current unlock ends, in milliseconds. Absent while locked."),
|
|
54
|
+
unlock: z
|
|
55
|
+
.array(z.enum(["hello", "passphrase"]))
|
|
56
|
+
.describe("How a person unlocks it here: Windows Hello, or the keyring's passphrase."),
|
|
57
|
+
keys: KeyringDeviceKeysSchema.optional().describe("Absent until the keyring is set up: there is no vault, so no inbox to seal a value to."),
|
|
58
|
+
pendingInbox: z.number().int().nonnegative().describe("Values sent to be kept that wait for the next unlock."),
|
|
59
|
+
});
|
|
60
|
+
export const KeyringSharesSchema = z.object({
|
|
61
|
+
keyring: KeyringStateSchema.optional().describe("The keyring on this computer. Absent when none is installed or it does not answer."),
|
|
62
|
+
pointers: z.array(KeyringPointerSchema).describe("The entries shared with the sandbox asking. Names and rules only, never values."),
|
|
63
|
+
reason: z.string().optional().describe("Why there is no keyring to speak of, in words, when there is not."),
|
|
64
|
+
});
|
|
65
|
+
export const KeyringLaneSchema = z
|
|
66
|
+
.enum(["shell", "code", "browser", "desktop"])
|
|
67
|
+
.describe("Where in the sandbox a released value goes: a command, a script, a page in a sandbox browser, a window on the sandbox's desktop.");
|
|
68
|
+
export const KeyringGrantTargetSchema = z.discriminatedUnion("kind", [
|
|
69
|
+
z.object({ kind: z.literal("sandbox"), lane: KeyringLaneSchema }),
|
|
70
|
+
z.object({
|
|
71
|
+
kind: z.literal("window"),
|
|
72
|
+
programs: z.array(KeyringProgramSchema).max(KEYRING_PROGRAMS_MAX),
|
|
73
|
+
anyField: z.boolean(),
|
|
74
|
+
countdownSeconds: z.number().int().min(0).max(10).optional(),
|
|
75
|
+
}),
|
|
76
|
+
z.object({ kind: z.literal("android"), serial: z.string().min(1).max(128), packages: z.array(KeyringPackageSchema).max(KEYRING_PROGRAMS_MAX) }),
|
|
77
|
+
z.object({ kind: z.literal("relay"), sealTo: KeyringPublicKeySchema, toMachine: z.string().min(1).max(128) }),
|
|
78
|
+
]);
|
|
79
|
+
export const KEYRING_GRANT_TTL_MAX_MS = 2 * 60_000;
|
|
80
|
+
export const KEYRING_NONCE_RE = /^[A-Za-z0-9_-]{22}$/u;
|
|
81
|
+
export const KeyringGrantSchema = z
|
|
82
|
+
.object({
|
|
83
|
+
v: z.literal(1),
|
|
84
|
+
sandbox: z.string().url().describe("The sandbox's own address: which share this grant spends, and whose signing key verifies it."),
|
|
85
|
+
secret: KeyringSecretNameSchema,
|
|
86
|
+
target: KeyringGrantTargetSchema,
|
|
87
|
+
purpose: z.enum(["agent", "owner"]).describe("Whether an agent asked for this use, or the owner did from the editor's Type into…."),
|
|
88
|
+
conversation: z.string().max(200).optional().describe("The conversation the use is for, shown in the keyring's prompt and its record."),
|
|
89
|
+
detail: z.string().min(1).max(300).describe("What the use is, in words, for the person answering the prompt: the command's start, the site, the window."),
|
|
90
|
+
nonce: z.string().regex(KEYRING_NONCE_RE).describe("16 random bytes, base64url: a grant answers once."),
|
|
91
|
+
issuedAt: z.number().int(),
|
|
92
|
+
expiresAt: z.number().int(),
|
|
93
|
+
})
|
|
94
|
+
.strict();
|
|
95
|
+
export const SignedKeyringGrantSchema = z
|
|
96
|
+
.object({
|
|
97
|
+
payload: z.string().min(1).max(8192).describe("The grant's JSON, base64url."),
|
|
98
|
+
sig: z.string().regex(/^[A-Za-z0-9_-]{86}$/u).describe("The sandbox's Ed25519 signature over the grant, base64url."),
|
|
99
|
+
})
|
|
100
|
+
.strict();
|
|
101
|
+
export const SealedBoxSchema = z
|
|
102
|
+
.object({
|
|
103
|
+
v: z.literal(1),
|
|
104
|
+
epk: KeyringPublicKeySchema.describe("The sender's one-time public key."),
|
|
105
|
+
iv: z.string().regex(/^[A-Za-z0-9_-]{16}$/u),
|
|
106
|
+
tag: z.string().regex(/^[A-Za-z0-9_-]{22}$/u),
|
|
107
|
+
data: z.string().max(65536).regex(/^[A-Za-z0-9_-]*$/u),
|
|
108
|
+
})
|
|
109
|
+
.strict();
|
|
110
|
+
export const KeyringRefusalCodeSchema = z
|
|
111
|
+
.enum(["no-keyring", "locked", "declined", "unknown", "not-shared", "bad-grant", "expired", "replayed", "guard", "unavailable", "busy"])
|
|
112
|
+
.describe("Why: no keyring here; locked with nobody to unlock it; the person said no; no such entry; not shared with this sandbox; a grant that does not verify; one past its time; one already spent; the focused window or field is not one it may go to; its password manager did not answer; another prompt is open.");
|
|
113
|
+
const refusal = z.object({ ok: z.literal(false), code: KeyringRefusalCodeSchema, refusal: z.string().describe("What happened, in words a person can act on.") });
|
|
114
|
+
export const KeyringReleaseResultSchema = z.discriminatedUnion("ok", [
|
|
115
|
+
z.object({ ok: z.literal(true), sealed: SealedBoxSchema, asked: z.boolean().describe("Whether the person at the computer was asked.") }),
|
|
116
|
+
refusal,
|
|
117
|
+
]);
|
|
118
|
+
export const KeyringTypeInputSchema = z
|
|
119
|
+
.object({
|
|
120
|
+
grant: SignedKeyringGrantSchema,
|
|
121
|
+
sealed: SealedBoxSchema.optional(),
|
|
122
|
+
})
|
|
123
|
+
.strict();
|
|
124
|
+
export const KeyringTypeResultSchema = z.discriminatedUnion("ok", [
|
|
125
|
+
z.object({
|
|
126
|
+
ok: z.literal(true),
|
|
127
|
+
program: z.string().describe("The program it was typed into: its executable's file name, or the Android app's package."),
|
|
128
|
+
field: z.enum(["password", "text"]).describe("Whether the focused field was a password field."),
|
|
129
|
+
asked: z.boolean().describe("Whether the person at the computer was asked."),
|
|
130
|
+
}),
|
|
131
|
+
refusal,
|
|
132
|
+
]);
|
|
133
|
+
export const KeyringInboxItemSchema = z
|
|
134
|
+
.object({
|
|
135
|
+
name: KeyringSecretNameSchema,
|
|
136
|
+
sealed: SealedBoxSchema,
|
|
137
|
+
mode: KeyringShareModeSchema,
|
|
138
|
+
kind: z.enum(["password", "text"]),
|
|
139
|
+
programs: z.array(KeyringProgramSchema).max(KEYRING_PROGRAMS_MAX),
|
|
140
|
+
hosts: z.array(z.string().min(1).max(253)).max(KEYRING_PROGRAMS_MAX),
|
|
141
|
+
sandbox: z.string().url().describe("The sandbox it came from, which it is shared with once taken in."),
|
|
142
|
+
})
|
|
143
|
+
.strict();
|
|
144
|
+
export const KeyringInboxResultSchema = z.discriminatedUnion("ok", [z.object({ ok: z.literal(true), pending: z.boolean().describe("Whether it waits for the next unlock.") }), refusal]);
|
|
145
|
+
export const KeyringCopiesSchema = z.object({
|
|
146
|
+
copies: z.array(z.object({ name: KeyringSecretNameSchema, sealed: SealedBoxSchema, updatedAt: z.number() })),
|
|
147
|
+
});
|
|
148
|
+
export const KeyringSyncPeerSchema = z.object({
|
|
149
|
+
device: z.string().min(1).max(128).describe("The other computer, by its device card."),
|
|
150
|
+
key: KeyringPublicKeySchema.describe("Its keyring's sync key."),
|
|
151
|
+
pairedAt: z.number().describe("When the two were paired, in milliseconds."),
|
|
152
|
+
});
|
|
153
|
+
export const KeyringSyncStateSchema = z.object({
|
|
154
|
+
key: KeyringPublicKeySchema.describe("This keyring's own sync key."),
|
|
155
|
+
peers: z.array(KeyringSyncPeerSchema).describe("The keyrings it keeps in step with."),
|
|
156
|
+
revision: z.number().int().nonnegative().describe("How many changes this keyring has made, for ordering what it sends."),
|
|
157
|
+
});
|
|
158
|
+
export const KeyringSyncItemSchema = z
|
|
159
|
+
.object({
|
|
160
|
+
from: KeyringPublicKeySchema.describe("The sending keyring's sync key."),
|
|
161
|
+
to: KeyringPublicKeySchema.describe("The receiving keyring's sync key."),
|
|
162
|
+
revision: z.number().int().nonnegative(),
|
|
163
|
+
sealed: SealedBoxSchema.describe("The sender's entries, sealed to the receiver for `sync` with its own revision."),
|
|
164
|
+
})
|
|
165
|
+
.strict();
|
|
166
|
+
export const KeyringSyncPairSchema = z
|
|
167
|
+
.object({
|
|
168
|
+
peer: z.object({ device: z.string().min(1).max(128), key: KeyringPublicKeySchema }).strict(),
|
|
169
|
+
self: z.string().min(1).max(128),
|
|
170
|
+
})
|
|
171
|
+
.strict();
|
|
172
|
+
export const KeyringSyncPairResultSchema = z.discriminatedUnion("ok", [z.object({ ok: z.literal(true) }), refusal]);
|
|
173
|
+
export const KeyringSyncOutboxSchema = z.object({ items: z.array(KeyringSyncItemSchema) });
|
|
174
|
+
export const KeyringSyncDeliverSchema = z.object({ items: z.array(KeyringSyncItemSchema).max(64) }).strict();
|
|
175
|
+
export const KeyringSyncDeliverResultSchema = z.object({ accepted: z.number().int().nonnegative().describe("How many it took; the rest were not from a paired keyring or did not open.") });
|
|
176
|
+
//# sourceMappingURL=keyring.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"keyring.js","sourceRoot":"","sources":["../../src/schemas/keyring.ts"],"names":[],"mappings":"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"}
|