@14ch/svelte-ui 0.0.12 → 0.0.13

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 (86) hide show
  1. package/dist/assets/styles/variables.scss +0 -6
  2. package/dist/components/Button.svelte +75 -73
  3. package/dist/components/Button.svelte.d.ts +2 -2
  4. package/dist/components/Checkbox.svelte +78 -77
  5. package/dist/components/Checkbox.svelte.d.ts +4 -4
  6. package/dist/components/CheckboxGroup.svelte +42 -26
  7. package/dist/components/CheckboxGroup.svelte.d.ts +2 -2
  8. package/dist/components/ColorPicker.svelte +63 -61
  9. package/dist/components/ColorPicker.svelte.d.ts +2 -2
  10. package/dist/components/Combobox.svelte +71 -76
  11. package/dist/components/Combobox.svelte.d.ts +2 -2
  12. package/dist/components/ConfirmDialog.svelte +24 -22
  13. package/dist/components/ConfirmDialog.svelte.d.ts +2 -2
  14. package/dist/components/Datepicker.svelte +121 -81
  15. package/dist/components/Datepicker.svelte.d.ts +6 -4
  16. package/dist/components/DatepickerCalendar.svelte +23 -18
  17. package/dist/components/DatepickerCalendar.svelte.d.ts +2 -2
  18. package/dist/components/Dialog.svelte +30 -28
  19. package/dist/components/Dialog.svelte.d.ts +2 -2
  20. package/dist/components/Drawer.svelte +31 -29
  21. package/dist/components/Drawer.svelte.d.ts +2 -2
  22. package/dist/components/Fab.svelte +56 -54
  23. package/dist/components/Fab.svelte.d.ts +2 -2
  24. package/dist/components/FileUploader.svelte +51 -49
  25. package/dist/components/FileUploader.svelte.d.ts +2 -2
  26. package/dist/components/Icon.svelte +29 -27
  27. package/dist/components/Icon.svelte.d.ts +2 -2
  28. package/dist/components/IconButton.svelte +81 -79
  29. package/dist/components/IconButton.svelte.d.ts +2 -2
  30. package/dist/components/ImageUploader.svelte +53 -51
  31. package/dist/components/ImageUploader.svelte.d.ts +2 -2
  32. package/dist/components/ImageUploaderPreview.svelte +33 -20
  33. package/dist/components/ImageUploaderPreview.svelte.d.ts +2 -2
  34. package/dist/components/Input.svelte +97 -93
  35. package/dist/components/Input.svelte.d.ts +2 -2
  36. package/dist/components/LoadingSpinner.svelte +14 -13
  37. package/dist/components/LoadingSpinner.svelte.d.ts +2 -2
  38. package/dist/components/Modal.svelte +26 -24
  39. package/dist/components/Modal.svelte.d.ts +2 -2
  40. package/dist/components/Pagination.svelte +20 -28
  41. package/dist/components/Pagination.svelte.d.ts +2 -2
  42. package/dist/components/Popup.svelte +46 -46
  43. package/dist/components/Popup.svelte.d.ts +3 -3
  44. package/dist/components/PopupMenu.svelte +90 -90
  45. package/dist/components/PopupMenu.svelte.d.ts +2 -2
  46. package/dist/components/PopupMenuButton.svelte +61 -61
  47. package/dist/components/PopupMenuButton.svelte.d.ts +2 -2
  48. package/dist/components/Radio.svelte +64 -63
  49. package/dist/components/Radio.svelte.d.ts +2 -2
  50. package/dist/components/RadioGroup.svelte +38 -26
  51. package/dist/components/RadioGroup.svelte.d.ts +2 -2
  52. package/dist/components/SegmentedControl.svelte +71 -69
  53. package/dist/components/SegmentedControl.svelte.d.ts +4 -4
  54. package/dist/components/Select.svelte +65 -65
  55. package/dist/components/Select.svelte.d.ts +2 -2
  56. package/dist/components/Slider.svelte +65 -64
  57. package/dist/components/Slider.svelte.d.ts +5 -5
  58. package/dist/components/Snackbar.svelte +10 -9
  59. package/dist/components/Snackbar.svelte.d.ts +2 -2
  60. package/dist/components/SnackbarItem.svelte +28 -28
  61. package/dist/components/SnackbarItem.svelte.d.ts +2 -2
  62. package/dist/components/Switch.svelte +62 -62
  63. package/dist/components/Switch.svelte.d.ts +4 -4
  64. package/dist/components/Tab.svelte +31 -20
  65. package/dist/components/Tab.svelte.d.ts +3 -2
  66. package/dist/components/TabItem.svelte +20 -19
  67. package/dist/components/TabItem.svelte.d.ts +2 -2
  68. package/dist/components/Textarea.svelte +82 -82
  69. package/dist/components/Textarea.svelte.d.ts +5 -5
  70. package/dist/components/skeleton/Skeleton.svelte +16 -14
  71. package/dist/components/skeleton/Skeleton.svelte.d.ts +2 -2
  72. package/dist/components/skeleton/SkeletonAvatar.svelte +9 -5
  73. package/dist/components/skeleton/SkeletonAvatar.svelte.d.ts +2 -2
  74. package/dist/components/skeleton/SkeletonBox.svelte +11 -11
  75. package/dist/components/skeleton/SkeletonBox.svelte.d.ts +2 -2
  76. package/dist/components/skeleton/SkeletonButton.svelte +10 -5
  77. package/dist/components/skeleton/SkeletonButton.svelte.d.ts +2 -2
  78. package/dist/components/skeleton/SkeletonHeading.svelte +8 -11
  79. package/dist/components/skeleton/SkeletonHeading.svelte.d.ts +2 -2
  80. package/dist/components/skeleton/SkeletonMedia.svelte +10 -6
  81. package/dist/components/skeleton/SkeletonMedia.svelte.d.ts +2 -2
  82. package/dist/components/skeleton/SkeletonText.svelte +9 -13
  83. package/dist/components/skeleton/SkeletonText.svelte.d.ts +2 -2
  84. package/dist/index.d.ts +41 -0
  85. package/dist/utils/formatText.js +4 -1
  86. package/package.json +1 -1
