@vizejs/fresco 0.716.0 → 0.718.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 (50) hide show
  1. package/dist/{accessibility-OEhyYUxd.d.mts → accessibility-DwzT925M.d.mts} +46 -5
  2. package/dist/accessibility-DwzT925M.d.mts.map +1 -0
  3. package/dist/{app-CIX6NAW-.mjs → app-C_wFlWSV.mjs} +443 -123
  4. package/dist/app-C_wFlWSV.mjs.map +1 -0
  5. package/dist/app-_QmZ-PoH.d.mts +270 -0
  6. package/dist/app-_QmZ-PoH.d.mts.map +1 -0
  7. package/dist/ascii-font/index.d.mts +60 -0
  8. package/dist/ascii-font/index.d.mts.map +1 -0
  9. package/dist/ascii-font/index.mjs +68 -0
  10. package/dist/ascii-font/index.mjs.map +1 -0
  11. package/dist/components/index.d.mts +2 -2
  12. package/dist/components/index.mjs +2 -2
  13. package/dist/components-DzkL-yHj.mjs +6165 -0
  14. package/dist/components-DzkL-yHj.mjs.map +1 -0
  15. package/dist/composables/index.d.mts +3 -3
  16. package/dist/composables/index.mjs +4 -4
  17. package/dist/{composables-DbJGVNSG.mjs → composables-BJeirPSH.mjs} +116 -55
  18. package/dist/composables-BJeirPSH.mjs.map +1 -0
  19. package/dist/{index-CWRginDz.d.mts → index-B3zQ6E-5.d.mts} +1099 -337
  20. package/dist/index-B3zQ6E-5.d.mts.map +1 -0
  21. package/dist/{index-Dikou9bu.d.mts → index-Ddp2Txtm.d.mts} +52 -4
  22. package/dist/index-Ddp2Txtm.d.mts.map +1 -0
  23. package/dist/index.d.mts +98 -7
  24. package/dist/index.d.mts.map +1 -0
  25. package/dist/index.mjs +262 -5
  26. package/dist/index.mjs.map +1 -1
  27. package/dist/{protocol-D8xt3DG7.d.mts → protocol-DavoeNLn.d.mts} +14 -4
  28. package/dist/{protocol-D8xt3DG7.d.mts.map → protocol-DavoeNLn.d.mts.map} +1 -1
  29. package/dist/qr-code/index.d.mts +101 -0
  30. package/dist/qr-code/index.d.mts.map +1 -0
  31. package/dist/qr-code/index.mjs +88 -0
  32. package/dist/qr-code/index.mjs.map +1 -0
  33. package/dist/testing/index.d.mts +3 -3
  34. package/dist/testing/index.mjs +1 -1
  35. package/dist/{useApp-CVB2jNCO.d.mts → useApp-vIRJ5Th3.d.mts} +34 -8
  36. package/dist/useApp-vIRJ5Th3.d.mts.map +1 -0
  37. package/dist/{useVirtualViewport-pPZWmwUC.mjs → useBoxMetrics-lF5Myjc7.mjs} +66 -6
  38. package/dist/useBoxMetrics-lF5Myjc7.mjs.map +1 -0
  39. package/package.json +14 -6
  40. package/dist/accessibility-OEhyYUxd.d.mts.map +0 -1
  41. package/dist/app-CIX6NAW-.mjs.map +0 -1
  42. package/dist/app-CKsTWQuP.d.mts +0 -154
  43. package/dist/app-CKsTWQuP.d.mts.map +0 -1
  44. package/dist/components-D9SeB0Be.mjs +0 -3331
  45. package/dist/components-D9SeB0Be.mjs.map +0 -1
  46. package/dist/composables-DbJGVNSG.mjs.map +0 -1
  47. package/dist/index-CWRginDz.d.mts.map +0 -1
  48. package/dist/index-Dikou9bu.d.mts.map +0 -1
  49. package/dist/useApp-CVB2jNCO.d.mts.map +0 -1
  50. package/dist/useVirtualViewport-pPZWmwUC.mjs.map +0 -1
@@ -1,7 +1,7 @@
1
- import { E as FrescoStyle, l as FrescoCanonicalStyle, o as FrescoAppearance, s as FrescoBorderStyle, u as FrescoDimension } from "./protocol-D8xt3DG7.mjs";
2
- import { n as AriaState, t as AriaRole } from "./accessibility-OEhyYUxd.mjs";
1
+ import { D as FrescoStyle, l as FrescoCanonicalStyle, o as FrescoAppearance, s as FrescoBorderStyle, u as FrescoDimension } from "./protocol-DavoeNLn.mjs";
2
+ import { n as AriaState, t as AriaRole } from "./accessibility-DwzT925M.mjs";
3
3
  import { i as VirtualViewportRange, t as VirtualScrollAlignment } from "./useVirtualViewport-TxTapifg.mjs";
4
- import { PropType, VNode } from "vue";
4
+ import { PropType, Ref, VNode } from "vue";
5
5
 
6
6
  //#region src/components/Box.d.ts
7
7
  type BorderStyleName = FrescoBorderStyle | "round" | "bold";
@@ -214,10 +214,10 @@ declare const Box: import("vue").DefineComponent<import("vue").ExtractPropTypes<
214
214
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
215
215
  //#endregion
216
216
  //#region src/components/FrescoSpacer.vue.d.ts
217
- declare const __VLS_export$14: import("@vue/runtime-core").DefineComponent<{}, {}, {}, {}, {}, import("@vue/runtime-core").ComponentOptionsMixin, import("@vue/runtime-core").ComponentOptionsMixin, {}, string, import("@vue/runtime-core").PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import("@vue/runtime-core").ComponentProvideOptions, true, {}, any>;
218
- declare const _default$14: typeof __VLS_export$14;
217
+ declare const __VLS_export$22: import("@vue/runtime-core").DefineComponent<{}, {}, {}, {}, {}, import("@vue/runtime-core").ComponentOptionsMixin, import("@vue/runtime-core").ComponentOptionsMixin, {}, string, import("@vue/runtime-core").PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import("@vue/runtime-core").ComponentProvideOptions, true, {}, any>;
218
+ declare const _default$22: typeof __VLS_export$22;
219
219
  //#endregion
220
- //#region src/components/Divider.d.ts
220
+ //#region src/components/layout-primitive-types.d.ts
221
221
  interface DividerProps {
222
222
  /** Divider direction */
223
223
  direction?: "horizontal" | "vertical";
@@ -230,38 +230,6 @@ interface DividerProps {
230
230
  /** Title foreground color */
231
231
  titleFg?: string;
232
232
  }
233
- declare const Divider: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
234
- direction: {
235
- type: PropType<"horizontal" | "vertical">;
236
- default: string;
237
- };
238
- char: StringConstructor;
239
- title: StringConstructor;
240
- fg: {
241
- type: StringConstructor;
242
- default: string;
243
- };
244
- titleFg: StringConstructor;
245
- }>, () => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
246
- [key: string]: any;
247
- }>, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
248
- direction: {
249
- type: PropType<"horizontal" | "vertical">;
250
- default: string;
251
- };
252
- char: StringConstructor;
253
- title: StringConstructor;
254
- fg: {
255
- type: StringConstructor;
256
- default: string;
257
- };
258
- titleFg: StringConstructor;
259
- }>> & Readonly<{}>, {
260
- fg: string;
261
- direction: "horizontal" | "vertical";
262
- }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
263
- //#endregion
264
- //#region src/components/Stack.d.ts
265
233
  interface StackProps {
266
234
  /** Stack direction */
267
235
  direction?: "horizontal" | "vertical";
@@ -274,95 +242,59 @@ interface StackProps {
274
242
  /** Wrap children */
275
243
  wrap?: boolean;
276
244
  }
277
- declare const Stack: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
278
- direction: {
279
- type: PropType<"horizontal" | "vertical">;
280
- default: string;
281
- };
282
- gap: {
283
- type: NumberConstructor;
284
- default: number;
285
- };
286
- align: {
287
- type: PropType<StackProps["align"]>;
288
- default: string;
289
- };
290
- justify: {
291
- type: PropType<StackProps["justify"]>;
292
- default: string;
293
- };
294
- wrap: {
295
- type: BooleanConstructor;
296
- default: boolean;
297
- };
298
- }>, () => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
299
- [key: string]: any;
300
- }>, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
301
- direction: {
302
- type: PropType<"horizontal" | "vertical">;
303
- default: string;
304
- };
305
- gap: {
306
- type: NumberConstructor;
307
- default: number;
308
- };
309
- align: {
310
- type: PropType<StackProps["align"]>;
311
- default: string;
312
- };
313
- justify: {
314
- type: PropType<StackProps["justify"]>;
315
- default: string;
245
+ type ConvenienceStackProps = Pick<StackProps, "gap" | "align" | "justify">;
246
+ //#endregion
247
+ //#region src/components/FrescoDivider.vue.d.ts
248
+ declare const __VLS_export$21: import("@vue/runtime-core").DefineComponent<DividerProps, {}, {}, {}, {}, import("@vue/runtime-core").ComponentOptionsMixin, import("@vue/runtime-core").ComponentOptionsMixin, {}, string, import("@vue/runtime-core").PublicProps, Readonly<DividerProps> & Readonly<{}>, {}, {}, {}, {}, string, import("@vue/runtime-core").ComponentProvideOptions, false, {}, any>;
249
+ declare const _default$21: typeof __VLS_export$21;
250
+ //#endregion
251
+ //#region src/components/FrescoStack.vue.d.ts
252
+ declare const __VLS_template$5: () => {
253
+ __VLS_Slots: {
254
+ default?: (props: {}) => any;
316
255
  };
317
- wrap: {
318
- type: BooleanConstructor;
319
- default: boolean;
256
+ };
257
+ type __VLS_Slots$8 = ReturnType<typeof __VLS_template$5>['__VLS_Slots'];
258
+ declare const __VLS_base$8: import("@vue/runtime-core").DefineComponent<StackProps, {}, {}, {}, {}, import("@vue/runtime-core").ComponentOptionsMixin, import("@vue/runtime-core").ComponentOptionsMixin, {}, string, import("@vue/runtime-core").PublicProps, Readonly<StackProps> & Readonly<{}>, {}, {}, {}, {}, string, import("@vue/runtime-core").ComponentProvideOptions, false, {}, any>;
259
+ declare const __VLS_export$20: __VLS_WithSlots$8<typeof __VLS_base$8, __VLS_Slots$8>;
260
+ declare const _default$20: typeof __VLS_export$20;
261
+ type __VLS_WithSlots$8<T, S> = T & {
262
+ new (): {
263
+ $slots: S;
320
264
  };
321
- }>> & Readonly<{}>, {
322
- wrap: boolean;
323
- gap: number;
324
- align: "start" | "end" | "center" | "stretch" | undefined;
325
- justify: "start" | "end" | "center" | "between" | "around" | "evenly" | undefined;
326
- direction: "horizontal" | "vertical";
327
- }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
328
- declare const HStack: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
329
- gap: {
330
- type: NumberConstructor;
331
- default: number;
265
+ }; //# sourceMappingURL=FrescoStack.vue.d.ts.map
266
+ //#endregion
267
+ //#region src/components/FrescoHStack.vue.d.ts
268
+ declare const __VLS_template$4: () => {
269
+ __VLS_Slots: {
270
+ default?: (props: {}) => any;
332
271
  };
333
- align: PropType<StackProps["align"]>;
334
- justify: PropType<StackProps["justify"]>;
335
- }>, () => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
336
- [key: string]: any;
337
- }>, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
338
- gap: {
339
- type: NumberConstructor;
340
- default: number;
272
+ };
273
+ type __VLS_Slots$7 = ReturnType<typeof __VLS_template$4>['__VLS_Slots'];
274
+ declare const __VLS_base$7: import("@vue/runtime-core").DefineComponent<ConvenienceStackProps, {}, {}, {}, {}, import("@vue/runtime-core").ComponentOptionsMixin, import("@vue/runtime-core").ComponentOptionsMixin, {}, string, import("@vue/runtime-core").PublicProps, Readonly<ConvenienceStackProps> & Readonly<{}>, {}, {}, {}, {}, string, import("@vue/runtime-core").ComponentProvideOptions, false, {}, any>;
275
+ declare const __VLS_export$19: __VLS_WithSlots$7<typeof __VLS_base$7, __VLS_Slots$7>;
276
+ declare const _default$19: typeof __VLS_export$19;
277
+ type __VLS_WithSlots$7<T, S> = T & {
278
+ new (): {
279
+ $slots: S;
341
280
  };
342
- align: PropType<StackProps["align"]>;
343
- justify: PropType<StackProps["justify"]>;
344
- }>> & Readonly<{}>, {
345
- gap: number;
346
- }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
347
- declare const VStack: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
348
- gap: {
349
- type: NumberConstructor;
350
- default: number;
281
+ }; //# sourceMappingURL=FrescoHStack.vue.d.ts.map
282
+ //#endregion
283
+ //#region src/components/FrescoVStack.vue.d.ts
284
+ declare const __VLS_template$3: () => {
285
+ __VLS_Slots: {
286
+ default?: (props: {}) => any;
351
287
  };
352
- align: PropType<StackProps["align"]>;
353
- justify: PropType<StackProps["justify"]>;
354
- }>, () => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
355
- [key: string]: any;
356
- }>, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
357
- gap: {
358
- type: NumberConstructor;
359
- default: number;
288
+ };
289
+ type __VLS_Slots$6 = ReturnType<typeof __VLS_template$3>['__VLS_Slots'];
290
+ declare const __VLS_base$6: import("@vue/runtime-core").DefineComponent<ConvenienceStackProps, {}, {}, {}, {}, import("@vue/runtime-core").ComponentOptionsMixin, import("@vue/runtime-core").ComponentOptionsMixin, {}, string, import("@vue/runtime-core").PublicProps, Readonly<ConvenienceStackProps> & Readonly<{}>, {}, {}, {}, {}, string, import("@vue/runtime-core").ComponentProvideOptions, false, {}, any>;
291
+ declare const __VLS_export$18: __VLS_WithSlots$6<typeof __VLS_base$6, __VLS_Slots$6>;
292
+ declare const _default$18: typeof __VLS_export$18;
293
+ type __VLS_WithSlots$6<T, S> = T & {
294
+ new (): {
295
+ $slots: S;
360
296
  };
361
- align: PropType<StackProps["align"]>;
362
- justify: PropType<StackProps["justify"]>;
363
- }>> & Readonly<{}>, {
364
- gap: number;
365
- }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
297
+ }; //# sourceMappingURL=FrescoVStack.vue.d.ts.map
366
298
  //#endregion
