@cef-ai/vault-sdk 2.0.0 → 3.1.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.
Files changed (73) hide show
  1. package/README.md +18 -16
  2. package/dist/agreements/sign.d.ts +4 -4
  3. package/dist/agreements/sign.d.ts.map +1 -1
  4. package/dist/agreements/sign.js +3 -3
  5. package/dist/agreements/sign.js.map +1 -1
  6. package/dist/auth/assert-scheme.d.ts +8 -0
  7. package/dist/auth/assert-scheme.d.ts.map +1 -0
  8. package/dist/auth/assert-scheme.js +15 -0
  9. package/dist/auth/assert-scheme.js.map +1 -0
  10. package/dist/auth/provider.d.ts +12 -0
  11. package/dist/auth/provider.d.ts.map +1 -1
  12. package/dist/auth/wallet.d.ts +10 -4
  13. package/dist/auth/wallet.d.ts.map +1 -1
  14. package/dist/auth/wallet.js +29 -8
  15. package/dist/auth/wallet.js.map +1 -1
  16. package/dist/client.d.ts +26 -5
  17. package/dist/client.d.ts.map +1 -1
  18. package/dist/client.js +77 -21
  19. package/dist/client.js.map +1 -1
  20. package/dist/core/canonical.d.ts +10 -2
  21. package/dist/core/canonical.d.ts.map +1 -1
  22. package/dist/core/canonical.js +23 -4
  23. package/dist/core/canonical.js.map +1 -1
  24. package/dist/core/endpoints.d.ts +4 -0
  25. package/dist/core/endpoints.d.ts.map +1 -1
  26. package/dist/core/endpoints.js +17 -0
  27. package/dist/core/endpoints.js.map +1 -1
  28. package/dist/core/errors.d.ts.map +1 -1
  29. package/dist/core/errors.js +4 -1
  30. package/dist/core/errors.js.map +1 -1
  31. package/dist/core/http.d.ts +27 -0
  32. package/dist/core/http.d.ts.map +1 -1
  33. package/dist/core/http.js +7 -3
  34. package/dist/core/http.js.map +1 -1
  35. package/dist/core/types.d.ts +31 -0
  36. package/dist/core/types.d.ts.map +1 -1
  37. package/dist/fluent/scope.d.ts +28 -1
  38. package/dist/fluent/scope.d.ts.map +1 -1
  39. package/dist/fluent/scope.js +29 -0
  40. package/dist/fluent/scope.js.map +1 -1
  41. package/dist/fluent/vault.d.ts +10 -6
  42. package/dist/fluent/vault.d.ts.map +1 -1
  43. package/dist/fluent/vault.js +18 -9
  44. package/dist/fluent/vault.js.map +1 -1
  45. package/dist/index.d.ts +8 -5
  46. package/dist/index.d.ts.map +1 -1
  47. package/dist/index.js +12 -2
  48. package/dist/index.js.map +1 -1
  49. package/dist/internal/objects.d.ts +53 -0
  50. package/dist/internal/objects.d.ts.map +1 -0
  51. package/dist/internal/objects.js +72 -0
  52. package/dist/internal/objects.js.map +1 -0
  53. package/dist/internal/onboarding.d.ts +4 -6
  54. package/dist/internal/onboarding.d.ts.map +1 -1
  55. package/dist/internal/onboarding.js +15 -12
  56. package/dist/internal/onboarding.js.map +1 -1
  57. package/dist/internal/vault-info.d.ts +12 -0
  58. package/dist/internal/vault-info.d.ts.map +1 -0
  59. package/dist/internal/vault-info.js +19 -0
  60. package/dist/internal/vault-info.js.map +1 -0
  61. package/dist/wallet/cere.d.ts +7 -6
  62. package/dist/wallet/cere.d.ts.map +1 -1
  63. package/dist/wallet/cere.js +10 -8
  64. package/dist/wallet/cere.js.map +1 -1
  65. package/dist/wallet/keypair.d.ts +8 -7
  66. package/dist/wallet/keypair.d.ts.map +1 -1
  67. package/dist/wallet/keypair.js +16 -9
  68. package/dist/wallet/keypair.js.map +1 -1
  69. package/package.json +4 -3
  70. package/dist/wallet/adapter.d.ts +0 -15
  71. package/dist/wallet/adapter.d.ts.map +0 -1
  72. package/dist/wallet/adapter.js +0 -6
  73. package/dist/wallet/adapter.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"canonical.d.ts","sourceRoot":"","sources":["../../src/core/canonical.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,UAAU,EAAE,eAAe,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAIzF,eAAO,MAAM,UAAU,QAAO,MAAkC,CAAC;AAEjE,wBAAgB,cAAc,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAEhD;AAED,MAAM,WAAW,WAAW;IAAG,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAAC,KAAK,EAAE,UAAU,CAAA;CAAE;AACjF,wBAAgB,SAAS,CACvB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,EACzC,KAAK,GAAE,MAAM,MAAmB,GAC/B,WAAW,CASb;AAED,MAAM,WAAW,QAAQ;IAAG,QAAQ,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,UAAU,CAAA;CAAE;AACjE,wBAAgB,aAAa,CAC3B,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,MAAM,EACb,KAAK,GAAE,MAAM,MAAmB,GAC/B,QAAQ,CAQV"}
