@shroud-fi/agent-runtime 0.1.0 → 0.1.2

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 (41) hide show
  1. package/README.md +19 -0
  2. package/dist/cjs/agent.d.ts +26 -0
  3. package/dist/cjs/agent.d.ts.map +1 -1
  4. package/dist/cjs/agent.js +32 -0
  5. package/dist/cjs/agent.js.map +1 -1
  6. package/dist/cjs/contacts.d.ts +22 -0
  7. package/dist/cjs/contacts.d.ts.map +1 -0
  8. package/dist/cjs/contacts.js +190 -0
  9. package/dist/cjs/contacts.js.map +1 -0
  10. package/dist/cjs/errors.d.ts +43 -0
  11. package/dist/cjs/errors.d.ts.map +1 -1
  12. package/dist/cjs/errors.js +56 -1
  13. package/dist/cjs/errors.js.map +1 -1
  14. package/dist/cjs/index.d.ts +4 -2
  15. package/dist/cjs/index.d.ts.map +1 -1
  16. package/dist/cjs/index.js +8 -1
  17. package/dist/cjs/index.js.map +1 -1
  18. package/dist/cjs/types.d.ts +15 -0
  19. package/dist/cjs/types.d.ts.map +1 -1
  20. package/dist/esm/agent.d.ts +26 -0
  21. package/dist/esm/agent.d.ts.map +1 -1
  22. package/dist/esm/agent.js +32 -0
  23. package/dist/esm/agent.js.map +1 -1
  24. package/dist/esm/contacts.d.ts +22 -0
  25. package/dist/esm/contacts.d.ts.map +1 -0
  26. package/dist/esm/contacts.js +153 -0
  27. package/dist/esm/contacts.js.map +1 -0
  28. package/dist/esm/errors.d.ts +43 -0
  29. package/dist/esm/errors.d.ts.map +1 -1
  30. package/dist/esm/errors.js +51 -0
  31. package/dist/esm/errors.js.map +1 -1
  32. package/dist/esm/index.d.ts +4 -2
  33. package/dist/esm/index.d.ts.map +1 -1
  34. package/dist/esm/index.js +3 -1
  35. package/dist/esm/index.js.map +1 -1
  36. package/dist/esm/types.d.ts +15 -0
  37. package/dist/esm/types.d.ts.map +1 -1
  38. package/dist/tsconfig.cjs.tsbuildinfo +1 -1
  39. package/dist/tsconfig.esm.tsbuildinfo +1 -1
  40. package/dist/tsconfig.tsbuildinfo +1 -1
  41. package/package.json +17 -17
package/README.md CHANGED
@@ -54,6 +54,25 @@ Every agent does the same four things:
54
54
  | `agent.receive(range)` | Scan a block range for inbound payments. |
55
55
  | `agent.sweep(detection, destination, opts?)` | Direct or relayer-routed sweep. Auto-routes ERC-20 via Gelato, ETH via EIP-7702 when `viaRelayer: true`. |
56
56
 
57
+ ## Address book (v0.1.1)
58
+
59
+ Local-only registry of human-friendly labels → wallet addresses or stealth meta-addresses. Persisted at `~/.shroudfi/contacts.json` (file mode `0600`). Never transmitted, never used by the SDK behind the scenes — you resolve labels yourself.
60
+
61
+ ```ts
62
+ agent.contacts.add('alice', '0x15019ce49845c71e9db53de2bb92b761ced12240');
63
+ agent.contacts.add('bob', 'st:base:0x024fa9bb...');
64
+
65
+ const alice = agent.contacts.get('alice');
66
+ if (alice?.kind === 'wallet') {
67
+ await agent.sendToWallet(alice.value as `0x${string}`, { token: USDC }, 10_000_000n);
68
+ }
69
+
70
+ agent.contacts.list(); // sorted by label
71
+ agent.contacts.remove('alice');
72
+ ```
73
+
74
+ Errors are privacy-safe: `InvalidContactLabelError`, `InvalidContactValueError`, `ContactAlreadyExistsError`, `UnknownContactError` — none of them embed the label or value in the message.
75
+
57
76
  ## Exports
58
77
 
59
78
  | Symbol | Purpose |
@@ -15,6 +15,7 @@ import type { AgentIdentity, StealthMetaAddress } from '@shroud-fi/core';
15
15
  import type { PaymentReceipt, SendOptions, SendToWalletAsset } from '@shroud-fi/payments';
16
16
  import type { DetectedPayment, FinalityLevel, ScannerBackend } from '@shroud-fi/scanning';
17
17
  import type { ShroudFiTransport } from '@shroud-fi/transport';
18
+ import { ContactBook } from './contacts.js';
18
19
  import type { AgentRelayerEthSweepOptions, AgentRelayerEthSweepResult, AgentRelayerSweepOptions, AgentRelayerSweepResult, AgentSweepResult, ShroudAgentStartOptions } from './types.js';
19
20
  /**
20
21
  * Internal options that construct a ShroudAgent. The factory + browser factory
@@ -37,6 +38,11 @@ export interface ShroudAgentInternalOptions {
37
38
  * canonical ERC-6538 registry before dispatching the payment.
38
39
  */
39
40
  readonly autoRegister?: boolean;
41
+ /**
42
+ * v0.1.1 — optional override of the address-book JSON path. Defaults to
43
+ * `~/.shroudfi/contacts.json`. Tests / sandboxed agents may want a tmpdir.
44
+ */
45
+ readonly contactsFilePath?: string;
40
46
  }
41
47
  /**
42
48
  * The ShroudAgent class. Wraps an EIP-5564 identity + the four ShroudFi
@@ -52,6 +58,20 @@ export declare class ShroudAgent {
52
58
  readonly metaAddressEncoded: string;
53
59
  readonly transport: ShroudFiTransport;
54
60
  readonly stealthContract: Address;
61
+ /**
62
+ * v0.1.1 — local-only address book. Pure persistence layer. ShroudFi never
63
+ * uses contact data on the network; resolving a label to an address is the
64
+ * caller's job. See `ContactBook` in @shroud-fi/agent-runtime.
65
+ *
66
+ * Built LAZILY on first access (see the getter below). ContactBook's
67
+ * constructor touches os.homedir()/fs to resolve + read its JSON file; doing
68
+ * that eagerly in the ShroudAgent constructor crashed browser bundles where
69
+ * webpack stubs fs/os/path to {} → "Connection failed (TypeError)" the moment
70
+ * a wallet connected. Browser agents that never call `.contacts` now never
71
+ * reach the filesystem. See test/browser-contacts-lazy.test.ts.
72
+ */
73
+ private _contacts;
74
+ private readonly contactsFilePath;
55
75
  private readonly finality;