367
299
  //#region src/components/Grid.d.ts
368
300
  interface GridProps {
@@ -508,14 +440,14 @@ interface TooltipProps {
508
440
  }
509
441
  //#endregion
510
442
  //#region src/components/FrescoCard.vue.d.ts
511
- type __VLS_Slots$4 = {
443
+ type __VLS_Slots$5 = {
512
444
  default?(): unknown;
513
445
  footer?(): unknown;
514
446
  };
515
- declare const __VLS_base$4: import("@vue/runtime-core").DefineComponent<CardProps, {}, {}, {}, {}, import("@vue/runtime-core").ComponentOptionsMixin, import("@vue/runtime-core").ComponentOptionsMixin, {}, string, import("@vue/runtime-core").PublicProps, Readonly<CardProps> & Readonly<{}>, {}, {}, {}, {}, string, import("@vue/runtime-core").ComponentProvideOptions, false, {}, any>;
516
- declare const __VLS_export$13: __VLS_WithSlots$4<typeof __VLS_base$4, __VLS_Slots$4>;
517
- declare const _default$13: typeof __VLS_export$13;
518
- type __VLS_WithSlots$4<T, S> = T & {
447
+ declare const __VLS_base$5: import("@vue/runtime-core").DefineComponent<CardProps, {}, {}, {}, {}, import("@vue/runtime-core").ComponentOptionsMixin, import("@vue/runtime-core").ComponentOptionsMixin, {}, string, import("@vue/runtime-core").PublicProps, Readonly<CardProps> & Readonly<{}>, {}, {}, {}, {}, string, import("@vue/runtime-core").ComponentProvideOptions, false, {}, any>;
448
+ declare const __VLS_export$17: __VLS_WithSlots$5<typeof __VLS_base$5, __VLS_Slots$5>;
449
+ declare const _default$17: typeof __VLS_export$17;
450
+ type __VLS_WithSlots$5<T, S> = T & {
519
451
  new (): {
520
452
  $slots: S;
521
453
  };
@@ -561,32 +493,38 @@ interface ScrollBarProps {
561
493
  thumb?: string;
562
494
  fg?: string;
563
495
  thumbFg?: string;
496
+ /** Prevent pointer interaction while retaining the visual indicator. */
497
+ disabled?: boolean;
564
498
  }
565
499
  //#endregion
566
500
  //#region src/components/ScrollBox.vue.d.ts
567
- type __VLS_Slots$3 = {
501
+ type __VLS_Slots$4 = {
568
502
  /** Rows retained by the virtual viewport. */default(props: ScrollBoxItemSlot): unknown; /** Content kept mounted before the viewport. */
569
503
  start(): unknown; /** Content kept mounted after the viewport. */
570
504
  end(): unknown;
571
505
  };
572
- declare const __VLS_base$3: import("@vue/runtime-core").DefineComponent<ScrollBoxProps, ScrollBoxExposed, {}, {}, {}, import("@vue/runtime-core").ComponentOptionsMixin, import("@vue/runtime-core").ComponentOptionsMixin, {
506
+ declare const __VLS_base$4: import("@vue/runtime-core").DefineComponent<ScrollBoxProps, ScrollBoxExposed, {}, {}, {}, import("@vue/runtime-core").ComponentOptionsMixin, import("@vue/runtime-core").ComponentOptionsMixin, {
573
507
  scroll: (range: VirtualViewportRange) => any;
574
508
  "update:modelValue": (offset: number) => any;
575
509
  }, string, import("@vue/runtime-core").PublicProps, Readonly<ScrollBoxProps> & Readonly<{
576
510
  onScroll?: ((range: VirtualViewportRange) => any) | undefined;
577
511
  "onUpdate:modelValue"?: ((offset: number) => any) | undefined;
578
512
  }>, {}, {}, {}, {}, string, import("@vue/runtime-core").ComponentProvideOptions, false, {}, any>;
579
- declare const __VLS_export$12: __VLS_WithSlots$3<typeof __VLS_base$3, __VLS_Slots$3>;
580
- declare const _default$12: typeof __VLS_export$12;
581
- type __VLS_WithSlots$3<T, S> = T & {
513
+ declare const __VLS_export$16: __VLS_WithSlots$4<typeof __VLS_base$4, __VLS_Slots$4>;
514
+ declare const _default$16: typeof __VLS_export$16;
515
+ type __VLS_WithSlots$4<T, S> = T & {
582
516
  new (): {
583
517
  $slots: S;
584
518
  };
585
519
  }; //# sourceMappingURL=ScrollBox.vue.d.ts.map
586
520
  //#endregion
587
521
  //#region src/components/ScrollBar.vue.d.ts
588
- declare const __VLS_export$11: import("@vue/runtime-core").DefineComponent<ScrollBarProps, {}, {}, {}, {}, import("@vue/runtime-core").ComponentOptionsMixin, import("@vue/runtime-core").ComponentOptionsMixin, {}, string, import("@vue/runtime-core").PublicProps, Readonly<ScrollBarProps> & Readonly<{}>, {}, {}, {}, {}, string, import("@vue/runtime-core").ComponentProvideOptions, false, {}, any>;
589
- declare const _default$11: typeof __VLS_export$11;
522
+ declare const __VLS_export$15: import("@vue/runtime-core").DefineComponent<ScrollBarProps, {}, {}, {}, {}, import("@vue/runtime-core").ComponentOptionsMixin, import("@vue/runtime-core").ComponentOptionsMixin, {
523
+ "update:offset": (offset: number) => any;
524
+ }, string, import("@vue/runtime-core").PublicProps, Readonly<ScrollBarProps> & Readonly<{
525
+ "onUpdate:offset"?: ((offset: number) => any) | undefined;
526
+ }>, {}, {}, {}, {}, string, import("@vue/runtime-core").ComponentProvideOptions, false, {}, any>;
527
+ declare const _default$15: typeof __VLS_export$15;
590
528
  //#endregion
591
529
  //#region src/components/Text.d.ts
592
530
  type TextWrap = boolean | "wrap" | "hard" | "truncate" | "truncate-start" | "truncate-middle" | "truncate-end" | "end" | "middle";
@@ -645,16 +583,16 @@ declare const Text: import("vue").DefineComponent<import("vue").ExtractPropTypes
645
583
  ariaLabel: StringConstructor;
646
584
  ariaHidden: BooleanConstructor;
647
585
  }>> & Readonly<{}>, {
648
- hidden: boolean;
649
586
  bold: boolean;
587
+ hidden: boolean;
650
588
  ariaHidden: boolean;
651
- blink: boolean;
652
589
  dim: boolean;
653
590
  dimColor: boolean;
654
591
  italic: boolean;
655
592
  underline: boolean;
656
593
  strikethrough: boolean;
657
594
  inverse: boolean;
595
+ blink: boolean;
658
596
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
659
597
  //#endregion
660
598
  //#region src/components/text-utility-types.d.ts
@@ -672,11 +610,11 @@ interface TransformProps {
672
610
  }
673
611
  //#endregion
674
612
  //#region src/components/FrescoNewline.vue.d.ts
675
- declare const __VLS_export$10: import("@vue/runtime-core").DefineComponent<NewlineProps, {}, {}, {}, {}, import("@vue/runtime-core").ComponentOptionsMixin, import("@vue/runtime-core").ComponentOptionsMixin, {}, string, import("@vue/runtime-core").PublicProps, Readonly<NewlineProps> & Readonly<{}>, {}, {}, {}, {}, string, import("@vue/runtime-core").ComponentProvideOptions, false, {}, any>;
676
- declare const _default$10: typeof __VLS_export$10;
613
+ declare const __VLS_export$14: import("@vue/runtime-core").DefineComponent<NewlineProps, {}, {}, {}, {}, import("@vue/runtime-core").ComponentOptionsMixin, import("@vue/runtime-core").ComponentOptionsMixin, {}, string, import("@vue/runtime-core").PublicProps, Readonly<NewlineProps> & Readonly<{}>, {}, {}, {}, {}, string, import("@vue/runtime-core").ComponentProvideOptions, false, {}, any>;
614
+ declare const _default$14: typeof __VLS_export$14;
677
615
  //#endregion
678
616
  //#region src/components/FrescoStatic.vue.d.ts
679
- declare const __VLS_export$9: <T = unknown>(__VLS_props: NonNullable<Awaited<typeof __VLS_setup>>["props"], __VLS_ctx?: __VLS_PrettifyLocal<Pick<NonNullable<Awaited<typeof __VLS_setup>>, "attrs" | "emit" | "slots">>, __VLS_exposed?: NonNullable<Awaited<typeof __VLS_setup>>["expose"], __VLS_setup?: Promise<{
617
+ declare const __VLS_export$13: <T = unknown>(__VLS_props: NonNullable<Awaited<typeof __VLS_setup>>["props"], __VLS_ctx?: __VLS_PrettifyLocal<Pick<NonNullable<Awaited<typeof __VLS_setup>>, "attrs" | "emit" | "slots">>, __VLS_exposed?: NonNullable<Awaited<typeof __VLS_setup>>["expose"], __VLS_setup?: Promise<{
680
618
  props: import("vue").PublicProps & __VLS_PrettifyLocal<{
681
619
  items?: T[];
682
620
  style?: FrescoStyle;
@@ -695,7 +633,7 @@ declare const __VLS_export$9: <T = unknown>(__VLS_props: NonNullable<Awaited<typ
695
633
  }>) => import("vue").VNode & {
696
634
  __ctx?: NonNullable<Awaited<typeof __VLS_setup>>;
697
635
  };
698
- declare const _default$9: typeof __VLS_export$9;
636
+ declare const _default$13: typeof __VLS_export$13;
699
637
  type __VLS_PrettifyLocal<T> = (T extends any ? { [K in keyof T]: T[K] } : { [K in keyof T as K]: T[K] }) & {}; //# sourceMappingURL=FrescoStatic.vue.d.ts.map
700
638
  //#endregion
701
639
  //#region src/components/display-primitive-types.d.ts
@@ -767,44 +705,91 @@ interface SpinnerProps {
767
705
  }
768
706
  //#endregion
769
707
  //#region src/components/FrescoTransform.vue.d.ts
770
- type __VLS_Slots$2 = {
708
+ type __VLS_Slots$3 = {
771
709
  default?: () => unknown;
772
710
  };
773
- declare const __VLS_base$2: import("@vue/runtime-core").DefineComponent<TransformProps, {}, {}, {}, {}, import("@vue/runtime-core").ComponentOptionsMixin, import("@vue/runtime-core").ComponentOptionsMixin, {}, string, import("@vue/runtime-core").PublicProps, Readonly<TransformProps> & Readonly<{}>, {}, {}, {}, {}, string, import("@vue/runtime-core").ComponentProvideOptions, false, {}, any>;
774
- declare const __VLS_export$8: __VLS_WithSlots$2<typeof __VLS_base$2, __VLS_Slots$2>;
775
- declare const _default$8: typeof __VLS_export$8;
776
- type __VLS_WithSlots$2<T, S> = T & {
711
+ declare const __VLS_base$3: import("@vue/runtime-core").DefineComponent<TransformProps, {}, {}, {}, {}, import("@vue/runtime-core").ComponentOptionsMixin, import("@vue/runtime-core").ComponentOptionsMixin, {}, string, import("@vue/runtime-core").PublicProps, Readonly<TransformProps> & Readonly<{}>, {}, {}, {}, {}, string, import("@vue/runtime-core").ComponentProvideOptions, false, {}, any>;
712
+ declare const __VLS_export$12: __VLS_WithSlots$3<typeof __VLS_base$3, __VLS_Slots$3>;
713
+ declare const _default$12: typeof __VLS_export$12;
714
+ type __VLS_WithSlots$3<T, S> = T & {
777
715
  new (): {
778
716
  $slots: S;
779
717
  };
780
718
  }; //# sourceMappingURL=FrescoTransform.vue.d.ts.map
781
719
  //#endregion
782
- //#region src/components/Code.d.ts
720
+ //#region src/components/code-types.d.ts
721
+ /** Zero-based grapheme position in a code buffer. */
722
+ interface CodePosition {
723
+ readonly line: number;
724
+ readonly column: number;
725
+ }
726
+ interface CodeSelection {
727
+ readonly anchor: CodePosition;
728
+ readonly focus: CodePosition;
729
+ }
730
+ type CodeDiagnosticSeverity = "error" | "warning" | "info" | "hint";
731
+ interface CodeDiagnostic {
732
+ /** Zero-based logical line in the buffer. */
733
+ readonly line: number;
734
+ readonly startColumn?: number;
735
+ readonly endColumn?: number;
736
+ readonly severity?: CodeDiagnosticSeverity;
737
+ readonly message: string;
738
+ }
739
+ interface CodeSyntaxToken extends FrescoAppearance {
740
+ readonly text: string;
741
+ }
742
+ interface CodeSyntaxContext {
743
+ readonly language?: string;
744
+ readonly line: number;
745
+ readonly lineNumber: number;
746
+ }
747
+ /** Dependency-free synchronous extension point for optional syntax packages. */
748
+ interface CodeSyntaxProvider {
749
+ tokenize(line: string, context: CodeSyntaxContext): readonly CodeSyntaxToken[];
750
+ }
751
+ /** Reactive append-friendly text source for streamed logs and source. */
752
+ interface CodeBuffer {
753
+ readonly content: Readonly<Ref<string>>;
754
+ append(chunk: string): void;
755
+ replace(content: string): void;
756
+ clear(): void;
757
+ }
783
758
  interface CodeProps {
784
- /** Code content */
785
- code: string;
786
- /** Language (for future syntax highlighting) */
759
+ code?: string;
760
+ buffer?: CodeBuffer;
787
761
  language?: string;
788
- /** Show line numbers */
789
762
  lineNumbers?: boolean;
790
- /** Starting line number */
791
763
  startLine?: number;
792
- /** Highlight specific lines */
793
- highlightLines?: number[];
794
- /** Border style */
764
+ highlightLines?: readonly number[];
795
765
  border?: "single" | "double" | "rounded" | "none";
796
- /** Code foreground color */
797
766
  fg?: string;
798
- /** Line number foreground color */
799
767
  lineNumberFg?: string;
800
- /** Highlight line background */
801
768
  highlightBg?: string;
769
+ selectionBg?: string;
770
+ diagnostics?: readonly CodeDiagnostic[];
771
+ syntaxProvider?: CodeSyntaxProvider;
772
+ selection?: CodeSelection;
773
+ selectable?: boolean;
774
+ focused?: boolean;
775
+ offset?: number;
776
+ viewportSize?: number;
777
+ overscan?: number;
802
778
  }
779
+ //#endregion
780
+ //#region src/components/code-buffer.d.ts
781
+ /** Create a reactive stream buffer with optional bounded line retention. */
782
+ declare function createCodeBuffer(initial?: string, options?: {
783
+ maxLines?: number;
784
+ }): CodeBuffer;
785
+ //#endregion
786
+ //#region src/components/Code.d.ts
803
787
  declare const Code: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
804
788
  code: {
805
789
  type: StringConstructor;
806
- required: true;
790
+ default: string;
807
791
  };
792
+ buffer: PropType<CodeBuffer>;
808
793
  language: StringConstructor;
809
794
  lineNumbers: {
810
795
  type: BooleanConstructor;
@@ -815,7 +800,7 @@ declare const Code: import("vue").DefineComponent<import("vue").ExtractPropTypes
815
800
  default: number;
816
801
  };
817
802
  highlightLines: {
818
- type: PropType<number[]>;
803
+ type: PropType<readonly number[]>;
819
804
  default: () => never[];
820
805
  };
821
806
  border: {
@@ -834,13 +819,41 @@ declare const Code: import("vue").DefineComponent<import("vue").ExtractPropTypes
834
819
  type: StringConstructor;
835
820
  default: string;
836
821
  };
822
+ selectionBg: {
823
+ type: StringConstructor;
824
+ default: string;
825
+ };
826
+ diagnostics: {
827
+ type: PropType<readonly CodeDiagnostic[]>;
828
+ default: () => never[];
829
+ };
830
+ syntaxProvider: PropType<CodeProps["syntaxProvider"]>;
831
+ selection: PropType<CodeSelection>;
832
+ selectable: {
833
+ type: BooleanConstructor;
834
+ default: boolean;
835
+ };
836
+ focused: {
837
+ type: BooleanConstructor;
838
+ default: boolean;
839
+ };
840
+ offset: {
841
+ type: NumberConstructor;
842
+ default: number;
843
+ };
844
+ viewportSize: NumberConstructor;
845
+ overscan: {
846
+ type: NumberConstructor;
847
+ default: number;
848
+ };
837
849
  }>, () => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
838
850
  [key: string]: any;
839
- }>, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
851
+ }>, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("update:offset" | "update:selection" | "select")[], "update:offset" | "update:selection" | "select", import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
840
852
  code: {
841
853
  type: StringConstructor;
842
- required: true;
854
+ default: string;
843
855
  };
856
+ buffer: PropType<CodeBuffer>;
844
857
  language: StringConstructor;
845
858
  lineNumbers: {
846
859
  type: BooleanConstructor;
@@ -851,7 +864,7 @@ declare const Code: import("vue").DefineComponent<import("vue").ExtractPropTypes
851
864
  default: number;
852
865
  };
853
866
  highlightLines: {
854
- type: PropType<number[]>;
867
+ type: PropType<readonly number[]>;
855
868
  default: () => never[];
856
869
  };
857
870
  border: {
@@ -870,28 +883,479 @@ declare const Code: import("vue").DefineComponent<import("vue").ExtractPropTypes
870
883
  type: StringConstructor;
871
884
  default: string;
872
885
  };
873
- }>> & Readonly<{}>, {
874
- border: "none" | "single" | "double" | "rounded" | undefined;
886
+ selectionBg: {
887
+ type: StringConstructor;
888
+ default: string;
889
+ };
890
+ diagnostics: {
891
+ type: PropType<readonly CodeDiagnostic[]>;
892
+ default: () => never[];
893
+ };
894
+ syntaxProvider: PropType<CodeProps["syntaxProvider"]>;
895
+ selection: PropType<CodeSelection>;
896
+ selectable: {
897
+ type: BooleanConstructor;
898
+ default: boolean;
899
+ };
900
+ focused: {
901
+ type: BooleanConstructor;
902
+ default: boolean;
903
+ };
904
+ offset: {
905
+ type: NumberConstructor;
906
+ default: number;
907
+ };
908
+ viewportSize: NumberConstructor;
909
+ overscan: {
910
+ type: NumberConstructor;
911
+ default: number;
912
+ };
913
+ }>> & Readonly<{
914
+ "onUpdate:offset"?: ((...args: any[]) => any) | undefined;
915
+ "onUpdate:selection"?: ((...args: any[]) => any) | undefined;
916
+ onSelect?: ((...args: any[]) => any) | undefined;
917
+ }>, {
875
918
  fg: string;
919
+ focused: boolean;
920
+ border: "none" | "single" | "double" | "rounded" | undefined;
921
+ overscan: number;
922
+ offset: number;
923
+ code: string;
876
924
  lineNumbers: boolean;
877
925
  startLine: number;
878
- highlightLines: number[];
926
+ highlightLines: readonly number[];
879
927
  lineNumberFg: string;
880
928
  highlightBg: string;
929
+ selectionBg: string;
930
+ diagnostics: readonly CodeDiagnostic[];
931
+ selectable: boolean;
932
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
933
+ //#endregion
934
+ //#region src/components/markdown-types.d.ts
935
+ /** Inline text fragment produced by a Markdown renderer. */
936
+ interface MarkdownSpan {
937
+ /** Visible terminal text. */
938
+ text: string;
939
+ /** Optional foreground color. */
940
+ fg?: string;
941
+ /** Render the fragment with strong emphasis. */
942
+ bold?: boolean;
943
+ /** Render the fragment with emphasis. */
944
+ italic?: boolean;
945
+ /** Underline the fragment, normally for links. */
946
+ underline?: boolean;
947
+ /** Dim secondary syntax such as quote and code markers. */
948
+ dim?: boolean;
949
+ }
950
+ /** One terminal row emitted by a Markdown renderer. */
951
+ interface MarkdownRenderLine {
952
+ /** Stable key within one render result. */
953
+ key: string;
954
+ /** Styled fragments in display order. */
955
+ spans: readonly MarkdownSpan[];
956
+ }
957
+ /** A parsed ATX or Setext heading. */
958
+ interface MarkdownHeadingBlock {
959
+ /** Heading discriminator. */
960
+ type: "heading";
961
+ /** One-based source line. */
962
+ line: number;
963
+ /** Heading depth from one through six. */
964
+ level: number;
965
+ /** Heading content without Markdown markers. */
966
+ content: string;
967
+ }
968
+ /** A parsed prose paragraph. */
969
+ interface MarkdownParagraphBlock {
970
+ /** Paragraph discriminator. */
971
+ type: "paragraph";
972
+ /** One-based source line. */
973
+ line: number;
974
+ /** Soft-wrapped paragraph content. */
975
+ content: string;
976
+ }
977
+ /** A parsed block quote. */
978
+ interface MarkdownQuoteBlock {
979
+ /** Quote discriminator. */
980
+ type: "quote";
981
+ /** One-based source line. */
982
+ line: number;
983
+ /** Quote content without leading markers. */
984
+ content: string;
985
+ }
986
+ /** A parsed fenced or indented code block. */
987
+ interface MarkdownCodeBlock {
988
+ /** Code discriminator. */
989
+ type: "code";
990
+ /** One-based source line. */
991
+ line: number;
992
+ /** Optional fenced-code information string. */
993
+ info?: string;
994
+ /** Literal code body. */
995
+ content: string;
996
+ }
997
+ /** One item within an ordered or unordered Markdown list. */
998
+ interface MarkdownListItem {
999
+ /** Visible item content without its marker. */
1000
+ content: string;
1001
+ /** Optional task-list state. */
1002
+ checked?: boolean;
1003
+ }
1004
+ /** A consecutive ordered or unordered list. */
1005
+ interface MarkdownListBlock {
1006
+ /** List discriminator. */
1007
+ type: "list";
1008
+ /** One-based source line. */
1009
+ line: number;
1010
+ /** Whether list markers are numeric. */
1011
+ ordered: boolean;
1012
+ /** First numeric marker for ordered lists. */
1013
+ start?: number;
1014
+ /** Items retained in source order. */
1015
+ items: readonly MarkdownListItem[];
1016
+ }
1017
+ /** A CommonMark thematic break. */
1018
+ interface MarkdownThematicBreakBlock {
1019
+ /** Thematic-break discriminator. */
1020
+ type: "thematic-break";
1021
+ /** One-based source line. */
1022
+ line: number;
1023
+ }
1024
+ /** Lightweight CommonMark block supported by Fresco. */
1025
+ type MarkdownBlock = MarkdownHeadingBlock | MarkdownParagraphBlock | MarkdownQuoteBlock | MarkdownCodeBlock | MarkdownListBlock | MarkdownThematicBreakBlock;
1026
+ /** Theme and extension inputs supplied to Markdown renderers. */
1027
+ interface MarkdownRenderOptions {
1028
+ /** Foreground color used for headings. */
1029
+ headingFg?: string;
1030
+ /** Foreground color used for links. */
1031
+ linkFg?: string;
1032
+ /** Foreground color used for quoted markers. */
1033
+ quoteFg?: string;
1034
+ /** Foreground color used for code. */
1035
+ codeFg?: string;
1036
+ /** Providers consulted before the built-in block renderer. */
1037
+ providers?: readonly MarkdownBlockProvider[];
1038
+ }
1039
+ /** Extension that can replace rendering for selected Markdown blocks. */
1040
+ interface MarkdownBlockProvider {
1041
+ /** Render a block, or return undefined to delegate to the next provider. */
1042
+ render(block: Readonly<MarkdownBlock>, options: Readonly<MarkdownRenderOptions>): readonly MarkdownRenderLine[] | undefined;
1043
+ }
1044
+ /** Complete source-to-terminal Markdown renderer. */
1045
+ interface MarkdownRenderer {
1046
+ /** Convert Markdown source into terminal rows. */
1047
+ render(source: string, options: Readonly<MarkdownRenderOptions>): readonly MarkdownRenderLine[];
1048
+ }
1049
+ /** Public props for the Markdown SFC. */
1050
+ interface MarkdownProps extends MarkdownRenderOptions {
1051
+ /** CommonMark source to render. */
1052
+ source: string;
1053
+ /** Optional complete renderer replacement. */
1054
+ renderer?: MarkdownRenderer;
1055
+ }
1056
+ //#endregion
1057
+ //#region src/components/FrescoMarkdown.vue.d.ts
1058
+ declare const __VLS_export$11: import("@vue/runtime-core").DefineComponent<MarkdownProps, {}, {}, {}, {}, import("@vue/runtime-core").ComponentOptionsMixin, import("@vue/runtime-core").ComponentOptionsMixin, {}, string, import("@vue/runtime-core").PublicProps, Readonly<MarkdownProps> & Readonly<{}>, {}, {}, {}, {}, string, import("@vue/runtime-core").ComponentProvideOptions, false, {}, any>;
1059
+ declare const _default$11: typeof __VLS_export$11;
1060
+ //#endregion
1061
+ //#region src/components/markdown.d.ts
1062
+ /** Parse the block-level subset of CommonMark used by Fresco Markdown. */
1063
+ declare function parseMarkdown(source: string): readonly MarkdownBlock[];
1064
+ /** Built-in source renderer with per-block provider delegation. */
1065
+ declare const defaultMarkdownRenderer: MarkdownRenderer;
1066
+ /** Render Markdown with either the built-in renderer or a complete replacement. */
1067
+ declare function renderMarkdown(source: string, options?: Readonly<MarkdownRenderOptions>, renderer?: MarkdownRenderer): readonly MarkdownRenderLine[];
1068
+ //#endregion
1069
+ //#region src/components/frame-buffer-types.d.ts
1070
+ /** Props for the public raw frame-buffer extension boundary. */
1071
+ interface FrameBufferProps {
1072
+ /** Exact terminal rows painted without wrapping or reinterpretation. */
1073
+ lines: readonly string[];
1074
+ /** Layout applied before the native renderer paints the supplied rows. */
1075
+ style?: FrescoStyle;
1076
+ /** Optional foreground color shared by every supplied row. */
1077
+ fg?: string;
1078
+ /** Optional background color shared by every supplied row. */
1079
+ bg?: string;
1080
+ /** Draw supplied rows with bold terminal cells. @default false */
1081
+ bold?: boolean;
1082
+ /** Draw supplied rows with dim terminal cells. @default false */
1083
+ dim?: boolean;
1084
+ /** Draw supplied rows with italic terminal cells. @default false */
1085
+ italic?: boolean;
1086
+ /** Draw supplied rows with underlined terminal cells. @default false */
1087
+ underline?: boolean;
1088
+ /** Draw supplied rows with inverted terminal colors. @default false */
1089
+ inverse?: boolean;
1090
+ /** Optional border around the computed frame-buffer layout. */
1091
+ border?: FrescoBorderStyle;
1092
+ }
1093
+ //#endregion
1094
+ //#region src/components/FrescoFrameBuffer.vue.d.ts
1095
+ declare const __VLS_export$10: import("@vue/runtime-core").DefineComponent<FrameBufferProps, {}, {}, {}, {}, import("@vue/runtime-core").ComponentOptionsMixin, import("@vue/runtime-core").ComponentOptionsMixin, {}, string, import("@vue/runtime-core").PublicProps, Readonly<FrameBufferProps> & Readonly<{}>, {}, {}, {}, {}, string, import("@vue/runtime-core").ComponentProvideOptions, false, {}, any>;
1096
+ declare const _default$10: typeof __VLS_export$10;
1097
+ //#endregion
1098
+ //#region src/components/Diff.d.ts
1099
+ type DiffView = "unified" | "split";
1100
+ interface DiffProps {
1101
+ oldText: string;
1102
+ newText: string;
1103
+ view?: DiffView;
1104
+ context?: number;
1105
+ showLineNumbers?: boolean;
1106
+ viewportStart?: number;
1107
+ viewportSize?: number;
1108
+ overscan?: number;
1109
+ oldLabel?: string;
1110
+ newLabel?: string;
1111
+ contextFg?: string;
1112
+ addedFg?: string;
1113
+ addedBg?: string;
1114
+ removedFg?: string;
1115
+ removedBg?: string;
1116
+ hunkFg?: string;
1117
+ lineNumberFg?: string;
1118
+ addedHighlightBg?: string;
1119
+ removedHighlightBg?: string;
1120
+ }
1121
+ declare const Diff: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
1122
+ oldText: {
1123
+ type: StringConstructor;
1124
+ required: true;
1125
+ };
1126
+ newText: {
1127
+ type: StringConstructor;
1128
+ required: true;
1129
+ };
1130
+ view: {
1131
+ type: PropType<DiffView>;
1132
+ default: string;
1133
+ };
1134
+ context: {
1135
+ type: NumberConstructor;
1136
+ default: number;
1137
+ };
1138
+ showLineNumbers: {
1139
+ type: BooleanConstructor;
1140
+ default: boolean;
1141
+ };
1142
+ viewportStart: {
1143
+ type: NumberConstructor;
1144
+ default: number;
1145
+ };
1146
+ viewportSize: NumberConstructor;
1147
+ overscan: {
1148
+ type: NumberConstructor;
1149
+ default: number;
1150
+ };
1151
+ oldLabel: StringConstructor;
1152
+ newLabel: StringConstructor;
1153
+ contextFg: {
1154
+ type: StringConstructor;
1155
+ default: string;
1156
+ };
1157
+ addedFg: {
1158
+ type: StringConstructor;
1159
+ default: string;
1160
+ };
1161
+ addedBg: StringConstructor;
1162
+ removedFg: {
1163
+ type: StringConstructor;
1164
+ default: string;
1165
+ };
1166
+ removedBg: StringConstructor;
1167
+ hunkFg: {
1168
+ type: StringConstructor;
1169
+ default: string;
1170
+ };
1171
+ lineNumberFg: {
1172
+ type: StringConstructor;
1173
+ default: string;
1174
+ };
1175
+ addedHighlightBg: {
1176
+ type: StringConstructor;
1177
+ default: string;
1178
+ };
1179
+ removedHighlightBg: {
1180
+ type: StringConstructor;
1181
+ default: string;
1182
+ };
1183
+ }>, () => VNode<import("vue").RendererNode, import("vue").RendererElement, {
1184
+ [key: string]: any;
1185
+ }>, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
1186
+ oldText: {
1187
+ type: StringConstructor;
1188
+ required: true;
1189
+ };
1190
+ newText: {
1191
+ type: StringConstructor;
1192
+ required: true;
1193
+ };
1194
+ view: {
1195
+ type: PropType<DiffView>;
1196
+ default: string;
1197
+ };
1198
+ context: {
1199
+ type: NumberConstructor;
1200
+ default: number;
1201
+ };
1202
+ showLineNumbers: {
1203
+ type: BooleanConstructor;
1204
+ default: boolean;
1205
+ };
1206
+ viewportStart: {
1207
+ type: NumberConstructor;
1208
+ default: number;
1209
+ };
1210
+ viewportSize: NumberConstructor;
1211
+ overscan: {
1212
+ type: NumberConstructor;
1213
+ default: number;
1214
+ };
1215
+ oldLabel: StringConstructor;
1216
+ newLabel: StringConstructor;
1217
+ contextFg: {
1218
+ type: StringConstructor;
1219
+ default: string;
1220
+ };
1221
+ addedFg: {
1222
+ type: StringConstructor;
1223
+ default: string;
1224
+ };
1225
+ addedBg: StringConstructor;
1226
+ removedFg: {
1227
+ type: StringConstructor;
1228
+ default: string;
1229
+ };
1230
+ removedBg: StringConstructor;
1231
+ hunkFg: {
1232
+ type: StringConstructor;
1233
+ default: string;
1234
+ };
1235
+ lineNumberFg: {
1236
+ type: StringConstructor;
1237
+ default: string;
1238
+ };
1239
+ addedHighlightBg: {
1240
+ type: StringConstructor;
1241
+ default: string;
1242
+ };
1243
+ removedHighlightBg: {
1244
+ type: StringConstructor;
1245
+ default: string;
1246
+ };
1247
+ }>> & Readonly<{}>, {
1248
+ overscan: number;
1249
+ lineNumberFg: string;
1250
+ view: DiffView;
1251
+ context: number;
1252
+ showLineNumbers: boolean;
1253
+ viewportStart: number;
1254
+ contextFg: string;
1255
+ addedFg: string;
1256
+ removedFg: string;
1257
+ hunkFg: string;
1258
+ addedHighlightBg: string;
1259
+ removedHighlightBg: string;
1260
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
1261
+ //#endregion
1262
+ //#region src/components/LineNumber.d.ts
1263
+ /**
1264
+ * Standalone line-number gutter for code, diagnostics, and diff views.
1265
+ */
1266
+ interface LineNumberProps {
1267
+ /** Line number displayed in the gutter. */
1268
+ value: number;
1269
+ /** Minimum character width reserved for the number. */
1270
+ width?: number;
1271
+ /** Text placed between the number and its content. */
1272
+ separator?: string;
1273
+ /** Spaces rendered on each side of the separator. */
1274
+ padding?: number;
1275
+ /** Default foreground color. */
1276
+ fg?: string;
1277
+ /** Whether this line is the active line. */
1278
+ active?: boolean;
1279
+ /** Foreground color used for the active line. */
1280
+ activeFg?: string;
1281
+ /** Background color used for the active line. */
1282
+ activeBg?: string;
1283
+ }
1284
+ declare const LineNumber: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
1285
+ value: {
1286
+ type: NumberConstructor;
1287
+ required: true;
1288
+ };
1289
+ width: {
1290
+ type: NumberConstructor;
1291
+ default: number;
1292
+ };
1293
+ separator: {
1294
+ type: StringConstructor;
1295
+ default: string;
1296
+ };
1297
+ padding: {
1298
+ type: NumberConstructor;
1299
+ default: number;
1300
+ };
1301
+ fg: {
1302
+ type: StringConstructor;
1303
+ default: string;
1304
+ };
1305
+ active: BooleanConstructor;
1306
+ activeFg: {
1307
+ type: StringConstructor;
1308
+ default: string;
1309
+ };
1310
+ activeBg: StringConstructor;
1311
+ }>, () => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
1312
+ [key: string]: any;
1313
+ }>, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
1314
+ value: {
1315
+ type: NumberConstructor;
1316
+ required: true;
1317
+ };
1318
+ width: {
1319
+ type: NumberConstructor;
1320
+ default: number;
1321
+ };
1322
+ separator: {
1323
+ type: StringConstructor;
1324
+ default: string;
1325
+ };
1326
+ padding: {
1327
+ type: NumberConstructor;
1328
+ default: number;
1329
+ };
1330
+ fg: {
1331
+ type: StringConstructor;
1332
+ default: string;
1333
+ };
1334
+ active: BooleanConstructor;
1335
+ activeFg: {
1336
+ type: StringConstructor;
1337
+ default: string;
1338
+ };
1339
+ activeBg: StringConstructor;
1340
+ }>> & Readonly<{}>, {
1341
+ fg: string;
1342
+ width: number;
1343
+ padding: number;
1344
+ active: boolean;
1345
+ separator: string;
1346
+ activeFg: string;
881
1347
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
882
1348
  //#endregion
883
1349
  //#region src/components/FrescoLink.vue.d.ts
884
- declare const __VLS_export$7: import("@vue/runtime-core").DefineComponent<LinkProps, {}, {}, {}, {}, import("@vue/runtime-core").ComponentOptionsMixin, import("@vue/runtime-core").ComponentOptionsMixin, {
885
- click: () => any;
886
- }, string, import("@vue/runtime-core").PublicProps, Readonly<LinkProps> & Readonly<{
887
- onClick?: (() => any) | undefined;
888
- }>, {}, {}, {}, {}, string, import("@vue/runtime-core").ComponentProvideOptions, false, {}, any>;
889
- declare const _default$7: typeof __VLS_export$7;
1350
+ declare const __VLS_export$9: import("@vue/runtime-core").DefineComponent<LinkProps, {}, {}, {}, {}, import("@vue/runtime-core").ComponentOptionsMixin, import("@vue/runtime-core").ComponentOptionsMixin, {}, string, import("@vue/runtime-core").PublicProps, Readonly<LinkProps> & Readonly<{}>, {}, {}, {}, {}, string, import("@vue/runtime-core").ComponentProvideOptions, false, {}, any>;
1351
+ declare const _default$9: typeof __VLS_export$9;
890
1352
  //#endregion
891
1353
  //#region src/components/TextInput.d.ts
892
1354
  interface TextInputProps {
893
1355
  /** Input value (v-model) */
894
1356
  modelValue?: string;
1357
+ /** Initial value when the input is uncontrolled. */
1358
+ defaultValue?: string;
895
1359
  /** Placeholder text */
896
1360
  placeholder?: string;
897
1361
  /** Whether input is focused */
@@ -908,12 +1372,22 @@ interface TextInputProps {
908
1372
  fg?: string;
909
1373
  /** Background color */
910
1374
  bg?: string;
1375
+ /** Validate a candidate value; a string is exposed as its error message. */
1376
+ validate?: (value: string) => boolean | string | null | undefined;
911
1377
  /** Called when value changes */
912
1378
  "onUpdate:modelValue"?: (value: string) => void;
913
1379
  /** Called when submitted (Enter) */
914
1380
  onSubmit?: (value: string) => void;
915
1381
  /** Called when escape is pressed */
916
1382
  onCancel?: () => void;
1383
+ /** Called whenever the selected grapheme range changes. */
1384
+ onSelectionChange?: (start: number, end: number) => void;
1385
+ /** Called when the active selection is copied. */
1386
+ onCopy?: (value: string) => void;
1387
+ /** Called when the active selection is cut. */
1388
+ onCut?: (value: string) => void;
1389
+ /** Called when the current validation state changes. */
1390
+ onValidationChange?: (valid: boolean, message?: string) => void;
917
1391
  /** Called when IME composition starts */
918
1392
  onCompositionStart?: () => void;
919
1393
  /** Called when IME composition updates */
@@ -923,6 +1397,10 @@ interface TextInputProps {
923
1397
  }
924
1398
  declare const TextInput: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
925
1399
  modelValue: {
1400
+ type: StringConstructor;
1401
+ default: undefined;
1402
+ };
1403
+ defaultValue: {
926
1404
  type: StringConstructor;
927
1405
  default: string;
928
1406
  };
@@ -949,10 +1427,15 @@ declare const TextInput: import("vue").DefineComponent<import("vue").ExtractProp
949
1427
  width: PropType<FrescoDimension>;
950
1428
  fg: StringConstructor;
951
1429
  bg: StringConstructor;
1430
+ validate: PropType<TextInputProps["validate"]>;
952
1431
  }>, () => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
953
1432
  [key: string]: any;
954
- }>, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("update:modelValue" | "cancel" | "submit" | "compositionstart" | "compositionupdate" | "compositionend")[], "update:modelValue" | "cancel" | "submit" | "compositionstart" | "compositionupdate" | "compositionend", import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
1433
+ }>, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("update:modelValue" | "submit" | "cancel" | "compositionstart" | "compositionupdate" | "compositionend" | "selectionChange" | "copy" | "cut" | "validationChange")[], "update:modelValue" | "submit" | "cancel" | "compositionstart" | "compositionupdate" | "compositionend" | "selectionChange" | "copy" | "cut" | "validationChange", import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
955
1434
  modelValue: {
1435
+ type: StringConstructor;
1436
+ default: undefined;
1437
+ };
1438
+ defaultValue: {
956
1439
  type: StringConstructor;
957
1440
  default: string;
958
1441
  };
@@ -979,51 +1462,67 @@ declare const TextInput: import("vue").DefineComponent<import("vue").ExtractProp
979
1462
  width: PropType<FrescoDimension>;
980
1463
  fg: StringConstructor;
981
1464
  bg: StringConstructor;
1465
+ validate: PropType<TextInputProps["validate"]>;
982
1466
  }>> & Readonly<{
983
1467
  "onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
984
- onCancel?: ((...args: any[]) => any) | undefined;
985
1468
  onSubmit?: ((...args: any[]) => any) | undefined;
1469
+ onCancel?: ((...args: any[]) => any) | undefined;
986
1470
  onCompositionstart?: ((...args: any[]) => any) | undefined;
987
1471
  onCompositionupdate?: ((...args: any[]) => any) | undefined;
988
1472
  onCompositionend?: ((...args: any[]) => any) | undefined;
1473
+ onSelectionChange?: ((...args: any[]) => any) | undefined;
1474
+ onCopy?: ((...args: any[]) => any) | undefined;
1475
+ onCut?: ((...args: any[]) => any) | undefined;
1476
+ onValidationChange?: ((...args: any[]) => any) | undefined;
989
1477
  }>, {
990
- modelValue: string;
991
1478
  focused: boolean;
992
- placeholder: string;
1479
+ modelValue: string;
993
1480
  focus: boolean;
1481
+ defaultValue: string;
1482
+ placeholder: string;
994
1483
  mask: boolean;
995
1484
  maskChar: string;
996
1485
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
997
1486
  //#endregion
998
1487
  //#region src/components/TextArea.d.ts
999
1488
  interface TextAreaProps {
1000
- /** Text value */
1489
+ /** Controlled text value. */
1001
1490
  modelValue?: string;
1002
- /** Placeholder text */
1491
+ /** Initial value used when modelValue is omitted. */
1492
+ defaultValue?: string;
1493
+ /** Placeholder text. */
1003
1494
  placeholder?: string;
1004
- /** Number of visible rows */
1495
+ /** Number of retained visible rows. */
1005
1496
  rows?: number;
1006
- /** Whether the textarea is focused */
1497
+ /** Whether the textarea owns keyboard input. */
1007
1498
  focused?: boolean;
1008
- /** Whether the textarea is disabled */
1499
+ /** Prevent editing and render dimmed text. */
1009
1500
  disabled?: boolean;
1010
- /** Show line numbers */
1501
+ /** Show one-based line numbers. */
1011
1502
  lineNumbers?: boolean;
1012
- /** Border style */
1503
+ /** Border style. */
1013
1504
  border?: "single" | "double" | "rounded" | "none";
1014
- /** Foreground color */
1505
+ /** Foreground color. */
1015
1506
  fg?: string;
1016
- /** Placeholder foreground color */
1507
+ /** Placeholder foreground color. */
1017
1508
  placeholderFg?: string;
1018
- /** Line number foreground color */
1509
+ /** Line number foreground color. */
1019
1510
  lineNumberFg?: string;
1020
- /** Cursor line */
1511
+ /** Controlled cursor line, zero based. */
1021
1512
  cursorLine?: number;
1022
- /** Cursor column */
1513
+ /** Controlled cursor column, in graphemes. */
1023
1514
  cursorColumn?: number;
1515
+ /** Glyph rendered at the focused cursor. */
1516
+ cursor?: string;
1517
+ /** Validate the current value; a string becomes the error message. */
1518
+ validate?: (value: string) => boolean | string | null | undefined;
1024
1519
  }
1025
1520
  declare const TextArea: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
1026
1521
  modelValue: {
1522
+ type: StringConstructor;
1523
+ default: undefined;
1524
+ };
1525
+ defaultValue: {
1027
1526
  type: StringConstructor;
1028
1527
  default: string;
1029
1528
  };
@@ -1057,18 +1556,21 @@ declare const TextArea: import("vue").DefineComponent<import("vue").ExtractPropT
1057
1556
  type: StringConstructor;
1058
1557
  default: string;
1059
1558
  };
1060
- cursorLine: {
1061
- type: NumberConstructor;
1062
- default: number;
1063
- };
1064
- cursorColumn: {
1065
- type: NumberConstructor;
1066
- default: number;
1559
+ cursorLine: NumberConstructor;
1560
+ cursorColumn: NumberConstructor;
1561
+ cursor: {
1562
+ type: StringConstructor;
1563
+ default: string;
1067
1564
  };
1565
+ validate: PropType<TextAreaProps["validate"]>;
1068
1566
  }>, () => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
1069
1567
  [key: string]: any;
1070
- }>, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, "update:modelValue"[], "update:modelValue", import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
1568
+ }>, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("update:modelValue" | "submit" | "cancel" | "compositionstart" | "compositionupdate" | "compositionend" | "selectionChange" | "copy" | "cut" | "validationChange" | "update:cursorLine" | "update:cursorColumn")[], "update:modelValue" | "submit" | "cancel" | "compositionstart" | "compositionupdate" | "compositionend" | "selectionChange" | "copy" | "cut" | "validationChange" | "update:cursorLine" | "update:cursorColumn", import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
1071
1569
  modelValue: {
1570
+ type: StringConstructor;
1571
+ default: undefined;
1572
+ };
1573
+ defaultValue: {
1072
1574
  type: StringConstructor;
1073
1575
  default: string;
1074
1576
  };
@@ -1102,27 +1604,37 @@ declare const TextArea: import("vue").DefineComponent<import("vue").ExtractPropT
1102
1604
  type: StringConstructor;
1103
1605
  default: string;
1104
1606
  };
1105
- cursorLine: {
1106
- type: NumberConstructor;
1107
- default: number;
1108
- };
1109
- cursorColumn: {
1110
- type: NumberConstructor;
1111
- default: number;
1607
+ cursorLine: NumberConstructor;
1608
+ cursorColumn: NumberConstructor;
1609
+ cursor: {
1610
+ type: StringConstructor;
1611
+ default: string;
1112
1612
  };
1613
+ validate: PropType<TextAreaProps["validate"]>;
1113
1614
  }>> & Readonly<{
1114
1615
  "onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
1616
+ onSubmit?: ((...args: any[]) => any) | undefined;
1617
+ onCancel?: ((...args: any[]) => any) | undefined;
1618
+ onCompositionstart?: ((...args: any[]) => any) | undefined;
1619
+ onCompositionupdate?: ((...args: any[]) => any) | undefined;
1620
+ onCompositionend?: ((...args: any[]) => any) | undefined;
1621
+ onSelectionChange?: ((...args: any[]) => any) | undefined;
1622
+ onCopy?: ((...args: any[]) => any) | undefined;
1623
+ onCut?: ((...args: any[]) => any) | undefined;
1624
+ onValidationChange?: ((...args: any[]) => any) | undefined;
1625
+ "onUpdate:cursorLine"?: ((...args: any[]) => any) | undefined;
1626
+ "onUpdate:cursorColumn"?: ((...args: any[]) => any) | undefined;
1115
1627
  }>, {
1628
+ focused: boolean;
1629
+ cursor: string;
1116
1630
  border: "none" | "single" | "double" | "rounded" | undefined;
1117
1631
  modelValue: string;
1118
- focused: boolean;
1119
1632
  disabled: boolean;
1120
1633
  lineNumbers: boolean;
1121
1634
  lineNumberFg: string;
1635
+ defaultValue: string;
1122
1636
  rows: number;
1123
1637
  placeholderFg: string;
1124
- cursorLine: number;
1125
- cursorColumn: number;
1126
1638
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
1127
1639
  //#endregion
1128
1640
  //#region src/components/Select.d.ts
@@ -1218,10 +1730,10 @@ declare const Select: import("vue").DefineComponent<import("vue").ExtractPropTyp
1218
1730
  onSelect?: ((...args: any[]) => any) | undefined;
1219
1731
  }>, {
1220
1732
  focused: boolean;
1221
- selectedFg: string;
1222
1733
  placeholder: string;
1223
1734
  indicator: string;
1224
1735
  indicatorEmpty: string;
1736
+ selectedFg: string;
1225
1737
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
1226
1738
  //#endregion
1227
1739
  //#region src/components/Checkbox.d.ts
@@ -1306,8 +1818,8 @@ declare const Checkbox: import("vue").DefineComponent<import("vue").ExtractPropT
1306
1818
  "onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
1307
1819
  onChange?: ((...args: any[]) => any) | undefined;
1308
1820
  }>, {
1309
- modelValue: boolean;
1310
1821
  focused: boolean;
1822
+ modelValue: boolean;
1311
1823
  disabled: boolean;
1312
1824
  checked: string;
1313
1825
  unchecked: string;
@@ -1329,6 +1841,8 @@ interface RadioGroupProps {
1329
1841
  direction?: "horizontal" | "vertical";
1330
1842
  /** Focused option index */
1331
1843
  focusedIndex?: number;
1844
+ /** Whether the radio group owns keyboard input */
1845
+ focused?: boolean;
1332
1846
  /** Selected indicator */
1333
1847
  selected?: string;
1334
1848
  /** Unselected indicator */
@@ -1349,6 +1863,10 @@ declare const RadioGroup: import("vue").DefineComponent<import("vue").ExtractPro
1349
1863
  default: string;
1350
1864
  };
1351
1865
  focusedIndex: NumberConstructor;
1866
+ focused: {
1867
+ type: BooleanConstructor;
1868
+ default: boolean;
1869
+ };
1352
1870
  selected: {
1353
1871
  type: StringConstructor;
1354
1872
  default: string;
@@ -1364,7 +1882,7 @@ declare const RadioGroup: import("vue").DefineComponent<import("vue").ExtractPro
1364
1882
  };
1365
1883
  }>, () => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
1366
1884
  [key: string]: any;
1367
- }>, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("update:modelValue" | "change")[], "update:modelValue" | "change", import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
1885
+ }>, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("update:modelValue" | "change" | "update:focusedIndex")[], "update:modelValue" | "change" | "update:focusedIndex", import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
1368
1886
  options: {
1369
1887
  type: PropType<RadioOption[]>;
1370
1888
  required: true;
@@ -1375,6 +1893,10 @@ declare const RadioGroup: import("vue").DefineComponent<import("vue").ExtractPro
1375
1893
  default: string;
1376
1894
  };
