@sonordev/site-kit 8.10.0 → 8.12.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 (104) hide show
  1. package/CHANGELOG.md +8 -0
  2. package/agent-manifest.json +1 -1
  3. package/dist/{AddressAutocomplete-LQS6GQ4R.js → AddressAutocomplete-6DQ3IP5C.js} +1 -1
  4. package/dist/{AnalyticsProvider-JWS7BLFY.js → AnalyticsProvider-RC2RG4YW.js} +4 -4
  5. package/dist/{ArticleViewTracker-CDPVMUAO.js → ArticleViewTracker-FNCRH3SB.js} +1 -1
  6. package/dist/{BlocksPopup-C5PNJ7U6.js → BlocksPopup-AJCDT5WM.js} +3 -3
  7. package/dist/{ChatWidget-HEPOE3YC.js → ChatWidget-CM5OGMJQ.js} +5 -5
  8. package/dist/{FileField-6R5LS5NU.js → FileField-QWS5ASLB.js} +1 -1
  9. package/dist/{FormSpotlight-2BSE7PD2.js → FormSpotlight-7Y6B2YZM.js} +1 -1
  10. package/dist/{FormStage-3G46OPPO.js → FormStage-T3N27SID.js} +1 -1
  11. package/dist/{ManagedForm-LTXEU25N.js → ManagedForm-WUULZELM.js} +6 -6
  12. package/dist/{ManagedNewsletterForm-WE6P5DMV.js → ManagedNewsletterForm-GGA3JOOI.js} +8 -8
  13. package/dist/{SignalCore-IP7FE6SN.js → SignalCore-ZMKDW44U.js} +3 -3
  14. package/dist/{SiteChat-3FQYMHCP.js → SiteChat-PM4RIZR4.js} +1 -1
  15. package/dist/{SiteDesignReporter-HGTX4FX2.js → SiteDesignReporter-SALYTWV2.js} +4 -4
  16. package/dist/{SitePopups-V7MCNSGE.js → SitePopups-VDSDWZHD.js} +4 -4
  17. package/dist/{SitemapSync-OAJ7SIET.js → SitemapSync-6UDJHS2F.js} +2 -2
  18. package/dist/_client/booking-widget.js +3 -3
  19. package/dist/_client/reviewed-signal-experiment.js +1 -1
  20. package/dist/affiliates/index.js +1 -1
  21. package/dist/analytics/index.js +4 -4
  22. package/dist/api-4AAR6BZO.js +5 -0
  23. package/dist/articles/index.js +1 -1
  24. package/dist/articles/server-ui.js +3 -3
  25. package/dist/articles/server.js +2 -2
  26. package/dist/chat/index.js +6 -6
  27. package/dist/{chunk-YJ6PRJ7Y.js → chunk-27264MSX.js} +2 -2
  28. package/dist/{chunk-D4R3FQED.js → chunk-2MJYGVKB.js} +1 -1
  29. package/dist/{chunk-MKU5ZORB.js → chunk-2QAG7ALW.js} +1 -1
  30. package/dist/{chunk-NH7K252M.js → chunk-5UAX6PHO.js} +1 -1
  31. package/dist/{chunk-NBNDH2J6.js → chunk-675DTMSR.js} +1 -1
  32. package/dist/{chunk-RMPXSEEU.js → chunk-7PW7N7P4.js} +1 -1
  33. package/dist/{chunk-TLKLHSRJ.js → chunk-C55LIDVW.js} +1 -1
  34. package/dist/{chunk-NWEIHCSE.js → chunk-CNCAQEUJ.js} +1 -1
  35. package/dist/{chunk-ACZ5JNSL.js → chunk-DFCLELM2.js} +2 -2
  36. package/dist/{chunk-HNVLINPI.js → chunk-DICLVB5P.js} +1 -1
  37. package/dist/{chunk-HLN7A4GL.js → chunk-DUIGCLQM.js} +1 -1
  38. package/dist/{chunk-Q2OE32TH.js → chunk-GHW37LVB.js} +2 -2
  39. package/dist/{chunk-727353NY.js → chunk-H4KPWR7P.js} +3 -3
  40. package/dist/{chunk-Z4XJOVQX.js → chunk-M2ZGSI6K.js} +1 -1
  41. package/dist/{chunk-J4R7MHV2.js → chunk-M34VOQ5J.js} +8 -8
  42. package/dist/{chunk-OCNODBH4.js → chunk-M3VJAE24.js} +1 -1
  43. package/dist/{chunk-P7S45DD7.js → chunk-NX4FETUK.js} +1 -1
  44. package/dist/{chunk-OEHIXCYS.js → chunk-O3CAXGY5.js} +2 -2
  45. package/dist/{chunk-RUV6DCKL.js → chunk-T2Z7KEIH.js} +1 -1
  46. package/dist/{chunk-DW5X4BC7.js → chunk-TPB5PTWW.js} +2 -2
  47. package/dist/{chunk-75N2WALV.js → chunk-TXB4ULAM.js} +1 -1
  48. package/dist/{chunk-6CIO4X6P.js → chunk-UFHEND2H.js} +1 -1
  49. package/dist/{chunk-7PWXPN53.js → chunk-UTVFF7VT.js} +1 -1
  50. package/dist/{chunk-MIKVCYGX.js → chunk-VF2X5T4H.js} +2 -2
  51. package/dist/{chunk-533ZSRJF.js → chunk-VZSIIKLR.js} +1 -1
  52. package/dist/{chunk-XAPSYDVT.js → chunk-WX4XX3BZ.js} +1 -1
  53. package/dist/{chunk-Y7DZ2ND2.js → chunk-Y4MQTSYY.js} +3 -3
  54. package/dist/{chunk-3RBOES2C.js → chunk-YOPBFEDG.js} +1 -1
  55. package/dist/{chunk-UMF5OILQ.js → chunk-YPTUKSF7.js} +1 -1
  56. package/dist/{chunk-Z62W7Q3T.js → chunk-YYV3YHUX.js} +1 -1
  57. package/dist/{chunk-A66TIJWU.js → chunk-Z42KXUTK.js} +1 -1
  58. package/dist/contracts/entries.d.ts +1 -1
  59. package/dist/contracts/property-interest.d.ts +100 -0
  60. package/dist/contracts/resonance.d.ts +1705 -358
  61. package/dist/contracts/sales-call-prep.d.ts +666 -0
  62. package/dist/contracts/signal-experiments.d.ts +0 -1
  63. package/dist/contracts/wire-uuid.d.ts +5 -0
  64. package/dist/{controls-KLG6VQLO.js → controls-GLVRT5EM.js} +2 -2
  65. package/dist/fleet/index.js +3 -3
  66. package/dist/forms/index.js +8 -8
  67. package/dist/forms/server.js +2 -2
  68. package/dist/images/index.js +2 -2
  69. package/dist/index.js +1 -1
  70. package/dist/landing/server.js +5 -5
  71. package/dist/layout/client.js +6 -6
  72. package/dist/layout/index.js +7 -7
  73. package/dist/llms/index.js +4 -4
  74. package/dist/maps/index.js +3 -3
  75. package/dist/mcp/sonor.js +5 -5
  76. package/dist/resonance/ConsentPreferences.d.ts +12 -0
  77. package/dist/resonance/consent-adapter.d.ts +3 -0
  78. package/dist/resonance/consent-preferences-styles.d.ts +2 -0
  79. package/dist/resonance/first-party-consent.d.ts +22 -0
  80. package/dist/resonance/index.d.ts +1 -0
  81. package/dist/resonance/index.js +366 -2
  82. package/dist/revalidate/index.js +2 -2
  83. package/dist/runtime/index.js +1 -1
  84. package/dist/{runtime-core-EU2RZMOL.js → runtime-core-4WL4V4QE.js} +523 -7
  85. package/dist/seo/client.js +2 -2
  86. package/dist/seo/index.js +2 -2
  87. package/dist/seo/llms.js +4 -4
  88. package/dist/seo/register-sitemap-cli.js +1 -1
  89. package/dist/seo/sitemap.js +2 -2
  90. package/dist/server/index.js +2 -2
  91. package/dist/shared/version.d.ts +1 -1
  92. package/dist/signal/index.js +2 -2
  93. package/dist/sitemap/index.js +2 -2
  94. package/dist/{sonor-fetch-runtime-SLPBNZY4.js → sonor-fetch-runtime-QO4DR7GR.js} +2 -2
  95. package/dist/sync/index.js +3 -3
  96. package/dist/website/images.js +2 -2
  97. package/dist/website/index.js +4 -4
  98. package/dist/website/landing/server.js +5 -5
  99. package/dist/website/popups.js +4 -4
  100. package/dist/{writeLLMsTxt-2CBYGKZO.js → writeLLMsTxt-EKWOSHXU.js} +1 -1
  101. package/package.json +1 -1
  102. package/src/resonance/README.md +49 -0
  103. package/dist/api-X6N6V2H3.js +0 -5
  104. /package/dist/{chunk-ORSQKTMN.js → chunk-2YSX4ZUC.js} +0 -0