@@ -20,6 +20,35 @@
20
20
  // =========================================================================
21
21
  // Props, States & Constants
22
22
  // =========================================================================
23
+ export type DialogProps = {
24
+ // Snippet
25
+ header?: Snippet;
26
+ children?: Snippet;
27
+ footer?: Snippet;
28
+
29
+ // 基本プロパティ
30
+ title?: string;
31
+ description?: string;
32
+
33
+ // HTML属性
34
+ id?: string;
35
+
36
+ // スタイル/レイアウト
37
+ width?: string | number;
38
+ bodyStyle?: string;
39
+ noPadding?: boolean;
40
+
41
+ // 状態/動作
42
+ isOpen?: boolean;
43
+ scrollable?: boolean;
44
+ closeIfClickOutside?: boolean;
45
+ restoreFocus?: boolean;
46
+
47
+ // ARIA/アクセシビリティ
48
+ ariaLabel?: string;
49
+ ariaDescribedby?: string;
50
+ };
51
+
23
52
  let {
24
53
  // Snippet
25
54
  header,
@@ -47,34 +76,7 @@
47
76
  // ARIA/アクセシビリティ
48
77
  ariaLabel,
49
78
  ariaDescribedby
50
- }: {
51
- // Snippet
52
- header?: Snippet;
53
- children?: Snippet;
54
- footer?: Snippet;
55
-
56
- // 基本プロパティ
57
- title?: string;
58
- description?: string;
59
-
60
- // HTML属性
61
- id?: string;
62
-
63
- // スタイル/レイアウト
64
- width?: string | number;
65
- bodyStyle?: string;
66
- noPadding?: boolean;
67
-
68
- // 状態/動作
69
- isOpen?: boolean;
70
- scrollable?: boolean;
71
- closeIfClickOutside?: boolean;
72
- restoreFocus?: boolean;
73
-
74
- // ARIA/アクセシビリティ
75
- ariaLabel?: string;
76
- ariaDescribedby?: string;
77
- } = $props();
79
+ }: DialogProps = $props();
78
80
 
79
81
  let modalRef: Modal;
80
82
 
@@ -11,7 +11,7 @@
11
11
  * This prevents state synchronization bugs and ensures consistent behavior.
12
12
  */
13
13
  import type { Snippet } from 'svelte';