1377
1895
  focusedIndex: NumberConstructor;
1896
+ focused: {
1897
+ type: BooleanConstructor;
1898
+ default: boolean;
1899
+ };
1378
1900
  selected: {
1379
1901
  type: StringConstructor;
1380
1902
  default: string;
@@ -1391,11 +1913,13 @@ declare const RadioGroup: import("vue").DefineComponent<import("vue").ExtractPro
1391
1913
  }>> & Readonly<{
1392
1914
  "onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
1393
1915
  onChange?: ((...args: any[]) => any) | undefined;
1916
+ "onUpdate:focusedIndex"?: ((...args: any[]) => any) | undefined;
1394
1917
  }>, {
1918
+ focused: boolean;
1395
1919
  direction: "horizontal" | "vertical";
1920
+ selectedFg: string;
1396
1921
  selected: string;
1397
1922
  unselected: string;
1398
- selectedFg: string;
1399
1923
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
1400
1924
  //#endregion
1401
1925
  //#region src/components/Confirm.d.ts
@@ -1411,6 +1935,8 @@ interface ConfirmProps {
1411
1935
  cancelText?: string;
1412
1936
  /** Whether confirm is initially selected */
1413
1937
  defaultConfirm?: boolean;
1938
+ /** Whether the confirmation owns keyboard input */
1939
+ focused?: boolean;
1414
1940
  /** Confirm button foreground color */
1415
1941
  confirmFg?: string;
1416
1942
  /** Cancel button foreground color */
@@ -1435,6 +1961,10 @@ declare const Confirm: import("vue").DefineComponent<import("vue").ExtractPropTy
1435
1961
  type: BooleanConstructor;
1436
1962
  default: boolean;
1437
1963
  };
1964
+ focused: {
1965
+ type: BooleanConstructor;
1966
+ default: boolean;
1967
+ };
1438
1968
  confirmFg: {
1439
1969
  type: StringConstructor;
1440
1970
  default: string;
@@ -1449,7 +1979,7 @@ declare const Confirm: import("vue").DefineComponent<import("vue").ExtractPropTy
1449
1979
  };
1450
1980
  }>, () => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
