@mcp-b/char 0.0.6 → 0.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 (39) hide show
  1. package/README.md +76 -362
  2. package/dist/custom-elements.json +2180 -0
  3. package/dist/display-mode-policy.d.ts +82 -0
  4. package/dist/display-mode-policy.d.ts.map +1 -0
  5. package/dist/display-mode-policy.js +87 -0
  6. package/dist/display-mode-policy.js.map +1 -0
  7. package/dist/index.d.ts +707 -326
  8. package/dist/index.d.ts.map +1 -1
  9. package/dist/index.js +2370 -15521
  10. package/dist/index.js.map +1 -1
  11. package/dist/shell-component.d.ts +379 -0
  12. package/dist/shell-component.d.ts.map +1 -0
  13. package/dist/shell-component.js +2504 -0
  14. package/dist/shell-component.js.map +1 -0
  15. package/dist/tsdoc-metadata.json +11 -0
  16. package/dist/utils.d.ts +161 -0
  17. package/dist/utils.d.ts.map +1 -0
  18. package/dist/utils.js +393 -0
  19. package/dist/utils.js.map +1 -0
  20. package/dist/web-component-standalone.iife.js +1255 -2358
  21. package/dist/web-component-standalone.iife.js.map +1 -1
  22. package/dist/web-component.d.ts +381 -180
  23. package/dist/web-component.d.ts.map +1 -1
  24. package/dist/web-component.js +1138 -15740
  25. package/dist/web-component.js.map +1 -1
  26. package/package.json +23 -115
  27. package/THIRD_PARTY_NOTICES.md +0 -52
  28. package/dist/VoiceHandoffPanel-CIFIJSDs.js +0 -244
  29. package/dist/VoiceHandoffPanel-CIFIJSDs.js.map +0 -1
  30. package/dist/button-BLnLZvxR.js +0 -105
  31. package/dist/button-BLnLZvxR.js.map +0 -1
  32. package/dist/realtimekit.d.ts +0 -15
  33. package/dist/realtimekit.d.ts.map +0 -1
  34. package/dist/realtimekit.js +0 -89
  35. package/dist/realtimekit.js.map +0 -1
  36. package/dist/styles/globals.css +0 -2
  37. package/dist/styles.d.ts +0 -2
  38. package/dist/web-component-standalone.css +0 -37
  39. package/dist/web-component-standalone.css.map +0 -1