@@ -0,0 +1,666 @@
1
+ import { type Field, type Value } from "./wire-schema.js";
2
+ export declare const SALES_CALL_PREP_SCHEMA_VERSION: 1;
3
+ export declare const SALES_CALL_PREP_STYLE_POLICY_VERSION: 'sales_call_style_v1';
4
+ export declare const SALES_CALL_PREP_OBJECTIVES: readonly ['qualify', 'book', 'follow_up', 'advance'];
5
+ export declare const SALES_CALL_PREP_STYLE_ANCHORS: readonly [{
6
+ readonly value: 0;
7
+ readonly label: 'Professional';
8
+ }, {
9
+ readonly value: 33;
10
+ readonly label: 'Conversational';
11
+ }, {
12
+ readonly value: 67;
13
+ readonly label: 'Bold';
14
+ }, {
15
+ readonly value: 100;
16
+ readonly label: 'Wild';
17
+ }];
18
+ export declare class SalesCallPrepValidationError extends Error {
19
+ readonly path: string;
20
+ constructor(path: string, reason: string);
21
+ }
22
+ declare const request: Field<{
23
+ objective: "advance" | "book" | "follow_up" | "qualify";
24
+ style: number;
25
+ stylePolicyVersion: "sales_call_style_v1";
26
+ schemaVersion: 1;
27
+ requestId: string;
28
+ projectId: string;
29
+ selectedContactId: string | null;
30
+ callNotes: string;
31
+ regenerate: boolean;
32
+ } & {}>;
33
+ export type SalesCallPrepRequest = Value<typeof request>;
34
+ export declare const parseSalesCallPrepRequest: (v: unknown) => SalesCallPrepRequest;
35
+ export declare const SALES_CALL_PREP_REQUEST_JSON_SCHEMA: import("./wire-schema.js").JsonSchema;
36
+ declare const sourceRef: Field<{
37
+ id: string;
38
+ kind: "approved_guidance" | "company_research" | "crm_history" | "research_principle" | "seller_brain" | "seller_voice" | "website_audit";
39
+ revision: string | null;
40
+ digest: string | null;
41
+ observedAt: string | null;
42
+ } & {}>;
43
+ export type SalesCallPrepSourceRef = Value<typeof sourceRef>;
44
+ declare const content: Field<{
45
+ schemaVersion: 1;
46
+ businessSummary: string;
47
+ topIssues: ({
48
+ issue: string;
49
+ impact: string;
50
+ solution: string;
51
+ } & {})[];
52
+ recommendedOpening: string;
53
+ likelyObjections: ({
54
+ objection: string;
55
+ response: string;
56
+ } & {})[];
57
+ keyQuestions: string[];
58
+ callGuide: {
59
+ schemaVersion: 1;
60
+ status: "needs_context" | "no_clear_fit" | "qualify_first" | "ready";
61
+ evidenceState: "grounded" | "limited" | "no_clear_fit";
62
+ opener: string | null;
63
+ alternateOpening: ({
64
+ style: "direct" | "warm";
65
+ text: string;
66
+ } & {}) | null;
67
+ sourceRefs: ({
68
+ id: string;
69
+ kind: "approved_guidance" | "company_research" | "crm_history" | "research_principle" | "seller_brain" | "seller_voice" | "website_audit";
70
+ revision: string | null;
71
+ digest: string | null;
72
+ observedAt: string | null;
73
+ } & {})[];
74
+ reason: {
75
+ observation: string | null;
76
+ evidenceIds: string[];
77
+ hypothesis: string | null;
78
+ unknowns: string[];
79
+ } & {};
80
+ diagnosticQuestion: string | null;
81
+ nextStepInvitation: string | null;
82
+ responses: {
83
+ interested: string;
84
+ busy: string;
85
+ has_provider: string;
86
+ send_info: string;
87
+ not_a_fit: string;
88
+ } & {};
89
+ gracefulClose: string;
90
+ cautions: string[];
91
+ missingContext: ("call_objective" | "follow_up_history" | "research" | "seller_identity" | "seller_offer")[];
92
+ voiceBasis: "neutral_fallback" | "verified_saved";
93
+ } & {};
94
+ } & {
95
+ competitorContext?: string | undefined;
96
+ nextJsRationale?: string | undefined;
97
+ }>;
98
+ export type SalesCallPrepContent = Value<typeof content>;
99
+ /** Optional actual sources are server-resolved, never a model's assertion of provenance. */
100
+ export declare function parseSalesCallPrepContent(v: unknown, actualSources?: readonly SalesCallPrepSourceRef[]): SalesCallPrepContent;
101
+ export declare const SALES_CALL_PREP_CONTENT_JSON_SCHEMA: import("./wire-schema.js").JsonSchema;
102
+ declare const binding: Field<{
103
+ orgId: string;
104
+ projectId: string;
105
+ companyId: string;
106
+ selectedContactId: string | null;
107
+ principalContactId: string;
108
+ } & {}>;
109
+ declare const witness: Field<{
110
+ schemaVersion: 1;
111
+ companyDigest: string;
112
+ contactDigest: string | null;
113
+ brain: ({
114
+ state: "available";
115
+ revision: string;
116
+ digest: string;
117
+ } & {}) | ({
118
+ state: "unavailable";
119
+ reasonCode: "not_accessible" | "not_configured" | "unavailable";
120
+ } & {});
121
+ voice: ({
122
+ state: "available";
123
+ revision: string;
124
+ digest: string;
125
+ } & {}) | ({
126
+ state: "unavailable";
127
+ reasonCode: "not_accessible" | "not_configured" | "unavailable";
128
+ } & {});
129
+ sourceRefs: ({
130
+ id: string;
131
+ kind: "approved_guidance" | "company_research" | "crm_history" | "research_principle" | "seller_brain" | "seller_voice" | "website_audit";
132
+ revision: string | null;
133
+ digest: string | null;
134
+ observedAt: string | null;
135
+ } & {})[];
136
+ historyDigest: string;
137
+ learningRefs: ({
138
+ id: string;
139
+ revision: string;
140
+ digest: string;
141
+ } & {})[];
142
+ promptVersion: string;
143
+ resultSchemaVersion: 1;
144
+ } & {}>;
145
+ declare const context: Field<{
146
+ objective: "advance" | "book" | "follow_up" | "qualify";
147
+ style: number;
148
+ stylePolicyVersion: "sales_call_style_v1";
149
+ schemaVersion: 1;
150
+ binding: {
151
+ orgId: string;
152
+ projectId: string;
153
+ companyId: string;
154
+ selectedContactId: string | null;
155
+ principalContactId: string;
156
+ } & {};
157
+ notesDigest: string;
158
+ witness: {
159
+ schemaVersion: 1;
160
+ companyDigest: string;
161
+ contactDigest: string | null;
162
+ brain: ({
163
+ state: "available";
164
+ revision: string;
165
+ digest: string;
166
+ } & {}) | ({
167
+ state: "unavailable";
168
+ reasonCode: "not_accessible" | "not_configured" | "unavailable";
169
+ } & {});
170
+ voice: ({
171
+ state: "available";
172
+ revision: string;
173
+ digest: string;
174
+ } & {}) | ({
175
+ state: "unavailable";
176
+ reasonCode: "not_accessible" | "not_configured" | "unavailable";
177
+ } & {});
178
+ sourceRefs: ({
179
+ id: string;
180
+ kind: "approved_guidance" | "company_research" | "crm_history" | "research_principle" | "seller_brain" | "seller_voice" | "website_audit";
181
+ revision: string | null;
182
+ digest: string | null;
183
+ observedAt: string | null;
184
+ } & {})[];
185
+ historyDigest: string;
186
+ learningRefs: ({
187
+ id: string;
188
+ revision: string;
189
+ digest: string;
190
+ } & {})[];
191
+ promptVersion: string;
192
+ resultSchemaVersion: 1;
193
+ } & {};
194
+ } & {}>;
195
+ export type SalesCallPrepBinding = Value<typeof binding>;
196
+ export type SalesCallPrepWitness = Value<typeof witness>;
197
+ export type SalesCallPrepContext = Value<typeof context>;
198
+ export declare const parseSalesCallPrepWitness: (v: unknown) => SalesCallPrepWitness;
199
+ export declare const parseSalesCallPrepContext: (v: unknown) => SalesCallPrepContext;
200
+ export declare const SALES_CALL_PREP_CONTEXT_JSON_SCHEMA: import("./wire-schema.js").JsonSchema;
201
+ export declare const SALES_CALL_PREP_WITNESS_JSON_SCHEMA: import("./wire-schema.js").JsonSchema;
202
+ /** Server hashes UTF-8 bytes of these strings. No hashing, timestamps, or native identity is invented here. */
203
+ export declare const salesCallPrepRequestDigestInput: (v: unknown) => string;
204
+ export declare const salesCallPrepContentDigestInput: (v: unknown) => string;
205
+ export declare const salesCallPrepWitnessDigestInput: (v: unknown) => string;
206
+ export declare const salesCallPrepContextDigestInput: (v: unknown) => string;
207
+ /** Resolved context is supplied by the authenticated owner, never by the model. */
208
+ export declare function parseSalesCallPrepContentForContext(v: unknown, actualContext: unknown): SalesCallPrepContent;
209
+ declare const versionReceipt: Field<{
210
+ objective: "advance" | "book" | "follow_up" | "qualify";
211
+ style: number;
212
+ stylePolicyVersion: "sales_call_style_v1";
213
+ schemaVersion: 1;
214
+ requestId: string;
215
+ requestOwnerId: string;
216
+ versionId: string;
217
+ parentVersionId: string | null;
218
+ source: "generated" | "human_edit";
219
+ binding: {
220
+ orgId: string;
221
+ projectId: string;
222
+ companyId: string;
223
+ selectedContactId: string | null;
224
+ principalContactId: string;
225
+ } & {};
226
+ contextDigest: string;
227
+ contentDigest: string;
228
+ witnessDigest: string;
229
+ createdAt: string;
230
+ content: {
231
+ schemaVersion: 1;
232
+ businessSummary: string;
233
+ topIssues: ({
234
+ issue: string;
235
+ impact: string;
236
+ solution: string;
237
+ } & {})[];
238
+ recommendedOpening: string;
239
+ likelyObjections: ({
240
+ objection: string;
241
+ response: string;
242
+ } & {})[];
243
+ keyQuestions: string[];
244
+ callGuide: {
245
+ schemaVersion: 1;
246
+ status: "needs_context" | "no_clear_fit" | "qualify_first" | "ready";
247
+ evidenceState: "grounded" | "limited" | "no_clear_fit";
248
+ opener: string | null;
249
+ alternateOpening: ({
250
+ style: "direct" | "warm";
251
+ text: string;
252
+ } & {}) | null;
253
+ sourceRefs: ({
254
+ id: string;
255
+ kind: "approved_guidance" | "company_research" | "crm_history" | "research_principle" | "seller_brain" | "seller_voice" | "website_audit";
256
+ revision: string | null;
257
+ digest: string | null;
258
+ observedAt: string | null;
259
+ } & {})[];
260
+ reason: {
261
+ observation: string | null;
262
+ evidenceIds: string[];
263
+ hypothesis: string | null;
264
+ unknowns: string[];
265
+ } & {};
266
+ diagnosticQuestion: string | null;
267
+ nextStepInvitation: string | null;
268
+ responses: {
269
+ interested: string;
270
+ busy: string;
271
+ has_provider: string;
272
+ send_info: string;
273
+ not_a_fit: string;
274
+ } & {};
275
+ gracefulClose: string;
276
+ cautions: string[];
277
+ missingContext: ("call_objective" | "follow_up_history" | "research" | "seller_identity" | "seller_offer")[];
278
+ voiceBasis: "neutral_fallback" | "verified_saved";
279
+ } & {};
280
+ } & {
281
+ competitorContext?: string | undefined;
282
+ nextJsRationale?: string | undefined;
283
+ };
284
+ } & {}>;
285
+ export type SalesCallPrepVersion = Value<typeof versionReceipt>;
286
+ export declare const parseSalesCallPrepVersion: (v: unknown) => SalesCallPrepVersion;
287
+ export declare const SALES_CALL_PREP_VERSION_JSON_SCHEMA: import("./wire-schema.js").JsonSchema;
288
+ declare const editRequest: Field<{
289
+ schemaVersion: 1;
290
+ requestId: string;
291
+ baseVersionId: string;
292
+ expectedHeadVersionId: string;
293
+ expectedContextDigest: string;
294
+ finalContent: {
295
+ schemaVersion: 1;
296
+ businessSummary: string;
297
+ topIssues: ({
298
+ issue: string;
299
+ impact: string;
300
+ solution: string;
301
+ } & {})[];
302
+ recommendedOpening: string;
303
+ likelyObjections: ({
304
+ objection: string;
305
+ response: string;
306
+ } & {})[];
307
+ keyQuestions: string[];
308
+ callGuide: {
309
+ schemaVersion: 1;
310
+ status: "needs_context" | "no_clear_fit" | "qualify_first" | "ready";
311
+ evidenceState: "grounded" | "limited" | "no_clear_fit";
312
+ opener: string | null;
313
+ alternateOpening: ({
314
+ style: "direct" | "warm";
315
+ text: string;
316
+ } & {}) | null;
317
+ sourceRefs: ({
318
+ id: string;
319
+ kind: "approved_guidance" | "company_research" | "crm_history" | "research_principle" | "seller_brain" | "seller_voice" | "website_audit";
320
+ revision: string | null;
321
+ digest: string | null;
322
+ observedAt: string | null;
323
+ } & {})[];
324
+ reason: {
325
+ observation: string | null;
326
+ evidenceIds: string[];
327
+ hypothesis: string | null;
328
+ unknowns: string[];
329
+ } & {};
330
+ diagnosticQuestion: string | null;
331
+ nextStepInvitation: string | null;
332
+ responses: {
333
+ interested: string;
334
+ busy: string;
335
+ has_provider: string;
336
+ send_info: string;
337
+ not_a_fit: string;
338
+ } & {};
339
+ gracefulClose: string;
340
+ cautions: string[];
341
+ missingContext: ("call_objective" | "follow_up_history" | "research" | "seller_identity" | "seller_offer")[];
342
+ voiceBasis: "neutral_fallback" | "verified_saved";
343
+ } & {};
344
+ } & {
345
+ competitorContext?: string | undefined;
346
+ nextJsRationale?: string | undefined;
347
+ };
348
+ } & {}>;
349
+ export type SalesCallPrepEditRequest = Value<typeof editRequest>;
350
+ export declare const parseSalesCallPrepEditRequest: (v: unknown) => SalesCallPrepEditRequest;
351
+ export declare const SALES_CALL_PREP_EDIT_REQUEST_JSON_SCHEMA: import("./wire-schema.js").JsonSchema;
352
+ declare const confirmUse: Field<{
353
+ versionId: string;
354
+ attemptId: string;
355
+ callId: string | null;
356
+ manualEventId: string | null;
357
+ schemaVersion: 1;
358
+ requestId: string;
359
+ confirmedUsed: true;
360
+ } & {}>;
361
+ export type SalesCallPrepConfirmUseRequest = Value<typeof confirmUse>;
362
+ export declare const parseSalesCallPrepConfirmUseRequest: (v: unknown) => SalesCallPrepConfirmUseRequest;
363
+ export declare const SALES_CALL_PREP_CONFIRM_USE_REQUEST_JSON_SCHEMA: import("./wire-schema.js").JsonSchema;
364
+ declare const correction: Field<({
365
+ versionId: string;
366
+ attemptId: string;
367
+ callId: string | null;
368
+ manualEventId: string | null;
369
+ schemaVersion: 1;
370
+ requestId: string;
371
+ supersedesUseId: string;
372
+ kind: "correct";
373
+ reason: string;
374
+ confirmedUsed: true;
375
+ } & {}) | ({
376
+ schemaVersion: 1;
377
+ requestId: string;
378
+ supersedesUseId: string;
379
+ kind: "retract";
380
+ reason: string;
381
+ } & {})>;
382
+ export type SalesCallPrepUseCorrection = Value<typeof correction>;
383
+ export declare const parseSalesCallPrepUseCorrection: (v: unknown) => SalesCallPrepUseCorrection;
384
+ export declare const SALES_CALL_PREP_USE_CORRECTION_JSON_SCHEMA: import("./wire-schema.js").JsonSchema;
385
+ export declare const salesCallPrepEditDigestInput: (v: unknown) => string;
386
+ export declare const salesCallPrepConfirmUseDigestInput: (v: unknown) => string;
387
+ export declare const salesCallPrepUseCorrectionDigestInput: (v: unknown) => string;
388
+ /** JSON string serialization preserves the exact private note, including whitespace; server hashes it. */
389
+ export declare const salesCallPrepNotesDigestInput: (v: unknown) => string;
390
+ declare const learningSummary: Field<{
391
+ schemaVersion: 1;
392
+ binding: {
393
+ orgId: string;
394
+ projectId: string;
395
+ companyId: string;
396
+ selectedContactId: string | null;
397
+ principalContactId: string;
398
+ } & {};
399
+ basis: "observational_association";
400
+ privacy: "principal_private";
401
+ generatedAt: string;
402
+ window: {
403
+ from: string;
404
+ to: string;
405
+ } & {};
406
+ counts: {
407
+ generatedVersions: number;
408
+ confirmedUses: number;
409
+ inferredUses: number;
410
+ connected: number;
411
+ qualifiedNextSteps: number;
412
+ meetingsBooked: number;
413
+ meetingsHeld: number;
414
+ dealsWon: number;
415
+ dealsLost: number;
416
+ optedOut: number;
417
+ negativeOrNotFit: number;
418
+ unknownOutcomes: number;
419
+ ambiguousManualEvents: number;
420
+ unresolvedSourceLinks: number;
421
+ } & {};
422
+ eligibleUseRefs: ({
423
+ useId: string;
424
+ versionId: string;
425
+ sourceDigest: string;
426
+ } & {})[];
427
+ sourceRefs: ({
428
+ sourceType: "call_log" | "crm_event" | "script_use";
429
+ sourceId: string;
430
+ revision: string;
431
+ digest: string;
432
+ observedAt: string;
433
+ } & {})[];
434
+ limitations: string[];
435
+ snapshotDigest: string;
436
+ } & {}>;
437
+ export type SalesCallPrepLearningSummary = Value<typeof learningSummary>;
438
+ export declare const parseSalesCallPrepLearningSummary: (v: unknown) => SalesCallPrepLearningSummary;
439
+ export declare const SALES_CALL_PREP_LEARNING_SUMMARY_JSON_SCHEMA: import("./wire-schema.js").JsonSchema;
440
+ export declare function salesCallPrepLearningSummaryDigestInput(v: unknown): string;
441
+ /** Only the existing reviewed/applied ledger owner may supply eligible principles; shape is not approval. */
442
+ declare const reviewedPrinciple: Field<{
443
+ schemaVersion: 1;
444
+ domain: "phone_sales";
445
+ ledgerEntryId: string;
446
+ revision: string;
447
+ digest: string;
448
+ principle: string;
449
+ sourceUseRefs: ({
450
+ useId: string;
451
+ versionId: string;
452
+ sourceDigest: string;
453
+ } & {})[];
454
+ } & {}>;
455
+ export type SalesCallPrepReviewedPrinciple = Value<typeof reviewedPrinciple>;
456
+ export declare const parseSalesCallPrepReviewedPrinciple: (v: unknown) => SalesCallPrepReviewedPrinciple;
457
+ export declare const SALES_CALL_PREP_REVIEWED_PRINCIPLE_JSON_SCHEMA: import("./wire-schema.js").JsonSchema;
458
+ declare const useReceipt: Field<{
459
+ versionId: string;
460
+ attemptId: string;
461
+ callId: string | null;
462
+ manualEventId: string | null;
463
+ schemaVersion: 1;
464
+ requestId: string;
465
+ useId: string;
466
+ rootUseId: string;
467
+ supersedesUseId: string | null;
468
+ kind: "correct" | "retract" | "use";
469
+ binding: {
470
+ orgId: string;
471
+ projectId: string;
472
+ companyId: string;
473
+ selectedContactId: string | null;
474
+ principalContactId: string;
475
+ } & {};
476
+ confirmedUsed: boolean;
477
+ method: "user_confirmed" | null;
478
+ actorContactId: string;
479
+ createdAt: string;
480
+ reason: string | null;
481
+ sourceDigest: string;
482
+ sourceOccurredAt: string;
483
+ } & {}>;
484
+ export type SalesCallPrepUseReceipt = Value<typeof useReceipt>;
485
+ export declare const parseSalesCallPrepUseReceipt: (v: unknown) => SalesCallPrepUseReceipt;
486
+ export declare const SALES_CALL_PREP_USE_RECEIPT_JSON_SCHEMA: import("./wire-schema.js").JsonSchema;
487
+ declare const usesPage: Field<{
488
+ items: ({
489
+ receipt: {
490
+ versionId: string;
491
+ attemptId: string;
492
+ callId: string | null;
493
+ manualEventId: string | null;
494
+ schemaVersion: 1;
495
+ requestId: string;
496
+ useId: string;
497
+ rootUseId: string;
498
+ supersedesUseId: string | null;
499
+ kind: "correct" | "retract" | "use";
500
+ binding: {
501
+ orgId: string;
502
+ projectId: string;
503
+ companyId: string;
504
+ selectedContactId: string | null;
505
+ principalContactId: string;
506
+ } & {};
507
+ confirmedUsed: boolean;
508
+ method: "user_confirmed" | null;
509
+ actorContactId: string;
510
+ createdAt: string;
511
+ reason: string | null;
512
+ sourceDigest: string;
513
+ sourceOccurredAt: string;
514
+ } & {};
515
+ active: boolean;
516
+ sourceCurrent: boolean;
517
+ sourceAmbiguous: boolean;
518
+ } & {})[];
519
+ truncated: boolean;
520
+ } & {}>;
521
+ export type SalesCallPrepUsesPage = Value<typeof usesPage>;
522
+ export declare const parseSalesCallPrepUsesPage: (v: unknown) => SalesCallPrepUsesPage;
523
+ export declare const SALES_CALL_PREP_USES_PAGE_JSON_SCHEMA: import("./wire-schema.js").JsonSchema;
524
+ declare const scriptUseResult: Field<{
525
+ status: "not_saved" | "saved";
526
+ receipt: ({
527
+ versionId: string;
528
+ attemptId: string;
529
+ callId: string | null;
530
+ manualEventId: string | null;
531
+ schemaVersion: 1;
532
+ requestId: string;
533
+ useId: string;
534
+ rootUseId: string;
535
+ supersedesUseId: string | null;
536
+ kind: "correct" | "retract" | "use";
537
+ binding: {
538
+ orgId: string;
539
+ projectId: string;
540
+ companyId: string;
541
+ selectedContactId: string | null;
542
+ principalContactId: string;
543
+ } & {};
544
+ confirmedUsed: boolean;
545
+ method: "user_confirmed" | null;
546
+ actorContactId: string;
547
+ createdAt: string;
548
+ reason: string | null;
549
+ sourceDigest: string;
550
+ sourceOccurredAt: string;
551
+ } & {}) | null;
552
+ retry: ({
553
+ companyId: string;
554
+ projectId: string;
555
+ selectedContactId: string;
556
+ callId: string | null;
557
+ manualEventId: string | null;
558
+ } & {}) | null;
559
+ } & {
560
+ code?: string | undefined;
561
+ }>;
562
+ export type SalesCallPrepScriptUseResult = Value<typeof scriptUseResult>;
563
+ export declare const parseSalesCallPrepScriptUseResult: (v: unknown) => SalesCallPrepScriptUseResult;
564
+ export declare const SALES_CALL_PREP_SCRIPT_USE_RESULT_JSON_SCHEMA: import("./wire-schema.js").JsonSchema;
565
+ /** Existing echo_learning kind/status values are not redefined as another approval vocabulary. */
566
+ declare const learningProposalResult: Field<({
567
+ proposal: null;
568
+ reason: "insufficient_confirmed_use";
569
+ basis: "observational_association";
570
+ } & {}) | ({
571
+ proposal: {
572
+ id: string;
573
+ kind: "echo_learning";
574
+ status: string;
575
+ } & {};
576
+ basis: "observational_association";
577
+ } & {})>;
578
+ export type SalesCallPrepLearningProposalResult = Value<typeof learningProposalResult>;
579
+ export declare const parseSalesCallPrepLearningProposalResult: (v: unknown) => SalesCallPrepLearningProposalResult;
580
+ export declare const SALES_CALL_PREP_LEARNING_PROPOSAL_RESULT_JSON_SCHEMA: import("./wire-schema.js").JsonSchema;
581
+ /** Outer operation identity is separate from the original immutable cached version identity. */
582
+ declare const generateResult: Field<{
583
+ schemaVersion: 1;
584
+ requestId: string;
585
+ reused: boolean;
586
+ version: {
587
+ objective: "advance" | "book" | "follow_up" | "qualify";
588
+ style: number;
589
+ stylePolicyVersion: "sales_call_style_v1";
590
+ schemaVersion: 1;
591
+ requestId: string;
592
+ requestOwnerId: string;
593
+ versionId: string;
594
+ parentVersionId: string | null;
595
+ source: "generated" | "human_edit";
596
+ binding: {
597
+ orgId: string;
598
+ projectId: string;
599
+ companyId: string;
600
+ selectedContactId: string | null;
601
+ principalContactId: string;
602
+ } & {};
603
+ contextDigest: string;
604
+ contentDigest: string;
605
+ witnessDigest: string;
606
+ createdAt: string;
607
+ content: {
608
+ schemaVersion: 1;
609
+ businessSummary: string;
610
+ topIssues: ({
611
+ issue: string;
612
+ impact: string;
613
+ solution: string;
614
+ } & {})[];
615
+ recommendedOpening: string;
616
+ likelyObjections: ({
617
+ objection: string;
618
+ response: string;
619
+ } & {})[];
620
+ keyQuestions: string[];
621
+ callGuide: {
622
+ schemaVersion: 1;
623
+ status: "needs_context" | "no_clear_fit" | "qualify_first" | "ready";
624
+ evidenceState: "grounded" | "limited" | "no_clear_fit";
625
+ opener: string | null;
626
+ alternateOpening: ({
627
+ style: "direct" | "warm";
628
+ text: string;
629
+ } & {}) | null;
630
+ sourceRefs: ({
631
+ id: string;
632
+ kind: "approved_guidance" | "company_research" | "crm_history" | "research_principle" | "seller_brain" | "seller_voice" | "website_audit";
633
+ revision: string | null;
634
+ digest: string | null;
635
+ observedAt: string | null;
636
+ } & {})[];
637
+ reason: {
638
+ observation: string | null;
639
+ evidenceIds: string[];
640
+ hypothesis: string | null;
641
+ unknowns: string[];
642
+ } & {};
643
+ diagnosticQuestion: string | null;
644
+ nextStepInvitation: string | null;
645
+ responses: {
646
+ interested: string;
647
+ busy: string;
648
+ has_provider: string;
649
+ send_info: string;
650
+ not_a_fit: string;
651
+ } & {};
652
+ gracefulClose: string;
653
+ cautions: string[];
654
+ missingContext: ("call_objective" | "follow_up_history" | "research" | "seller_identity" | "seller_offer")[];
655
+ voiceBasis: "neutral_fallback" | "verified_saved";
656
+ } & {};
657
+ } & {
658
+ competitorContext?: string | undefined;
659
+ nextJsRationale?: string | undefined;
660
+ };
661
+ } & {};
662
+ } & {}>;
663
+ export type SalesCallPrepGenerateResult = Value<typeof generateResult>;
664
+ export declare const parseSalesCallPrepGenerateResult: (v: unknown) => SalesCallPrepGenerateResult;
665
+ export declare const SALES_CALL_PREP_GENERATE_RESULT_JSON_SCHEMA: import("./wire-schema.js").JsonSchema;
666
+ export {};
@@ -1,4 +1,3 @@
1
- /** Existing Signal experiment management semantics. No assignment or inference engine. */
2
1
  import { type Field, type Value } from "./wire-schema.js";