1451
1981
  [key: string]: any;
1452
- }>, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("confirm" | "cancel" | "select")[], "confirm" | "cancel" | "select", import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
1982
+ }>, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("select" | "cancel" | "confirm")[], "select" | "cancel" | "confirm", import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
1453
1983
  message: {
1454
1984
  type: StringConstructor;
1455
1985
  required: true;
@@ -1466,6 +1996,10 @@ declare const Confirm: import("vue").DefineComponent<import("vue").ExtractPropTy
1466
1996
  type: BooleanConstructor;
1467
1997
  default: boolean;
1468
1998
  };
1999
+ focused: {
2000
+ type: BooleanConstructor;
2001
+ default: boolean;
2002
+ };
1469
2003
  confirmFg: {
1470
2004
  type: StringConstructor;
1471
2005
  default: string;
@@ -1479,10 +2013,11 @@ declare const Confirm: import("vue").DefineComponent<import("vue").ExtractPropTy
1479
2013
  default: string;
1480
2014
  };
1481
2015
  }>> & Readonly<{
1482
- onConfirm?: ((...args: any[]) => any) | undefined;
1483
- onCancel?: ((...args: any[]) => any) | undefined;
1484
2016
  onSelect?: ((...args: any[]) => any) | undefined;
2017
+ onCancel?: ((...args: any[]) => any) | undefined;
2018
+ onConfirm?: ((...args: any[]) => any) | undefined;
1485
2019
  }>, {
2020
+ focused: boolean;
1486
2021
  selectedFg: string;
1487
2022
  confirmText: string;
1488
2023
  cancelText: string;
@@ -1491,13 +2026,84 @@ declare const Confirm: import("vue").DefineComponent<import("vue").ExtractPropTy
1491
2026
  cancelFg: string;
1492
2027
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
1493
2028
  //#endregion
2029
+ //#region src/components/slider-types.d.ts
2030
+ /** Slider layout axis. */
2031
+ type SliderOrientation = "horizontal" | "vertical";
2032
+ /** Public props for the controlled Fresco Slider. */
2033
+ interface SliderProps {
2034
+ /** Current controlled value. */
2035
+ modelValue?: number;
2036
+ /** Inclusive lower bound. */
2037
+ min?: number;
2038
+ /** Inclusive upper bound. */
2039
+ max?: number;
2040
+ /** Arrow-key and wheel increment. */
2041
+ step?: number;
2042
+ /** PageUp/PageDown increment. Defaults to ten steps. */
2043
+ pageStep?: number;
2044
+ /** Number of terminal cells in the track. */
2045
+ length?: number;
2046
+ /** Track direction. */
2047
+ orientation?: SliderOrientation;
2048
+ /** Whether the slider owns keyboard and mouse input. */
2049
+ focused?: boolean;
2050
+ /** Prevent value changes and render a dimmed track. */
2051
+ disabled?: boolean;
2052
+ /** Glyph before the thumb. */
2053
+ filled?: string;
2054
+ /** Glyph after the thumb. */
2055
+ empty?: string;
2056
+ /** Thumb glyph. */
2057
+ thumb?: string;
2058
+ /** Unfilled track color. */
2059
+ fg?: string;
2060
+ /** Filled track color. */
2061
+ filledFg?: string;
2062
+ /** Thumb color. */
2063
+ thumbFg?: string;
2064
+ /** Accessible label for the slider. */
2065
+ label?: string;
2066
+ /** Format the current value in the accessible label. */
2067
+ formatValue?: (value: number) => string;
2068
+ }
2069
+ /** Finite, ordered numeric bounds used internally by Slider. */
2070
+ interface SliderRange {
2071
+ readonly min: number;
2072
+ readonly max: number;
2073
+ readonly step: number;
2074
+ }
2075
+ //#endregion
2076
+ //#region src/components/FrescoSlider.vue.d.ts
2077
+ declare const __VLS_export$8: import("@vue/runtime-core").DefineComponent<SliderProps, {}, {}, {}, {}, import("@vue/runtime-core").ComponentOptionsMixin, import("@vue/runtime-core").ComponentOptionsMixin, {
2078
+ "update:modelValue": (value: number) => any;
2079
+ change: (value: number) => any;
2080
+ }, string, import("@vue/runtime-core").PublicProps, Readonly<SliderProps> & Readonly<{
2081
+ "onUpdate:modelValue"?: ((value: number) => any) | undefined;
2082
+ onChange?: ((value: number) => any) | undefined;
2083
+ }>, {}, {}, {}, {}, string, import("@vue/runtime-core").ComponentProvideOptions, false, {}, any>;
2084
+ declare const _default$8: typeof __VLS_export$8;
2085
+ //#endregion
1494
2086
  //#region src/components/Form.d.ts
2087
+ /** Values submitted and validated by Form, keyed by field key. */
2088
+ type FormValues = Readonly<Record<string, unknown>>;
2089
+ /** Validation messages keyed by field key. */
2090
+ type FormErrors = Readonly<Record<string, string>>;
2091
+ /** Metadata and validation contract for one named Form slot. */
1495
2092
  interface FormField {
1496
2093
  key: string;
1497
2094
  label: string;
1498
2095
  required?: boolean;
2096
+ disabled?: boolean;
1499
2097
  hint?: string;
2098
+ validate?: (value: unknown, values: FormValues) => boolean | string | null | undefined;
1500
2099
  }
2100
+ /** Props passed to each named field slot. */
2101
+ interface FormSlotProps {
2102
+ readonly field: FormField;
2103
+ readonly focused: boolean;
2104
+ readonly error?: string;
2105
+ }
2106
+ /** Public props for the focus- and validation-aware Form container. */
1501
2107
  interface FormProps {
1502
2108
  /** Form fields metadata */
1503
2109
  fields?: FormField[];
@@ -1513,6 +2119,14 @@ interface FormProps {
1513
2119
  requiredIndicator?: string;
1514
2120
  /** Hint foreground color */
1515
2121
  hintFg?: string;
2122
+ /** Validation error foreground color */
2123
+ errorFg?: string;
2124
+ /** Current field values keyed by field key */
2125
+ modelValue?: FormValues;
2126
+ /** Field key that owns focus */
2127
+ focusedKey?: string;
2128
+ /** Whether the form owns keyboard focus navigation and submission */
2129
+ focused?: boolean;
1516
2130
  }
1517
2131
  declare const Form: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
1518
2132
  fields: {
@@ -1540,9 +2154,22 @@ declare const Form: import("vue").DefineComponent<import("vue").ExtractPropTypes
1540
2154
  type: StringConstructor;
1541
2155
  default: string;
1542
2156
  };
2157
+ errorFg: {
2158
+ type: StringConstructor;
2159
+ default: string;
2160
+ };
2161
+ modelValue: {
2162
+ type: PropType<FormValues>;
2163
+ default: () => {};
2164
+ };
2165
+ focusedKey: StringConstructor;
2166
+ focused: {
2167
+ type: BooleanConstructor;
2168
+ default: boolean;
2169
+ };
1543
2170
  }>, () => VNode<import("vue").RendererNode, import("vue").RendererElement, {
1544
2171
  [key: string]: any;
1545
- }>, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
2172
+ }>, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("submit" | "invalid" | "update:focusedKey")[], "submit" | "invalid" | "update:focusedKey", import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
1546
2173
  fields: {
1547
2174
  type: PropType<FormField[]>;
1548
2175
  default: () => never[];
@@ -1568,18 +2195,38 @@ declare const Form: import("vue").DefineComponent<import("vue").ExtractPropTypes
1568
2195
  type: StringConstructor;
1569
2196
  default: string;
1570
2197
  };