56
76
  private readonly startBlock;
57
77
  private readonly announcer;
@@ -61,6 +81,12 @@ export declare class ShroudAgent {
61
81
  private isStarted;
62
82
  private controller;
63
83
  constructor(opts: ShroudAgentInternalOptions);
84
+ /**
85
+ * Local-only address book, constructed on first access. Node consumers use
86
+ * `agent.contacts.add(...)` exactly as before; browser consumers that never
87
+ * touch it never construct a ContactBook and so never reach os/fs.
88
+ */
89
+ get contacts(): ContactBook;
64
90
  /**
65
91
  * Build a fresh Scanner with this agent's config. Called from start() so
66
92
  * each lifecycle gets its own scanner instance (a closed scanner can't be
@@ -1 +1 @@
1
- {"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../../src/agent.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../../src/agent.ts"],"names":[],"mappings":"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"}
package/dist/cjs/agent.js CHANGED
@@ -52,6 +52,7 @@ const payments_1 = require("@shroud-fi/payments");
52
52
  const scanning_1 = require("@shroud-fi/scanning");
53
53
  const transport_1 = require("@shroud-fi/transport");
54
54
  const errors_js_1 = require("./errors.js");
55
+ const contacts_js_1 = require("./contacts.js");
55
56
  /**
56
57
  * ETH zero-address sentinel — some callers may pass this to indicate "ETH" on
57
58
  * the sweep dispatch. Kept beside the canonical ETH_SENTINEL constant.
@@ -71,6 +72,20 @@ class ShroudAgent {
71
72
  metaAddressEncoded;
72
73
  transport;
73
74
  stealthContract;
75
+ /**
76
+ * v0.1.1 — local-only address book. Pure persistence layer. ShroudFi never
77
+ * uses contact data on the network; resolving a label to an address is the
78
+ * caller's job. See `ContactBook` in @shroud-fi/agent-runtime.
79
+ *
80
+ * Built LAZILY on first access (see the getter below). ContactBook's
81
+ * constructor touches os.homedir()/fs to resolve + read its JSON file; doing
82
+ * that eagerly in the ShroudAgent constructor crashed browser bundles where
83
+ * webpack stubs fs/os/path to {} → "Connection failed (TypeError)" the moment
84
+ * a wallet connected. Browser agents that never call `.contacts` now never
85
+ * reach the filesystem. See test/browser-contacts-lazy.test.ts.
86
+ */
87
+ _contacts;
88
+ contactsFilePath;
74
89
  finality;
75
90
  startBlock;
76
91
  announcer;
@@ -90,10 +105,27 @@ class ShroudAgent {
90
105
  this.announcer = opts.announcer;
91
106
  this.backendOverride = opts.backend;
92
107
  this.autoRegister = opts.autoRegister ?? false;
108
+ // Stash the path only — the ContactBook (and its os/fs access) is deferred
109
+ // to the `contacts` getter so plain connect/scan flows never touch disk.
110
+ this.contactsFilePath = opts.contactsFilePath;
93
111
  // Scanner is built lazily in start() — see H8 in docs/debug/P4-STEP3-STALL.md.
94
112
  // Reusing one Scanner across start/stop/start cycles silently dropped events
95
113
  // because Scanner.close() permanently sets its `closed` flag.
96
114
  }
115
+ /**
116
+ * Local-only address book, constructed on first access. Node consumers use
117
+ * `agent.contacts.add(...)` exactly as before; browser consumers that never
118
+ * touch it never construct a ContactBook and so never reach os/fs.
119
+ */
120
+ get contacts() {
121
+ if (this._contacts === undefined) {
122
+ this._contacts =
123
+ this.contactsFilePath !== undefined
124
+ ? new contacts_js_1.ContactBook({ filePath: this.contactsFilePath })
125
+ : new contacts_js_1.ContactBook();
126
+ }
127
+ return this._contacts;
128
+ }
97
129
  /**
98
130
  * Build a fresh Scanner with this agent's config. Called from start() so
99
131
  * each lifecycle gets its own scanner instance (a closed scanner can't be
@@ -1 +1 @@
1
- {"version":3,"file":"agent.js","sourceRoot":"","sources":["../../src/agent.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agent.js","sourceRoot":"","sources":["../../src/agent.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,22 @@
1
+ import type { Contact } from './types.js';
2
+ export interface ContactBookOptions {
3
+ /** Override the on-disk JSON file location. Defaults to the home-dir path. */
4
+ filePath?: string;
5
+ }
6
+ /**
7
+ * Local contact registry. Each instance is bound to one JSON file and
8
+ * re-loads on every read so multiple instances pointed at the same file stay
9
+ * coherent within a single process.
10
+ */
11
+ export declare class ContactBook {
12
+ private readonly filePath;
13
+ constructor(opts?: ContactBookOptions);
14
+ static defaultFilePath(): string;
15
+ add(label: string, value: string): Contact;
16
+ get(label: string): Contact | undefined;
17
+ list(): Contact[];
18
+ remove(label: string): void;
19
+ private read;
20
+ private write;
21
+ }
22
+ //# sourceMappingURL=contacts.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"contacts.d.ts","sourceRoot":"","sources":["../../src/contacts.ts"],"names":[],"mappings":"AAyBA,OAAO,KAAK,EAAE,OAAO,EAAe,MAAM,YAAY,CAAC;AAQvD,MAAM,WAAW,kBAAkB;IACjC,8EAA8E;IAC9E,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAOD;;;;GAIG;AACH,qBAAa,WAAW;IACtB,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAS;gBAEtB,IAAI,GAAE,kBAAuB;IAMzC,MAAM,CAAC,eAAe,IAAI,MAAM;IAIhC,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO;IAsB1C,GAAG,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,GAAG,SAAS;IAYvC,IAAI,IAAI,OAAO,EAAE;IAOjB,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAa3B,OAAO,CAAC,IAAI;IAsBZ,OAAO,CAAC,KAAK;CASd"}
@@ -0,0 +1,190 @@
1
+ "use strict";
2
+ // Address-book / contact registry for @shroud-fi/agent-runtime.
3
+ //
4
+ // Pure-local, file-backed map of human-friendly labels → either a wallet
5
+ // address (0x…) or a stealth meta-address (st:base:…). Persisted at
6
+ // ~/.shroudfi/contacts.json on POSIX, %USERPROFILE%\.shroudfi\contacts.json
7
+ // on Windows. File mode is 0600 on platforms that honour it.
8
+ //
9
+ // Privacy rule: NO method on ContactBook puts the label or the value into an
10
+ // error message. Test file contacts.test.ts asserts this for every error
11
+ // class. Callers who want to surface the label to a UI must read it from the
12
+ // structured Contact object the API returns.
13
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
14
+ if (k2 === undefined) k2 = k;
15
+ var desc = Object.getOwnPropertyDescriptor(m, k);
16
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
17
+ desc = { enumerable: true, get: function() { return m[k]; } };
18
+ }
19
+ Object.defineProperty(o, k2, desc);
20
+ }) : (function(o, m, k, k2) {
21
+ if (k2 === undefined) k2 = k;
22
+ o[k2] = m[k];
23
+ }));
24
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
25
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
26
+ }) : function(o, v) {
27
+ o["default"] = v;
28
+ });
29
+ var __importStar = (this && this.__importStar) || (function () {
30
+ var ownKeys = function(o) {
31
+ ownKeys = Object.getOwnPropertyNames || function (o) {
32
+ var ar = [];
33
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
34
+ return ar;
35
+ };
36
+ return ownKeys(o);
37
+ };
38
+ return function (mod) {
39
+ if (mod && mod.__esModule) return mod;
40
+ var result = {};
41
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
42
+ __setModuleDefault(result, mod);
43
+ return result;
44
+ };
45
+ })();
46
+ Object.defineProperty(exports, "__esModule", { value: true });
47
+ exports.ContactBook = void 0;
48
+ // Bare imports (not `node:` URL scheme) so browser bundlers like webpack can
49
+ // stub these to false via resolve.fallback when ContactBook isn't actually
50
+ // instantiated client-side. See apps/demo/next.config.mjs for the stub.
51
+ const fs = __importStar(require("fs"));
52
+ const path = __importStar(require("path"));
53
+ const os = __importStar(require("os"));
54
+ const errors_js_1 = require("./errors.js");
55
+ const SCHEMA_VERSION = 1;
56
+ const WALLET_ADDRESS_RE = /^0x[0-9a-fA-F]{40}$/;
57
+ const META_ADDRESS_RE = /^st:base:0x[0-9a-fA-F]{66,200}$/;
58
+ const LABEL_RE = /^[A-Za-z0-9._-]{1,64}$/;
59
+ /**
60
+ * Local contact registry. Each instance is bound to one JSON file and
61
+ * re-loads on every read so multiple instances pointed at the same file stay
62
+ * coherent within a single process.
63
+ */
64
+ class ContactBook {
65
+ filePath;
66
+ constructor(opts = {}) {
67
+ this.filePath = opts.filePath ?? ContactBook.defaultFilePath();
68
+ // Touch-load on construction so schema-mismatch errors surface eagerly.
69
+ this.read();
70
+ }
71
+ static defaultFilePath() {
72
+ return path.join(os.homedir(), '.shroudfi', 'contacts.json');
73
+ }
74
+ add(label, value) {
75
+ if (!isValidLabel(label)) {
76
+ throw new errors_js_1.InvalidContactLabelError();
77
+ }
78
+ const kind = detectKind(value);
79
+ if (kind === undefined) {
80
+ throw new errors_js_1.InvalidContactValueError();
81
+ }
82
+ const file = this.read();
83
+ if (file.contacts[label] !== undefined) {
84
+ throw new errors_js_1.ContactAlreadyExistsError();
85
+ }
86
+ const entry = {
87
+ kind,
88
+ value,
89
+ addedAt: new Date().toISOString(),
90
+ };
91
+ file.contacts[label] = entry;
92
+ this.write(file);
93
+ return { label, ...entry };
94
+ }
95
+ get(label) {
96
+ if (!isValidLabel(label)) {
97
+ // We don't throw — get is read-side, returning undefined matches
98
+ // typical Map.get ergonomics. Invalid labels can't be in the book.
99
+ return undefined;
100
+ }
101
+ const file = this.read();
102
+ const entry = file.contacts[label];
103
+ if (entry === undefined)
104
+ return undefined;
105
+ return { label, ...entry };
106
+ }
107
+ list() {
108
+ const file = this.read();
109
+ return Object.entries(file.contacts)
110
+ .map(([label, entry]) => ({ label, ...entry }))
111
+ .sort((a, b) => (a.label < b.label ? -1 : a.label > b.label ? 1 : 0));
112
+ }
113
+ remove(label) {
114
+ const file = this.read();
115
+ if (file.contacts[label] === undefined) {
116
+ throw new errors_js_1.UnknownContactError();
117
+ }
118
+ delete file.contacts[label];
119
+ this.write(file);
120
+ }
121
+ // ---------------------------------------------------------------------
122
+ // internals
123
+ // ---------------------------------------------------------------------
124
+ read() {
125
+ if (!fs.existsSync(this.filePath)) {
126
+ return { version: SCHEMA_VERSION, contacts: {} };
127
+ }
128
+ let raw;
129
+ try {
130
+ raw = JSON.parse(fs.readFileSync(this.filePath, 'utf8'));
131
+ }
132
+ catch {
133
+ // A corrupt file is treated as a fatal-but-privacy-safe error. We do not
134
+ // leak the file's contents into the error message.
135
+ throw new errors_js_1.InvalidContactValueError();
136
+ }
137
+ if (!isFileShape(raw)) {
138
+ throw new errors_js_1.InvalidContactValueError();
139
+ }
140
+ const version = raw.version ?? SCHEMA_VERSION;
141
+ if (version !== SCHEMA_VERSION) {
142
+ throw new errors_js_1.InvalidContactValueError();
143
+ }
144
+ return { version, contacts: raw.contacts };
145
+ }
146
+ write(file) {
147
+ const dir = path.dirname(this.filePath);
148
+ fs.mkdirSync(dir, { recursive: true, mode: 0o700 });
149
+ const out = { version: SCHEMA_VERSION, contacts: file.contacts };
150
+ fs.writeFileSync(this.filePath, JSON.stringify(out, null, 2) + '\n', {
151
+ encoding: 'utf8',
152
+ mode: 0o600,
153
+ });
154
+ }
155
+ }
156
+ exports.ContactBook = ContactBook;
157
+ function isValidLabel(label) {
158
+ if (typeof label !== 'string')
159
+ return false;
160
+ if (!LABEL_RE.test(label))
161
+ return false;
162
+ // Reject anything that looks like an on-chain identifier — eliminates the
163
+ // foot-gun where a half-typed address gets accepted as a label.
164
+ if (label.startsWith('0x'))
165
+ return false;
166
+ if (label.startsWith('st:'))
167
+ return false;
168
+ return true;
169
+ }
170
+ function detectKind(value) {
171
+ if (typeof value !== 'string')
172
+ return undefined;
173
+ if (WALLET_ADDRESS_RE.test(value))
174
+ return 'wallet';
175
+ if (META_ADDRESS_RE.test(value))
176
+ return 'meta';
177
+ return undefined;
178
+ }
179
+ function isFileShape(raw) {
180
+ if (typeof raw !== 'object' || raw === null)
181
+ return false;
182
+ const r = raw;
183
+ if (r.contacts === undefined || typeof r.contacts !== 'object' || r.contacts === null) {
184
+ return false;
185
+ }
186
+ if (r.version !== undefined && typeof r.version !== 'number')
187
+ return false;
188
+ return true;
189
+ }
190
+ //# sourceMappingURL=contacts.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"contacts.js","sourceRoot":"","sources":["../../src/contacts.ts"],"names":[],"mappings":"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"}
@@ -104,4 +104,47 @@ export declare class RegistrationRequiresWalletError extends AgentRuntimeError {
104
104
  readonly name: string;
105
105
  constructor();
106
106
  }