1
+ {"version":3,"file":"canonical.d.ts","sourceRoot":"","sources":["../../src/core/canonical.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,UAAU,EAAE,eAAe,EAAE,eAAe,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAK1G,eAAO,MAAM,UAAU,QAAO,MAAkC,CAAC;AAEjE,wBAAgB,cAAc,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAEhD;AAED,MAAM,WAAW,WAAW;IAAG,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAAC,KAAK,EAAE,UAAU,CAAA;CAAE;AACjF,wBAAgB,SAAS,CACvB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,EACzC,KAAK,GAAE,MAAM,MAAmB,GAC/B,WAAW,CASb;AAED,MAAM,WAAW,QAAQ;IAAG,QAAQ,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,UAAU,CAAA;CAAE;AACjE,wBAAgB,aAAa,CAC3B,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,MAAM,EACb,KAAK,GAAE,MAAM,MAAmB,EAChC,aAAa,CAAC,EAAE,MAAM,GACrB,QAAQ,CAcV;AAED;;;;;;GAMG;AACH,wBAAsB,SAAS,CAAC,IAAI,EAAE,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC,CAGjE"}
@@ -3,7 +3,8 @@
3
3
  // them rather than maintain a second copy. The signing-preamble
4
4
  // helpers below (stampBody/buildPreamble/nowRFC3339) are vault-specific and
5
5
  // stay here. `stripHexPrefix` is kept as a vault-local alias of `strip0xHex`.
6
- export { bytesToHex, encodeBase64Url, ensure0xHex, strip0xHex } from "@cef-ai/transport";
6
+ export { bytesToHex, encodeBase64Url, decodeBase64Url, ensure0xHex, strip0xHex } from "@cef-ai/transport";
7
+ import { bytesToHex } from "@cef-ai/transport";
7
8
  const enc = new TextEncoder();
8
9
  export const nowRFC3339 = () => new Date().toISOString();
9
10
  export function stripHexPrefix(s) {
@@ -20,13 +21,31 @@ export function stampBody(body, clock = nowRFC3339) {
20
21
  // change the signed bytes and break verification.
21
22
  return { body: stamped, bytes: enc.encode(JSON.stringify(stamped)) };
22
23
  }
23
- export function buildPreamble(method, path, query, clock = nowRFC3339) {
24
- const preamble = JSON.stringify({
24
+ export function buildPreamble(method, path, query, clock = nowRFC3339, contentSha256) {
25
+ const fields = {
25
26
  method: method.toUpperCase(),
26
27
  path,
27
28
  query,
28
29
  timestamp: clock(),
29
- });
30
+ };
31
+ // Only present for a streamed object upload (ADR-002) — the field vault-
32
+ // api's VerifyStreamedUpload requires so it can authenticate the request
33
+ // and the claimed hash without ever reading the (possibly large) body.
34
+ // Omitted entirely for GET/HEAD so their signed bytes are unchanged.
35
+ if (contentSha256 !== undefined)
36
+ fields.contentSha256 = contentSha256;
37
+ const preamble = JSON.stringify(fields);
30
38
  return { preamble, bytes: enc.encode(preamble) };
31
39
  }
40
+ /**
41
+ * SHA-256 of `data`, hex-encoded — the content-hash commitment a streamed
42
+ * object upload (ADR-002) signs instead of the body itself. Uses the
43
+ * standard Web Crypto API (`crypto.subtle`), available as a global in both
44
+ * browsers and Node >=20 (this package's minimum), so no extra hashing
45
+ * dependency is needed.
46
+ */
47
+ export async function sha256Hex(data) {
48
+ const digest = await crypto.subtle.digest("SHA-256", data);
49
+ return bytesToHex(new Uint8Array(digest));
50
+ }
32
51
  //# sourceMappingURL=canonical.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"canonical.js","sourceRoot":"","sources":["../../src/core/canonical.ts"],"names":[],"mappings":"AAAA,wBAAwB;AACxB,8EAA8E;AAC9E,gEAAgE;AAChE,4EAA4E;AAC5E,8EAA8E;AAC9E,OAAO,EAAE,UAAU,EAAE,eAAe,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAEzF,MAAM,GAAG,GAAG,IAAI,WAAW,EAAE,CAAC;AAE9B,MAAM,CAAC,MAAM,UAAU,GAAG,GAAW,EAAE,CAAC,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;AAEjE,MAAM,UAAU,cAAc,CAAC,CAAS;IACtC,OAAO,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAC7C,CAAC;AAGD,MAAM,UAAU,SAAS,CACvB,IAAyC,EACzC,QAAsB,UAAU;IAEhC,MAAM,OAAO,GAA4B,EAAE,GAAG,CAAC,IAAI,IAAI,EAAE,CAAC,EAAE,CAAC;IAC7D,IAAI,OAAO,OAAO,CAAC,SAAS,KAAK,QAAQ;QAAE,OAAO,CAAC,SAAS,GAAG,KAAK,EAAE,CAAC;IACvE,2EAA2E;IAC3E,0EAA0E;IAC1E,4EAA4E;IAC5E,4EAA4E;IAC5E,kDAAkD;IAClD,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC;AACvE,CAAC;AAGD,MAAM,UAAU,aAAa,CAC3B,MAAc,EACd,IAAY,EACZ,KAAa,EACb,QAAsB,UAAU;IAEhC,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC;QAC9B,MAAM,EAAE,MAAM,CAAC,WAAW,EAAE;QAC5B,IAAI;QACJ,KAAK;QACL,SAAS,EAAE,KAAK,EAAE;KACnB,CAAC,CAAC;IACH,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC;AACnD,CAAC"}
1
+ {"version":3,"file":"canonical.js","sourceRoot":"","sources":["../../src/core/canonical.ts"],"names":[],"mappings":"AAAA,wBAAwB;AACxB,8EAA8E;AAC9E,gEAAgE;AAChE,4EAA4E;AAC5E,8EAA8E;AAC9E,OAAO,EAAE,UAAU,EAAE,eAAe,EAAE,eAAe,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC1G,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAE/C,MAAM,GAAG,GAAG,IAAI,WAAW,EAAE,CAAC;AAE9B,MAAM,CAAC,MAAM,UAAU,GAAG,GAAW,EAAE,CAAC,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;AAEjE,MAAM,UAAU,cAAc,CAAC,CAAS;IACtC,OAAO,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAC7C,CAAC;AAGD,MAAM,UAAU,SAAS,CACvB,IAAyC,EACzC,QAAsB,UAAU;IAEhC,MAAM,OAAO,GAA4B,EAAE,GAAG,CAAC,IAAI,IAAI,EAAE,CAAC,EAAE,CAAC;IAC7D,IAAI,OAAO,OAAO,CAAC,SAAS,KAAK,QAAQ;QAAE,OAAO,CAAC,SAAS,GAAG,KAAK,EAAE,CAAC;IACvE,2EAA2E;IAC3E,0EAA0E;IAC1E,4EAA4E;IAC5E,4EAA4E;IAC5E,kDAAkD;IAClD,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC;AACvE,CAAC;AAGD,MAAM,UAAU,aAAa,CAC3B,MAAc,EACd,IAAY,EACZ,KAAa,EACb,QAAsB,UAAU,EAChC,aAAsB;IAEtB,MAAM,MAAM,GAA2B;QACrC,MAAM,EAAE,MAAM,CAAC,WAAW,EAAE;QAC5B,IAAI;QACJ,KAAK;QACL,SAAS,EAAE,KAAK,EAAE;KACnB,CAAC;IACF,yEAAyE;IACzE,yEAAyE;IACzE,uEAAuE;IACvE,qEAAqE;IACrE,IAAI,aAAa,KAAK,SAAS;QAAE,MAAM,CAAC,aAAa,GAAG,aAAa,CAAC;IACtE,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;IACxC,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC;AACnD,CAAC;AAED;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,SAAS,CAAC,IAAgB;IAC9C,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;IAC3D,OAAO,UAAU,CAAC,IAAI,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC;AAC5C,CAAC"}
@@ -7,6 +7,9 @@ export declare const endpoints: {
7
7
  readonly agents: (v: string) => string;
8
8
  readonly agent: (v: string, a: string) => string;
9
9
  readonly scopeEvents: (v: string, s: string) => string;
10
+ readonly scopeObjects: (v: string, s: string) => string;
11
+ readonly scopeObject: (v: string, s: string, path: string) => string;
12
+ readonly scopeObjectsPresignedUrl: (v: string, s: string) => string;
10
13
  readonly scopeStreams: (v: string, s: string) => string;
11
14
  readonly stream: (v: string, s: string, ctx: string) => string;
12
15
  readonly streamEvents: (v: string, s: string, ctx: string) => string;
@@ -21,6 +24,7 @@ export declare const endpoints: {
21
24
  readonly marketplaceAgents: () => string;
22
25
  readonly marketplaceAgent: (a: string) => string;
23
26
  readonly marketplaceAgentVersion: (a: string, v: string) => string;
27
+ readonly delegateInfo: () => string;
24
28
  readonly health: () => string;
25
29
  readonly ready: () => string;
26
30
  readonly metrics: () => string;
@@ -1 +1 @@
1
- {"version":3,"file":"endpoints.d.ts","sourceRoot":"","sources":["../../src/core/endpoints.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,SAAS;;wBAET,MAAM;mCACK,MAAM;yBAChB,MAAM;wBACP,MAAM,KAAK,MAAM;yBAChB,MAAM;wBACP,MAAM,KAAK,MAAM;8BACX,MAAM,KAAK,MAAM;+BAChB,MAAM,KAAK,MAAM;yBACvB,MAAM,KAAK,MAAM,OAAO,MAAM;+BAExB,MAAM,KAAK,MAAM,OAAO,MAAM;uBAEtC,MAAM;sBACP,MAAM,KAAK,MAAM;4BACX,MAAM,KAAK,MAAM;2BAClB,MAAM,KAAK,MAAM;0BAClB,MAAM,KAAK,MAAM,KAAK,MAAM;8BAExB,MAAM,KAAK,MAAM,KAAK,MAAM;6BAE7B,MAAM,KAAK,MAAM,KAAK,MAAM,SAAS,MAAM;4BAE5C,MAAM,KAAK,MAAM,KAAK,MAAM,SAAS,MAAM;;mCAGpC,MAAM;0CACC,MAAM,KAAK,MAAM;;;;CAKtC,CAAC;AAEX,MAAM,MAAM,SAAS,GAAG,OAAO,SAAS,CAAC"}
1
+ {"version":3,"file":"endpoints.d.ts","sourceRoot":"","sources":["../../src/core/endpoints.ts"],"names":[],"mappings":"AAWA,eAAO,MAAM,SAAS;;wBAET,MAAM;mCACK,MAAM;yBAChB,MAAM;wBACP,MAAM,KAAK,MAAM;yBAChB,MAAM;wBACP,MAAM,KAAK,MAAM;8BACX,MAAM,KAAK,MAAM;+BAChB,MAAM,KAAK,MAAM;8BAClB,MAAM,KAAK,MAAM,QAAQ,MAAM;2CAQlB,MAAM,KAAK,MAAM;+BAE7B,MAAM,KAAK,MAAM;yBACvB,MAAM,KAAK,MAAM,OAAO,MAAM;+BAExB,MAAM,KAAK,MAAM,OAAO,MAAM;uBAEtC,MAAM;sBACP,MAAM,KAAK,MAAM;4BACX,MAAM,KAAK,MAAM;2BAClB,MAAM,KAAK,MAAM;0BAClB,MAAM,KAAK,MAAM,KAAK,MAAM;8BAExB,MAAM,KAAK,MAAM,KAAK,MAAM;6BAE7B,MAAM,KAAK,MAAM,KAAK,MAAM,SAAS,MAAM;4BAE5C,MAAM,KAAK,MAAM,KAAK,MAAM,SAAS,MAAM;;mCAGpC,MAAM;0CACC,MAAM,KAAK,MAAM;;;;;CAMtC,CAAC;AAEX,MAAM,MAAM,SAAS,GAAG,OAAO,SAAS,CAAC"}
@@ -1,5 +1,12 @@
1
1
  const API_BASE = "/api/v1";
2
2
  const seg = (s) => encodeURIComponent(s);
3
+ // segPath encodes an object path's individual "/"-delimited segments (each
4
+ // via `seg`, matching a single URL path segment's escaping) while leaving
5
+ // the "/" separators themselves literal — unlike `seg`, which would encode
6
+ // them to %2F and break the server's wildcard route match. ADR-002's vault
7
+ // path is deliberately hierarchical, so this is the one endpoint builder in
8
+ // this file that isn't a single opaque segment.
9
+ const segPath = (p) => p.split("/").map(seg).join("/");
3
10
  export const endpoints = {
4
11
  vaults: () => `${API_BASE}/vaults`,
5
12
  vault: (v) => `${API_BASE}/vaults/${seg(v)}`,
@@ -9,6 +16,15 @@ export const endpoints = {
9
16
  agents: (v) => `${API_BASE}/vaults/${seg(v)}/agents`,
10
17
  agent: (v, a) => `${API_BASE}/vaults/${seg(v)}/agents/${seg(a)}`,
11
18
  scopeEvents: (v, s) => `${API_BASE}/vaults/${seg(v)}/scopes/${seg(s)}/events`,
19
+ scopeObjects: (v, s) => `${API_BASE}/vaults/${seg(v)}/scopes/${seg(s)}/objects`,
20
+ scopeObject: (v, s, path) => `${API_BASE}/vaults/${seg(v)}/scopes/${seg(s)}/objects/${segPath(path)}`,
21
+ // A route of its own, not nested under scopeObject's path — the target
22
+ // object path travels as a query parameter (set by the caller), not a URL
23
+ // path segment, because the path itself is an arbitrary-depth wildcard on
24
+ // the server; a literal ".../{path}/presigned-url" suffix would be
25
+ // ambiguous with a real object path ending the same way (see ADR-002 and
26
+ // ddc-node's ObjectHandler.PresignedURL doc comment).
27
+ scopeObjectsPresignedUrl: (v, s) => `${API_BASE}/vaults/${seg(v)}/scopes/${seg(s)}/objects/presigned-url`,
12
28
  scopeStreams: (v, s) => `${API_BASE}/vaults/${seg(v)}/scopes/${seg(s)}/streams`,
13
29
  stream: (v, s, ctx) => `${API_BASE}/vaults/${seg(v)}/scopes/${seg(s)}/streams/${seg(ctx)}`,
14
30
  streamEvents: (v, s, ctx) => `${API_BASE}/vaults/${seg(v)}/scopes/${seg(s)}/streams/${seg(ctx)}/events`,
@@ -23,6 +39,7 @@ export const endpoints = {
23
39
  marketplaceAgents: () => `${API_BASE}/marketplace/agents`,
24
40
  marketplaceAgent: (a) => `${API_BASE}/marketplace/agents/${seg(a)}`,
25
41
  marketplaceAgentVersion: (a, v) => `${API_BASE}/marketplace/agents/${seg(a)}/versions/${seg(v)}`,
42
+ delegateInfo: () => `${API_BASE}/delegate-info`,
26
43
  health: () => `/health`,
27
44
  ready: () => `/ready`,
28
45
  metrics: () => `/metrics`,
@@ -1 +1 @@
1
- {"version":3,"file":"endpoints.js","sourceRoot":"","sources":["../../src/core/endpoints.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"endpoints.js","sourceRoot":"","sources":["../../src/core/endpoints.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/core/errors.ts"],"names":[],"mappings":"AACA,qBAAa,iBAAkB,SAAQ,KAAK;aAGxB,MAAM,CAAC,EAAE,MAAM;aACf,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM;gBAFtC,OAAO,EAAE,MAAM,EACC,MAAM,CAAC,EAAE,MAAM,YAAA,EACf,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,YAAA;CAEzC;AAED,qBAAa,wBAAyB,SAAQ,iBAAiB;gBACjD,OAAO,SAAmC;CAIvD;AAED,qBAAa,wBAAyB,SAAQ,KAAK;gBAE/C,OAAO,SAAyE;CAEnF;AAID,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,GAAG,iBAAiB,CAMjF"}
1
+ {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/core/errors.ts"],"names":[],"mappings":"AACA,qBAAa,iBAAkB,SAAQ,KAAK;aAGxB,MAAM,CAAC,EAAE,MAAM;aACf,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM;gBAFtC,OAAO,EAAE,MAAM,EACC,MAAM,CAAC,EAAE,MAAM,YAAA,EACf,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,YAAA;CAKzC;AAED,qBAAa,wBAAyB,SAAQ,iBAAiB;gBACjD,OAAO,SAAmC;CAIvD;AAED,qBAAa,wBAAyB,SAAQ,KAAK;gBAE/C,OAAO,SAAiE;CAK3E;AAMD,wBAAgB,gBAAgB,CAC9B,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,OAAO,GACZ,iBAAiB,CAQnB"}
@@ -16,7 +16,10 @@ export class VaultNotImplementedError extends VaultRequestError {
16
16
  }
17
17
  }
18
18
  export class VaultSignerRequiredError extends Error {
19
- constructor(message = "Vault signing requires a wallet adapter that implements sign(bytes).") { super(message); this.name = "VaultSignerRequiredError"; }
19
+ constructor(message = "Vault signing requires a signer that implements sign(bytes).") {
20
+ super(message);
21
+ this.name = "VaultSignerRequiredError";
22
+ }
20
23
  }
21
24
  export function mapResponseError(status, body) {
22
25
  const parsed = body && typeof body === "object" ? body : undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/core/errors.ts"],"names":[],"mappings":"AAAA,qBAAqB;AACrB,MAAM,OAAO,iBAAkB,SAAQ,KAAK;IAGxB;IACA;IAHlB,YACE,OAAe,EACC,MAAe,EACf,IAAsB;QACpC,KAAK,CAAC,OAAO,CAAC,CAAC;QAFD,WAAM,GAAN,MAAM,CAAS;QACf,SAAI,GAAJ,IAAI,CAAkB;QACpB,IAAI,CAAC,IAAI,GAAG,mBAAmB,CAAC;IAAC,CAAC;CACvD;AAED,MAAM,OAAO,wBAAyB,SAAQ,iBAAiB;IAC7D,YAAY,OAAO,GAAG,gCAAgC;QACpD,KAAK,CAAC,OAAO,EAAE,GAAG,EAAE,iBAAiB,CAAC,CAAC;QACvC,IAAI,CAAC,IAAI,GAAG,0BAA0B,CAAC;IACzC,CAAC;CACF;AAED,MAAM,OAAO,wBAAyB,SAAQ,KAAK;IACjD,YACE,OAAO,GAAG,sEAAsE,IAC9E,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,GAAG,0BAA0B,CAAC,CAAC,CAAC;CAC9D;AAID,MAAM,UAAU,gBAAgB,CAAC,MAAc,EAAE,IAAa;IAC5D,MAAM,MAAM,GAAG,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAE,IAAoB,CAAC,CAAC,CAAC,SAAS,CAAC;IACpF,MAAM,OAAO,GAAG,MAAM,EAAE,KAAK,EAAE,OAAO,IAAI,8BAA8B,MAAM,EAAE,CAAC;IACjF,MAAM,IAAI,GAAG,MAAM,EAAE,KAAK,EAAE,IAAI,CAAC;IACjC,IAAI,MAAM,KAAK,GAAG;QAAE,OAAO,IAAI,wBAAwB,CAAC,OAAO,CAAC,CAAC;IACjE,OAAO,IAAI,iBAAiB,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;AACtD,CAAC"}
1
+ {"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/core/errors.ts"],"names":[],"mappings":"AAAA,qBAAqB;AACrB,MAAM,OAAO,iBAAkB,SAAQ,KAAK;IAGxB;IACA;IAHlB,YACE,OAAe,EACC,MAAe,EACf,IAAsB;QAEtC,KAAK,CAAC,OAAO,CAAC,CAAC;QAHC,WAAM,GAAN,MAAM,CAAS;QACf,SAAI,GAAJ,IAAI,CAAkB;QAGtC,IAAI,CAAC,IAAI,GAAG,mBAAmB,CAAC;IAClC,CAAC;CACF;AAED,MAAM,OAAO,wBAAyB,SAAQ,iBAAiB;IAC7D,YAAY,OAAO,GAAG,gCAAgC;QACpD,KAAK,CAAC,OAAO,EAAE,GAAG,EAAE,iBAAiB,CAAC,CAAC;QACvC,IAAI,CAAC,IAAI,GAAG,0BAA0B,CAAC;IACzC,CAAC;CACF;AAED,MAAM,OAAO,wBAAyB,SAAQ,KAAK;IACjD,YACE,OAAO,GAAG,8DAA8D;QAExE,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,0BAA0B,CAAC;IACzC,CAAC;CACF;AAMD,MAAM,UAAU,gBAAgB,CAC9B,MAAc,EACd,IAAa;IAEb,MAAM,MAAM,GACV,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAE,IAAoB,CAAC,CAAC,CAAC,SAAS,CAAC;IACvE,MAAM,OAAO,GACX,MAAM,EAAE,KAAK,EAAE,OAAO,IAAI,8BAA8B,MAAM,EAAE,CAAC;IACnE,MAAM,IAAI,GAAG,MAAM,EAAE,KAAK,EAAE,IAAI,CAAC;IACjC,IAAI,MAAM,KAAK,GAAG;QAAE,OAAO,IAAI,wBAAwB,CAAC,OAAO,CAAC,CAAC;IACjE,OAAO,IAAI,iBAAiB,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;AACtD,CAAC"}
@@ -10,9 +10,36 @@ export interface VaultHttpClientConfig {
10
10
  }
11
11
  export interface SendOptions {
12
12
  body?: Record<string, unknown>;
13
+ /**
14
+ * Raw (non-JSON) request body — for object upload (ADR-002), where the
15
+ * body is the object's actual bytes, never JSON/base64. Mutually
16
+ * exclusive with `body`. `send` hashes it once and passes the hash to the
17
+ * auth provider as `AuthRequest.hash` so a wallet caller signs a
18
+ * commitment to it instead of the bytes themselves (no whole-body
19
+ * buffering to authenticate a potentially large upload); it is then sent
20
+ * verbatim as the request body.
21
+ */
22
+ rawBody?: Uint8Array;
23
+ /**
24
+ * Extra headers layered on top of whatever the auth provider returns —
25
+ * e.g. object upload's Content-Type, which describes the payload itself
26
+ * and has nothing to do with authentication. Caller headers win on
27
+ * conflict, since they're always more specific than the generic auth
28
+ * layer.
29
+ */
30
+ headers?: Record<string, string>;
13
31
  query?: QueryMap;
14
32
  /** Per-call auth override. Pass `new NoAuth()` for public endpoints on an authed client. */
15
33
  auth?: AuthProvider;
34
+ /**
35
+ * `"bytes"` skips JSON decoding of the response and resolves `T` as a
36
+ * `Uint8Array` — for object downloads (ADR-002), where the body is
37
+ * arbitrary binary content, not JSON. `"headers"` is for HEAD calls: `T`
38
+ * resolves as `Record<string, string>` built from the response headers,
39
+ * and no body is read at all (a HEAD response must not carry one). Default
40
+ * `"json"`, unchanged.
41
+ */
42
+ responseType?: "json" | "bytes" | "headers";
16
43
  }
17
44
  /**
18
45
  * Vault transport: the request-signing seam (`AuthProvider`) layered on top of
@@ -1 +1 @@
1
- {"version":3,"file":"http.d.ts","sourceRoot":"","sources":["../../src/core/http.ts"],"names":[],"mappings":"AACA,OAAO,EAML,KAAK,SAAS,EACd,KAAK,QAAQ,EACd,MAAM,mBAAmB,CAAC;AAG3B,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAIxD,YAAY,EAAE,SAAS,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAEzE,MAAM,WAAW,qBAAqB;IACpC,GAAG,EAAE,MAAM,CAAC;IACZ,8EAA8E;IAC9E,IAAI,CAAC,EAAE,YAAY,CAAC;IACpB,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,WAAW;IAC1B,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC/B,KAAK,CAAC,EAAE,QAAQ,CAAC;IACjB,4FAA4F;IAC5F,IAAI,CAAC,EAAE,YAAY,CAAC;CACrB;AAKD;;;;;;;;GAQG;AACH,qBAAa,eAAe;IAC1B,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;IACjC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAa;IAClC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAe;IAC3C,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAS;gBAEvB,MAAM,EAAE,qBAAqB;IAgBzC;;;OAGG;IACG,IAAI,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,GAAE,WAAgB,GAAG,OAAO,CAAC,CAAC,CAAC;IAwB/E,OAAO,CAAC,QAAQ;CAWjB"}
1
+ {"version":3,"file":"http.d.ts","sourceRoot":"","sources":["../../src/core/http.ts"],"names":[],"mappings":"AACA,OAAO,EAML,KAAK,SAAS,EACd,KAAK,QAAQ,EACd,MAAM,mBAAmB,CAAC;AAG3B,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAKxD,YAAY,EAAE,SAAS,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAEzE,MAAM,WAAW,qBAAqB;IACpC,GAAG,EAAE,MAAM,CAAC;IACZ,8EAA8E;IAC9E,IAAI,CAAC,EAAE,YAAY,CAAC;IACpB,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,WAAW;IAC1B,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC/B;;;;;;;;OAQG;IACH,OAAO,CAAC,EAAE,UAAU,CAAC;IACrB;;;;;;OAMG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC,KAAK,CAAC,EAAE,QAAQ,CAAC;IACjB,4FAA4F;IAC5F,IAAI,CAAC,EAAE,YAAY,CAAC;IACpB;;;;;;;OAOG;IACH,YAAY,CAAC,EAAE,MAAM,GAAG,OAAO,GAAG,SAAS,CAAC;CAC7C;AAKD;;;;;;;;GAQG;AACH,qBAAa,eAAe;IAC1B,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;IACjC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAa;IAClC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAe;IAC3C,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAS;gBAEvB,MAAM,EAAE,qBAAqB;IAgBzC;;;OAGG;IACG,IAAI,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,GAAE,WAAgB,GAAG,OAAO,CAAC,CAAC,CAAC;IA2B/E,OAAO,CAAC,QAAQ;CAWjB"}
package/dist/core/http.js CHANGED
@@ -2,6 +2,7 @@
2
2
  import { HttpClient, HttpError, TimeoutError, NetworkError, TransportError, } from "@cef-ai/transport";
3
3
  import { mapResponseError, VaultRequestError } from "./errors.js";
4
4
  import { NoAuth } from "../auth/no-auth.js";
5
+ import { sha256Hex } from "./canonical.js";
5
6
  const DEFAULT_TIMEOUT_MS = 30_000;
6
7
  const NO_AUTH = new NoAuth();
7
8
  /**
@@ -49,13 +50,16 @@ export class VaultHttpClient {
49
50
  path: url.pathname,
50
51
  query: url.search.replace(/^\?/, ""),
51
52
  body: opts.body,
53
+ hash: opts.rawBody !== undefined ? await sha256Hex(opts.rawBody) : undefined,
52
54
  });
53
55
  try {
54
56
  return await this.http.request(method, path, {
55
57
  query: opts.query,
56
- headers: outcome.headers,
57
- // Uint8Array (the signed bytes) is sent verbatim by HttpClient.
58
- body: outcome.body,
58
+ headers: { ...outcome.headers, ...opts.headers },
59
+ // Uint8Array (the signed bytes, or the raw upload body the auth
60
+ // provider had nothing to add to) is sent verbatim by HttpClient.
61
+ body: outcome.body ?? opts.rawBody,
62
+ responseType: opts.responseType,
59
63
  });
60
64
  }
61
65
  catch (err) {
@@ -1 +1 @@
1
- {"version":3,"file":"http.js","sourceRoot":"","sources":["../../src/core/http.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"http.js","sourceRoot":"","sources":["../../src/core/http.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
1
  export type VaultSigType = "ed25519" | "sr25519";
2
+ export type VaultCredentialStatus = "active" | "refreshing" | "disconnected";
2
3
  export interface VaultRecord {
3
4
  vaultId: string;
4
5
  walletPubkey: string;
@@ -8,6 +9,10 @@ export interface VaultRecord {
8
9
  credentialExpiresAt: string;
9
10
  createdAt: string;
10
11
  scopes: Scope[];
12
+ /** Autonomous-refresh credential state (design §5.2). Absent on pre-feature vault-api. */
13
+ status?: VaultCredentialStatus;
14
+ /** RFC3339 timestamp the vault entered `disconnected`, when applicable. */
15
+ disconnectedAt?: string;
11
16
  }
12
17
  export interface Scope {
13
18
  name: string;
@@ -179,4 +184,30 @@ export interface ConnectAgentRequest {
179
184
  settings?: Record<string, unknown>;
180
185
  agreementSignature?: string;
181
186
  }
187
+ /**
188
+ * ADR-002 object storage (company-memory-bank
189
+ * 04-cef/user-vault/decisions/ADR-002-vault-object-storage.md).
190
+ */
191
+ export interface ObjectUploadResult {
192
+ vaultPath: string;
193
+ size: number;
194
+ contentType: string;
195
+ etag?: string;
196
+ }
197
+ export interface ObjectMeta {
198
+ size: number;
199
+ contentType: string;
200
+ etag?: string;
201
+ updatedAt?: string;
202
+ }
203
+ export interface ObjectPresignedUrl {
204
+ url: string;
205
+ expiresAt: string;
206
+ }
207
+ export interface ObjectListItem {
208
+ path: string;
209
+ }
210
+ export interface ObjectListResult {
211
+ items: ObjectListItem[];
212
+ }
182
213
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/core/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/core/types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,YAAY,GAAG,SAAS,GAAG,SAAS,CAAC;AAEjD,MAAM,MAAM,qBAAqB,GAAG,QAAQ,GAAG,YAAY,GAAG,cAAc,CAAC;AAE7E,MAAM,WAAW,WAAW;IAC1B,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,eAAe,EAAE,MAAM,CAAC;IACxB,MAAM,EAAE,MAAM,CAAC;IACf,mBAAmB,EAAE,MAAM,CAAC;IAC5B,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,KAAK,EAAE,CAAC;IAChB,0FAA0F;IAC1F,MAAM,CAAC,EAAE,qBAAqB,CAAC;IAC/B,2EAA2E;IAC3E,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,KAAK;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;;OAGG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACnC,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,MAAM,qBAAqB,GAC7B,cAAc,GAAG,QAAQ,GAAG,UAAU,GAAG,SAAS,CAAC;AAEvD,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,MAAM,EAAE,qBAAqB,CAAC;IAC9B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,MAAM,SAAS,GAAG,QAAQ,GAAG,MAAM,GAAG,OAAO,CAAC;AACpD,MAAM,MAAM,YAAY,GAAG,QAAQ,GAAG,MAAM,GAAG,OAAO,GAAG,QAAQ,CAAC;AAElE,MAAM,WAAW,UAAU,CAAC,CAAC,GAAG,OAAO;IACrC,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,SAAS,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,OAAO,EAAE,CAAC,CAAC;IACX,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACnC,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,YAAY,CAAC;IAC3B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,UAAU,CAAC,CAAC,GAAG,OAAO;IACrC,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,CAAC,CAAC;IACX,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACnC,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;;;;GAMG;AACH,MAAM,WAAW,aAAa;IAC5B,QAAQ,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;IAC1B,QAAQ,EAAE;QAAE,OAAO,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,EAAE,GAAG,IAAI,CAAC;CACxE;AAED,MAAM,WAAW,aAAa;IAC5B,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,mBAAmB;IAAG,KAAK,EAAE,aAAa,EAAE,CAAA;CAAE;AAE/D,MAAM,WAAW,UAAU,CAAC,CAAC,GAAG,OAAO;IACrC,KAAK,EAAE,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC;IACvB,OAAO,EAAE,OAAO,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,MAAM,QAAQ,GAChB,QAAQ,GAAG,WAAW,GAAG,YAAY,GACrC,WAAW,GAAG,QAAQ,GAAG,WAAW,GAAG,MAAM,GAAG,QAAQ,CAAC;AAE7D,MAAM,WAAW,GAAG;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,QAAQ,CAAC;IAChB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,MAAM,SAAS,GACjB,SAAS,GAAG,YAAY,GAAG,SAAS,GAAG,WAAW,GAAG,QAAQ,CAAC;AAElE,MAAM,WAAW,IAAI;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,SAAS,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,SAAS,CAAC,EAAE,OAAO,CAAA;KAAE,CAAC;CAChE;AAED,MAAM,WAAW,QAAQ;IAAG,KAAK,EAAE,GAAG,EAAE,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,OAAO,CAAA;CAAE;AACjF,MAAM,WAAW,SAAS;IAAG,KAAK,EAAE,IAAI,EAAE,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,OAAO,CAAA;CAAE;AAEnF,oEAAoE;AACpE,MAAM,WAAW,WAAW;IAC1B,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;;GAGG;AACH,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,WAAW,EAAE,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,mBAAmB;IAClC,2CAA2C;IAC3C,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,+DAA+D;IAC/D,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,kBAAkB,CAAC,GAAG,GAAG,OAAO,EAAE;IACjD,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,IAAI,EAAE,GAAG,EAAE,CAAC;CACb;AAED,MAAM,WAAW,iBAAiB;IAChC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC/B,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED;;;;GAIG;AACH,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACnC,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED;;;GAGG;AACH,MAAM,WAAW,kBAAkB;IACjC,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,kBAAkB;IACjC,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,cAAc,EAAE,CAAC;CACzB"}
@@ -1,22 +1,49 @@
1
1
  import type { VaultHttpClient } from "../core/http.js";
2
+ import { type ListOptions, type PresignedUrlOptions, type UploadOptions } from "../internal/objects.js";
2
3
  import { type ListStreamEventsOptions, type ListStreamsOptions } from "../internal/browse.js";
3
- import type { EventInput, EventsPage, StreamSummary, StreamsListResponse } from "../core/types.js";
4
+ import type { EventInput, EventsPage, ObjectListResult, ObjectMeta, ObjectPresignedUrl, ObjectUploadResult, StreamSummary, StreamsListResponse } from "../core/types.js";
4
5
  import { type SubscribeFilter, type SubscribeHandler, type SubscribeOptions, type Subscription } from "./subscribe.js";
5
6
  export interface PublishedEvent {
6
7
  eventId: string;
7
8
  }
9
+ /** `upload()`'s optional "store then announce" convenience — two Vault API
10
+ * calls (upload, then publish) under the hood, never a hidden coupling. */
11
+ export interface UploadAndPublishOptions extends UploadOptions {
12
+ publishEvent?: {
13
+ type: string;
14
+ context: string;
15
+ payload?: Record<string, unknown>;
16
+ };
17
+ }
8
18
  export declare class ScopeHandle {
9
19
  private readonly http;
10
20
  private readonly vaultId;
11
21
  readonly name: string;
12
22
  private readonly events;
13
23
  private readonly browse;
24
+ private readonly _objects;
14
25
  constructor(http: VaultHttpClient, vaultId: string, name: string);
15
26
  publish<P>(input: EventInput<P>): Promise<PublishedEvent>;
16
27
  streams: {
17
28
  list: (o?: ListStreamsOptions) => Promise<StreamsListResponse>;
18
29
  get: (ctx: string) => Promise<StreamSummary>;
19
30
  };
31
+ /**
32
+ * ADR-002 object storage: upload / download / metadata / delete / list on
33
+ * the vault's own bucket, addressed by a client-defined hierarchical path.
34
+ * A named collection (like `streams` above), not a bare verb like
35
+ * `publish` — objects are symmetric CRUD from the start, so they follow
36
+ * the multi-operation-resource convention rather than the single-write-op
37
+ * one `publish` uses. See ADR-002 for the full naming rationale.
38
+ */
39
+ objects: {
40
+ upload: (path: string, data: Uint8Array, opts?: UploadAndPublishOptions) => Promise<ObjectUploadResult>;
41
+ get: (path: string) => Promise<Uint8Array>;
42
+ head: (path: string) => Promise<ObjectMeta>;
43
+ presignedUrl: (path: string, opts?: PresignedUrlOptions) => Promise<ObjectPresignedUrl>;
44
+ delete: (path: string) => Promise<void>;
45
+ list: (opts?: ListOptions) => Promise<ObjectListResult>;
46
+ };
20
47
  stream(context: string): {
21
48
  events: {
22
49
  list: <P = unknown>(o?: ListStreamEventsOptions) => Promise<EventsPage<P>>;
@@ -1 +1 @@
1
- {"version":3,"file":"scope.d.ts","sourceRoot":"","sources":["../../src/fluent/scope.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAEvD,OAAO,EAAU,KAAK,uBAAuB,EAAE,KAAK,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AACtG,OAAO,KAAK,EAAE,UAAU,EAAE,UAAU,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AACnG,OAAO,EAEL,KAAK,eAAe,EACpB,KAAK,gBAAgB,EACrB,KAAK,gBAAgB,EACrB,KAAK,YAAY,EAClB,MAAM,gBAAgB,CAAC;AAExB,MAAM,WAAW,cAAc;IAAG,OAAO,EAAE,MAAM,CAAA;CAAE;AAEnD,qBAAa,WAAW;IAKpB,OAAO,CAAC,QAAQ,CAAC,IAAI;IACrB,OAAO,CAAC,QAAQ,CAAC,OAAO;aACR,IAAI,EAAE,MAAM;IAN9B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;IAChC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;gBAGb,IAAI,EAAE,eAAe,EACrB,OAAO,EAAE,MAAM,EAChB,IAAI,EAAE,MAAM;IAMxB,OAAO,CAAC,CAAC,EAAE,KAAK,EAAE,UAAU,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,cAAc,CAAC;IAc/D,OAAO;mBACK,kBAAkB,KAAQ,OAAO,CAAC,mBAAmB,CAAC;mBAErD,MAAM,KAAG,OAAO,CAAC,aAAa,CAAC;MAE1C;IAEF,MAAM,CAAC,OAAO,EAAE,MAAM;;mBAGT,CAAC,gBAAe,uBAAuB,KAAQ,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;;;IAMlF,SAAS,CAAC,CAAC,GAAG,OAAO,EACnB,MAAM,EAAE,eAAe,EACvB,OAAO,EAAE,gBAAgB,CAAC,CAAC,CAAC,EAC5B,IAAI,GAAE,gBAAqB,GAC1B,YAAY;IAIf;;;;;;;;;;;OAWG;IACH,YAAY,CAAC,CAAC,GAAG,OAAO,EACtB,MAAM,EAAE,wBAAwB,EAChC,OAAO,EAAE,gBAAgB,CAAC,CAAC,CAAC,EAC5B,IAAI,GAAE,yBAA8B,GACnC,YAAY;CAWhB;AAED,MAAM,WAAW,wBAAwB;IACvC,uEAAuE;IACvE,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;CAClB;AAED,MAAM,WAAW,yBAA0B,SAAQ,gBAAgB;IACjE;;;OAGG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B"}
1
+ {"version":3,"file":"scope.d.ts","sourceRoot":"","sources":["../../src/fluent/scope.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAEvD,OAAO,EAAW,KAAK,WAAW,EAAE,KAAK,mBAAmB,EAAE,KAAK,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACjH,OAAO,EAAU,KAAK,uBAAuB,EAAE,KAAK,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AACtG,OAAO,KAAK,EACV,UAAU,EACV,UAAU,EACV,gBAAgB,EAChB,UAAU,EACV,kBAAkB,EAClB,kBAAkB,EAClB,aAAa,EACb,mBAAmB,EACpB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAEL,KAAK,eAAe,EACpB,KAAK,gBAAgB,EACrB,KAAK,gBAAgB,EACrB,KAAK,YAAY,EAClB,MAAM,gBAAgB,CAAC;AAExB,MAAM,WAAW,cAAc;IAAG,OAAO,EAAE,MAAM,CAAA;CAAE;AAEnD;2EAC2E;AAC3E,MAAM,WAAW,uBAAwB,SAAQ,aAAa;IAC5D,YAAY,CAAC,EAAE;QACb,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,EAAE,MAAM,CAAC;QAChB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KACnC,CAAC;CACH;AAED,qBAAa,WAAW;IAMpB,OAAO,CAAC,QAAQ,CAAC,IAAI;IACrB,OAAO,CAAC,QAAQ,CAAC,OAAO;aACR,IAAI,EAAE,MAAM;IAP9B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;IAChC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;IAChC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAU;gBAGhB,IAAI,EAAE,eAAe,EACrB,OAAO,EAAE,MAAM,EAChB,IAAI,EAAE,MAAM;IAOxB,OAAO,CAAC,CAAC,EAAE,KAAK,EAAE,UAAU,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,cAAc,CAAC;IAc/D,OAAO;mBACK,kBAAkB,KAAQ,OAAO,CAAC,mBAAmB,CAAC;mBAErD,MAAM,KAAG,OAAO,CAAC,aAAa,CAAC;MAE1C;IAEF;;;;;;;OAOG;IACH,OAAO;uBAEG,MAAM,QACN,UAAU,SACV,uBAAuB,KAC5B,OAAO,CAAC,kBAAkB,CAAC;oBAWlB,MAAM,KAAG,OAAO,CAAC,UAAU,CAAC;qBAE3B,MAAM,KAAG,OAAO,CAAC,UAAU,CAAC;6BAEpB,MAAM,SAAQ,mBAAmB,KAAQ,OAAO,CAAC,kBAAkB,CAAC;uBAE1E,MAAM,KAAG,OAAO,CAAC,IAAI,CAAC;sBAExB,WAAW,KAAQ,OAAO,CAAC,gBAAgB,CAAC;MAEzD;IAEF,MAAM,CAAC,OAAO,EAAE,MAAM;;mBAGT,CAAC,gBAAe,uBAAuB,KAAQ,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;;;IAMlF,SAAS,CAAC,CAAC,GAAG,OAAO,EACnB,MAAM,EAAE,eAAe,EACvB,OAAO,EAAE,gBAAgB,CAAC,CAAC,CAAC,EAC5B,IAAI,GAAE,gBAAqB,GAC1B,YAAY;IAIf;;;;;;;;;;;OAWG;IACH,YAAY,CAAC,CAAC,GAAG,OAAO,EACtB,MAAM,EAAE,wBAAwB,EAChC,OAAO,EAAE,gBAAgB,CAAC,CAAC,CAAC,EAC5B,IAAI,GAAE,yBAA8B,GACnC,YAAY;CAWhB;AAED,MAAM,WAAW,wBAAwB;IACvC,uEAAuE;IACvE,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;CAClB;AAED,MAAM,WAAW,yBAA0B,SAAQ,gBAAgB;IACjE;;;OAGG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B"}
@@ -1,4 +1,5 @@
1
1
  import { Events } from "../internal/events.js";
2
+ import { Objects } from "../internal/objects.js";
2
3
  import { Browse } from "../internal/browse.js";
3
4
  import { subscribe, } from "./subscribe.js";
4
5
  export class ScopeHandle {
@@ -7,12 +8,14 @@ export class ScopeHandle {
7
8
  name;
8
9
  events;
9
10
  browse;
11
+ _objects;
10
12
  constructor(http, vaultId, name) {
11
13
  this.http = http;
12
14
  this.vaultId = vaultId;
13
15
  this.name = name;
14
16
  this.events = new Events(http);
15
17
  this.browse = new Browse(http);
18
+ this._objects = new Objects(http);
16
19
  }
17
20
  async publish(input) {
18
21
  const res = await this.events.publish(this.vaultId, this.name, input);
@@ -31,6 +34,32 @@ export class ScopeHandle {
31
34
  list: (o = {}) => this.browse.listStreams(this.vaultId, this.name, o),
32
35
  get: (ctx) => this.browse.getStream(this.vaultId, this.name, ctx),
33
36
  };
37
+ /**
38
+ * ADR-002 object storage: upload / download / metadata / delete / list on
39
+ * the vault's own bucket, addressed by a client-defined hierarchical path.
40
+ * A named collection (like `streams` above), not a bare verb like
41
+ * `publish` — objects are symmetric CRUD from the start, so they follow
42
+ * the multi-operation-resource convention rather than the single-write-op
43
+ * one `publish` uses. See ADR-002 for the full naming rationale.
44
+ */
45
+ objects = {
46
+ upload: async (path, data, opts = {}) => {
47
+ const result = await this._objects.upload(this.vaultId, this.name, path, data, opts);
48
+ if (opts.publishEvent) {
49
+ await this.publish({
50
+ type: opts.publishEvent.type,
51
+ context: opts.publishEvent.context,
52
+ payload: { ...opts.publishEvent.payload, vaultPath: result.vaultPath },
53
+ });
54
+ }
55
+ return result;
56
+ },
57
+ get: (path) => this._objects.get(this.vaultId, this.name, path),
58
+ head: (path) => this._objects.head(this.vaultId, this.name, path),
59
+ presignedUrl: (path, opts = {}) => this._objects.presignedUrl(this.vaultId, this.name, path, opts),
60
+ delete: (path) => this._objects.delete(this.vaultId, this.name, path),
61
+ list: (opts = {}) => this._objects.list(this.vaultId, this.name, opts),
62
+ };
34
63
  stream(context) {
35
64
  return {
36
65
  events: {
@@ -1 +1 @@
1
- {"version":3,"file":"scope.js","sourceRoot":"","sources":["../../src/fluent/scope.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"scope.js","sourceRoot":"","sources":["../../src/fluent/scope.ts"],"names":[],"mappings":"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"}
@@ -1,16 +1,16 @@
1
1
  import type { VaultHttpClient } from "../core/http.js";
2
2
  import { type CreateScopeRequest, type UpdateScopeRequest } from "../internal/scopes.js";
3
- import type { JobsPage, Scope, VaultRecord } from "../core/types.js";
3
+ import type { JobsPage, Scope, VaultCredentialStatus, VaultRecord } from "../core/types.js";
4
4
  import { ScopeHandle } from "./scope.js";
5
5
  import { AgentConnectionHandle } from "./agent-connection.js";
6
6
  import { JobHandle } from "./job.js";
7
- import type { Wallet } from "../wallet/adapter.js";
7
+ import type { Signer } from "@cef-ai/signer";
8
8
  import type { GarClient } from "../agreements/gar-client.js";
9
9
  export interface VaultDeps {
10
10
  /** GAR client wired by `VaultSDK` when `garEndpoint` is configured. */
11
11
  gar?: GarClient;
12
- /** Wallet adapter — required for high-level `agents.connect`. */
13
- wallet?: Wallet;
12
+ /** Signer — required for high-level `agents.connect`. */
13
+ signer?: Signer;
14
14
  }
15
15
  /** Input for the high-level `vault.agents.connect` flow. */
16
16
  export interface ConnectAgentInput {
@@ -34,13 +34,15 @@ export declare class Vault {
34
34
  readonly walletPubkey: string;
35
35
  readonly gatewayEndpoint: string;
36
36
  readonly region: string;
37
+ readonly status?: VaultCredentialStatus;
38
+ readonly disconnectedAt?: string;
37
39
  /** @internal — exposed so subhandles can construct their own internals. */
38
40
  readonly _http: VaultHttpClient;
39
41
  private readonly _scopes;
40
42
  private readonly _agents;
41
43
  private readonly _browse;
42
44
  private readonly _gar?;
43
- private readonly _wallet?;
45
+ private readonly _signer?;
44
46
  private readonly _userPubKey;
45
47
  constructor(http: VaultHttpClient, record: VaultRecord, deps?: VaultDeps);
46
48
  scopes: {
@@ -51,13 +53,15 @@ export declare class Vault {
51
53
  delete: (n: string) => Promise<void>;
52
54
  };
53
55
  scope(name: string): ScopeHandle;
56
+ /** True when vault-api reports its S3 credential can no longer be refreshed. */
57
+ isDisconnected(): boolean;
54
58
  agents: {
55
59
  /**
56
60
  * Connect an agent. Builds and signs the GAR consent agreement
57
61
  * internally, POSTs it to the configured GAR endpoint, then calls
58
62
  * vault-api `POST /agents` with the resulting bare-hex signature.
59
63
  *
60
- * Requires both `garEndpoint` and a `wallet` adapter on `VaultSDKConfig`.
64
+ * Requires both `garEndpoint` and a `signer` on `VaultSDKConfig`.
61
65
  * For the low-level surface (pre-signed `agreementSignature`), use
62
66
  * `Agents.connect` from `@cef-ai/vault-sdk/internal`.
63
67
  */
@@ -1 +1 @@
1
- {"version":3,"file":"vault.d.ts","sourceRoot":"","sources":["../../src/fluent/vault.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AACvD,OAAO,EAAU,KAAK,kBAAkB,EAAE,KAAK,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAGjG,OAAO,KAAK,EACW,QAAQ,EAAE,KAAK,EAAE,WAAW,EAClD,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AACzC,OAAO,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAC9D,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AACrC,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AACnD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAC;AAG7D,MAAM,WAAW,SAAS;IACxB,uEAAuE;IACvE,GAAG,CAAC,EAAE,SAAS,CAAC;IAChB,iEAAiE;IACjE,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,4DAA4D;AAC5D,MAAM,WAAW,iBAAiB;IAChC;;;OAGG;IACH,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACnC;;;;OAIG;IACH,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED,qBAAa,KAAK;IAChB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;IACjC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IAExB,2EAA2E;IAC3E,QAAQ,CAAC,KAAK,EAAE,eAAe,CAAC;IAChC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;IACjC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;IACjC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;IACjC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAY;IAClC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAS;IAClC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAS;gBAEzB,IAAI,EAAE,eAAe,EAAE,MAAM,EAAE,WAAW,EAAE,IAAI,GAAE,SAAc;IAkB5E,MAAM;oBACM,OAAO,CAAC,KAAK,EAAE,CAAC;iBACjB,MAAM,KAAG,OAAO,CAAC,KAAK,CAAC;oBACpB,kBAAkB,KAAG,OAAO,CAAC,KAAK,CAAC;oBACnC,MAAM,KAAK,kBAAkB,KAAG,OAAO,CAAC,KAAK,CAAC;oBAC9C,MAAM,KAAG,OAAO,CAAC,IAAI,CAAC;MAClC;IAEF,KAAK,CAAC,IAAI,EAAE,MAAM,GAAG,WAAW;IAIhC,MAAM;QACJ;;;;;;;;WAQG;yBACoB,iBAAiB,KAAG,OAAO,CAAC,qBAAqB,CAAC;oBAwCzD,OAAO,CAAC,qBAAqB,EAAE,CAAC;iBAIjC,MAAM,KAAG,OAAO,CAAC,qBAAqB,CAAC;MAItD;IAEF,IAAI;mBACQ;YAAE,KAAK,CAAC,EAAE,MAAM,CAAC;YAAC,MAAM,CAAC,EAAE,MAAM,CAAC;YAAC,KAAK,CAAC,EAAE,MAAM,CAAA;SAAE,KAAQ,OAAO,CAAC,QAAQ,CAAC;qBAEzE,MAAM,KAAG,SAAS;MAC/B;CACH"}
1
+ {"version":3,"file":"vault.d.ts","sourceRoot":"","sources":["../../src/fluent/vault.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AACvD,OAAO,EAEL,KAAK,kBAAkB,EACvB,KAAK,kBAAkB,EACxB,MAAM,uBAAuB,CAAC;AAG/B,OAAO,KAAK,EAEV,QAAQ,EACR,KAAK,EACL,qBAAqB,EACrB,WAAW,EACZ,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AACzC,OAAO,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAC9D,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AACrC,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAC;AAI7D,MAAM,WAAW,SAAS;IACxB,uEAAuE;IACvE,GAAG,CAAC,EAAE,SAAS,CAAC;IAChB,yDAAyD;IACzD,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,4DAA4D;AAC5D,MAAM,WAAW,iBAAiB;IAChC;;;OAGG;IACH,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACnC;;;;OAIG;IACH,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED,qBAAa,KAAK;IAChB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;IACjC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,MAAM,CAAC,EAAE,qBAAqB,CAAC;IACxC,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,CAAC;IAEjC,2EAA2E;IAC3E,QAAQ,CAAC,KAAK,EAAE,eAAe,CAAC;IAChC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;IACjC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;IACjC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;IACjC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAY;IAClC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAS;IAClC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAS;gBAGnC,IAAI,EAAE,eAAe,EACrB,MAAM,EAAE,WAAW,EACnB,IAAI,GAAE,SAAc;IAuBtB,MAAM;oBACM,OAAO,CAAC,KAAK,EAAE,CAAC;iBACjB,MAAM,KAAG,OAAO,CAAC,KAAK,CAAC;oBACpB,kBAAkB,KAAG,OAAO,CAAC,KAAK,CAAC;oBAEnC,MAAM,KAAK,kBAAkB,KAAG,OAAO,CAAC,KAAK,CAAC;oBAE9C,MAAM,KAAG,OAAO,CAAC,IAAI,CAAC;MAClC;IAEF,KAAK,CAAC,IAAI,EAAE,MAAM,GAAG,WAAW;IAIhC,gFAAgF;IAChF,cAAc,IAAI,OAAO;IAEzB,MAAM;QACJ;;;;;;;;WAQG;yBAEM,iBAAiB,KACvB,OAAO,CAAC,qBAAqB,CAAC;oBAwCjB,OAAO,CAAC,qBAAqB,EAAE,CAAC;iBAMjC,MAAM,KAAG,OAAO,CAAC,qBAAqB,CAAC;MAItD;IAEF,IAAI;mBAEG;YAAE,KAAK,CAAC,EAAE,MAAM,CAAC;YAAC,MAAM,CAAC,EAAE,MAAM,CAAC;YAAC,KAAK,CAAC,EAAE,MAAM,CAAA;SAAE,KACrD,OAAO,CAAC,QAAQ,CAAC;qBACP,MAAM,KAAG,SAAS;MAE/B;CACH"}