1571
- }>> & Readonly<{}>, {
2198
+ errorFg: {
2199
+ type: StringConstructor;
2200
+ default: string;
2201
+ };
2202
+ modelValue: {
2203
+ type: PropType<FormValues>;
2204
+ default: () => {};
2205
+ };
2206
+ focusedKey: StringConstructor;
2207
+ focused: {
2208
+ type: BooleanConstructor;
2209
+ default: boolean;
2210
+ };
2211
+ }>> & Readonly<{
2212
+ onSubmit?: ((...args: any[]) => any) | undefined;
2213
+ onInvalid?: ((...args: any[]) => any) | undefined;
2214
+ "onUpdate:focusedKey"?: ((...args: any[]) => any) | undefined;
2215
+ }>, {
2216
+ focused: boolean;
1572
2217
  gap: number;
2218
+ modelValue: Readonly<Record<string, unknown>>;
1573
2219
  fields: FormField[];
1574
2220
  labelWidth: number;
1575
2221
  labelPosition: "top" | "left";
1576
2222
  requiredIndicator: string;
1577
2223
  hintFg: string;
2224
+ errorFg: string;
1578
2225
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
1579
2226
  //#endregion
1580
2227
  //#region src/components/FrescoSpinner.vue.d.ts
1581
- declare const __VLS_export$6: import("@vue/runtime-core").DefineComponent<SpinnerProps, {}, {}, {}, {}, import("@vue/runtime-core").ComponentOptionsMixin, import("@vue/runtime-core").ComponentOptionsMixin, {}, string, import("@vue/runtime-core").PublicProps, Readonly<SpinnerProps> & Readonly<{}>, {}, {}, {}, {}, string, import("@vue/runtime-core").ComponentProvideOptions, false, {}, any>;
1582
- declare const _default$6: typeof __VLS_export$6;
2228
+ declare const __VLS_export$7: import("@vue/runtime-core").DefineComponent<SpinnerProps, {}, {}, {}, {}, import("@vue/runtime-core").ComponentOptionsMixin, import("@vue/runtime-core").ComponentOptionsMixin, {}, string, import("@vue/runtime-core").PublicProps, Readonly<SpinnerProps> & Readonly<{}>, {}, {}, {}, {}, string, import("@vue/runtime-core").ComponentProvideOptions, false, {}, any>;
2229
+ declare const _default$7: typeof __VLS_export$7;
1583
2230
  //#endregion
1584
2231
  //#region src/components/ProgressBar.d.ts
1585
2232
  interface ProgressBarProps {
@@ -1703,12 +2350,12 @@ declare const ProgressBar: import("vue").DefineComponent<import("vue").ExtractPr
1703
2350
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
1704
2351
  //#endregion
1705
2352
  //#region src/components/FrescoAlert.vue.d.ts
1706
- declare const __VLS_export$5: import("@vue/runtime-core").DefineComponent<AlertProps, {}, {}, {}, {}, import("@vue/runtime-core").ComponentOptionsMixin, import("@vue/runtime-core").ComponentOptionsMixin, {}, string, import("@vue/runtime-core").PublicProps, Readonly<AlertProps> & Readonly<{}>, {}, {}, {}, {}, string, import("@vue/runtime-core").ComponentProvideOptions, false, {}, any>;
1707
- declare const _default$5: typeof __VLS_export$5;
2353
+ declare const __VLS_export$6: import("@vue/runtime-core").DefineComponent<AlertProps, {}, {}, {}, {}, import("@vue/runtime-core").ComponentOptionsMixin, import("@vue/runtime-core").ComponentOptionsMixin, {}, string, import("@vue/runtime-core").PublicProps, Readonly<AlertProps> & Readonly<{}>, {}, {}, {}, {}, string, import("@vue/runtime-core").ComponentProvideOptions, false, {}, any>;
2354
+ declare const _default$6: typeof __VLS_export$6;
1708
2355
  //#endregion
1709
2356
  //#region src/components/FrescoBadge.vue.d.ts
1710
- declare const __VLS_export$4: import("@vue/runtime-core").DefineComponent<BadgeProps, {}, {}, {}, {}, import("@vue/runtime-core").ComponentOptionsMixin, import("@vue/runtime-core").ComponentOptionsMixin, {}, string, import("@vue/runtime-core").PublicProps, Readonly<BadgeProps> & Readonly<{}>, {}, {}, {}, {}, string, import("@vue/runtime-core").ComponentProvideOptions, false, {}, any>;
1711
- declare const _default$4: typeof __VLS_export$4;
2357
+ declare const __VLS_export$5: import("@vue/runtime-core").DefineComponent<BadgeProps, {}, {}, {}, {}, import("@vue/runtime-core").ComponentOptionsMixin, import("@vue/runtime-core").ComponentOptionsMixin, {}, string, import("@vue/runtime-core").PublicProps, Readonly<BadgeProps> & Readonly<{}>, {}, {}, {}, {}, string, import("@vue/runtime-core").ComponentProvideOptions, false, {}, any>;
2358
+ declare const _default$5: typeof __VLS_export$5;
1712
2359
  //#endregion
1713
2360
  //#region src/components/Timer.d.ts
1714
2361
  type TimerMode = "countdown" | "stopwatch";
@@ -1813,18 +2460,20 @@ declare const Timer: import("vue").DefineComponent<import("vue").ExtractPropType
1813
2460
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
1814
2461
  //#endregion
1815
2462
  //#region src/components/FrescoTooltip.vue.d.ts
1816
- declare var __VLS_1$1: {}, __VLS_3$1: {}, __VLS_5: {};
1817
- type __VLS_Slots$1 = {} & {
1818
- default?: (props: typeof __VLS_1$1) => any;
1819
- } & {
1820
- default?: (props: typeof __VLS_3$1) => any;
1821
- } & {
1822
- default?: (props: typeof __VLS_5) => any;
2463
+ declare const __VLS_template$2: () => {
2464
+ __VLS_Slots: {
2465
+ default?: (props: {}) => any;
2466
+ } & {
2467
+ default?: (props: {}) => any;
2468
+ } & {
2469
+ default?: (props: {}) => any;
2470
+ };
1823
2471
  };
1824
- declare const __VLS_base$1: import("@vue/runtime-core").DefineComponent<TooltipProps, {}, {}, {}, {}, import("@vue/runtime-core").ComponentOptionsMixin, import("@vue/runtime-core").ComponentOptionsMixin, {}, string, import("@vue/runtime-core").PublicProps, Readonly<TooltipProps> & Readonly<{}>, {}, {}, {}, {}, string, import("@vue/runtime-core").ComponentProvideOptions, false, {}, any>;
1825
- declare const __VLS_export$3: __VLS_WithSlots$1<typeof __VLS_base$1, __VLS_Slots$1>;
1826
- declare const _default$3: typeof __VLS_export$3;
1827
- type __VLS_WithSlots$1<T, S> = T & {
2472
+ type __VLS_Slots$2 = ReturnType<typeof __VLS_template$2>['__VLS_Slots'];
2473
+ declare const __VLS_base$2: import("@vue/runtime-core").DefineComponent<TooltipProps, {}, {}, {}, {}, import("@vue/runtime-core").ComponentOptionsMixin, import("@vue/runtime-core").ComponentOptionsMixin, {}, string, import("@vue/runtime-core").PublicProps, Readonly<TooltipProps> & Readonly<{}>, {}, {}, {}, {}, string, import("@vue/runtime-core").ComponentProvideOptions, false, {}, any>;
2474
+ declare const __VLS_export$4: __VLS_WithSlots$2<typeof __VLS_base$2, __VLS_Slots$2>;
2475
+ declare const _default$4: typeof __VLS_export$4;
2476
+ type __VLS_WithSlots$2<T, S> = T & {
1828
2477
  new (): {
1829
2478
  $slots: S;
1830
2479
  };
@@ -1913,49 +2562,89 @@ declare const List: import("vue").DefineComponent<import("vue").ExtractPropTypes
1913
2562
  onSelect?: ((...args: any[]) => any) | undefined;
1914
2563
  }>, {
1915
2564
  focused: boolean;
1916
- selectedFg: string;
1917
2565
  indicator: string;
1918
2566
  indicatorEmpty: string;
2567
+ selectedFg: string;
1919
2568
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
1920
2569
  //#endregion
1921
- //#region src/components/Table.d.ts
1922
- interface TableColumn {
1923
- /** Column key (maps to data property) */
1924
- key: string;
1925
- /** Column header text */
2570
+ //#region src/components/table-types.d.ts
2571
+ /** One table row addressable by string column keys. */
2572
+ type TableRow = Readonly<Record<string, unknown>>;
2573
+ type TableAlignment = "left" | "center" | "right";
2574
+ type TableSortDirection = "ascending" | "descending";
2575
+ /** Typed table column definition. */
2576
+ interface TableColumn<Row extends TableRow = TableRow> {
2577
+ /** Row key read by this column. */
2578
+ key: Extract<keyof Row, string> | string;
2579
+ /** Column header text. */
1926
2580
  header: string;
1927
- /** Column width */
2581
+ /** Preferred terminal-cell width. */
1928
2582
  width?: number | string;
1929
- /** Text alignment */
1930
- align?: "left" | "center" | "right";
1931
- }
1932
- interface TableProps {
1933
- /** Column definitions */
1934
- columns: TableColumn[];
1935
- /** Table data */
1936
- data: Record<string, unknown>[];
1937
- /** Show header row */
2583
+ /** Smallest width accepted by keyboard resizing. */
2584
+ minWidth?: number;
2585
+ /** Largest width accepted by keyboard resizing. */
2586
+ maxWidth?: number;
2587
+ /** Cell alignment within a numeric width. */
2588
+ align?: TableAlignment;
2589
+ /** Allow header activation to own sorting. */
2590
+ sortable?: boolean;
2591
+ /** Optional value formatter. */
2592
+ format?: (value: unknown, row: Row, rowIndex: number) => string;
2593
+ /** Optional comparison hook used when this column owns sorting. */
2594
+ compare?: (left: Row, right: Row) => number;
2595
+ }
2596
+ interface TableViewportRange {
2597
+ readonly visibleStart: number;
2598
+ readonly visibleEnd: number;
2599
+ readonly retainedStart: number;
2600
+ readonly retainedEnd: number;
2601
+ }
2602
+ /** Public table behavior, viewport, and appearance contract. */
2603
+ interface TableProps<Row extends TableRow = TableRow> {
2604
+ columns: readonly TableColumn<Row>[];
2605
+ data: readonly Row[];
1938
2606
  showHeader?: boolean;
1939
- /** Border style */
1940
2607
  border?: "none" | "single" | "double" | "rounded";
1941
- /** Header foreground color */
1942
2608
  headerFg?: string;
1943
- /** Header background color */
1944
2609
  headerBg?: string;
1945
- /** Row foreground color */
1946
2610
  rowFg?: string;
1947
- /** Alternate row background color */
1948
2611
  stripedBg?: string;
1949
- /** Cell padding */
1950
2612
  cellPadding?: number;
2613
+ /** Controlled sort column key. */
2614
+ sortKey?: string;
2615
+ /** Controlled sort direction. */
2616
+ sortDirection?: TableSortDirection;
2617
+ /** Controlled first visible sorted row. */
2618
+ offset?: number;
2619
+ /** Visible row count; omit to render every row. */
2620
+ viewportSize?: number;
2621
+ /** Rows retained outside each viewport edge. */
2622
+ overscan?: number;
2623
+ /** Whether the header owns keyboard navigation, sort, resize, and scrolling. */
2624
+ focused?: boolean;
2625
+ /** Controlled focused column index. */
2626
+ focusedColumn?: number;
2627
+ /** Controlled width overrides keyed by column key. */
2628
+ columnWidths?: Readonly<Record<string, number>>;
2629
+ /** Keyboard resize delta in terminal cells. */
2630
+ resizeStep?: number;
1951
2631
  }
2632
+ interface TableCellSlotProps<Row extends TableRow = TableRow> {
2633
+ readonly row: Row;
2634
+ readonly rowIndex: number;
2635
+ readonly column: TableColumn<Row>;
2636
+ readonly value: unknown;
2637
+ readonly content: string;
2638
+ }
2639
+ //#endregion
2640
+ //#region src/components/Table.d.ts
1952
2641
  declare const Table: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
1953
2642
  columns: {
1954
- type: PropType<TableColumn[]>;
2643
+ type: PropType<readonly TableColumn[]>;
1955
2644
  required: true;
1956
2645
  };
1957
2646
  data: {
1958
- type: PropType<Record<string, unknown>[]>;
2647
+ type: PropType<readonly TableRow[]>;
1959
2648
  required: true;
1960
2649
  };
1961
2650
  showHeader: {
@@ -1977,15 +2666,39 @@ declare const Table: import("vue").DefineComponent<import("vue").ExtractPropType
1977
2666
  type: NumberConstructor;
1978
2667
  default: number;
1979
2668
  };
1980
- }>, () => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
2669
+ sortKey: StringConstructor;
2670
+ sortDirection: {
2671
+ type: PropType<TableSortDirection>;
2672
+ default: string;
2673
+ };
2674
+ offset: {
2675
+ type: NumberConstructor;
2676
+ default: number;
2677
+ };
2678
+ viewportSize: NumberConstructor;
2679
+ overscan: {
2680
+ type: NumberConstructor;
2681
+ default: number;
2682
+ };
2683
+ focused: {
2684
+ type: BooleanConstructor;
2685
+ default: boolean;
2686
+ };
2687
+ focusedColumn: NumberConstructor;
2688
+ columnWidths: PropType<Readonly<Record<string, number>>>;
2689
+ resizeStep: {
2690
+ type: NumberConstructor;
2691
+ default: number;
2692
+ };
2693
+ }>, () => VNode<import("vue").RendererNode, import("vue").RendererElement, {
1981
2694
  [key: string]: any;
1982
- }>, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
2695
+ }>, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("update:offset" | "update:sortKey" | "update:sortDirection" | "update:focusedColumn" | "update:columnWidths" | "sortChange" | "resize")[], "update:offset" | "update:sortKey" | "update:sortDirection" | "update:focusedColumn" | "update:columnWidths" | "sortChange" | "resize", import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
1983
2696
  columns: {
1984
- type: PropType<TableColumn[]>;
2697
+ type: PropType<readonly TableColumn[]>;
1985
2698
  required: true;
1986
2699
  };
1987
2700
  data: {
1988
- type: PropType<Record<string, unknown>[]>;
2701
+ type: PropType<readonly TableRow[]>;
1989
2702
  required: true;
1990
2703
  };
1991
2704
  showHeader: {
@@ -2007,11 +2720,48 @@ declare const Table: import("vue").DefineComponent<import("vue").ExtractPropType
2007
2720
  type: NumberConstructor;
2008
2721
  default: number;
2009
2722
  };
2010
- }>> & Readonly<{}>, {
2723
+ sortKey: StringConstructor;
2724
+ sortDirection: {
2725
+ type: PropType<TableSortDirection>;
2726
+ default: string;
2727
+ };
2728
+ offset: {
2729
+ type: NumberConstructor;
2730
+ default: number;
2731
+ };
2732
+ viewportSize: NumberConstructor;
2733
+ overscan: {
2734
+ type: NumberConstructor;
2735
+ default: number;
2736
+ };
2737
+ focused: {
2738
+ type: BooleanConstructor;
2739
+ default: boolean;
2740
+ };
2741
+ focusedColumn: NumberConstructor;
2742
+ columnWidths: PropType<Readonly<Record<string, number>>>;
2743
+ resizeStep: {
2744
+ type: NumberConstructor;
2745
+ default: number;
2746
+ };
2747
+ }>> & Readonly<{
2748
+ "onUpdate:offset"?: ((...args: any[]) => any) | undefined;
2749
+ "onUpdate:sortKey"?: ((...args: any[]) => any) | undefined;
2750
+ "onUpdate:sortDirection"?: ((...args: any[]) => any) | undefined;
2751
+ "onUpdate:focusedColumn"?: ((...args: any[]) => any) | undefined;
2752
+ "onUpdate:columnWidths"?: ((...args: any[]) => any) | undefined;
2753
+ onSortChange?: ((...args: any[]) => any) | undefined;
2754
+ onResize?: ((...args: any[]) => any) | undefined;
2755
+ }>, {
2756
+ focused: boolean;
2011
2757
  border: "none" | "single" | "double" | "rounded" | undefined;
2758
+ overscan: number;
2759
+ offset: number;
2012
2760
  showHeader: boolean;
2013
2761
  headerFg: string;
2014
2762
  cellPadding: number;
2763
+ sortDirection: TableSortDirection;
2764
+ resizeStep: number;
2015
2765
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
2016
2766
  //#endregion
2017
2767
  //#region src/components/Tree.d.ts
@@ -2029,6 +2779,8 @@ interface TreeProps {
2029
2779
  expanded?: string[];
2030
2780
  /** Selected node key */
2031
2781
  selected?: string;
2782
+ /** Whether the tree owns keyboard input */
2783
+ focused?: boolean;
2032
2784
  /** Show lines */
2033
2785
  showLines?: boolean;
2034
2786
  /** Indent size */
@@ -2054,6 +2806,10 @@ declare const Tree: import("vue").DefineComponent<import("vue").ExtractPropTypes
2054
2806
  default: () => never[];
2055
2807
  };
2056
2808
  selected: StringConstructor;
2809
+ focused: {
2810
+ type: BooleanConstructor;
2811
+ default: boolean;
2812
+ };
2057
2813
  showLines: {
2058
2814
  type: BooleanConstructor;
2059
2815
  default: boolean;
@@ -2079,9 +2835,9 @@ declare const Tree: import("vue").DefineComponent<import("vue").ExtractPropTypes
2079
2835
  type: StringConstructor;
2080
2836
  default: string;
2081
2837
  };
2082
- }>, () => VNode<import("vue").RendererNode, import("vue").RendererElement, {
2838
+ }>, () => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
2083
2839
  [key: string]: any;
2084
- }>, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("select" | "toggle")[], "select" | "toggle", import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
2840
+ }>, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("select" | "toggle" | "update:selected" | "update:expanded")[], "select" | "toggle" | "update:selected" | "update:expanded", import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
2085
2841
  data: {
2086
2842
  type: PropType<TreeNode[]>;
2087
2843
  required: true;
@@ -2091,6 +2847,10 @@ declare const Tree: import("vue").DefineComponent<import("vue").ExtractPropTypes
2091
2847
  default: () => never[];
2092
2848
  };