107
+ /**
108
+ * v0.1.1 — ContactBook: thrown when a label fails validation (empty,
109
+ * whitespace-only, control chars, looks like an address, longer than 64 chars,
110
+ * or contains characters outside [A-Za-z0-9._-]).
111
+ *
112
+ * Privacy: the offending label string is NOT placed in the message — it would
113
+ * end up in error logs / stack traces. Callers must surface the label from
114
+ * their own UI state.
115
+ */
116
+ export declare class InvalidContactLabelError extends AgentRuntimeError {
117
+ readonly name: string;
118
+ constructor();
119
+ }
120
+ /**
121
+ * v0.1.1 — ContactBook: thrown when a value is neither a 20-byte wallet
122
+ * address nor a stealth meta-address on `base`.
123
+ *
124
+ * Privacy: the offending value is NOT placed in the message.
125
+ */
126
+ export declare class InvalidContactValueError extends AgentRuntimeError {
127
+ readonly name: string;
128
+ constructor();
129
+ }
130
+ /**
131
+ * v0.1.1 — ContactBook: thrown when add() is called with a label already
132
+ * present in the book.
133
+ *
134
+ * Privacy: the label is NOT placed in the message.
135
+ */
136
+ export declare class ContactAlreadyExistsError extends AgentRuntimeError {
137
+ readonly name: string;
138
+ constructor();
139
+ }
140
+ /**
141
+ * v0.1.1 — ContactBook: thrown when remove() or a label-resolving send is
142
+ * called with a label that does not exist in the book.
143
+ *
144
+ * Privacy: the label is NOT placed in the message.
145
+ */
146
+ export declare class UnknownContactError extends AgentRuntimeError {
147
+ readonly name: string;
148
+ constructor();
149
+ }
107
150
  //# sourceMappingURL=errors.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/errors.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,qBAAa,iBAAkB,SAAQ,KAAK;IAC1C,SAAkB,IAAI,EAAE,MAAM,CAAuB;gBACzC,OAAO,EAAE,MAAM;CAG5B;AAED,qBAAa,oBAAqB,SAAQ,iBAAiB;IACzD,SAAkB,IAAI,EAAE,MAAM,CAA0B;;CAIzD;AAED,qBAAa,wBAAyB,SAAQ,iBAAiB;IAC7D,SAAkB,IAAI,EAAE,MAAM,CAA8B;;CAI7D;AAED,qBAAa,yBAA0B,SAAQ,iBAAiB;IAC9D,SAAkB,IAAI,EAAE,MAAM,CAA+B;;CAI9D;AAED,qBAAa,mCAAoC,SAAQ,iBAAiB;IACxE,SAAkB,IAAI,EAAE,MAAM,CAAyC;;CAIxE;AAED;;;;GAIG;AACH,qBAAa,iCAAkC,SAAQ,iBAAiB;IACtE,SAAkB,IAAI,EAAE,MAAM,CAAuC;;CAItE;AAED;;;;;;GAMG;AACH,qBAAa,+BAAgC,SAAQ,iBAAiB;IACpE,SAAkB,IAAI,EAAE,MAAM,CAAqC;;CAMpE;AAED;;;;GAIG;AACH,qBAAa,oCAAqC,SAAQ,iBAAiB;IACzE,SAAkB,IAAI,EAAE,MAAM,CAA0C;;CAIzE;AAED;;;;GAIG;AACH,qBAAa,8BAA+B,SAAQ,iBAAiB;IACnE,SAAkB,IAAI,EAAE,MAAM,CAAoC;;CAInE;AAED;;;;;;;;;;GAUG;AACH,qBAAa,sBAAuB,SAAQ,iBAAiB;IAC3D,SAAkB,IAAI,EAAE,MAAM,CAA4B;;CAI3D;AAED;;;;;;;;;GASG;AACH,qBAAa,2BAA4B,SAAQ,iBAAiB;IAChE,SAAkB,IAAI,EAAE,MAAM,CAAiC;gBACnD,KAAK,CAAC,EAAE,OAAO;CAS5B;AAED;;;;GAIG;AACH,qBAAa,+BAAgC,SAAQ,iBAAiB;IACpE,SAAkB,IAAI,EAAE,MAAM,CAAqC;;CAIpE"}