3
2
  export declare class SignalExperimentValidationError extends Error {
4
3
  readonly path: string;
@@ -0,0 +1,5 @@
1
+ /** Internal UUID v1-v8 wire rule shared by runtime readers and portable JSON Schema.
2
+ * Explicit ASCII case ranges need no flags; parsing preserves original spelling.
3
+ * Broader UUID-like identifiers in other domains intentionally keep their own rules.
4
+ */
5
+ export declare const UUID_V1_TO_V8_PATTERN: RegExp;
@@ -7,8 +7,8 @@ function loadFieldControls([date, file, address], loaded) {
7
7
  });
8
8
  }
9
9
  load(date, "Date", () => import('./DatePicker-JEBV6WYJ.js').then((m) => m.DatePicker));
10
- load(file, "File", () => import('./FileField-6R5LS5NU.js').then((m) => m.FileField));
11
- load(address, "Address", () => import('./AddressAutocomplete-LQS6GQ4R.js').then((m) => m.AddressAutocompleteControl));
10
+ load(file, "File", () => import('./FileField-QWS5ASLB.js').then((m) => m.FileField));
11
+ load(address, "Address", () => import('./AddressAutocomplete-6DQ3IP5C.js').then((m) => m.AddressAutocompleteControl));
12
12
  }
13
13
 
14
14
  export { loadFieldControls as default };