2093
2849
  selected: StringConstructor;
2850
+ focused: {
2851
+ type: BooleanConstructor;
2852
+ default: boolean;
2853
+ };
2094
2854
  showLines: {
2095
2855
  type: BooleanConstructor;
2096
2856
  default: boolean;
@@ -2119,7 +2879,10 @@ declare const Tree: import("vue").DefineComponent<import("vue").ExtractPropTypes
2119
2879
  }>> & Readonly<{
2120
2880
  onSelect?: ((...args: any[]) => any) | undefined;
2121
2881
  onToggle?: ((...args: any[]) => any) | undefined;
2882
+ "onUpdate:selected"?: ((...args: any[]) => any) | undefined;
2883
+ "onUpdate:expanded"?: ((...args: any[]) => any) | undefined;
2122
2884
  }>, {
2885
+ focused: boolean;
2123
2886
  selectedFg: string;
2124
2887
  expanded: string[];
2125
2888
  showLines: boolean;
@@ -2143,6 +2906,8 @@ interface MenuProps {
2143
2906
  items: MenuItem[];
2144
2907
  /** Focused item index */
2145
2908
  focusedIndex?: number;
2909
+ /** Whether the menu owns keyboard input */
2910
+ focused?: boolean;
2146
2911
  /** Show border */
2147
2912
  border?: "single" | "double" | "rounded" | "none";
2148
2913
  /** Width */
@@ -2165,6 +2930,10 @@ declare const Menu: import("vue").DefineComponent<import("vue").ExtractPropTypes
2165
2930
  type: NumberConstructor;
2166
2931
  default: number;
2167
2932
  };
2933
+ focused: {
2934
+ type: BooleanConstructor;
2935
+ default: boolean;
2936
+ };
2168
2937
  border: {
2169
2938
  type: PropType<MenuProps["border"]>;
2170
2939
  default: string;
@@ -2185,7 +2954,7 @@ declare const Menu: import("vue").DefineComponent<import("vue").ExtractPropTypes
2185
2954
  };
2186
2955
  }>, () => VNode<import("vue").RendererNode, import("vue").RendererElement, {
2187
2956
  [key: string]: any;
2188
- }>, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, "select"[], "select", import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
2957
+ }>, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("select" | "update:focusedIndex")[], "select" | "update:focusedIndex", import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
2189
2958
  items: {
2190
2959
  type: PropType<MenuItem[]>;
2191
2960
  required: true;
@@ -2194,6 +2963,10 @@ declare const Menu: import("vue").DefineComponent<import("vue").ExtractPropTypes
2194
2963
  type: NumberConstructor;
2195
2964
  default: number;
2196
2965
  };