1
+ {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/errors.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,qBAAa,iBAAkB,SAAQ,KAAK;IAC1C,SAAkB,IAAI,EAAE,MAAM,CAAuB;gBACzC,OAAO,EAAE,MAAM;CAG5B;AAED,qBAAa,oBAAqB,SAAQ,iBAAiB;IACzD,SAAkB,IAAI,EAAE,MAAM,CAA0B;;CAIzD;AAED,qBAAa,wBAAyB,SAAQ,iBAAiB;IAC7D,SAAkB,IAAI,EAAE,MAAM,CAA8B;;CAI7D;AAED,qBAAa,yBAA0B,SAAQ,iBAAiB;IAC9D,SAAkB,IAAI,EAAE,MAAM,CAA+B;;CAI9D;AAED,qBAAa,mCAAoC,SAAQ,iBAAiB;IACxE,SAAkB,IAAI,EAAE,MAAM,CAAyC;;CAIxE;AAED;;;;GAIG;AACH,qBAAa,iCAAkC,SAAQ,iBAAiB;IACtE,SAAkB,IAAI,EAAE,MAAM,CAAuC;;CAItE;AAED;;;;;;GAMG;AACH,qBAAa,+BAAgC,SAAQ,iBAAiB;IACpE,SAAkB,IAAI,EAAE,MAAM,CAAqC;;CAMpE;AAED;;;;GAIG;AACH,qBAAa,oCAAqC,SAAQ,iBAAiB;IACzE,SAAkB,IAAI,EAAE,MAAM,CAA0C;;CAIzE;AAED;;;;GAIG;AACH,qBAAa,8BAA+B,SAAQ,iBAAiB;IACnE,SAAkB,IAAI,EAAE,MAAM,CAAoC;;CAInE;AAED;;;;;;;;;;GAUG;AACH,qBAAa,sBAAuB,SAAQ,iBAAiB;IAC3D,SAAkB,IAAI,EAAE,MAAM,CAA4B;;CAI3D;AAED;;;;;;;;;GASG;AACH,qBAAa,2BAA4B,SAAQ,iBAAiB;IAChE,SAAkB,IAAI,EAAE,MAAM,CAAiC;gBACnD,KAAK,CAAC,EAAE,OAAO;CAS5B;AAED;;;;GAIG;AACH,qBAAa,+BAAgC,SAAQ,iBAAiB;IACpE,SAAkB,IAAI,EAAE,MAAM,CAAqC;;CAIpE;AAED;;;;;;;;GAQG;AACH,qBAAa,wBAAyB,SAAQ,iBAAiB;IAC7D,SAAkB,IAAI,EAAE,MAAM,CAA8B;;CAI7D;AAED;;;;;GAKG;AACH,qBAAa,wBAAyB,SAAQ,iBAAiB;IAC7D,SAAkB,IAAI,EAAE,MAAM,CAA8B;;CAI7D;AAED;;;;;GAKG;AACH,qBAAa,yBAA0B,SAAQ,iBAAiB;IAC9D,SAAkB,IAAI,EAAE,MAAM,CAA+B;;CAI9D;AAED;;;;;GAKG;AACH,qBAAa,mBAAoB,SAAQ,iBAAiB;IACxD,SAAkB,IAAI,EAAE,MAAM,CAAyB;;CAIxD"}
@@ -10,7 +10,7 @@
10
10
  * - Messages carry short, structured reasons only.
11
11
  */
12
12
  Object.defineProperty(exports, "__esModule", { value: true });
13
- exports.RegistrationRequiresWalletError = exports.AutoRegistrationFailedError = exports.AlreadyRegisteredError = exports.RelayerNotAvailableForETHError = exports.EthRelayerContractNotConfiguredError = exports.EthRelayerEndpointRequiredError = exports.RelayerContractNotConfiguredError = exports.BrowserWalletSignatureRejectedError = exports.MissingBrowserWalletError = exports.AgentAlreadyStartedError = exports.AgentNotStartedError = exports.AgentRuntimeError = void 0;
13
+ exports.UnknownContactError = exports.ContactAlreadyExistsError = exports.InvalidContactValueError = exports.InvalidContactLabelError = exports.RegistrationRequiresWalletError = exports.AutoRegistrationFailedError = exports.AlreadyRegisteredError = exports.RelayerNotAvailableForETHError = exports.EthRelayerContractNotConfiguredError = exports.EthRelayerEndpointRequiredError = exports.RelayerContractNotConfiguredError = exports.BrowserWalletSignatureRejectedError = exports.MissingBrowserWalletError = exports.AgentAlreadyStartedError = exports.AgentNotStartedError = exports.AgentRuntimeError = void 0;
14
14
  class AgentRuntimeError extends Error {
15
15
  name = 'AgentRuntimeError';
16
16
  constructor(message) {
@@ -149,4 +149,59 @@ class RegistrationRequiresWalletError extends AgentRuntimeError {
149
149
  }
150
150
  }
151
151
  exports.RegistrationRequiresWalletError = RegistrationRequiresWalletError;
152
+ /**
153
+ * v0.1.1 — ContactBook: thrown when a label fails validation (empty,
154
+ * whitespace-only, control chars, looks like an address, longer than 64 chars,
155
+ * or contains characters outside [A-Za-z0-9._-]).
156
+ *
157
+ * Privacy: the offending label string is NOT placed in the message — it would
158
+ * end up in error logs / stack traces. Callers must surface the label from
159
+ * their own UI state.
160
+ */
161
+ class InvalidContactLabelError extends AgentRuntimeError {
162
+ name = 'InvalidContactLabelError';
163
+ constructor() {
164
+ super('Contact label is not valid (must match [A-Za-z0-9._-]{1,64})');
165
+ }
166
+ }
167
+ exports.InvalidContactLabelError = InvalidContactLabelError;
168
+ /**
169
+ * v0.1.1 — ContactBook: thrown when a value is neither a 20-byte wallet
170
+ * address nor a stealth meta-address on `base`.
171
+ *
172
+ * Privacy: the offending value is NOT placed in the message.
173
+ */
174
+ class InvalidContactValueError extends AgentRuntimeError {
175
+ name = 'InvalidContactValueError';
176
+ constructor() {
177
+ super('Contact value must be a wallet address (0x…) or a meta-address (st:base:0x…)');
178
+ }
179
+ }
180
+ exports.InvalidContactValueError = InvalidContactValueError;
181
+ /**
182
+ * v0.1.1 — ContactBook: thrown when add() is called with a label already
183
+ * present in the book.
184
+ *
185
+ * Privacy: the label is NOT placed in the message.
186
+ */
187
+ class ContactAlreadyExistsError extends AgentRuntimeError {
188
+ name = 'ContactAlreadyExistsError';
189
+ constructor() {
190
+ super('A contact with that label already exists');
191
+ }
192
+ }
193
+ exports.ContactAlreadyExistsError = ContactAlreadyExistsError;
194
+ /**
195
+ * v0.1.1 — ContactBook: thrown when remove() or a label-resolving send is
196
+ * called with a label that does not exist in the book.
197
+ *
198
+ * Privacy: the label is NOT placed in the message.
199
+ */
200
+ class UnknownContactError extends AgentRuntimeError {
201
+ name = 'UnknownContactError';
202
+ constructor() {
203
+ super('No contact with that label');
204
+ }
205
+ }
206
+ exports.UnknownContactError = UnknownContactError;
152
207
  //# sourceMappingURL=errors.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/errors.ts"],"names":[],"mappings":";AAAA;;;;;;;;;GASG;;;AAEH,MAAa,iBAAkB,SAAQ,KAAK;IACxB,IAAI,GAAW,mBAAmB,CAAC;IACrD,YAAY,OAAe;QACzB,KAAK,CAAC,OAAO,CAAC,CAAC;IACjB,CAAC;CACF;AALD,8CAKC;AAED,MAAa,oBAAqB,SAAQ,iBAAiB;IACvC,IAAI,GAAW,sBAAsB,CAAC;IACxD;QACE,KAAK,CAAC,iDAAiD,CAAC,CAAC;IAC3D,CAAC;CACF;AALD,oDAKC;AAED,MAAa,wBAAyB,SAAQ,iBAAiB;IAC3C,IAAI,GAAW,0BAA0B,CAAC;IAC5D;QACE,KAAK,CAAC,0DAA0D,CAAC,CAAC;IACpE,CAAC;CACF;AALD,4DAKC;AAED,MAAa,yBAA0B,SAAQ,iBAAiB;IAC5C,IAAI,GAAW,2BAA2B,CAAC;IAC7D;QACE,KAAK,CAAC,gEAAgE,CAAC,CAAC;IAC1E,CAAC;CACF;AALD,8DAKC;AAED,MAAa,mCAAoC,SAAQ,iBAAiB;IACtD,IAAI,GAAW,qCAAqC,CAAC;IACvE;QACE,KAAK,CAAC,2CAA2C,CAAC,CAAC;IACrD,CAAC;CACF;AALD,kFAKC;AAED;;;;GAIG;AACH,MAAa,iCAAkC,SAAQ,iBAAiB;IACpD,IAAI,GAAW,mCAAmC,CAAC;IACrE;QACE,KAAK,CAAC,gDAAgD,CAAC,CAAC;IAC1D,CAAC;CACF;AALD,8EAKC;AAED;;;;;;GAMG;AACH,MAAa,+BAAgC,SAAQ,iBAAiB;IAClD,IAAI,GAAW,iCAAiC,CAAC;IACnE;QACE,KAAK,CACH,gGAAgG,CACjG,CAAC;IACJ,CAAC;CACF;AAPD,0EAOC;AAED;;;;GAIG;AACH,MAAa,oCAAqC,SAAQ,iBAAiB;IACvD,IAAI,GAAW,sCAAsC,CAAC;IACxE;QACE,KAAK,CAAC,2DAA2D,CAAC,CAAC;IACrE,CAAC;CACF;AALD,oFAKC;AAED;;;;GAIG;AACH,MAAa,8BAA+B,SAAQ,iBAAiB;IACjD,IAAI,GAAW,gCAAgC,CAAC;IAClE;QACE,KAAK,CAAC,iEAAiE,CAAC,CAAC;IAC3E,CAAC;CACF;AALD,wEAKC;AAED;;;;;;;;;;GAUG;AACH,MAAa,sBAAuB,SAAQ,iBAAiB;IACzC,IAAI,GAAW,wBAAwB,CAAC;IAC1D;QACE,KAAK,CAAC,sDAAsD,CAAC,CAAC;IAChE,CAAC;CACF;AALD,wDAKC;AAED;;;;;;;;;GASG;AACH,MAAa,2BAA4B,SAAQ,iBAAiB;IAC9C,IAAI,GAAW,6BAA6B,CAAC;IAC/D,YAAY,KAAe;QACzB,KAAK,CAAC,0BAA0B,CAAC,CAAC;QAClC,oEAAoE;QACpE,oEAAoE;QACpE,8DAA8D;QAC9D,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACvB,IAA4B,CAAC,KAAK,GAAG,KAAK,CAAC;QAC9C,CAAC;IACH,CAAC;CACF;AAXD,kEAWC;AAED;;;;GAIG;AACH,MAAa,+BAAgC,SAAQ,iBAAiB;IAClD,IAAI,GAAW,iCAAiC,CAAC;IACnE;QACE,KAAK,CAAC,sDAAsD,CAAC,CAAC;IAChE,CAAC;CACF;AALD,0EAKC"}
1
+ {"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/errors.ts"],"names":[],"mappings":";AAAA;;;;;;;;;GASG;;;AAEH,MAAa,iBAAkB,SAAQ,KAAK;IACxB,IAAI,GAAW,mBAAmB,CAAC;IACrD,YAAY,OAAe;QACzB,KAAK,CAAC,OAAO,CAAC,CAAC;IACjB,CAAC;CACF;AALD,8CAKC;AAED,MAAa,oBAAqB,SAAQ,iBAAiB;IACvC,IAAI,GAAW,sBAAsB,CAAC;IACxD;QACE,KAAK,CAAC,iDAAiD,CAAC,CAAC;IAC3D,CAAC;CACF;AALD,oDAKC;AAED,MAAa,wBAAyB,SAAQ,iBAAiB;IAC3C,IAAI,GAAW,0BAA0B,CAAC;IAC5D;QACE,KAAK,CAAC,0DAA0D,CAAC,CAAC;IACpE,CAAC;CACF;AALD,4DAKC;AAED,MAAa,yBAA0B,SAAQ,iBAAiB;IAC5C,IAAI,GAAW,2BAA2B,CAAC;IAC7D;QACE,KAAK,CAAC,gEAAgE,CAAC,CAAC;IAC1E,CAAC;CACF;AALD,8DAKC;AAED,MAAa,mCAAoC,SAAQ,iBAAiB;IACtD,IAAI,GAAW,qCAAqC,CAAC;IACvE;QACE,KAAK,CAAC,2CAA2C,CAAC,CAAC;IACrD,CAAC;CACF;AALD,kFAKC;AAED;;;;GAIG;AACH,MAAa,iCAAkC,SAAQ,iBAAiB;IACpD,IAAI,GAAW,mCAAmC,CAAC;IACrE;QACE,KAAK,CAAC,gDAAgD,CAAC,CAAC;IAC1D,CAAC;CACF;AALD,8EAKC;AAED;;;;;;GAMG;AACH,MAAa,+BAAgC,SAAQ,iBAAiB;IAClD,IAAI,GAAW,iCAAiC,CAAC;IACnE;QACE,KAAK,CACH,gGAAgG,CACjG,CAAC;IACJ,CAAC;CACF;AAPD,0EAOC;AAED;;;;GAIG;AACH,MAAa,oCAAqC,SAAQ,iBAAiB;IACvD,IAAI,GAAW,sCAAsC,CAAC;IACxE;QACE,KAAK,CAAC,2DAA2D,CAAC,CAAC;IACrE,CAAC;CACF;AALD,oFAKC;AAED;;;;GAIG;AACH,MAAa,8BAA+B,SAAQ,iBAAiB;IACjD,IAAI,GAAW,gCAAgC,CAAC;IAClE;QACE,KAAK,CAAC,iEAAiE,CAAC,CAAC;IAC3E,CAAC;CACF;AALD,wEAKC;AAED;;;;;;;;;;GAUG;AACH,MAAa,sBAAuB,SAAQ,iBAAiB;IACzC,IAAI,GAAW,wBAAwB,CAAC;IAC1D;QACE,KAAK,CAAC,sDAAsD,CAAC,CAAC;IAChE,CAAC;CACF;AALD,wDAKC;AAED;;;;;;;;;GASG;AACH,MAAa,2BAA4B,SAAQ,iBAAiB;IAC9C,IAAI,GAAW,6BAA6B,CAAC;IAC/D,YAAY,KAAe;QACzB,KAAK,CAAC,0BAA0B,CAAC,CAAC;QAClC,oEAAoE;QACpE,oEAAoE;QACpE,8DAA8D;QAC9D,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACvB,IAA4B,CAAC,KAAK,GAAG,KAAK,CAAC;QAC9C,CAAC;IACH,CAAC;CACF;AAXD,kEAWC;AAED;;;;GAIG;AACH,MAAa,+BAAgC,SAAQ,iBAAiB;IAClD,IAAI,GAAW,iCAAiC,CAAC;IACnE;QACE,KAAK,CAAC,sDAAsD,CAAC,CAAC;IAChE,CAAC;CACF;AALD,0EAKC;AAED;;;;;;;;GAQG;AACH,MAAa,wBAAyB,SAAQ,iBAAiB;IAC3C,IAAI,GAAW,0BAA0B,CAAC;IAC5D;QACE,KAAK,CAAC,8DAA8D,CAAC,CAAC;IACxE,CAAC;CACF;AALD,4DAKC;AAED;;;;;GAKG;AACH,MAAa,wBAAyB,SAAQ,iBAAiB;IAC3C,IAAI,GAAW,0BAA0B,CAAC;IAC5D;QACE,KAAK,CAAC,8EAA8E,CAAC,CAAC;IACxF,CAAC;CACF;AALD,4DAKC;AAED;;;;;GAKG;AACH,MAAa,yBAA0B,SAAQ,iBAAiB;IAC5C,IAAI,GAAW,2BAA2B,CAAC;IAC7D;QACE,KAAK,CAAC,0CAA0C,CAAC,CAAC;IACpD,CAAC;CACF;AALD,8DAKC;AAED;;;;;GAKG;AACH,MAAa,mBAAoB,SAAQ,iBAAiB;IACtC,IAAI,GAAW,qBAAqB,CAAC;IACvD;QACE,KAAK,CAAC,4BAA4B,CAAC,CAAC;IACtC,CAAC;CACF;AALD,kDAKC"}
@@ -1,6 +1,8 @@
1
1
  export { ShroudAgent } from './agent.js';
2
2
  export { createShroudAgent } from './factory.js';
3
3
  export { createShroudAgentFromBrowserWallet, BROWSER_KEY_MESSAGE, HKDF_BROWSER_SALT, HKDF_BROWSER_INFO, } from './browser.js';
4
- export type { ShroudAgentConfig, ShroudAgentStartOptions, BrowserWalletAdapter, AgentSweepResult, AgentRelayerSweepOptions, AgentRelayerSweepResult, AgentRelayerEthSweepOptions, AgentRelayerEthSweepResult, } from './types.js';
5
- export { AgentRuntimeError, AgentNotStartedError, AgentAlreadyStartedError, MissingBrowserWalletError, BrowserWalletSignatureRejectedError, RelayerNotAvailableForETHError, RelayerContractNotConfiguredError, EthRelayerEndpointRequiredError, EthRelayerContractNotConfiguredError, AlreadyRegisteredError, AutoRegistrationFailedError, RegistrationRequiresWalletError, } from './errors.js';
4
+ export { ContactBook } from './contacts.js';
5
+ export type { ContactBookOptions } from './contacts.js';
6
+ export type { ShroudAgentConfig, ShroudAgentStartOptions, BrowserWalletAdapter, AgentSweepResult, AgentRelayerSweepOptions, AgentRelayerSweepResult, AgentRelayerEthSweepOptions, AgentRelayerEthSweepResult, Contact, ContactKind, } from './types.js';
7
+ export { AgentRuntimeError, AgentNotStartedError, AgentAlreadyStartedError, MissingBrowserWalletError, BrowserWalletSignatureRejectedError, RelayerNotAvailableForETHError, RelayerContractNotConfiguredError, EthRelayerEndpointRequiredError, EthRelayerContractNotConfiguredError, AlreadyRegisteredError, AutoRegistrationFailedError, RegistrationRequiresWalletError, InvalidContactLabelError, InvalidContactValueError, ContactAlreadyExistsError, UnknownContactError, } from './errors.js';
6
8
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAWA,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AACzC,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AACjD,OAAO,EACL,kCAAkC,EAClC,mBAAmB,EACnB,iBAAiB,EACjB,iBAAiB,GAClB,MAAM,cAAc,CAAC;AAGtB,YAAY,EACV,iBAAiB,EACjB,uBAAuB,EACvB,oBAAoB,EACpB,gBAAgB,EAChB,wBAAwB,EACxB,uBAAuB,EACvB,2BAA2B,EAC3B,0BAA0B,GAC3B,MAAM,YAAY,CAAC;AAGpB,OAAO,EACL,iBAAiB,EACjB,oBAAoB,EACpB,wBAAwB,EACxB,yBAAyB,EACzB,mCAAmC,EACnC,8BAA8B,EAC9B,iCAAiC,EACjC,+BAA+B,EAC/B,oCAAoC,EACpC,sBAAsB,EACtB,2BAA2B,EAC3B,+BAA+B,GAChC,MAAM,aAAa,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAWA,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AACzC,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AACjD,OAAO,EACL,kCAAkC,EAClC,mBAAmB,EACnB,iBAAiB,EACjB,iBAAiB,GAClB,MAAM,cAAc,CAAC;AAGtB,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,YAAY,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAGxD,YAAY,EACV,iBAAiB,EACjB,uBAAuB,EACvB,oBAAoB,EACpB,gBAAgB,EAChB,wBAAwB,EACxB,uBAAuB,EACvB,2BAA2B,EAC3B,0BAA0B,EAC1B,OAAO,EACP,WAAW,GACZ,MAAM,YAAY,CAAC;AAGpB,OAAO,EACL,iBAAiB,EACjB,oBAAoB,EACpB,wBAAwB,EACxB,yBAAyB,EACzB,mCAAmC,EACnC,8BAA8B,EAC9B,iCAAiC,EACjC,+BAA+B,EAC/B,oCAAoC,EACpC,sBAAsB,EACtB,2BAA2B,EAC3B,+BAA+B,EAC/B,wBAAwB,EACxB,wBAAwB,EACxB,yBAAyB,EACzB,mBAAmB,GACpB,MAAM,aAAa,CAAC"}
package/dist/cjs/index.js CHANGED
@@ -9,7 +9,7 @@
9
9
  // Re-exports trimmed to what callers actually need; deeper helpers stay
10
10
  // inside the upstream packages.
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.RegistrationRequiresWalletError = exports.AutoRegistrationFailedError = exports.AlreadyRegisteredError = exports.EthRelayerContractNotConfiguredError = exports.EthRelayerEndpointRequiredError = exports.RelayerContractNotConfiguredError = exports.RelayerNotAvailableForETHError = exports.BrowserWalletSignatureRejectedError = exports.MissingBrowserWalletError = exports.AgentAlreadyStartedError = exports.AgentNotStartedError = exports.AgentRuntimeError = exports.HKDF_BROWSER_INFO = exports.HKDF_BROWSER_SALT = exports.BROWSER_KEY_MESSAGE = exports.createShroudAgentFromBrowserWallet = exports.createShroudAgent = exports.ShroudAgent = void 0;
12
+ exports.UnknownContactError = exports.ContactAlreadyExistsError = exports.InvalidContactValueError = exports.InvalidContactLabelError = exports.RegistrationRequiresWalletError = exports.AutoRegistrationFailedError = exports.AlreadyRegisteredError = exports.EthRelayerContractNotConfiguredError = exports.EthRelayerEndpointRequiredError = exports.RelayerContractNotConfiguredError = exports.RelayerNotAvailableForETHError = exports.BrowserWalletSignatureRejectedError = exports.MissingBrowserWalletError = exports.AgentAlreadyStartedError = exports.AgentNotStartedError = exports.AgentRuntimeError = exports.ContactBook = exports.HKDF_BROWSER_INFO = exports.HKDF_BROWSER_SALT = exports.BROWSER_KEY_MESSAGE = exports.createShroudAgentFromBrowserWallet = exports.createShroudAgent = exports.ShroudAgent = void 0;
13
13
  // Class + factories
14
14
  var agent_js_1 = require("./agent.js");
15
15
  Object.defineProperty(exports, "ShroudAgent", { enumerable: true, get: function () { return agent_js_1.ShroudAgent; } });
@@ -20,6 +20,9 @@ Object.defineProperty(exports, "createShroudAgentFromBrowserWallet", { enumerabl
20
20
  Object.defineProperty(exports, "BROWSER_KEY_MESSAGE", { enumerable: true, get: function () { return browser_js_1.BROWSER_KEY_MESSAGE; } });
21
21
  Object.defineProperty(exports, "HKDF_BROWSER_SALT", { enumerable: true, get: function () { return browser_js_1.HKDF_BROWSER_SALT; } });
22
22
  Object.defineProperty(exports, "HKDF_BROWSER_INFO", { enumerable: true, get: function () { return browser_js_1.HKDF_BROWSER_INFO; } });
23
+ // Address book (v0.1.1)
24
+ var contacts_js_1 = require("./contacts.js");
25
+ Object.defineProperty(exports, "ContactBook", { enumerable: true, get: function () { return contacts_js_1.ContactBook; } });
23
26
  // Errors
24
27
  var errors_js_1 = require("./errors.js");
25
28
  Object.defineProperty(exports, "AgentRuntimeError", { enumerable: true, get: function () { return errors_js_1.AgentRuntimeError; } });
@@ -34,4 +37,8 @@ Object.defineProperty(exports, "EthRelayerContractNotConfiguredError", { enumera
34
37
  Object.defineProperty(exports, "AlreadyRegisteredError", { enumerable: true, get: function () { return errors_js_1.AlreadyRegisteredError; } });
35
38
  Object.defineProperty(exports, "AutoRegistrationFailedError", { enumerable: true, get: function () { return errors_js_1.AutoRegistrationFailedError; } });
36
39
  Object.defineProperty(exports, "RegistrationRequiresWalletError", { enumerable: true, get: function () { return errors_js_1.RegistrationRequiresWalletError; } });
40
+ Object.defineProperty(exports, "InvalidContactLabelError", { enumerable: true, get: function () { return errors_js_1.InvalidContactLabelError; } });
41
+ Object.defineProperty(exports, "InvalidContactValueError", { enumerable: true, get: function () { return errors_js_1.InvalidContactValueError; } });
42
+ Object.defineProperty(exports, "ContactAlreadyExistsError", { enumerable: true, get: function () { return errors_js_1.ContactAlreadyExistsError; } });
43
+ Object.defineProperty(exports, "UnknownContactError", { enumerable: true, get: function () { return errors_js_1.UnknownContactError; } });
37
44
  //# sourceMappingURL=index.js.map