@@ -0,0 +1,2180 @@
1
+ {
2
+ "schemaVersion": "1.0.0",
3
+ "readme": "",
4
+ "modules": [
5
+ {
6
+ "kind": "javascript-module",
7
+ "path": "packages/char/src/web-component.tsx",
8
+ "declarations": [
9
+ {
10
+ "kind": "class",
11
+ "description": "`<char-agent>` custom element.\n\nCreates an iframe pointing to the SaaS app's /embed/ entrypoint and relays\nauth, styles, dark mode, display mode, and MCP messages via postMessage.\n\nUses a unified `char-context` message with diffing (only changed fields\nare sent) instead of separate messages per concern.",
12
+ "name": "CharAgentElement",
13
+ "members": [
14
+ {
15
+ "kind": "field",
16
+ "name": "devMode",
17
+ "type": {
18
+ "text": "DevModeConfig | undefined"
19
+ },
20
+ "description": "React 19-friendly property form of `dev-mode`.\nRead once during `connectedCallback`."
21
+ },
22
+ {
23
+ "kind": "field",
24
+ "name": "apiBase",
25
+ "type": {
26
+ "text": "string | undefined"
27
+ },
28
+ "description": "React 19-friendly property form of `api-base`.\nRead once during `connectedCallback`."
29
+ },
30
+ {
31
+ "kind": "field",
32
+ "name": "_iframe",
33
+ "type": {
34
+ "text": "HTMLIFrameElement | null"
35
+ },
36
+ "privacy": "private",
37
+ "default": "null",
38
+ "description": "Active iframe element owned by this custom element instance."
39
+ },
40
+ {
41
+ "kind": "field",
42
+ "name": "_proxy",
43
+ "type": {
44
+ "text": "CharIframeProxy | null"
45
+ },
46
+ "privacy": "private",
47
+ "default": "null",
48
+ "description": "MCP relay between host window and embed iframe."
49
+ },
50
+ {
51
+ "kind": "field",
52
+ "name": "_iframeReady",
53
+ "type": {
54
+ "text": "boolean"
55
+ },
56
+ "privacy": "private",
57
+ "default": "false",
58
+ "description": "Indicates whether the iframe has emitted `char-ready`."
59
+ },
60
+ {
61
+ "kind": "field",
62
+ "name": "_messageListener",
63
+ "type": {
64
+ "text": "((event: MessageEvent) => void) | null"
65
+ },
66
+ "privacy": "private",
67
+ "default": "null",
68
+ "description": "Bound window message handler for iframe-originated events."
69
+ },
70
+ {
71
+ "kind": "field",
72
+ "name": "_darkModeObserver",
73
+ "type": {
74
+ "text": "MutationObserver | null"
75
+ },
76
+ "privacy": "private",
77
+ "default": "null",
78
+ "description": "Observer that tracks host theme mutations."
79
+ },
80
+ {
81
+ "kind": "field",
82
+ "name": "_darkModeMediaQuery",
83
+ "type": {
84
+ "text": "MediaQueryList | null"
85
+ },
86
+ "privacy": "private",
87
+ "default": "null",
88
+ "description": "Media query object for `prefers-color-scheme`."
89
+ },
90
+ {
91
+ "kind": "field",
92
+ "name": "_darkModeMediaHandler",
93
+ "type": {
94
+ "text": "(() => void) | null"
95
+ },
96
+ "privacy": "private",
97
+ "default": "null",
98
+ "description": "Registered media query callback."
99
+ },
100
+ {
101
+ "kind": "field",
102
+ "name": "_styleObserver",
103
+ "type": {
104
+ "text": "MutationObserver | null"
105
+ },
106
+ "privacy": "private",
107
+ "default": "null",
108
+ "description": "Observer that tracks host style/class mutations."
109
+ },
110
+ {
111
+ "kind": "field",
112
+ "name": "_containerResizeObserver",
113
+ "type": {
114
+ "text": "ResizeObserver | null"
115
+ },
116
+ "privacy": "private",
117
+ "default": "null",
118
+ "description": "Observer that tracks container size changes."
119
+ },
120
+ {
121
+ "kind": "field",
122
+ "name": "_teardownPending",
123
+ "type": {
124
+ "text": "| { requestId: string; resolve: () => void; timeoutId: number }\n\t\t| null"
125
+ },
126
+ "privacy": "private",
127
+ "default": "null",
128
+ "description": "In-flight teardown request waiting for iframe acknowledgement."
129
+ },
130
+ {
131
+ "kind": "field",
132
+ "name": "_teardownSequence",
133
+ "type": {
134
+ "text": "number"
135
+ },
136
+ "privacy": "private",
137
+ "default": "0",
138
+ "description": "Monotonic sequence used to construct teardown request IDs."
139
+ },
140
+ {
141
+ "kind": "field",
142
+ "name": "_isDisconnecting",
143
+ "type": {
144
+ "text": "boolean"
145
+ },
146
+ "privacy": "private",
147
+ "default": "false",
148
+ "description": "Re-entrancy guard used during disconnect lifecycle."
149
+ },
150
+ {
151
+ "kind": "field",
152
+ "name": "_hostContext",
153
+ "type": {
154
+ "text": "CharHostContext"
155
+ },
156
+ "privacy": "private",
157
+ "default": "{}",
158
+ "description": "Last host context snapshot used for delta emission."
159
+ },
160
+ {
161
+ "kind": "field",
162
+ "name": "_pendingAuth",
163
+ "type": {
164
+ "text": "{\n\t\tidToken?: string\n\t\tclientId?: string\n\t\torganizationId?: string\n\t\tticketAuth?: TicketAuth\n\t} | null"
165
+ },
166
+ "privacy": "private",
167
+ "default": "null",
168
+ "description": "Pending credentials that are flushed when the iframe is ready."
169
+ },
170
+ {
171
+ "kind": "method",
172
+ "name": "_hasActiveRuntime",
173
+ "privacy": "private",
174
+ "return": {
175
+ "type": {
176
+ "text": "boolean"
177
+ }
178
+ },
179
+ "description": "Determines whether this instance already has an initialized runtime."
180
+ },
181
+ {
182
+ "kind": "method",
183
+ "name": "_resolveIframeOrigin",
184
+ "privacy": "private",
185
+ "return": {
186
+ "type": {
187
+ "text": "string"
188
+ }
189
+ },
190
+ "parameters": [
191
+ {
192
+ "name": "apiBase",
193
+ "type": {
194
+ "text": "string"
195
+ }
196
+ }
197
+ ],
198
+ "description": "Parses and validates the iframe origin from the configured API base URL."
199
+ },
200
+ {
201
+ "kind": "method",
202
+ "name": "_createIframe",
203
+ "privacy": "private",
204
+ "return": {
205
+ "type": {
206
+ "text": "HTMLIFrameElement"
207
+ }
208
+ },
209
+ "parameters": [
210
+ {
211
+ "name": "apiBase",
212
+ "type": {
213
+ "text": "string"
214
+ }
215
+ }
216
+ ],
217
+ "description": "Creates a fully configured iframe element for the embed runtime."
218
+ },
219
+ {
220
+ "kind": "method",
221
+ "name": "_createMessageListener",
222
+ "privacy": "private",
223
+ "return": {
224
+ "type": {
225
+ "text": "(event: MessageEvent) => void"
226
+ }
227
+ },
228
+ "parameters": [
229
+ {
230
+ "name": "iframe",
231
+ "type": {
232
+ "text": "HTMLIFrameElement"
233
+ }
234
+ },
235
+ {
236
+ "name": "iframeOrigin",
237
+ "type": {
238
+ "text": "string"
239
+ }
240
+ }
241
+ ],
242
+ "description": "Creates the message listener that filters by source/origin and dispatches typed events."
243
+ },
244
+ {
245
+ "kind": "method",
246
+ "name": "_handleIframeMessage",
247
+ "privacy": "private",
248
+ "return": {
249
+ "type": {
250
+ "text": "void"
251
+ }
252
+ },
253
+ "parameters": [
254
+ {
255
+ "name": "data",
256
+ "type": {
257
+ "text": "CharIframeMessageData"
258
+ }
259
+ },
260
+ {
261
+ "name": "iframeOrigin",
262
+ "type": {
263
+ "text": "string"
264
+ }
265
+ }
266
+ ],
267
+ "description": "Routes validated iframe messages to local handlers and host DOM events."
268
+ },
269
+ {
270
+ "kind": "method",
271
+ "name": "_emitCharEvent",
272
+ "privacy": "private",
273
+ "return": {
274
+ "type": {
275
+ "text": "void"
276
+ }
277
+ },
278
+ "parameters": [
279
+ {
280
+ "name": "type",
281
+ "type": {
282
+ "text": "string"
283
+ }
284
+ }
285
+ ],
286
+ "description": "Emits a host-facing custom event without detail payload."
287
+ },
288
+ {
289
+ "kind": "method",
290
+ "name": "_emitCharEventWithDetail",
291
+ "privacy": "private",
292
+ "return": {
293
+ "type": {
294
+ "text": "void"
295
+ }
296
+ },
297
+ "parameters": [
298
+ {
299
+ "name": "type",
300
+ "type": {
301
+ "text": "string"
302
+ }
303
+ },
304
+ {
305
+ "name": "detail",
306
+ "type": {
307
+ "text": "unknown"
308
+ }
309
+ }
310
+ ],
311
+ "description": "Emits a host-facing custom event with detail payload."
312
+ },
313
+ {
314
+ "kind": "method",
315
+ "name": "_emitCharError",
316
+ "privacy": "private",
317
+ "return": {
318
+ "type": {
319
+ "text": "void"
320
+ }
321
+ },
322
+ "parameters": [
323
+ {
324
+ "name": "code",
325
+ "type": {
326
+ "text": "string"
327
+ }
328
+ },
329
+ {
330
+ "name": "message",
331
+ "type": {
332
+ "text": "string"
333
+ }
334
+ }
335
+ ],
336
+ "description": "Emits a standardized `char-error` event."
337
+ },
338
+ {
339
+ "kind": "method",
340
+ "name": "_finalizeDisconnect",
341
+ "privacy": "private",
342
+ "return": {
343
+ "type": {
344
+ "text": "void"
345
+ }
346
+ },
347
+ "description": "Releases iframe, observers, listeners, and pending teardown state."
348
+ },
349
+ {
350
+ "kind": "method",
351
+ "name": "connect",
352
+ "return": {
353
+ "type": {
354
+ "text": ""
355
+ }
356
+ },
357
+ "parameters": [
358
+ {
359
+ "name": "options",
360
+ "type": {
361
+ "text": "ConnectOptions"
362
+ },
363
+ "description": "Authentication payload for either ID token or ticket auth."
364
+ }
365
+ ],
366
+ "description": "Connect to the Char agent with authentication.\n\nThe token is stored as a JavaScript property (not as a DOM attribute),\npreventing exposure to DOM inspection and session replay tools."
367
+ },
368
+ {
369
+ "kind": "method",
370
+ "name": "setAuth",
371
+ "return": {
372
+ "type": {
373
+ "text": ""
374
+ }
375
+ },
376
+ "parameters": [
377
+ {
378
+ "name": "options",
379
+ "type": {
380
+ "text": "ConnectOptions | null"
381
+ },
382
+ "description": "Auth payload to connect, or `null` to disconnect."
383
+ }
384
+ ],
385
+ "description": "Convenience method for declarative wrappers.\nApplies auth when provided, otherwise clears auth."
386
+ },
387
+ {
388
+ "kind": "method",
389
+ "name": "disconnect",
390
+ "return": {
391
+ "type": {
392
+ "text": ""
393
+ }
394
+ },
395
+ "description": "Disconnect from the Char agent.\nClears the authentication token."
396
+ },
397
+ {
398
+ "kind": "method",
399
+ "name": "_getIframeOrigin",
400
+ "privacy": "private",
401
+ "return": {
402
+ "type": {
403
+ "text": "string | null"
404
+ }
405
+ },
406
+ "description": "Resolves the current iframe origin when mounted."
407
+ },
408
+ {
409
+ "kind": "method",
410
+ "name": "setHostContext",
411
+ "return": {
412
+ "type": {
413
+ "text": "void"
414
+ }
415
+ },
416
+ "parameters": [
417
+ {
418
+ "name": "hostContext",
419
+ "type": {
420
+ "text": "CharHostContext"
421
+ },
422
+ "description": "Partial host context patch to merge and emit."
423
+ }
424
+ ],
425
+ "description": "Update the host context sent to the iframe.\nOnly changed fields are transmitted (diffing pattern)."
426
+ },
427
+ {
428
+ "kind": "method",
429
+ "name": "_sendInitialContext",
430
+ "privacy": "private",
431
+ "return": {
432
+ "type": {
433
+ "text": "void"
434
+ }
435
+ },
436
+ "parameters": [
437
+ {
438
+ "name": "iframeOrigin",
439
+ "type": {
440
+ "text": "string"
441
+ },
442
+ "description": "Trusted origin used for postMessage target filtering."
443
+ }
444
+ ],
445
+ "description": "Build and send the full initial context after iframe signals char-ready."
446
+ },
447
+ {
448
+ "kind": "method",
449
+ "name": "_sendContextDelta",
450
+ "privacy": "private",
451
+ "return": {
452
+ "type": {
453
+ "text": "void"
454
+ }
455
+ },
456
+ "parameters": [
457
+ {
458
+ "name": "changes",
459
+ "type": {
460
+ "text": "CharHostContext"
461
+ },
462
+ "description": "Minimal context patch derived from diffing."
463
+ }
464
+ ],
465
+ "description": "Send a context delta to the iframe."
466
+ },
467
+ {
468
+ "kind": "method",
469
+ "name": "_postAuth",
470
+ "privacy": "private",
471
+ "return": {
472
+ "type": {
473
+ "text": "void"
474
+ }
475
+ },
476
+ "parameters": [
477
+ {
478
+ "name": "iframeOrigin",
479
+ "type": {
480
+ "text": "string"
481
+ },
482
+ "description": "Trusted origin used for postMessage target filtering."
483
+ }
484
+ ],
485
+ "description": "Post authentication credentials to the iframe."
486
+ },
487
+ {
488
+ "kind": "method",
489
+ "name": "_requestTeardown",
490
+ "privacy": "private",
491
+ "return": {
492
+ "type": {
493
+ "text": ""
494
+ }
495
+ },
496
+ "parameters": [
497
+ {
498
+ "name": "iframeOrigin",
499
+ "type": {
500
+ "text": "string"
501
+ },
502
+ "description": "Trusted origin used for postMessage target filtering."
503
+ },
504
+ {
505
+ "name": "reason",
506
+ "type": {
507
+ "text": "'disconnect' | 'unmount' | 'reload'"
508
+ },
509
+ "description": "Lifecycle reason for teardown."
510
+ }
511
+ ],
512
+ "description": "Requests graceful iframe teardown and resolves once acknowledged or timed out."
513
+ },
514
+ {
515
+ "kind": "method",
516
+ "name": "_resolvePendingTeardown",
517
+ "privacy": "private",
518
+ "return": {
519
+ "type": {
520
+ "text": "void"
521
+ }
522
+ },
523
+ "parameters": [
524
+ {
525
+ "name": "requestId",
526
+ "optional": true,
527
+ "type": {
528
+ "text": "string"
529
+ },
530
+ "description": "Optional request identifier to match against pending teardown."
531
+ }
532
+ ],
533
+ "description": "Completes an in-flight teardown promise when the iframe acknowledges it."
534
+ },
535
+ {
536
+ "kind": "method",
537
+ "name": "_handleOpenLinkRequest",
538
+ "privacy": "private",
539
+ "return": {
540
+ "type": {
541
+ "text": "void"
542
+ }
543
+ },
544
+ "parameters": [
545
+ {
546
+ "name": "requestId",
547
+ "type": {
548
+ "text": "string"
549
+ },
550
+ "description": "Link request identifier supplied by the iframe."
551
+ },
552
+ {
553
+ "name": "url",
554
+ "type": {
555
+ "text": "string"
556
+ },
557
+ "description": "Requested URL string."
558
+ },
559
+ {
560
+ "name": "iframeOrigin",
561
+ "type": {
562
+ "text": "string"
563
+ },
564
+ "description": "Trusted origin used for postMessage target filtering."
565
+ }
566
+ ],
567
+ "description": "Handles open-link requests from the iframe with protocol allowlisting.\nThis allowlist intentionally mirrors the iframe-side pre-filter."
568
+ },
569
+ {
570
+ "kind": "method",
571
+ "name": "_observeDarkMode",
572
+ "privacy": "private",
573
+ "return": {
574
+ "type": {
575
+ "text": "void"
576
+ }
577
+ },
578
+ "description": "Observe dark mode changes and forward to iframe via unified context."
579
+ },
580
+ {
581
+ "kind": "method",
582
+ "name": "_observeStyleChanges",
583
+ "privacy": "private",
584
+ "return": {
585
+ "type": {
586
+ "text": "void"
587
+ }
588
+ },
589
+ "description": "Observe style attribute changes on <char-agent> to detect CSS variable updates.\nRe-extracts variables and sends delta via unified context."
590
+ },
591
+ {
592
+ "kind": "method",
593
+ "name": "_observeContainerDimensions",
594
+ "privacy": "private",
595
+ "return": {
596
+ "type": {
597
+ "text": "void"
598
+ }
599
+ },
600
+ "description": "Observe host element dimensions to provide containerDimensions context."
601
+ },
602
+ {
603
+ "kind": "method",
604
+ "name": "_resolveDevMode",
605
+ "privacy": "private",
606
+ "return": {
607
+ "type": {
608
+ "text": ""
609
+ }
610
+ },
611
+ "description": "Resolve devMode from property (React 19) or attribute."
612
+ },
613
+ {
614
+ "kind": "method",
615
+ "name": "_resolveApiBaseOverride",
616
+ "privacy": "private",
617
+ "return": {
618
+ "type": {
619
+ "text": ""
620
+ }
621
+ },
622
+ "description": "Resolve apiBase override from property (React 19) or attribute."
623
+ }
624
+ ],
625
+ "events": [
626
+ {
627
+ "name": "type",
628
+ "type": {
629
+ "text": "CustomEvent"
630
+ }
631
+ },
632
+ {
633
+ "name": "char-open-link",
634
+ "type": {
635
+ "text": "CustomEvent"
636
+ }
637
+ }
638
+ ],
639
+ "attributes": [
640
+ {
641
+ "name": "dev-mode"
642
+ },
643
+ {
644
+ "name": "enable-debug-tools"
645
+ },
646
+ {
647
+ "name": "display-mode"
648
+ },
649
+ {
650
+ "name": "api-base"
651
+ }
652
+ ],
653
+ "superclass": {
654
+ "name": "HTMLElement"
655
+ },
656
+ "tagName": "tagName",
657
+ "customElement": true
658
+ },
659
+ {
660
+ "kind": "variable",
661
+ "name": "width"
662
+ },
663
+ {
664
+ "kind": "variable",
665
+ "name": "height"
666
+ },
667
+ {
668
+ "kind": "variable",
669
+ "name": "theme"
670
+ },
671
+ {
672
+ "kind": "function",
673
+ "name": "registerChar",
674
+ "return": {
675
+ "type": {
676
+ "text": "void"
677
+ }
678
+ },
679
+ "parameters": [
680
+ {
681
+ "name": "tagName",
682
+ "default": "'char-agent'",
683
+ "description": "Optional custom tag name override."
684
+ }
685
+ ],
686
+ "description": "Register the <char-agent> custom element.\nCalled automatically when importing this module.",
687
+ "privacy": "public"
688
+ }
689
+ ],
690
+ "exports": [
691
+ {
692
+ "kind": "js",
693
+ "name": "CharContainerDimensions",
694
+ "declaration": {
695
+ "name": "CharContainerDimensions",
696
+ "module": "./types"
697
+ }
698
+ },
699
+ {
700
+ "kind": "js",
701
+ "name": "CharDeviceCapabilities",
702
+ "declaration": {
703
+ "name": "CharDeviceCapabilities",
704
+ "module": "./types"
705
+ }
706
+ },
707
+ {
708
+ "kind": "js",
709
+ "name": "CharDisplayMode",
710
+ "declaration": {
711
+ "name": "CharDisplayMode",
712
+ "module": "./types"
713
+ }
714
+ },
715
+ {
716
+ "kind": "js",
717
+ "name": "CharErrorDetail",
718
+ "declaration": {
719
+ "name": "CharErrorDetail",
720
+ "module": "./types"
721
+ }
722
+ },
723
+ {
724
+ "kind": "js",
725
+ "name": "CharHostCapabilities",
726
+ "declaration": {
727
+ "name": "CharHostCapabilities",
728
+ "module": "./types"
729
+ }
730
+ },
731
+ {
732
+ "kind": "js",
733
+ "name": "CharHostContext",
734
+ "declaration": {
735
+ "name": "CharHostContext",
736
+ "module": "./types"
737
+ }
738
+ },
739
+ {
740
+ "kind": "js",
741
+ "name": "CharHostStyles",
742
+ "declaration": {
743
+ "name": "CharHostStyles",
744
+ "module": "./types"
745
+ }
746
+ },
747
+ {
748
+ "kind": "js",
749
+ "name": "CharOpenLinkDetail",
750
+ "declaration": {
751
+ "name": "CharOpenLinkDetail",
752
+ "module": "./types"
753
+ }
754
+ },
755
+ {
756
+ "kind": "js",
757
+ "name": "CharPlatform",
758
+ "declaration": {
759
+ "name": "CharPlatform",
760
+ "module": "./types"
761
+ }
762
+ },
763
+ {
764
+ "kind": "js",
765
+ "name": "CharRequestDisplayModeDetail",
766
+ "declaration": {
767
+ "name": "CharRequestDisplayModeDetail",
768
+ "module": "./types"
769
+ }
770
+ },
771
+ {
772
+ "kind": "js",
773
+ "name": "CharSafeAreaInsets",
774
+ "declaration": {
775
+ "name": "CharSafeAreaInsets",
776
+ "module": "./types"
777
+ }
778
+ },
779
+ {
780
+ "kind": "js",
781
+ "name": "CharSizeChangedDetail",
782
+ "declaration": {
783
+ "name": "CharSizeChangedDetail",
784
+ "module": "./types"
785
+ }
786
+ },
787
+ {
788
+ "kind": "js",
789
+ "name": "CharTheme",
790
+ "declaration": {
791
+ "name": "CharTheme",
792
+ "module": "./types"
793
+ }
794
+ },
795
+ {
796
+ "kind": "js",
797
+ "name": "ConnectOptions",
798
+ "declaration": {
799
+ "name": "ConnectOptions",
800
+ "module": "./types"
801
+ }
802
+ },
803
+ {
804
+ "kind": "js",
805
+ "name": "DevModeConfig",
806
+ "declaration": {
807
+ "name": "DevModeConfig",
808
+ "module": "./types"
809
+ }
810
+ },
811
+ {
812
+ "kind": "js",
813
+ "name": "TicketAuth",
814
+ "declaration": {
815
+ "name": "TicketAuth",
816
+ "module": "./types"
817
+ }
818
+ },
819
+ {
820
+ "kind": "js",
821
+ "name": "CharAgentElement",
822
+ "declaration": {
823
+ "name": "CharAgentElement",
824
+ "module": "packages/char/src/web-component.tsx"
825
+ }
826
+ },
827
+ {
828
+ "kind": "js",
829
+ "name": "registerChar",
830
+ "declaration": {
831
+ "name": "registerChar",
832
+ "module": "packages/char/src/web-component.tsx"
833
+ }
834
+ },
835
+ {
836
+ "kind": "custom-element-definition",
837
+ "name": "tagName",
838
+ "declaration": {
839
+ "name": "CharAgentElement",
840
+ "module": "packages/char/src/web-component.tsx"
841
+ }
842
+ }
843
+ ]
844
+ },
845
+ {
846
+ "kind": "javascript-module",
847
+ "path": "packages/char/src/shell-component.ts",
848
+ "declarations": [
849
+ {
850
+ "kind": "class",
851
+ "description": "`<char-agent-shell>` custom element.\n\nOpinionated host shell that composes a persistent inner `<char-agent>` and\nowns responsive mode policy plus host layout orchestration.\nThis shell does not render chat controls, prompts, or composer UI.\nVisible assistant UI is always iframe-owned.\n\nPolicy:\n- closed to `pip`\n- open desktop to `inline`\n- open narrow viewport to `fullscreen`",
852
+ "name": "CharAgentShellElement",
853
+ "members": [
854
+ {
855
+ "kind": "field",
856
+ "name": "devMode",
857
+ "type": {
858
+ "text": "DevModeConfig | undefined"
859
+ }
860
+ },
861
+ {
862
+ "kind": "field",
863
+ "name": "apiBase",
864
+ "type": {
865
+ "text": "string | undefined"
866
+ }
867
+ },
868
+ {
869
+ "kind": "field",
870
+ "name": "_agent",
871
+ "type": {
872
+ "text": "CharAgentElement | null"
873
+ },
874
+ "privacy": "private",
875
+ "default": "null"
876
+ },
877
+ {
878
+ "kind": "field",
879
+ "name": "_open",
880
+ "type": {
881
+ "text": "boolean"
882
+ },
883
+ "privacy": "private",
884
+ "default": "false"
885
+ },
886
+ {
887
+ "kind": "field",
888
+ "name": "_fullscreenBreakpoint",
889
+ "privacy": "private",
890
+ "default": "1024",
891
+ "type": {
892
+ "text": "number"
893
+ }
894
+ },
895
+ {
896
+ "kind": "field",
897
+ "name": "_panelWidth",
898
+ "privacy": "private",
899
+ "default": "420",
900
+ "type": {
901
+ "text": "number"
902
+ }
903
+ },
904
+ {
905
+ "kind": "field",
906
+ "name": "_pipWidth",
907
+ "privacy": "private",
908
+ "default": "300",
909
+ "type": {
910
+ "text": "number"
911
+ }
912
+ },
913
+ {
914
+ "kind": "field",
915
+ "name": "_pipHeight",
916
+ "privacy": "private",
917
+ "default": "96",
918
+ "type": {
919
+ "text": "number"
920
+ }
921
+ },
922
+ {
923
+ "kind": "field",
924
+ "name": "_pipPosition",
925
+ "type": {
926
+ "text": "CharPipPosition"
927
+ },
928
+ "privacy": "private",
929
+ "default": "'bottom-center'"
930
+ },
931
+ {
932
+ "kind": "field",
933
+ "name": "_isNarrowViewport",
934
+ "type": {
935
+ "text": "boolean"
936
+ },
937
+ "privacy": "private",
938
+ "default": "false"
939
+ },
940
+ {
941
+ "kind": "field",
942
+ "name": "_mediaQuery",
943
+ "type": {
944
+ "text": "MediaQueryList | null"
945
+ },
946
+ "privacy": "private",
947
+ "default": "null"
948
+ },
949
+ {
950
+ "kind": "field",
951
+ "name": "_mediaQueryHandler",
952
+ "type": {
953
+ "text": "((event: MediaQueryListEvent) => void) | null"
954
+ },
955
+ "privacy": "private",
956
+ "default": "null"
957
+ },
958
+ {
959
+ "kind": "field",
960
+ "name": "_pendingConnectOptions",
961
+ "type": {
962
+ "text": "ConnectOptions | null"
963
+ },
964
+ "privacy": "private",
965
+ "default": "null"
966
+ },
967
+ {
968
+ "kind": "field",
969
+ "name": "_pendingHostContext",
970
+ "type": {
971
+ "text": "CharHostContext"
972
+ },
973
+ "privacy": "private",
974
+ "default": "{}"
975
+ },
976
+ {
977
+ "kind": "field",
978
+ "name": "_isApplyingOpenAttribute",
979
+ "type": {
980
+ "text": "boolean"
981
+ },
982
+ "privacy": "private",
983
+ "default": "false"
984
+ },
985
+ {
986
+ "kind": "field",
987
+ "name": "_forwardedListenersAttached",
988
+ "type": {
989
+ "text": "boolean"
990
+ },
991
+ "privacy": "private",
992
+ "default": "false"
993
+ },
994
+ {
995
+ "kind": "field",
996
+ "name": "_healthState",
997
+ "type": {
998
+ "text": "ShellHealthState"
999
+ },
1000
+ "privacy": "private",
1001
+ "default": "'idle'"
1002
+ },
1003
+ {
1004
+ "kind": "field",
1005
+ "name": "_healthTimeoutId",
1006
+ "type": {
1007
+ "text": "number | null"
1008
+ },
1009
+ "privacy": "private",
1010
+ "default": "null"
1011
+ },
1012
+ {
1013
+ "kind": "field",
1014
+ "name": "_pipMeasuredHeight",
1015
+ "type": {
1016
+ "text": "number | null"
1017
+ },
1018
+ "privacy": "private",
1019
+ "default": "null"
1020
+ },
1021
+ {
1022
+ "kind": "field",
1023
+ "name": "_revealFrameId",
1024
+ "type": {
1025
+ "text": "number | null"
1026
+ },
1027
+ "privacy": "private",
1028
+ "default": "null"
1029
+ },
1030
+ {
1031
+ "kind": "field",
1032
+ "name": "_pipExpanded",
1033
+ "type": {
1034
+ "text": "boolean"
1035
+ },
1036
+ "privacy": "private",
1037
+ "default": "false"
1038
+ },
1039
+ {
1040
+ "kind": "field",
1041
+ "name": "_pipPillElement",
1042
+ "type": {
1043
+ "text": "HTMLDivElement | null"
1044
+ },
1045
+ "privacy": "private",
1046
+ "default": "null"
1047
+ },
1048
+ {
1049
+ "kind": "field",
1050
+ "name": "_pipCollapseTimerId",
1051
+ "type": {
1052
+ "text": "number | null"
1053
+ },
1054
+ "privacy": "private",
1055
+ "default": "null"
1056
+ },
1057
+ {
1058
+ "kind": "field",
1059
+ "name": "_hoverMediaQuery",
1060
+ "type": {
1061
+ "text": "MediaQueryList | null"
1062
+ },
1063
+ "privacy": "private",
1064
+ "default": "null"
1065
+ },
1066
+ {
1067
+ "kind": "field",
1068
+ "name": "_pipListenersAttached",
1069
+ "type": {
1070
+ "text": "boolean"
1071
+ },
1072
+ "privacy": "private",
1073
+ "default": "false"
1074
+ },
1075
+ {
1076
+ "kind": "field",
1077
+ "name": "_pipAnimating",
1078
+ "type": {
1079
+ "text": "boolean"
1080
+ },
1081
+ "privacy": "private",
1082
+ "default": "false"
1083
+ },
1084
+ {
1085
+ "kind": "field",
1086
+ "name": "_pipAnimationTimeoutId",
1087
+ "type": {
1088
+ "text": "number | null"
1089
+ },
1090
+ "privacy": "private",
1091
+ "default": "null"
1092
+ },
1093
+ {
1094
+ "kind": "field",
1095
+ "name": "_pendingPipMeasuredHeight",
1096
+ "type": {
1097
+ "text": "number | null"
1098
+ },
1099
+ "privacy": "private",
1100
+ "default": "null"
1101
+ },
1102
+ {
1103
+ "kind": "field",
1104
+ "name": "_tapOutsideListener",
1105
+ "type": {
1106
+ "text": "((e: Event) => void) | null"
1107
+ },
1108
+ "privacy": "private",
1109
+ "default": "null"
1110
+ },
1111
+ {
1112
+ "kind": "field",
1113
+ "name": "_pipHiddenByScroll",
1114
+ "type": {
1115
+ "text": "boolean"
1116
+ },
1117
+ "privacy": "private",
1118
+ "default": "false"
1119
+ },
1120
+ {
1121
+ "kind": "field",
1122
+ "name": "_scrollListener",
1123
+ "type": {
1124
+ "text": "((e: Event) => void) | null"
1125
+ },
1126
+ "privacy": "private",
1127
+ "default": "null"
1128
+ },
1129
+ {
1130
+ "kind": "field",
1131
+ "name": "_scrollRafId",
1132
+ "type": {
1133
+ "text": "number | null"
1134
+ },
1135
+ "privacy": "private",
1136
+ "default": "null"
1137
+ },
1138
+ {
1139
+ "kind": "field",
1140
+ "name": "_lastScrollEl",
1141
+ "type": {
1142
+ "text": "Element | null"
1143
+ },
1144
+ "privacy": "private",
1145
+ "default": "null"
1146
+ },
1147
+ {
1148
+ "kind": "field",
1149
+ "name": "_lastScrollTop",
1150
+ "type": {
1151
+ "text": "number | null"
1152
+ },
1153
+ "privacy": "private",
1154
+ "default": "null"
1155
+ },
1156
+ {
1157
+ "kind": "field",
1158
+ "name": "_scrollDelta",
1159
+ "type": {
1160
+ "text": "number"
1161
+ },
1162
+ "privacy": "private",
1163
+ "default": "0"
1164
+ },
1165
+ {
1166
+ "kind": "field",
1167
+ "name": "_swipeTouchStartY",
1168
+ "type": {
1169
+ "text": "number | null"
1170
+ },
1171
+ "privacy": "private",
1172
+ "default": "null"
1173
+ },
1174
+ {
1175
+ "kind": "field",
1176
+ "name": "_swipeStartAtTop",
1177
+ "type": {
1178
+ "text": "boolean"
1179
+ },
1180
+ "privacy": "private",
1181
+ "default": "false"
1182
+ },
1183
+ {
1184
+ "kind": "field",
1185
+ "name": "_swipeStartAtBottom",
1186
+ "type": {
1187
+ "text": "boolean"
1188
+ },
1189
+ "privacy": "private",
1190
+ "default": "false"
1191
+ },
1192
+ {
1193
+ "kind": "field",
1194
+ "name": "_swipeTouchStartListener",
1195
+ "type": {
1196
+ "text": "((e: TouchEvent) => void) | null"
1197
+ },
1198
+ "privacy": "private",
1199
+ "default": "null"
1200
+ },
1201
+ {
1202
+ "kind": "field",
1203
+ "name": "_swipeTouchEndListener",
1204
+ "type": {
1205
+ "text": "((e: TouchEvent) => void) | null"
1206
+ },
1207
+ "privacy": "private",
1208
+ "default": "null"
1209
+ },
1210
+ {
1211
+ "kind": "field",
1212
+ "name": "_wheelListener",
1213
+ "type": {
1214
+ "text": "((e: WheelEvent) => void) | null"
1215
+ },
1216
+ "privacy": "private",
1217
+ "default": "null"
1218
+ },
1219
+ {
1220
+ "kind": "field",
1221
+ "name": "_wheelDelta",
1222
+ "type": {
1223
+ "text": "number"
1224
+ },
1225
+ "privacy": "private",
1226
+ "default": "0"
1227
+ },
1228
+ {
1229
+ "kind": "field",
1230
+ "name": "open",
1231
+ "type": {
1232
+ "text": "boolean"
1233
+ }
1234
+ },
1235
+ {
1236
+ "kind": "field",
1237
+ "name": "fullscreenBreakpoint",
1238
+ "type": {
1239
+ "text": "number"
1240
+ }
1241
+ },
1242
+ {
1243
+ "kind": "field",
1244
+ "name": "panelWidth",
1245
+ "type": {
1246
+ "text": "number"
1247
+ }
1248
+ },
1249
+ {
1250
+ "kind": "field",
1251
+ "name": "pipWidth",
1252
+ "type": {
1253
+ "text": "number"
1254
+ }
1255
+ },
1256
+ {
1257
+ "kind": "field",
1258
+ "name": "pipHeight",
1259
+ "type": {
1260
+ "text": "number"
1261
+ }
1262
+ },
1263
+ {
1264
+ "kind": "field",
1265
+ "name": "pipPosition",
1266
+ "type": {
1267
+ "text": "CharPipPosition"
1268
+ }
1269
+ },
1270
+ {
1271
+ "kind": "method",
1272
+ "name": "connect",
1273
+ "return": {
1274
+ "type": {
1275
+ "text": ""
1276
+ }
1277
+ },
1278
+ "parameters": [
1279
+ {
1280
+ "name": "options",
1281
+ "type": {
1282
+ "text": "ConnectOptions"
1283
+ },
1284
+ "description": "Authentication payload for either ID token or ticket auth."
1285
+ }
1286
+ ],
1287
+ "description": "Connects shell authentication and starts availability health checks."
1288
+ },
1289
+ {
1290
+ "kind": "method",
1291
+ "name": "disconnect",
1292
+ "return": {
1293
+ "type": {
1294
+ "text": ""
1295
+ }
1296
+ },
1297
+ "description": "Clears authentication and disconnects the inner `<char-agent>`."
1298
+ },
1299
+ {
1300
+ "kind": "method",
1301
+ "name": "setAuth",
1302
+ "return": {
1303
+ "type": {
1304
+ "text": ""
1305
+ }
1306
+ },
1307
+ "parameters": [
1308
+ {
1309
+ "name": "options",
1310
+ "type": {
1311
+ "text": "ConnectOptions | null"
1312
+ },
1313
+ "description": "Auth payload to connect, or `null` to disconnect."
1314
+ }
1315
+ ],
1316
+ "description": "Convenience method for declarative wrappers.\nApplies auth when provided, otherwise clears auth."
1317
+ },
1318
+ {
1319
+ "kind": "method",
1320
+ "name": "setHostContext",
1321
+ "return": {
1322
+ "type": {
1323
+ "text": "void"
1324
+ }
1325
+ },
1326
+ "parameters": [
1327
+ {
1328
+ "name": "hostContext",
1329
+ "type": {
1330
+ "text": "CharHostContext"
1331
+ },
1332
+ "description": "Partial host context patch to forward."
1333
+ }
1334
+ ],
1335
+ "description": "Merges and forwards host context to the inner `<char-agent>`.\nShell-owned fields (`displayMode`, `availableDisplayModes`) are ignored."
1336
+ },
1337
+ {
1338
+ "kind": "method",
1339
+ "name": "setOpen",
1340
+ "return": {
1341
+ "type": {
1342
+ "text": "void"
1343
+ }
1344
+ },
1345
+ "parameters": [
1346
+ {
1347
+ "name": "open",
1348
+ "type": {
1349
+ "text": "boolean"
1350
+ },
1351
+ "description": "Next desired open state."
1352
+ }
1353
+ ],
1354
+ "description": "Sets shell open state."
1355
+ },
1356
+ {
1357
+ "kind": "method",
1358
+ "name": "toggleOpen",
1359
+ "return": {
1360
+ "type": {
1361
+ "text": "void"
1362
+ }
1363
+ },
1364
+ "description": "Toggles shell open state."
1365
+ },
1366
+ {
1367
+ "kind": "method",
1368
+ "name": "_upgradeProperty",
1369
+ "privacy": "private",
1370
+ "return": {
1371
+ "type": {
1372
+ "text": "void"
1373
+ }
1374
+ },
1375
+ "parameters": [
1376
+ {
1377
+ "name": "propertyName",
1378
+ "type": {
1379
+ "text": "string"
1380
+ }
1381
+ }
1382
+ ]
1383
+ },
1384
+ {
1385
+ "kind": "method",
1386
+ "name": "_ensureAgent",
1387
+ "privacy": "private",
1388
+ "return": {
1389
+ "type": {
1390
+ "text": "void"
1391
+ }
1392
+ }
1393
+ },
1394
+ {
1395
+ "kind": "method",
1396
+ "name": "_primeAgentBootConfig",
1397
+ "privacy": "private",
1398
+ "return": {
1399
+ "type": {
1400
+ "text": "void"
1401
+ }
1402
+ },
1403
+ "parameters": [
1404
+ {
1405
+ "name": "agent",
1406
+ "type": {
1407
+ "text": "CharAgentElement"
1408
+ }
1409
+ }
1410
+ ]
1411
+ },
1412
+ {
1413
+ "kind": "method",
1414
+ "name": "_attachForwardedListeners",
1415
+ "privacy": "private",
1416
+ "return": {
1417
+ "type": {
1418
+ "text": "void"
1419
+ }
1420
+ }
1421
+ },
1422
+ {
1423
+ "kind": "method",
1424
+ "name": "_detachForwardedListeners",
1425
+ "privacy": "private",
1426
+ "return": {
1427
+ "type": {
1428
+ "text": "void"
1429
+ }
1430
+ }
1431
+ },
1432
+ {
1433
+ "kind": "method",
1434
+ "name": "_readConfigFromAttributes",
1435
+ "privacy": "private",
1436
+ "return": {
1437
+ "type": {
1438
+ "text": "void"
1439
+ }
1440
+ }
1441
+ },
1442
+ {
1443
+ "kind": "method",
1444
+ "name": "_syncForwardedAttributes",
1445
+ "privacy": "private",
1446
+ "return": {
1447
+ "type": {
1448
+ "text": "void"
1449
+ }
1450
+ }
1451
+ },
1452
+ {
1453
+ "kind": "method",
1454
+ "name": "_setupViewportObserver",
1455
+ "privacy": "private",
1456
+ "return": {
1457
+ "type": {
1458
+ "text": "void"
1459
+ }
1460
+ }
1461
+ },
1462
+ {
1463
+ "kind": "method",
1464
+ "name": "_teardownViewportObserver",
1465
+ "privacy": "private",
1466
+ "return": {
1467
+ "type": {
1468
+ "text": "void"
1469
+ }
1470
+ }
1471
+ },
1472
+ {
1473
+ "kind": "method",
1474
+ "name": "_applyDisplayModeAndLayout",
1475
+ "privacy": "private",
1476
+ "return": {
1477
+ "type": {
1478
+ "text": "void"
1479
+ }
1480
+ }
1481
+ },
1482
+ {
1483
+ "kind": "method",
1484
+ "name": "_applyHostLayout",
1485
+ "privacy": "private",
1486
+ "return": {
1487
+ "type": {
1488
+ "text": "void"
1489
+ }
1490
+ },
1491
+ "parameters": [
1492
+ {
1493
+ "name": "displayMode",
1494
+ "type": {
1495
+ "text": "CharDisplayMode"
1496
+ }
1497
+ }
1498
+ ]
1499
+ },
1500
+ {
1501
+ "kind": "method",
1502
+ "name": "_composePipTransform",
1503
+ "privacy": "private",
1504
+ "return": {
1505
+ "type": {
1506
+ "text": "string"
1507
+ }
1508
+ },
1509
+ "parameters": [
1510
+ {
1511
+ "name": "opts",
1512
+ "type": {
1513
+ "text": "{\n\t\tscrollHide?: boolean\n\t}"
1514
+ }
1515
+ }
1516
+ ]
1517
+ },
1518
+ {
1519
+ "kind": "method",
1520
+ "name": "_applyAgentLayout",
1521
+ "privacy": "private",
1522
+ "return": {
1523
+ "type": {
1524
+ "text": "void"
1525
+ }
1526
+ },
1527
+ "parameters": [
1528
+ {
1529
+ "name": "displayMode",
1530
+ "type": {
1531
+ "text": "CharDisplayMode"
1532
+ }
1533
+ }
1534
+ ]
1535
+ },
1536
+ {
1537
+ "kind": "method",
1538
+ "name": "_ensurePipPill",
1539
+ "privacy": "private",
1540
+ "return": {
1541
+ "type": {
1542
+ "text": "HTMLDivElement"
1543
+ }
1544
+ }
1545
+ },
1546
+ {
1547
+ "kind": "method",
1548
+ "name": "_updatePipPillPosition",
1549
+ "privacy": "private",
1550
+ "return": {
1551
+ "type": {
1552
+ "text": "void"
1553
+ }
1554
+ },
1555
+ "parameters": [
1556
+ {
1557
+ "name": "pipWidth",
1558
+ "type": {
1559
+ "text": "number"
1560
+ }
1561
+ },
1562
+ {
1563
+ "name": "heightDelta",
1564
+ "type": {
1565
+ "text": "number"
1566
+ }
1567
+ },
1568
+ {
1569
+ "name": "pillHeight",
1570
+ "type": {
1571
+ "text": "number"
1572
+ }
1573
+ }
1574
+ ]
1575
+ },
1576
+ {
1577
+ "kind": "method",
1578
+ "name": "_applyPipVisualState",
1579
+ "privacy": "private",
1580
+ "return": {
1581
+ "type": {
1582
+ "text": "void"
1583
+ }
1584
+ }
1585
+ },
1586
+ {
1587
+ "kind": "method",
1588
+ "name": "_setPipExpanded",
1589
+ "privacy": "private",
1590
+ "return": {
1591
+ "type": {
1592
+ "text": "void"
1593
+ }
1594
+ },
1595
+ "parameters": [
1596
+ {
1597
+ "name": "expanded",
1598
+ "type": {
1599
+ "text": "boolean"
1600
+ }
1601
+ }
1602
+ ]
1603
+ },
1604
+ {
1605
+ "kind": "method",
1606
+ "name": "_flushPendingPipMeasuredHeight",
1607
+ "privacy": "private",
1608
+ "return": {
1609
+ "type": {
1610
+ "text": "void"
1611
+ }
1612
+ }
1613
+ },
1614
+ {
1615
+ "kind": "method",
1616
+ "name": "_isHoverDevice",
1617
+ "privacy": "private",
1618
+ "return": {
1619
+ "type": {
1620
+ "text": "boolean"
1621
+ }
1622
+ }
1623
+ },
1624
+ {
1625
+ "kind": "method",
1626
+ "name": "_attachPipInteractionListeners",
1627
+ "privacy": "private",
1628
+ "return": {
1629
+ "type": {
1630
+ "text": "void"
1631
+ }
1632
+ }
1633
+ },
1634
+ {
1635
+ "kind": "method",
1636
+ "name": "_detachPipInteractionListeners",
1637
+ "privacy": "private",
1638
+ "return": {
1639
+ "type": {
1640
+ "text": "void"
1641
+ }
1642
+ }
1643
+ },
1644
+ {
1645
+ "kind": "method",
1646
+ "name": "_schedulePipCollapse",
1647
+ "privacy": "private",
1648
+ "return": {
1649
+ "type": {
1650
+ "text": "void"
1651
+ }
1652
+ }
1653
+ },
1654
+ {
1655
+ "kind": "method",
1656
+ "name": "_clearPipCollapseTimer",
1657
+ "privacy": "private",
1658
+ "return": {
1659
+ "type": {
1660
+ "text": "void"
1661
+ }
1662
+ }
1663
+ },
1664
+ {
1665
+ "kind": "method",
1666
+ "name": "_attachTapOutsideListener",
1667
+ "privacy": "private",
1668
+ "return": {
1669
+ "type": {
1670
+ "text": "void"
1671
+ }
1672
+ }
1673
+ },
1674
+ {
1675
+ "kind": "method",
1676
+ "name": "_detachTapOutsideListener",
1677
+ "privacy": "private",
1678
+ "return": {
1679
+ "type": {
1680
+ "text": "void"
1681
+ }
1682
+ }
1683
+ },
1684
+ {
1685
+ "kind": "field",
1686
+ "name": "_handlePipPointerEnter",
1687
+ "privacy": "private"
1688
+ },
1689
+ {
1690
+ "kind": "field",
1691
+ "name": "_handlePipPointerLeave",
1692
+ "privacy": "private"
1693
+ },
1694
+ {
1695
+ "kind": "method",
1696
+ "name": "_attachScrollHideListener",
1697
+ "privacy": "private",
1698
+ "return": {
1699
+ "type": {
1700
+ "text": "void"
1701
+ }
1702
+ }
1703
+ },
1704
+ {
1705
+ "kind": "method",
1706
+ "name": "_evaluateScrollPosition",
1707
+ "privacy": "private",
1708
+ "return": {
1709
+ "type": {
1710
+ "text": "void"
1711
+ }
1712
+ },
1713
+ "parameters": [
1714
+ {
1715
+ "name": "el",
1716
+ "type": {
1717
+ "text": "Element"
1718
+ }
1719
+ }
1720
+ ]
1721
+ },
1722
+ {
1723
+ "kind": "method",
1724
+ "name": "_detachScrollHideListener",
1725
+ "privacy": "private",
1726
+ "return": {
1727
+ "type": {
1728
+ "text": "void"
1729
+ }
1730
+ }
1731
+ },
1732
+ {
1733
+ "kind": "method",
1734
+ "name": "_attachSwipeGestureListeners",
1735
+ "privacy": "private",
1736
+ "return": {
1737
+ "type": {
1738
+ "text": "void"
1739
+ }
1740
+ }
1741
+ },
1742
+ {
1743
+ "kind": "method",
1744
+ "name": "_detachSwipeGestureListeners",
1745
+ "privacy": "private",
1746
+ "return": {
1747
+ "type": {
1748
+ "text": "void"
1749
+ }
1750
+ }
1751
+ },
1752
+ {
1753
+ "kind": "method",
1754
+ "name": "_attachWheelFallbackListener",
1755
+ "privacy": "private",
1756
+ "return": {
1757
+ "type": {
1758
+ "text": "void"
1759
+ }
1760
+ }
1761
+ },
1762
+ {
1763
+ "kind": "method",
1764
+ "name": "_detachWheelFallbackListener",
1765
+ "privacy": "private",
1766
+ "return": {
1767
+ "type": {
1768
+ "text": "void"
1769
+ }
1770
+ }
1771
+ },
1772
+ {
1773
+ "kind": "field",
1774
+ "name": "_handlePillClick",
1775
+ "privacy": "private"
1776
+ },
1777
+ {
1778
+ "kind": "field",
1779
+ "name": "_handlePillKeydown",
1780
+ "privacy": "private"
1781
+ },
1782
+ {
1783
+ "kind": "method",
1784
+ "name": "_hidePipPill",
1785
+ "privacy": "private",
1786
+ "return": {
1787
+ "type": {
1788
+ "text": "void"
1789
+ }
1790
+ }
1791
+ },
1792
+ {
1793
+ "kind": "method",
1794
+ "name": "_resetHostLayoutStyles",
1795
+ "privacy": "private",
1796
+ "return": {
1797
+ "type": {
1798
+ "text": "void"
1799
+ }
1800
+ }
1801
+ },
1802
+ {
1803
+ "kind": "method",
1804
+ "name": "_resetAgentLayoutStyles",
1805
+ "privacy": "private",
1806
+ "return": {
1807
+ "type": {
1808
+ "text": "void"
1809
+ }
1810
+ }
1811
+ },
1812
+ {
1813
+ "kind": "method",
1814
+ "name": "_applyUnavailableLayout",
1815
+ "privacy": "private",
1816
+ "return": {
1817
+ "type": {
1818
+ "text": "void"
1819
+ }
1820
+ }
1821
+ },
1822
+ {
1823
+ "kind": "method",
1824
+ "name": "_applyPreReadyLayout",
1825
+ "privacy": "private",
1826
+ "return": {
1827
+ "type": {
1828
+ "text": "void"
1829
+ }
1830
+ }
1831
+ },
1832
+ {
1833
+ "kind": "method",
1834
+ "name": "_startHealthWait",
1835
+ "privacy": "private",
1836
+ "return": {
1837
+ "type": {
1838
+ "text": "void"
1839
+ }
1840
+ }
1841
+ },
1842
+ {
1843
+ "kind": "method",
1844
+ "name": "_stopHealthWait",
1845
+ "privacy": "private",
1846
+ "return": {
1847
+ "type": {
1848
+ "text": "void"
1849
+ }
1850
+ }
1851
+ },
1852
+ {
1853
+ "kind": "method",
1854
+ "name": "_markHealthy",
1855
+ "privacy": "private",
1856
+ "return": {
1857
+ "type": {
1858
+ "text": "void"
1859
+ }
1860
+ }
1861
+ },
1862
+ {
1863
+ "kind": "method",
1864
+ "name": "_cancelRevealFade",
1865
+ "privacy": "private",
1866
+ "return": {
1867
+ "type": {
1868
+ "text": "void"
1869
+ }
1870
+ }
1871
+ },
1872
+ {
1873
+ "kind": "method",
1874
+ "name": "_startRevealFade",
1875
+ "privacy": "private",
1876
+ "return": {
1877
+ "type": {
1878
+ "text": "void"
1879
+ }
1880
+ }
1881
+ },
1882
+ {
1883
+ "kind": "method",
1884
+ "name": "_setUnavailable",
1885
+ "privacy": "private",
1886
+ "return": {
1887
+ "type": {
1888
+ "text": "void"
1889
+ }
1890
+ },
1891
+ "parameters": [
1892
+ {
1893
+ "name": "message",
1894
+ "type": {
1895
+ "text": "string"
1896
+ }
1897
+ }
1898
+ ]
1899
+ },
1900
+ {
1901
+ "kind": "method",
1902
+ "name": "_recoverFromUnavailable",
1903
+ "privacy": "private",
1904
+ "return": {
1905
+ "type": {
1906
+ "text": "void"
1907
+ }
1908
+ }
1909
+ },
1910
+ {
1911
+ "kind": "method",
1912
+ "name": "_setOpenInternal",
1913
+ "privacy": "private",
1914
+ "return": {
1915
+ "type": {
1916
+ "text": "void"
1917
+ }
1918
+ },
1919
+ "parameters": [
1920
+ {
1921
+ "name": "nextOpen",
1922
+ "type": {
1923
+ "text": "boolean"
1924
+ }
1925
+ },
1926
+ {
1927
+ "name": "options",
1928
+ "type": {
1929
+ "text": "{ emit: boolean; reflect: boolean }"
1930
+ }
1931
+ }
1932
+ ]
1933
+ },
1934
+ {
1935
+ "kind": "method",
1936
+ "name": "_reflectOpenAttribute",
1937
+ "privacy": "private",
1938
+ "return": {
1939
+ "type": {
1940
+ "text": "void"
1941
+ }
1942
+ },
1943
+ "parameters": [
1944
+ {
1945
+ "name": "open",
1946
+ "type": {
1947
+ "text": "boolean"
1948
+ }
1949
+ }
1950
+ ]
1951
+ },
1952
+ {
1953
+ "kind": "method",
1954
+ "name": "_flushPendingConnectAndContext",
1955
+ "privacy": "private",
1956
+ "return": {
1957
+ "type": {
1958
+ "text": "void"
1959
+ }
1960
+ }
1961
+ },
1962
+ {
1963
+ "kind": "field",
1964
+ "name": "_handleRequestDisplayMode",
1965
+ "privacy": "private"
1966
+ },
1967
+ {
1968
+ "kind": "field",
1969
+ "name": "_handleClose",
1970
+ "privacy": "private"
1971
+ },
1972
+ {
1973
+ "kind": "field",
1974
+ "name": "_handleInitialized",
1975
+ "privacy": "private"
1976
+ },
1977
+ {
1978
+ "kind": "field",
1979
+ "name": "_handleInnerError",
1980
+ "privacy": "private"
1981
+ },
1982
+ {
1983
+ "kind": "field",
1984
+ "name": "_handleInnerSizeChanged",
1985
+ "privacy": "private"
1986
+ }
1987
+ ],
1988
+ "events": [
1989
+ {
1990
+ "name": "char-error",
1991
+ "type": {
1992
+ "text": "CustomEvent"
1993
+ }
1994
+ },
1995
+ {
1996
+ "name": "SHELL_OPEN_CHANGE_EVENT",
1997
+ "type": {
1998
+ "text": "CustomEvent"
1999
+ }
2000
+ }
2001
+ ],
2002
+ "attributes": [
2003
+ {
2004
+ "name": "open"
2005
+ },
2006
+ {
2007
+ "name": "fullscreen-breakpoint"
2008
+ },
2009
+ {
2010
+ "name": "panel-width"
2011
+ },
2012
+ {
2013
+ "name": "pip-position"
2014
+ },
2015
+ {
2016
+ "name": "pip-width"
2017
+ },
2018
+ {
2019
+ "name": "pip-height"
2020
+ },
2021
+ {
2022
+ "name": "dev-mode"
2023
+ },
2024
+ {
2025
+ "name": "enable-debug-tools"
2026
+ },
2027
+ {
2028
+ "name": "api-base"
2029
+ }
2030
+ ],
2031
+ "superclass": {
2032
+ "name": "HTMLElement"
2033
+ },
2034
+ "tagName": "tagName",
2035
+ "customElement": true
2036
+ },
2037
+ {
2038
+ "kind": "function",
2039
+ "name": "registerCharShell",
2040
+ "return": {
2041
+ "type": {
2042
+ "text": "void"
2043
+ }
2044
+ },
2045
+ "parameters": [
2046
+ {
2047
+ "name": "tagName",
2048
+ "default": "'char-agent-shell'",
2049
+ "description": "Optional custom tag name override."
2050
+ }
2051
+ ],
2052
+ "description": "Registers the `<char-agent-shell>` custom element.",
2053
+ "privacy": "public"
2054
+ }
2055
+ ],
2056
+ "exports": [
2057
+ {
2058
+ "kind": "js",
2059
+ "name": "CharContainerDimensions",
2060
+ "declaration": {
2061
+ "name": "CharContainerDimensions",
2062
+ "module": "./types"
2063
+ }
2064
+ },
2065
+ {
2066
+ "kind": "js",
2067
+ "name": "CharDeviceCapabilities",
2068
+ "declaration": {
2069
+ "name": "CharDeviceCapabilities",
2070
+ "module": "./types"
2071
+ }
2072
+ },
2073
+ {
2074
+ "kind": "js",
2075
+ "name": "CharDisplayMode",
2076
+ "declaration": {
2077
+ "name": "CharDisplayMode",
2078
+ "module": "./types"
2079
+ }
2080
+ },
2081
+ {
2082
+ "kind": "js",
2083
+ "name": "CharHostCapabilities",
2084
+ "declaration": {
2085
+ "name": "CharHostCapabilities",
2086
+ "module": "./types"
2087
+ }
2088
+ },
2089
+ {
2090
+ "kind": "js",
2091
+ "name": "CharHostContext",
2092
+ "declaration": {
2093
+ "name": "CharHostContext",
2094
+ "module": "./types"
2095
+ }
2096
+ },
2097
+ {
2098
+ "kind": "js",
2099
+ "name": "CharHostStyles",
2100
+ "declaration": {
2101
+ "name": "CharHostStyles",
2102
+ "module": "./types"
2103
+ }
2104
+ },
2105
+ {
2106
+ "kind": "js",
2107
+ "name": "CharPlatform",
2108
+ "declaration": {
2109
+ "name": "CharPlatform",
2110
+ "module": "./types"
2111
+ }
2112
+ },
2113
+ {
2114
+ "kind": "js",
2115
+ "name": "CharSafeAreaInsets",
2116
+ "declaration": {
2117
+ "name": "CharSafeAreaInsets",
2118
+ "module": "./types"
2119
+ }
2120
+ },
2121
+ {
2122
+ "kind": "js",
2123
+ "name": "CharTheme",
2124
+ "declaration": {
2125
+ "name": "CharTheme",
2126
+ "module": "./types"
2127
+ }
2128
+ },
2129
+ {
2130
+ "kind": "js",
2131
+ "name": "ConnectOptions",
2132
+ "declaration": {
2133
+ "name": "ConnectOptions",
2134
+ "module": "./types"
2135
+ }
2136
+ },
2137
+ {
2138
+ "kind": "js",
2139
+ "name": "DevModeConfig",
2140
+ "declaration": {
2141
+ "name": "DevModeConfig",
2142
+ "module": "./types"
2143
+ }
2144
+ },
2145
+ {
2146
+ "kind": "js",
2147
+ "name": "TicketAuth",
2148
+ "declaration": {
2149
+ "name": "TicketAuth",
2150
+ "module": "./types"
2151
+ }
2152
+ },
2153
+ {
2154
+ "kind": "js",
2155
+ "name": "CharAgentShellElement",
2156
+ "declaration": {
2157
+ "name": "CharAgentShellElement",
2158
+ "module": "packages/char/src/shell-component.ts"
2159
+ }
2160
+ },
2161
+ {
2162
+ "kind": "js",
2163
+ "name": "registerCharShell",
2164
+ "declaration": {
2165
+ "name": "registerCharShell",
2166
+ "module": "packages/char/src/shell-component.ts"
2167
+ }
2168
+ },
2169
+ {
2170
+ "kind": "custom-element-definition",
2171
+ "name": "tagName",
2172
+ "declaration": {
2173
+ "name": "CharAgentShellElement",
2174
+ "module": "packages/char/src/shell-component.ts"
2175
+ }
2176
+ }
2177
+ ]
2178
+ }
2179
+ ]
2180
+ }