2966
+ focused: {
2967
+ type: BooleanConstructor;
2968
+ default: boolean;
2969
+ };
2197
2970
  border: {
2198
2971
  type: PropType<MenuProps["border"]>;
2199
2972
  default: string;
@@ -2214,7 +2987,9 @@ declare const Menu: import("vue").DefineComponent<import("vue").ExtractPropTypes
2214
2987
  };
2215
2988
  }>> & Readonly<{
2216
2989
  onSelect?: ((...args: any[]) => any) | undefined;
2990
+ "onUpdate:focusedIndex"?: ((...args: any[]) => any) | undefined;
2217
2991
  }>, {
2992
+ focused: boolean;
2218
2993
  border: "none" | "single" | "double" | "rounded" | undefined;
2219
2994
  focusedIndex: number;
2220
2995
  focusedFg: string;
@@ -2233,6 +3008,8 @@ interface TabsProps {
2233
3008
  tabs: Tab[];
2234
3009
  /** Currently active tab key */
2235
3010
  modelValue?: string;
3011
+ /** Whether the tab list owns keyboard input */
3012
+ focused?: boolean;
2236
3013
  /** Tab bar position */
2237
3014
  position?: "top" | "bottom";
2238
3015
  /** Separator between tabs */
@@ -2252,6 +3029,10 @@ declare const Tabs: import("vue").DefineComponent<import("vue").ExtractPropTypes
2252
3029
  required: true;
2253
3030
  };
2254
3031
  modelValue: StringConstructor;
3032
+ focused: {
3033
+ type: BooleanConstructor;
3034
+ default: boolean;
3035
+ };
2255
3036
  position: {
2256
3037
  type: PropType<"top" | "bottom">;
2257
3038
  default: string;
@@ -2278,6 +3059,10 @@ declare const Tabs: import("vue").DefineComponent<import("vue").ExtractPropTypes
2278
3059
  required: true;
2279
3060
  };
2280
3061
  modelValue: StringConstructor;
3062
+ focused: {
3063
+ type: BooleanConstructor;
3064
+ default: boolean;
3065
+ };
2281
3066
  position: {
2282
3067
  type: PropType<"top" | "bottom">;
2283
3068
  default: string;
@@ -2300,6 +3085,7 @@ declare const Tabs: import("vue").DefineComponent<import("vue").ExtractPropTypes
2300
3085
  "onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
2301
3086
  onChange?: ((...args: any[]) => any) | undefined;
2302
3087
  }>, {
3088
+ focused: boolean;
2303
3089
  position: "top" | "bottom";
2304
3090
  underline: boolean;
2305
3091
  separator: string;
@@ -2307,12 +3093,12 @@ declare const Tabs: import("vue").DefineComponent<import("vue").ExtractPropTypes
2307
3093
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
2308
3094
  //#endregion
2309
3095
  //#region src/components/FrescoBreadcrumb.vue.d.ts
2310
- declare const __VLS_export$2: import("@vue/runtime-core").DefineComponent<BreadcrumbProps, {}, {}, {}, {}, import("@vue/runtime-core").ComponentOptionsMixin, import("@vue/runtime-core").ComponentOptionsMixin, {
3096
+ declare const __VLS_export$3: import("@vue/runtime-core").DefineComponent<BreadcrumbProps, {}, {}, {}, {}, import("@vue/runtime-core").ComponentOptionsMixin, import("@vue/runtime-core").ComponentOptionsMixin, {
2311
3097
  select: (key: string) => any;
2312
3098
  }, string, import("@vue/runtime-core").PublicProps, Readonly<BreadcrumbProps> & Readonly<{
2313
3099
  onSelect?: ((key: string) => any) | undefined;
2314
3100
  }>, {}, {}, {}, {}, string, import("@vue/runtime-core").ComponentProvideOptions, false, {}, any>;
2315
- declare const _default$2: typeof __VLS_export$2;
3101
+ declare const _default$3: typeof __VLS_export$3;
2316
3102
  //#endregion
2317
3103
  //#region src/components/Stepper.d.ts
2318
3104
  interface Step {
@@ -2439,84 +3225,58 @@ declare const Stepper: import("vue").DefineComponent<import("vue").ExtractPropTy
2439
3225
  pendingIcon: string;
2440
3226
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
2441
3227
  //#endregion
2442
- //#region src/components/Modal.d.ts
3228
+ //#region src/components/modal-types.d.ts
3229
+ /** Public behavior and appearance contract for the Fresco Modal. */
2443
3230
  interface ModalProps {
2444
- /** Whether the modal is visible */
3231
+ /** Whether the modal is visible and owns its focus scope. */
2445
3232
  visible?: boolean;
2446
- /** Modal title */
3233
+ /** Modal title and default accessible label. */
2447
3234
  title?: string;
2448
- /** Modal width */
3235
+ /** Modal width. */
2449
3236
  width?: number | string;
2450
- /** Modal height */
3237
+ /** Modal height. */
2451
3238
  height?: number | string;
2452
- /** Border style */
3239
+ /** Border style. */
2453
3240
  border?: "single" | "double" | "rounded" | "heavy";
2454
- /** Title foreground color */
3241
+ /** Title foreground color. */
2455
3242
  titleFg?: string;
2456
- /** Border foreground color */
3243
+ /** Border foreground color. */
2457
3244
  borderFg?: string;
2458
- /** Background color */
3245
+ /** Background color. */
2459
3246
  bg?: string;
3247
+ /** Stable focus boundary ID. */
3248
+ focusId?: string;
3249
+ /** Descendant focus ID selected when the modal opens. */
3250
+ initialFocusId?: string;
3251
+ /** Constrain sequential and programmatic focus to modal descendants. */
3252
+ trapFocus?: boolean;
3253
+ /** Restore the target focused before the modal opened. */
3254
+ restoreFocus?: boolean;
3255
+ /** Emit close when Escape is pressed. */
3256
+ closeOnEscape?: boolean;
3257
+ /** Accessible label when no visible title is suitable. */
3258
+ accessibilityLabel?: string;
2460
3259
  }
2461
- declare const Modal: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
2462
- visible: {
2463
- type: BooleanConstructor;
2464
- default: boolean;
2465
- };
2466
- title: StringConstructor;
2467
- width: {
2468
- type: PropType<number | string>;
2469
- default: string;
2470
- };
2471
- height: {
2472
- type: PropType<number | string>;
2473
- default: string;
2474
- };
2475
- border: {
2476
- type: PropType<ModalProps["border"]>;
2477
- default: string;
2478
- };
2479
- titleFg: {
2480
- type: StringConstructor;
2481
- default: string;
2482
- };
2483
- borderFg: StringConstructor;
2484
- bg: StringConstructor;
2485
- }>, () => VNode<import("vue").RendererNode, import("vue").RendererElement, {
2486
- [key: string]: any;
2487
- }> | null, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, "close"[], "close", import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
2488
- visible: {
2489
- type: BooleanConstructor;
2490
- default: boolean;
2491
- };
2492
- title: StringConstructor;
2493
- width: {
2494
- type: PropType<number | string>;
2495
- default: string;
2496
- };
2497
- height: {
2498
- type: PropType<number | string>;
2499
- default: string;
2500
- };
2501
- border: {
2502
- type: PropType<ModalProps["border"]>;
2503
- default: string;
3260
+ //#endregion
3261
+ //#region src/components/FrescoModal.vue.d.ts
3262
+ declare const __VLS_template$1: () => {
3263
+ __VLS_Slots: {
3264
+ default?: (props: {}) => any;
2504
3265
  };
2505
- titleFg: {
2506
- type: StringConstructor;
2507
- default: string;
3266
+ };
3267
+ type __VLS_Slots$1 = ReturnType<typeof __VLS_template$1>['__VLS_Slots'];
3268
+ declare const __VLS_base$1: import("@vue/runtime-core").DefineComponent<ModalProps, {}, {}, {}, {}, import("@vue/runtime-core").ComponentOptionsMixin, import("@vue/runtime-core").ComponentOptionsMixin, {
3269
+ close: () => any;
3270
+ }, string, import("@vue/runtime-core").PublicProps, Readonly<ModalProps> & Readonly<{
3271
+ onClose?: (() => any) | undefined;
3272
+ }>, {}, {}, {}, {}, string, import("@vue/runtime-core").ComponentProvideOptions, false, {}, any>;
3273
+ declare const __VLS_export$2: __VLS_WithSlots$1<typeof __VLS_base$1, __VLS_Slots$1>;
3274
+ declare const _default$2: typeof __VLS_export$2;
3275
+ type __VLS_WithSlots$1<T, S> = T & {
3276
+ new (): {
3277
+ $slots: S;
2508
3278
  };
2509
- borderFg: StringConstructor;
2510
- bg: StringConstructor;
2511
- }>> & Readonly<{
2512
- onClose?: ((...args: any[]) => any) | undefined;
2513
- }>, {
2514
- width: string | number;
2515
- height: string | number;
2516
- visible: boolean;
2517
- border: "single" | "double" | "rounded" | "heavy" | undefined;
2518
- titleFg: string;
2519
- }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
3279
+ }; //# sourceMappingURL=FrescoModal.vue.d.ts.map
2520
3280
  //#endregion
2521
3281
  //#region src/components/StatusBar.d.ts
2522
3282
  interface StatusBarItem {
@@ -2580,12 +3340,14 @@ declare const StatusBar: import("vue").DefineComponent<import("vue").ExtractProp
2580
3340
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
2581
3341
  //#endregion
2582
3342
  //#region src/components/FrescoHeader.vue.d.ts
2583
- declare var __VLS_1: {}, __VLS_3: {};
2584
- type __VLS_Slots = {} & {
2585
- left?: (props: typeof __VLS_1) => any;
2586
- } & {
2587
- right?: (props: typeof __VLS_3) => any;
3343
+ declare const __VLS_template: () => {
3344
+ __VLS_Slots: {
3345
+ left?: (props: {}) => any;
3346
+ } & {
3347
+ right?: (props: {}) => any;
3348
+ };
2588
3349
  };
3350
+ type __VLS_Slots = ReturnType<typeof __VLS_template>['__VLS_Slots'];
2589
3351
  declare const __VLS_base: import("@vue/runtime-core").DefineComponent<HeaderProps, {}, {}, {}, {}, import("@vue/runtime-core").ComponentOptionsMixin, import("@vue/runtime-core").ComponentOptionsMixin, {}, string, import("@vue/runtime-core").PublicProps, Readonly<HeaderProps> & Readonly<{}>, {}, {}, {}, {}, string, import("@vue/runtime-core").ComponentProvideOptions, false, {}, any>;
2590
3352
  declare const __VLS_export$1: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
2591
3353
  declare const _default$1: typeof __VLS_export$1;
@@ -2678,5 +3440,5 @@ declare const KeyHint: import("vue").DefineComponent<import("vue").ExtractPropTy
2678
3440
  declare const __VLS_export: import("@vue/runtime-core").DefineComponent<AvatarProps, {}, {}, {}, {}, import("@vue/runtime-core").ComponentOptionsMixin, import("@vue/runtime-core").ComponentOptionsMixin, {}, string, import("@vue/runtime-core").PublicProps, Readonly<AvatarProps> & Readonly<{}>, {}, {}, {}, {}, string, import("@vue/runtime-core").ComponentProvideOptions, false, {}, any>;
2679
3441
  declare const _default: typeof __VLS_export;
2680
3442
  //#endregion
2681
- export { TextArea as $, ListProps as A, BreadcrumbProps as At, Form as B, VStack as Bt, TreeNode as C, ScrollBoxItemSlot as Ct, TableProps as D, AlertType as Dt, TableColumn as E, AlertProps as Et, _default$4 as F, Grid as Ft, RadioGroup as G, BoxProps as Gt, FormProps as H, DividerProps as Ht, _default$5 as I, GridProps as It, Checkbox as J, RadioGroupProps as K, ProgressBar as L, HStack as Lt, Timer as M, HeaderProps as Mt, TimerMode as N, TooltipPosition as Nt, List as O, AvatarProps as Ot, TimerProps as P, TooltipProps as Pt, SelectProps as Q, ProgressBarProps as R, Stack as Rt, Tree as S, ScrollBoxExposed as St, Table as T, _default$13 as Tt, Confirm as U, _default$14 as Ut, FormField as V, Divider as Vt, ConfirmProps as W, Box as Wt, Select as X, CheckboxProps as Y, SelectOption as Z, Tabs as _, TextProps as _t, _default$1 as a, CodeProps as at, MenuItem as b, ScrollBarOrientation as bt, StatusBarProps as c, BadgeVariant as ct, Step as d, StaticProps as dt, TextAreaProps as et, StepStatus as f, _default$9 as ft, Tab as g, Text as gt, _default$2 as h, TransformProps as ht, KeyHintProps as i, Code as it, _default$3 as j, CardProps as jt, ListItem as k, BreadcrumbItem as kt, Modal as l, LinkProps as lt, StepperProps as m, NewlineProps as mt, KeyBinding as n, TextInputProps as nt, StatusBar as o, _default$8 as ot, Stepper as p, _default$10 as pt, RadioOption as q, KeyHint as r, _default$7 as rt, StatusBarItem as s, BadgeProps as st, _default as t, TextInput as tt, ModalProps as u, SpinnerProps as ut, TabsProps as v, _default$11 as vt, TreeProps as w, ScrollBoxProps as wt, MenuProps as x, ScrollBarProps as xt, Menu as y, _default$12 as yt, _default$6 as z, StackProps as zt };
2682
- //# sourceMappingURL=index-CWRginDz.d.mts.map
3443
+ export { SliderProps as $, BadgeProps as $t, TableRow as A, _default$19 as An, MarkdownHeadingBlock as At, _default$5 as B, MarkdownThematicBreakBlock as Bt, TreeNode as C, CardProps as Cn, defaultMarkdownRenderer as Ct, TableCellSlotProps as D, Grid as Dn, MarkdownBlock as Dt, TableAlignment as E, TooltipProps as En, _default$11 as Et, ListProps as F, _default$22 as Fn, MarkdownQuoteBlock as Ft, Form as G, CodeDiagnosticSeverity as Gt, ProgressBar as H, createCodeBuffer as Ht, _default$4 as I, Box as In, MarkdownRenderLine as It, FormProps as J, CodeSelection as Jt, FormErrors as K, CodePosition as Kt, Timer as L, BoxProps as Ln, MarkdownRenderOptions as Lt, TableViewportRange as M, _default$21 as Mn, MarkdownListItem as Mt, List as N, DividerProps as Nn, MarkdownParagraphBlock as Nt, TableColumn as O, GridProps as On, MarkdownBlockProvider as Ot, ListItem as P, StackProps as Pn, MarkdownProps as Pt, SliderOrientation as Q, _default$12 as Qt, TimerMode as R, MarkdownRenderer as Rt, Tree as S, BreadcrumbProps as Sn, FrameBufferProps as St, Table as T, TooltipPosition as Tn, renderMarkdown as Tt, ProgressBarProps as U, CodeBuffer as Ut, _default$6 as V, Code as Vt, _default$7 as W, CodeDiagnostic as Wt, FormValues as X, CodeSyntaxProvider as Xt, FormSlotProps as Y, CodeSyntaxContext as Yt, _default$8 as Z, CodeSyntaxToken as Zt, Tabs as _, _default$17 as _n, LineNumberProps as _t, _default$1 as a, _default$14 as an, RadioOption as at, MenuItem as b, AvatarProps as bn, DiffView as bt, StatusBarProps as c, Text as cn, Select as ct, Step as d, _default$16 as dn, TextArea as dt, BadgeVariant as en, SliderRange as et, StepStatus as f, ScrollBarOrientation as fn, TextAreaProps as ft, Tab as g, ScrollBoxProps as gn, LineNumber as gt, _default$3 as h, ScrollBoxItemSlot as hn, _default$9 as ht, KeyHintProps as i, _default$13 as in, RadioGroupProps as it, TableSortDirection as j, _default$20 as jn, MarkdownListBlock as jt, TableProps as k, _default$18 as kn, MarkdownCodeBlock as kt, _default$2 as l, TextProps as ln, SelectOption as lt, StepperProps as m, ScrollBoxExposed as mn, TextInputProps as mt, KeyBinding as n, SpinnerProps as nn, ConfirmProps as nt, StatusBar as o, NewlineProps as on, Checkbox as ot, Stepper as p, ScrollBarProps as pn, TextInput as pt, FormField as q, CodeProps as qt, KeyHint as r, StaticProps as rn, RadioGroup as rt, StatusBarItem as s, TransformProps as sn, CheckboxProps as st, _default as t, LinkProps as tn, Confirm as tt, ModalProps as u, _default$15 as un, SelectProps as ut, TabsProps as v, AlertProps as vn, Diff as vt, TreeProps as w, HeaderProps as wn, parseMarkdown as wt, MenuProps as x, BreadcrumbItem as xn, _default$10 as xt, Menu as y, AlertType as yn, DiffProps as yt, TimerProps as z, MarkdownSpan as zt };
3444
+ //# sourceMappingURL=index-B3zQ6E-5.d.mts.map