14
- type $$ComponentProps = {
14
+ export type DialogProps = {
15
15
  header?: Snippet;
16
16
  children?: Snippet;
17
17
  footer?: Snippet;
@@ -28,7 +28,7 @@ type $$ComponentProps = {
28
28
  ariaLabel?: string;
29
29
  ariaDescribedby?: string;
30
30
  };
31
- declare const Dialog: import("svelte").Component<$$ComponentProps, {
31
+ declare const Dialog: import("svelte").Component<DialogProps, {
32
32
  open: () => void;
33
33
  close: () => void;
34
34
  toggle: () => void;
@@ -20,6 +20,36 @@
20
20
  // =========================================================================
21
21
  // Props, States & Constants
22
22
  // =========================================================================
23
+ export type DrawerProps = {
24
+ // Snippet
25
+ header?: Snippet;
26
+ children?: Snippet;
27
+ footer?: Snippet;
28
+
29
+ // 基本プロパティ
30
+ title?: string;
31
+ description?: string;
32
+
33
+ // HTML属性
34
+ id?: string;
35
+
36
+ // スタイル/レイアウト
37
+ width?: string | number;
38
+ position?: 'left' | 'right';
39
+ bodyStyle?: string;
40
+ noPadding?: boolean;
41
+
42
+ // 状態/動作
43
+ isOpen?: boolean;
44
+ scrollable?: boolean;
45
+ closeIfClickOutside?: boolean;
46
+ restoreFocus?: boolean;
47
+
48
+ // ARIA/アクセシビリティ
49
+ ariaLabel?: string;
50
+ ariaDescribedby?: string;
51
+ };
52
+
23
53
  let {
24
54
  // Snippet
25
55
  header,
@@ -48,35 +78,7 @@
48
78
  // ARIA/アクセシビリティ
49
79
  ariaLabel = 'Drawer',
50
80
  ariaDescribedby
51
- }: {
52
- // Snippet
53
- header?: Snippet;
54
- children?: Snippet;
55
- footer?: Snippet;
56
-
57
- // 基本プロパティ
58
- title?: string;
59
- description?: string;
60
-
61
- // HTML属性
62
- id?: string;
63
-
64
- // スタイル/レイアウト
65
- width?: string | number;
66
- position?: 'left' | 'right';
67
- bodyStyle?: string;
68
- noPadding?: boolean;
69
-
70
- // 状態/動作
71
- isOpen?: boolean;
72
- scrollable?: boolean;
73
- closeIfClickOutside?: boolean;
74
- restoreFocus?: boolean;
75
-
76
- // ARIA/アクセシビリティ
77
- ariaLabel?: string;
78
- ariaDescribedby?: string;
79
- } = $props();
81
+ }: DrawerProps = $props();
80
82
 
81
83
  let modalRef: Modal;
82
84
 
@@ -11,7 +11,7 @@
11
11
  * This prevents state synchronization bugs and ensures consistent behavior.
12
12
  */
13
13
  import type { Snippet } from 'svelte';
14
- type $$ComponentProps = {
14
+ export type DrawerProps = {
15
15
  header?: Snippet;
16
16
  children?: Snippet;
17
17
  footer?: Snippet;
@@ -29,7 +29,7 @@ type $$ComponentProps = {
29
29
  ariaLabel?: string;
30
30
  ariaDescribedby?: string;
31
31
  };
32
- declare const Drawer: import("svelte").Component<$$ComponentProps, {
32
+ declare const Drawer: import("svelte").Component<DrawerProps, {
33
33
  open: () => void;
34
34
  close: () => void;
35
35
  toggle: () => void;
@@ -17,6 +17,61 @@
17
17
  // =========================================================================
18
18
  // Props, States & Constants
19
19
  // =========================================================================
20
+ export type FabProps = {
21
+ children?: Snippet;
22
+ buttonAttributes?: HTMLButtonAttributes | undefined;
23
+ type?: HTMLButtonAttributes['type'];
24
+ customStyle?: HTMLButtonAttributes['style'];
25
+ disabled?: boolean;
26
+ loading?: boolean;
27
+ icon?: string;
28
+ iconFilled?: boolean;
29
+ iconWeight?: IconWeight;
30
+ iconGrade?: IconGrade;
31
+ iconOpticalSize?: IconOpticalSize;
32
+ iconVariant?: IconVariant;
33
+ color?: string;
34
+ variant?: 'ghost' | 'filled' | 'outlined' | 'glass';
35
+ position?: 'left' | 'center' | 'right';
36
+ hasShadow?: boolean;
37
+ reducedMotion?: boolean;
38
+ ariaLabel?: string;
39
+ ariaDescribedby?: string;
40
+ // フォーカスイベント
41
+ onfocus?: FocusHandler;
42
+ onblur?: FocusHandler;
43
+
44
+ // キーボードイベント
45
+ onkeydown?: KeyboardHandler;
46
+ onkeyup?: KeyboardHandler;
47
+
48
+ // マウスイベント
49
+ onclick?: MouseHandler;
50
+ onmousedown?: MouseHandler;
51
+ onmouseup?: MouseHandler;
52
+ onmouseenter?: MouseHandler;
53
+ onmouseleave?: MouseHandler;
54
+ onmouseover?: MouseHandler;
55
+ onmouseout?: MouseHandler;
56
+ oncontextmenu?: MouseHandler;
57
+ onauxclick?: MouseHandler;
58
+
59
+ // タッチイベント
60
+ ontouchstart?: TouchHandler;
61
+ ontouchend?: TouchHandler;
62
+ ontouchmove?: TouchHandler;
63
+ ontouchcancel?: TouchHandler;
64
+
65
+ // ポインターイベント
66
+ onpointerdown?: PointerHandler;
67
+ onpointerup?: PointerHandler;
68
+ onpointerenter?: PointerHandler;
69
+ onpointerleave?: PointerHandler;
70
+ onpointermove?: PointerHandler;
71
+ onpointercancel?: PointerHandler;
72
+ [key: string]: any;
73
+ };
74
+
20
75
  let {
21
76
  // Snippet
22
77
  children,
@@ -84,60 +139,7 @@
84
139
 
85
140
  // その他
86
141
  ...restProps
87
- }: {
88
- children?: Snippet;
89
- buttonAttributes?: HTMLButtonAttributes | undefined;
90
- type?: HTMLButtonAttributes['type'];
91
- customStyle?: HTMLButtonAttributes['style'];
92
- disabled?: boolean;
93
- loading?: boolean;
94
- icon?: string;
95
- iconFilled?: boolean;
96
- iconWeight?: IconWeight;
97
- iconGrade?: IconGrade;
98
- iconOpticalSize?: IconOpticalSize;
99
- iconVariant?: IconVariant;
100
- color?: string;
101
- variant?: 'ghost' | 'filled' | 'outlined' | 'glass';
102
- position?: 'left' | 'center' | 'right';
103
- hasShadow?: boolean;
104
- reducedMotion?: boolean;
105
- ariaLabel?: string;
106
- ariaDescribedby?: string;
107
- // フォーカスイベント
108
- onfocus?: FocusHandler;
109
- onblur?: FocusHandler;
110
-
111
- // キーボードイベント
112
- onkeydown?: KeyboardHandler;
113
- onkeyup?: KeyboardHandler;
114
-
115
- // マウスイベント
116
- onclick?: MouseHandler;
117
- onmousedown?: MouseHandler;
118
- onmouseup?: MouseHandler;
119
- onmouseenter?: MouseHandler;
120
- onmouseleave?: MouseHandler;
121
- onmouseover?: MouseHandler;
122
- onmouseout?: MouseHandler;
123
- oncontextmenu?: MouseHandler;
124
- onauxclick?: MouseHandler;
125
-
126
- // タッチイベント
127
- ontouchstart?: TouchHandler;
128
- ontouchend?: TouchHandler;
129
- ontouchmove?: TouchHandler;
130
- ontouchcancel?: TouchHandler;
131
-
132
- // ポインターイベント
133
- onpointerdown?: PointerHandler;
134
- onpointerup?: PointerHandler;
135
- onpointerenter?: PointerHandler;
136
- onpointerleave?: PointerHandler;
137
- onpointermove?: PointerHandler;
138
- onpointercancel?: PointerHandler;
139
- [key: string]: any;
140
- } = $props();
142
+ }: FabProps = $props();
141
143
 
142
144
  // =========================================================================
143
145
  // Methods
@@ -2,7 +2,7 @@ import type { Snippet } from 'svelte';
2
2
  import type { HTMLButtonAttributes } from 'svelte/elements';
3
3
  import type { IconVariant, IconWeight, IconGrade, IconOpticalSize } from '../types/icon';
4
4
  import type { FocusHandler, KeyboardHandler, MouseHandler, TouchHandler, PointerHandler } from '../types/eventHandlers';
5
- type $$ComponentProps = {
5
+ export type FabProps = {
6
6
  children?: Snippet;
7
7
  buttonAttributes?: HTMLButtonAttributes | undefined;
8
8
  type?: HTMLButtonAttributes['type'];
@@ -47,6 +47,6 @@ type $$ComponentProps = {
47
47
  onpointercancel?: PointerHandler;
48
48
  [key: string]: any;
49
49
  };
50
- declare const Fab: import("svelte").Component<$$ComponentProps, {}, "">;
50
+ declare const Fab: import("svelte").Component<FabProps, {}, "">;
51
51
  type Fab = ReturnType<typeof Fab>;
52
52
  export default Fab;
@@ -19,6 +19,56 @@
19
19
  // =========================================================================
20
20
  // Props, States & Constants
21
21
  // =========================================================================
22
+ export type FileUploaderProps = {
23
+ // 基本プロパティ
24
+ value: FileList | null | undefined;
25
+ multiple?: boolean;
26
+ maxFileSize?: number;
27
+ placeholder?: string;
28
+
29
+ // HTML属性系
30
+ id?: string;
31
+ accept?: string;
32
+
33
+ // スタイル/レイアウト
34
+ width?: string | number;
35
+ height?: string | number;
36
+ rounded?: boolean;
37
+
38
+ // アイコン系
39
+ icon?: string;
40
+ iconSize?: number;
41
+ iconFilled?: boolean;
42
+ iconWeight?: IconWeight;
43
+ iconGrade?: IconGrade;
44
+ iconOpticalSize?: IconOpticalSize;
45
+ iconVariant?: IconVariant;
46
+ removeFileAriaLabel?: string;
47
+
48
+ // 入力イベント
49
+ onchange?: BivariantValueHandler<FileList | null | undefined>;
50
+
51
+ // フォーカスイベント
52
+ onfocus?: FocusHandler;
53
+ onblur?: FocusHandler;
54
+
55
+ // キーボードイベント
56
+ onkeydown?: KeyboardHandler;
57
+ onkeyup?: KeyboardHandler;
58
+
59
+ // マウスイベント
60
+ onmouseenter?: MouseHandler;
61
+ onmouseleave?: MouseHandler;
62
+
63
+ // タッチイベント
64
+ ontouchstart?: TouchHandler;
65
+ ontouchend?: TouchHandler;
66
+
67
+ // ポインターイベント
68
+ onpointerenter?: PointerHandler;
69
+ onpointerleave?: PointerHandler;
70
+ };
71
+
22
72
  let {
23
73
  // 基本プロパティ
24
74
  value = $bindable(),
@@ -67,55 +117,7 @@
67
117
  // ポインターイベント
68
118
  onpointerenter = () => {}, // No params for type inference
69
119
  onpointerleave = () => {} // No params for type inference
70
- }: {
71
- // 基本プロパティ
72
- value: FileList | null | undefined;
73
- multiple?: boolean;
74
- maxFileSize?: number;
75
- placeholder?: string;
76
-
77
- // HTML属性系
78
- id?: string;
79
- accept?: string;
80
-
81
- // スタイル/レイアウト
82
- width?: string | number;
83
- height?: string | number;
84
- rounded?: boolean;
85
-
86
- // アイコン系
87
- icon?: string;
88
- iconSize?: number;
89
- iconFilled?: boolean;
90
- iconWeight?: IconWeight;
91
- iconGrade?: IconGrade;
92
- iconOpticalSize?: IconOpticalSize;
93
- iconVariant?: IconVariant;
94
- removeFileAriaLabel?: string;
95
-
96
- // 入力イベント
97
- onchange?: BivariantValueHandler<FileList | null | undefined>;
98
-
99
- // フォーカスイベント
100
- onfocus?: FocusHandler;
101
- onblur?: FocusHandler;
102
-
103
- // キーボードイベント
104
- onkeydown?: KeyboardHandler;
105
- onkeyup?: KeyboardHandler;
106
-
107
- // マウスイベント
108
- onmouseenter?: MouseHandler;
109
- onmouseleave?: MouseHandler;
110
-
111
- // タッチイベント
112
- ontouchstart?: TouchHandler;
113
- ontouchend?: TouchHandler;
114
-
115
- // ポインターイベント
116
- onpointerenter?: PointerHandler;
117
- onpointerleave?: PointerHandler;
118
- } = $props();
120
+ }: FileUploaderProps = $props();
119
121
 
120
122
  let dropAreaRef: HTMLButtonElement;
121
123
  let fileInputRef: HTMLInputElement;
@@ -1,6 +1,6 @@
1
1
  import type { IconVariant, IconWeight, IconGrade, IconOpticalSize } from '../types/icon';
2
2
  import type { BivariantValueHandler, FocusHandler, KeyboardHandler, MouseHandler, TouchHandler, PointerHandler } from '../types/eventHandlers';
3
- type $$ComponentProps = {
3
+ export type FileUploaderProps = {
4
4
  value: FileList | null | undefined;
5
5
  multiple?: boolean;
6
6
  maxFileSize?: number;
@@ -30,7 +30,7 @@ type $$ComponentProps = {
30
30
  onpointerenter?: PointerHandler;
31
31
  onpointerleave?: PointerHandler;
32
32
  };
33
- declare const FileUploader: import("svelte").Component<$$ComponentProps, {
33
+ declare const FileUploader: import("svelte").Component<FileUploaderProps, {
34
34
  reset: () => void;
35
35
  }, "value">;
36
36
  type FileUploader = ReturnType<typeof FileUploader>;
@@ -8,6 +8,34 @@
8
8
  // =========================================================================
9
9
  // Props, States & Constants
10
10
  // =========================================================================
11
+ export type IconProps = {
12
+ // Snippet
13
+ children: Snippet;
14
+
15
+ // 基本プロパティ
16
+ title?: string;
17
+ fallbackText?: string;
18
+
19
+ // スタイル/レイアウト
20
+ size?: number;
21
+ color?: string;
22
+ customStyle?: string;
23
+
24
+ // アイコン関連
25
+ filled?: boolean;
26
+ weight?: IconWeight;
27
+ grade?: IconGrade;
28
+ opticalSize?: IconOpticalSize;
29
+ variant?: IconVariant;
30
+
31
+ // ARIA/アクセシビリティ
32
+ ariaLabel?: string;
33
+ decorative?: boolean;
34
+
35
+ // その他
36
+ [key: string]: any;
37
+ };
38
+
11
39
  let {
12
40
  // Snippet
13
41
  children,
@@ -34,33 +62,7 @@
34
62
 
35
63
  // その他
36
64
  ...restProps
37
- }: {
38
- // Snippet
39
- children: Snippet;
40
-
41
- // 基本プロパティ
42
- title?: string;
43
- fallbackText?: string;
44
-
45
- // スタイル/レイアウト
46
- size?: number;
47
- color?: string;
48
- customStyle?: string;
49
-
50
- // アイコン関連
51
- filled?: boolean;
52
- weight?: IconWeight;
53
- grade?: IconGrade;
54
- opticalSize?: IconOpticalSize;
55
- variant?: IconVariant;
56
-
57
- // ARIA/アクセシビリティ
58
- ariaLabel?: string;
59
- decorative?: boolean;
60
-
61
- // その他
62
- [key: string]: any;
63
- } = $props();
65
+ }: IconProps = $props();
64
66
 
65
67
  // =========================================================================
66
68
  // $derived
@@ -1,6 +1,6 @@
1
1
  import type { Snippet } from 'svelte';
2
2
  import type { IconVariant, IconWeight, IconGrade, IconOpticalSize } from '../types/icon';
3
- type $$ComponentProps = {
3
+ export type IconProps = {
4
4
  children: Snippet;
5
5
  title?: string;
6
6
  fallbackText?: string;
@@ -16,6 +16,6 @@ type $$ComponentProps = {
16
16
  decorative?: boolean;
17
17
  [key: string]: any;
18
18
  };
19
- declare const Icon: import("svelte").Component<$$ComponentProps, {}, "">;
19
+ declare const Icon: import("svelte").Component<IconProps, {}, "">;
20
20
  type Icon = ReturnType<typeof Icon>;
21
21
  export default Icon;