@salesmind-ai/design-system 0.2.1 → 0.3.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 (121) hide show
  1. package/dist/AppearancePanel-UT57J69V.d.cts +51 -0
  2. package/dist/AppearancePanel-UT57J69V.d.ts +51 -0
  3. package/dist/AppearanceProvider-C36a8-eb.d.cts +45 -0
  4. package/dist/AppearanceProvider-C36a8-eb.d.ts +45 -0
  5. package/dist/Breadcrumb-RX-B_gDV.d.cts +44 -0
  6. package/dist/Breadcrumb-RX-B_gDV.d.ts +44 -0
  7. package/dist/ExportMenu-A2TLFiVv.d.cts +311 -0
  8. package/dist/ExportMenu-C8qck5AT.d.ts +311 -0
  9. package/dist/SectionShell-BfBw5q0Y.d.cts +18 -0
  10. package/dist/SectionShell-BfBw5q0Y.d.ts +18 -0
  11. package/dist/Select-BdZmK0Lt.d.cts +66 -0
  12. package/dist/Select-BdZmK0Lt.d.ts +66 -0
  13. package/dist/admin/index.cjs +2941 -0
  14. package/dist/admin/index.cjs.map +1 -0
  15. package/dist/admin/index.css +4145 -0
  16. package/dist/admin/index.css.map +1 -0
  17. package/dist/admin/index.d.cts +491 -0
  18. package/dist/admin/index.d.ts +491 -0
  19. package/dist/admin/index.js +2918 -0
  20. package/dist/admin/index.js.map +1 -0
  21. package/dist/{audit-CiyPkxk1.d.cts → audit-BS2fn7M4.d.ts} +2 -51
  22. package/dist/{audit-CiyPkxk1.d.ts → audit-DwCmg32J.d.cts} +2 -51
  23. package/dist/blog/index.cjs +1074 -0
  24. package/dist/blog/index.cjs.map +1 -0
  25. package/dist/blog/index.css +1422 -0
  26. package/dist/blog/index.css.map +1 -0
  27. package/dist/blog/index.d.cts +233 -0
  28. package/dist/blog/index.d.ts +233 -0
  29. package/dist/blog/index.js +1056 -0
  30. package/dist/blog/index.js.map +1 -0
  31. package/dist/chart-types-BGVVO-zl.d.cts +208 -0
  32. package/dist/chart-types-BGVVO-zl.d.ts +208 -0
  33. package/dist/charts/index.cjs +2698 -0
  34. package/dist/charts/index.cjs.map +1 -0
  35. package/dist/charts/index.css +1167 -0
  36. package/dist/charts/index.css.map +1 -0
  37. package/dist/charts/index.d.cts +453 -0
  38. package/dist/charts/index.d.ts +453 -0
  39. package/dist/charts/index.js +2682 -0
  40. package/dist/charts/index.js.map +1 -0
  41. package/dist/core/index.cjs +526 -395
  42. package/dist/core/index.cjs.map +1 -1
  43. package/dist/core/index.css +294 -0
  44. package/dist/core/index.css.map +1 -1
  45. package/dist/core/index.d.cts +7 -982
  46. package/dist/core/index.d.ts +7 -982
  47. package/dist/core/index.js +476 -351
  48. package/dist/core/index.js.map +1 -1
  49. package/dist/i18n/index.cjs +585 -0
  50. package/dist/i18n/index.cjs.map +1 -0
  51. package/dist/i18n/index.d.cts +855 -0
  52. package/dist/i18n/index.d.ts +855 -0
  53. package/dist/i18n/index.js +547 -0
  54. package/dist/i18n/index.js.map +1 -0
  55. package/dist/index.d.cts +22 -1290
  56. package/dist/index.d.ts +22 -1290
  57. package/dist/marketing/index.cjs +2144 -3023
  58. package/dist/marketing/index.cjs.map +1 -1
  59. package/dist/marketing/index.css +3729 -4824
  60. package/dist/marketing/index.css.map +1 -1
  61. package/dist/marketing/index.d.cts +1351 -4
  62. package/dist/marketing/index.d.ts +1351 -4
  63. package/dist/marketing/index.js +2190 -3054
  64. package/dist/marketing/index.js.map +1 -1
  65. package/dist/motion/index.cjs +1230 -0
  66. package/dist/motion/index.cjs.map +1 -0
  67. package/dist/motion/index.css +699 -0
  68. package/dist/motion/index.css.map +1 -0
  69. package/dist/motion/index.d.cts +68 -0
  70. package/dist/motion/index.d.ts +68 -0
  71. package/dist/motion/index.js +1218 -0
  72. package/dist/motion/index.js.map +1 -0
  73. package/dist/nav/index.cjs +1533 -0
  74. package/dist/nav/index.cjs.map +1 -0
  75. package/dist/nav/index.css +1984 -0
  76. package/dist/nav/index.css.map +1 -0
  77. package/dist/nav/index.d.cts +279 -0
  78. package/dist/nav/index.d.ts +279 -0
  79. package/dist/nav/index.js +1501 -0
  80. package/dist/nav/index.js.map +1 -0
  81. package/dist/report/index.cjs +26 -1649
  82. package/dist/report/index.cjs.map +1 -1
  83. package/dist/report/index.css +0 -963
  84. package/dist/report/index.css.map +1 -1
  85. package/dist/report/index.d.cts +4 -2
  86. package/dist/report/index.d.ts +4 -2
  87. package/dist/report/index.js +27 -1640
  88. package/dist/report/index.js.map +1 -1
  89. package/dist/sections/index.cjs +385 -0
  90. package/dist/sections/index.cjs.map +1 -0
  91. package/dist/sections/index.css +818 -0
  92. package/dist/sections/index.css.map +1 -0
  93. package/dist/sections/index.d.cts +69 -0
  94. package/dist/sections/index.d.ts +69 -0
  95. package/dist/sections/index.js +374 -0
  96. package/dist/sections/index.js.map +1 -0
  97. package/dist/social-proof/index.cjs +1254 -0
  98. package/dist/social-proof/index.cjs.map +1 -0
  99. package/dist/social-proof/index.css +1416 -0
  100. package/dist/social-proof/index.css.map +1 -0
  101. package/dist/social-proof/index.d.cts +258 -0
  102. package/dist/social-proof/index.d.ts +258 -0
  103. package/dist/social-proof/index.js +1237 -0
  104. package/dist/social-proof/index.js.map +1 -0
  105. package/dist/theme/index.cjs +573 -0
  106. package/dist/theme/index.cjs.map +1 -0
  107. package/dist/theme/index.css +464 -0
  108. package/dist/theme/index.css.map +1 -0
  109. package/dist/theme/index.d.cts +48 -0
  110. package/dist/theme/index.d.ts +48 -0
  111. package/dist/theme/index.js +558 -0
  112. package/dist/theme/index.js.map +1 -0
  113. package/dist/types-DAlgDGzw.d.cts +52 -0
  114. package/dist/types-DAlgDGzw.d.ts +52 -0
  115. package/dist/web/index.d.cts +3 -2
  116. package/dist/web/index.d.ts +3 -2
  117. package/package.json +68 -9
  118. package/dist/ExportMenu-hEe5MhLq.d.cts +0 -1027
  119. package/dist/ExportMenu-hEe5MhLq.d.ts +0 -1027
  120. package/dist/index-B64suAAc.d.cts +0 -1498
  121. package/dist/index-B64suAAc.d.ts +0 -1498
@@ -0,0 +1,311 @@
1
+ import React__default from 'react';
2
+ import { c as ReportMode, I as InsightType, A as AnalyticalState, D as DataStateDetails, s as TrendDirection } from './chart-types-BGVVO-zl.js';
3
+ import * as react_jsx_runtime from 'react/jsx-runtime';
4
+
5
+ interface ReportShellProps {
6
+ /** Report title */
7
+ title?: string;
8
+ /** Report subtitle or date range */
9
+ subtitle?: string;
10
+ /** Report mode (executive = minimal detail, analyst = full detail) */
11
+ mode?: ReportMode;
12
+ /** Brand variant for theming */
13
+ brand?: string;
14
+ /** Callback when mode changes */
15
+ onModeChange?: (mode: ReportMode) => void;
16
+ /** Report content */
17
+ children: React__default.ReactNode;
18
+ /** Header actions (export, share, etc.) */
19
+ actions?: React__default.ReactNode;
20
+ /** Additional CSS class */
21
+ className?: string;
22
+ }
23
+ /**
24
+ * ReportShell is the root container for all reports.
25
+ * It provides mode context and establishes the report structure.
26
+ */
27
+ declare const ReportShell: React__default.ForwardRefExoticComponent<ReportShellProps & React__default.RefAttributes<HTMLDivElement>>;
28
+
29
+ interface ExecutiveThesisProps {
30
+ /** The main thesis statement - the single most important finding */
31
+ thesis: string;
32
+ /** Supporting context for the thesis */
33
+ context?: string;
34
+ /** Key metric supporting the thesis */
35
+ metric?: {
36
+ label: string;
37
+ value: string | number;
38
+ trend?: 'up' | 'down' | 'neutral';
39
+ };
40
+ /** AI-generated indicator */
41
+ aiGenerated?: boolean;
42
+ /** Additional CSS class */
43
+ className?: string;
44
+ }
45
+ /**
46
+ * ExecutiveThesis displays the single most important finding of a report.
47
+ * There should be exactly ONE of these per report, at the top.
48
+ *
49
+ * Composition Rule: R1 - ExecutiveThesis MUST appear exactly once, at the top.
50
+ */
51
+ declare const ExecutiveThesis: React__default.ForwardRefExoticComponent<ExecutiveThesisProps & React__default.RefAttributes<HTMLElement>>;
52
+
53
+ interface InsightBlockProps {
54
+ /** The type of insight - constrains allowed child charts */
55
+ type: InsightType;
56
+ /** The insight headline */
57
+ headline: string;
58
+ /** Supporting description */
59
+ description?: string;
60
+ /** Confidence score (0-100) */
61
+ confidence?: number;
62
+ /** Methodology notes (shown in analyst mode) */
63
+ methodology?: string;
64
+ /** Evidence charts (max 3 per composition rules) */
65
+ children: React__default.ReactNode;
66
+ /** Additional CSS class */
67
+ className?: string;
68
+ }
69
+ /**
70
+ * InsightBlock groups an insight with its supporting evidence.
71
+ *
72
+ * Composition Rules:
73
+ * - R2: InsightBlock MUST precede any chart it references
74
+ * - R3: Charts CANNOT appear without a parent InsightBlock
75
+ * - R6: Max 3 charts per InsightBlock
76
+ */
77
+ declare const InsightBlock: React__default.ForwardRefExoticComponent<InsightBlockProps & React__default.RefAttributes<HTMLElement>>;
78
+
79
+ interface EvidenceGroupProps {
80
+ /** Group title */
81
+ title?: string;
82
+ /** Layout direction */
83
+ layout?: 'row' | 'column' | 'grid';
84
+ /** Number of columns for grid layout */
85
+ columns?: 1 | 2 | 3;
86
+ /** Evidence charts (max 3 per composition rules) */
87
+ children: React__default.ReactNode;
88
+ /** Additional CSS class */
89
+ className?: string;
90
+ }
91
+ /**
92
+ * EvidenceGroup contains related charts under an InsightBlock.
93
+ *
94
+ * Composition Rule: R6 - Max 3 charts per InsightBlock (enforced via EvidenceGroup)
95
+ */
96
+ declare const EvidenceGroup: React__default.ForwardRefExoticComponent<EvidenceGroupProps & React__default.RefAttributes<HTMLDivElement>>;
97
+
98
+ interface ConfidenceIndicatorProps {
99
+ /** Confidence score (0-100) */
100
+ score: number;
101
+ /** Show the numeric score */
102
+ showScore?: boolean;
103
+ /** Show the label */
104
+ showLabel?: boolean;
105
+ /** Size variant */
106
+ size?: 'sm' | 'md' | 'lg';
107
+ /** Additional CSS class */
108
+ className?: string;
109
+ }
110
+ /**
111
+ * ConfidenceIndicator displays the reliability score of an insight or data point.
112
+ * This is a guardrail component that helps users understand data quality.
113
+ */
114
+ declare const ConfidenceIndicator: React__default.ForwardRefExoticComponent<ConfidenceIndicatorProps & React__default.RefAttributes<HTMLDivElement>>;
115
+
116
+ interface DataCoverageBadgeProps {
117
+ /** Current sample size */
118
+ sampleSize: number;
119
+ /** Required minimum sample size */
120
+ requiredSize?: number;
121
+ /** Date range covered */
122
+ dateRange?: {
123
+ start: string;
124
+ end: string;
125
+ };
126
+ /** Show date range */
127
+ showDateRange?: boolean;
128
+ /** Size variant */
129
+ size?: 'sm' | 'md';
130
+ /** Additional CSS class */
131
+ className?: string;
132
+ }
133
+ /**
134
+ * DataCoverageBadge shows the sample size and optionally the date range of the data.
135
+ * This is a guardrail component that helps users understand data coverage.
136
+ */
137
+ declare const DataCoverageBadge: React__default.ForwardRefExoticComponent<DataCoverageBadgeProps & React__default.RefAttributes<HTMLDivElement>>;
138
+
139
+ interface DataStateIndicatorProps {
140
+ /** Current analytical state */
141
+ state: AnalyticalState;
142
+ /** Additional details about the state */
143
+ details?: DataStateDetails;
144
+ /** Show full details or compact */
145
+ variant?: 'compact' | 'full';
146
+ /** Action button handler */
147
+ onAction?: () => void;
148
+ /** Additional CSS class */
149
+ className?: string;
150
+ }
151
+ /**
152
+ * DataStateIndicator shows the analytical state of data (valid, insufficient, etc.).
153
+ * This is a guardrail component that prevents misleading outputs.
154
+ */
155
+ declare const DataStateIndicator: React__default.ForwardRefExoticComponent<DataStateIndicatorProps & React__default.RefAttributes<HTMLDivElement>>;
156
+
157
+ /** Translatable labels for the MethodologyNote component. */
158
+ interface MethodologyNoteLabels {
159
+ /** Title text and aria-label. @default "Methodology" */
160
+ title?: string;
161
+ /** Label for the sample size row. @default "Sample Size" */
162
+ sampleSize?: string;
163
+ /** Label for the data sources row. @default "Data Sources" */
164
+ dataSources?: string;
165
+ /** Label for the calculation row. @default "Calculation" */
166
+ calculation?: string;
167
+ }
168
+ interface MethodologyNoteProps {
169
+ /** Methodology description */
170
+ children: React__default.ReactNode;
171
+ /** Sample size (triggers automatic display if < 100) */
172
+ sampleSize?: number;
173
+ /** Data sources used */
174
+ sources?: string[];
175
+ /** Calculation method */
176
+ calculation?: string;
177
+ /** Always show regardless of mode */
178
+ forceShow?: boolean;
179
+ /** Additional CSS class */
180
+ className?: string;
181
+ /** Override default English labels for i18n. */
182
+ labels?: MethodologyNoteLabels;
183
+ }
184
+ /**
185
+ * MethodologyNote documents how data was collected and calculated.
186
+ *
187
+ * Composition Rule: R4 - MethodologyNote MUST appear if sample size < 100
188
+ */
189
+ declare const MethodologyNote: React__default.ForwardRefExoticComponent<MethodologyNoteProps & React__default.RefAttributes<HTMLElement>>;
190
+
191
+ interface CaveatBlockProps {
192
+ /** Caveat title/summary */
193
+ title?: string;
194
+ /** Caveat details */
195
+ children: React__default.ReactNode;
196
+ /** Severity level */
197
+ severity?: 'info' | 'warning' | 'critical';
198
+ /** Confidence score that triggered this caveat */
199
+ confidence?: number;
200
+ /** Always show regardless of mode */
201
+ forceShow?: boolean;
202
+ /** Additional CSS class */
203
+ className?: string;
204
+ }
205
+ /**
206
+ * CaveatBlock displays limitations and warnings about the data or analysis.
207
+ *
208
+ * Composition Rule: Required if confidence < 70%
209
+ */
210
+ declare const CaveatBlock: React__default.ForwardRefExoticComponent<CaveatBlockProps & React__default.RefAttributes<HTMLElement>>;
211
+
212
+ interface KeyMetricProps {
213
+ /** Metric title/label */
214
+ title: string;
215
+ /** Primary value */
216
+ value: string | number;
217
+ /** Value prefix (e.g., '$', '#') */
218
+ prefix?: string;
219
+ /** Value suffix (e.g., '%', 'users') */
220
+ suffix?: string;
221
+ /** Trend indicator */
222
+ trend?: {
223
+ value: number;
224
+ direction: TrendDirection;
225
+ label?: string;
226
+ };
227
+ /** Secondary metric */
228
+ secondary?: {
229
+ label: string;
230
+ value: string | number;
231
+ };
232
+ /** Sample size for data state */
233
+ sampleSize?: number;
234
+ /** Confidence score */
235
+ confidence?: number;
236
+ /** Click handler for drill-down */
237
+ onClick?: () => void;
238
+ /** Loading state */
239
+ loading?: boolean;
240
+ /** Size variant */
241
+ size?: 'sm' | 'md' | 'lg';
242
+ /** Additional CSS class */
243
+ className?: string;
244
+ }
245
+ /**
246
+ * KeyMetric displays a single KPI with trend indicator and optional drill-down.
247
+ * This is an analytical component with built-in data state awareness.
248
+ */
249
+ declare const KeyMetric: React__default.ForwardRefExoticComponent<KeyMetricProps & React__default.RefAttributes<HTMLDivElement>>;
250
+
251
+ interface TrendIndicatorProps {
252
+ /** Percentage change */
253
+ value: number;
254
+ /** Override direction (auto-detected from value) */
255
+ direction?: TrendDirection;
256
+ /** Positive is good (green) or bad (red) */
257
+ positiveIsGood?: boolean;
258
+ /** Show arrow icon */
259
+ showIcon?: boolean;
260
+ /** Show the percentage sign */
261
+ showPercent?: boolean;
262
+ /** Size */
263
+ size?: 'sm' | 'md' | 'lg';
264
+ /** Additional CSS class */
265
+ className?: string;
266
+ }
267
+ /**
268
+ * TrendIndicator shows directional change with color coding.
269
+ * Requires at least 2 data points to be meaningful.
270
+ */
271
+ declare const TrendIndicator: React__default.ForwardRefExoticComponent<TrendIndicatorProps & React__default.RefAttributes<HTMLSpanElement>>;
272
+
273
+ type ExportFormat = 'pdf' | 'csv' | 'xlsx' | 'pptx' | 'png' | 'json';
274
+ interface ExportOption {
275
+ /** Export format */
276
+ format: ExportFormat;
277
+ /** Display label */
278
+ label: string;
279
+ /** Optional description */
280
+ description?: string;
281
+ /** Whether this option is disabled */
282
+ disabled?: boolean;
283
+ }
284
+ interface ExportMenuProps {
285
+ /** Available export options */
286
+ options?: ExportOption[];
287
+ /** Callback when an export option is selected */
288
+ onExport: (format: ExportFormat) => void;
289
+ /** Whether export is currently in progress */
290
+ isExporting?: boolean;
291
+ /** Button label */
292
+ label?: string;
293
+ /** Button size */
294
+ size?: 'sm' | 'md' | 'lg';
295
+ /** Button variant */
296
+ variant?: 'primary' | 'secondary' | 'outline';
297
+ /** Additional CSS class */
298
+ className?: string;
299
+ /** Disabled state */
300
+ disabled?: boolean;
301
+ }
302
+ /**
303
+ * ExportMenu provides a dropdown for exporting reports in various formats.
304
+ * This is an interface-only component - actual export logic is implemented at the app layer.
305
+ */
306
+ declare function ExportMenu({ options, onExport, isExporting, label, size, variant, className, disabled, }: ExportMenuProps): react_jsx_runtime.JSX.Element;
307
+ declare namespace ExportMenu {
308
+ var displayName: string;
309
+ }
310
+
311
+ export { CaveatBlock as C, DataCoverageBadge as D, EvidenceGroup as E, InsightBlock as I, KeyMetric as K, MethodologyNote as M, ReportShell as R, TrendIndicator as T, type CaveatBlockProps as a, ConfidenceIndicator as b, type ConfidenceIndicatorProps as c, type DataCoverageBadgeProps as d, DataStateIndicator as e, type DataStateIndicatorProps as f, type EvidenceGroupProps as g, ExecutiveThesis as h, type ExecutiveThesisProps as i, type ExportFormat as j, ExportMenu as k, type ExportMenuProps as l, type ExportOption as m, type InsightBlockProps as n, type KeyMetricProps as o, type MethodologyNoteLabels as p, type MethodologyNoteProps as q, type ReportShellProps as r, type TrendIndicatorProps as s };
@@ -0,0 +1,18 @@
1
+ import React__default, { HTMLAttributes } from 'react';
2
+
3
+ interface SectionHeaderProps extends Omit<HTMLAttributes<HTMLDivElement>, 'title'> {
4
+ title?: React__default.ReactNode;
5
+ subtitle?: React__default.ReactNode;
6
+ eyebrow?: React__default.ReactNode;
7
+ align?: 'left' | 'center' | 'right';
8
+ }
9
+ declare const SectionHeader: React__default.ForwardRefExoticComponent<SectionHeaderProps & React__default.RefAttributes<HTMLDivElement>>;
10
+ interface SectionShellProps extends HTMLAttributes<HTMLDivElement> {
11
+ background?: 'default' | 'muted' | 'brand' | 'transparent';
12
+ padding?: 'none' | 'sm' | 'md' | 'lg';
13
+ containerSize?: 'sm' | 'md' | 'lg' | 'xl' | 'fluid';
14
+ containerFluid?: boolean;
15
+ }
16
+ declare const SectionShell: React__default.ForwardRefExoticComponent<SectionShellProps & React__default.RefAttributes<HTMLDivElement>>;
17
+
18
+ export { SectionHeader as S, type SectionHeaderProps as a, SectionShell as b, type SectionShellProps as c };
@@ -0,0 +1,18 @@
1
+ import React__default, { HTMLAttributes } from 'react';
2
+
3
+ interface SectionHeaderProps extends Omit<HTMLAttributes<HTMLDivElement>, 'title'> {
4
+ title?: React__default.ReactNode;
5
+ subtitle?: React__default.ReactNode;
6
+ eyebrow?: React__default.ReactNode;
7
+ align?: 'left' | 'center' | 'right';
8
+ }
9
+ declare const SectionHeader: React__default.ForwardRefExoticComponent<SectionHeaderProps & React__default.RefAttributes<HTMLDivElement>>;
10
+ interface SectionShellProps extends HTMLAttributes<HTMLDivElement> {
11
+ background?: 'default' | 'muted' | 'brand' | 'transparent';
12
+ padding?: 'none' | 'sm' | 'md' | 'lg';
13
+ containerSize?: 'sm' | 'md' | 'lg' | 'xl' | 'fluid';
14
+ containerFluid?: boolean;
15
+ }
16
+ declare const SectionShell: React__default.ForwardRefExoticComponent<SectionShellProps & React__default.RefAttributes<HTMLDivElement>>;
17
+
18
+ export { SectionHeader as S, type SectionHeaderProps as a, SectionShell as b, type SectionShellProps as c };
@@ -0,0 +1,66 @@
1
+ import * as react_jsx_runtime from 'react/jsx-runtime';
2
+ import React__default from 'react';
3
+
4
+ interface SelectProps {
5
+ /** Current selected value */
6
+ value?: string;
7
+ /** Default value for uncontrolled mode */
8
+ defaultValue?: string;
9
+ /** Callback when value changes */
10
+ onValueChange?: (value: string | null) => void;
11
+ /** Whether the select is disabled */
12
+ disabled?: boolean;
13
+ /** Whether the select is required */
14
+ required?: boolean;
15
+ /** Name for form submission */
16
+ name?: string;
17
+ /**
18
+ * Item label map for Value display resolution.
19
+ * When provided, Select.Value renders the label instead of the raw value.
20
+ * Accepts a record (e.g. `{ en: "English", fr: "French" }`) or an array
21
+ * of `{ value, label }` objects.
22
+ */
23
+ items?: Record<string, React__default.ReactNode> | ReadonlyArray<{
24
+ label: React__default.ReactNode;
25
+ value: string;
26
+ }>;
27
+ /** Children (SelectTrigger, SelectContent, etc.) */
28
+ children: React__default.ReactNode;
29
+ }
30
+ declare function Select({ value, defaultValue, onValueChange, disabled, required, name, items, children, }: SelectProps): react_jsx_runtime.JSX.Element;
31
+ declare namespace Select {
32
+ var displayName: string;
33
+ }
34
+ interface SelectTriggerProps extends React__default.ButtonHTMLAttributes<HTMLButtonElement> {
35
+ /** Placeholder text when no value selected */
36
+ placeholder?: string;
37
+ /** Size variant */
38
+ size?: 'sm' | 'md' | 'lg';
39
+ }
40
+ declare const SelectTrigger: React__default.ForwardRefExoticComponent<SelectTriggerProps & React__default.RefAttributes<HTMLButtonElement>>;
41
+ interface SelectContentProps extends React__default.HTMLAttributes<HTMLDivElement> {
42
+ /** Positioning side */
43
+ side?: 'top' | 'bottom';
44
+ /** Side offset in pixels */
45
+ sideOffset?: number;
46
+ /** Alignment */
47
+ align?: 'start' | 'center' | 'end';
48
+ }
49
+ declare const SelectContent: React__default.ForwardRefExoticComponent<SelectContentProps & React__default.RefAttributes<HTMLDivElement>>;
50
+ interface SelectItemProps extends Omit<React__default.HTMLAttributes<HTMLDivElement>, 'children'> {
51
+ /** Value for this option */
52
+ value: string;
53
+ /** Display text */
54
+ children: React__default.ReactNode;
55
+ /** Whether the item is disabled */
56
+ disabled?: boolean;
57
+ }
58
+ declare const SelectItem: React__default.ForwardRefExoticComponent<SelectItemProps & React__default.RefAttributes<HTMLDivElement>>;
59
+ interface SelectGroupProps extends React__default.HTMLAttributes<HTMLDivElement> {
60
+ /** Group label */
61
+ label?: string;
62
+ }
63
+ declare const SelectGroup: React__default.ForwardRefExoticComponent<SelectGroupProps & React__default.RefAttributes<HTMLDivElement>>;
64
+ declare const SelectSeparator: React__default.ForwardRefExoticComponent<React__default.HTMLAttributes<HTMLDivElement> & React__default.RefAttributes<HTMLDivElement>>;
65
+
66
+ export { Select as S, SelectContent as a, type SelectContentProps as b, SelectGroup as c, type SelectGroupProps as d, SelectItem as e, type SelectItemProps as f, type SelectProps as g, SelectSeparator as h, SelectTrigger as i, type SelectTriggerProps as j };
@@ -0,0 +1,66 @@
1
+ import * as react_jsx_runtime from 'react/jsx-runtime';
2
+ import React__default from 'react';
3
+
4
+ interface SelectProps {
5
+ /** Current selected value */
6
+ value?: string;
7
+ /** Default value for uncontrolled mode */
8
+ defaultValue?: string;
9
+ /** Callback when value changes */
10
+ onValueChange?: (value: string | null) => void;
11
+ /** Whether the select is disabled */
12
+ disabled?: boolean;
13
+ /** Whether the select is required */
14
+ required?: boolean;
15
+ /** Name for form submission */
16
+ name?: string;
17
+ /**
18
+ * Item label map for Value display resolution.
19
+ * When provided, Select.Value renders the label instead of the raw value.
20
+ * Accepts a record (e.g. `{ en: "English", fr: "French" }`) or an array
21
+ * of `{ value, label }` objects.
22
+ */
23
+ items?: Record<string, React__default.ReactNode> | ReadonlyArray<{
24
+ label: React__default.ReactNode;
25
+ value: string;
26
+ }>;
27
+ /** Children (SelectTrigger, SelectContent, etc.) */
28
+ children: React__default.ReactNode;
29
+ }
30
+ declare function Select({ value, defaultValue, onValueChange, disabled, required, name, items, children, }: SelectProps): react_jsx_runtime.JSX.Element;
31
+ declare namespace Select {
32
+ var displayName: string;
33
+ }
34
+ interface SelectTriggerProps extends React__default.ButtonHTMLAttributes<HTMLButtonElement> {
35
+ /** Placeholder text when no value selected */
36
+ placeholder?: string;
37
+ /** Size variant */
38
+ size?: 'sm' | 'md' | 'lg';
39
+ }
40
+ declare const SelectTrigger: React__default.ForwardRefExoticComponent<SelectTriggerProps & React__default.RefAttributes<HTMLButtonElement>>;
41
+ interface SelectContentProps extends React__default.HTMLAttributes<HTMLDivElement> {
42
+ /** Positioning side */
43
+ side?: 'top' | 'bottom';
44
+ /** Side offset in pixels */
45
+ sideOffset?: number;
46
+ /** Alignment */
47
+ align?: 'start' | 'center' | 'end';
48
+ }
49
+ declare const SelectContent: React__default.ForwardRefExoticComponent<SelectContentProps & React__default.RefAttributes<HTMLDivElement>>;
50
+ interface SelectItemProps extends Omit<React__default.HTMLAttributes<HTMLDivElement>, 'children'> {
51
+ /** Value for this option */
52
+ value: string;
53
+ /** Display text */
54
+ children: React__default.ReactNode;
55
+ /** Whether the item is disabled */
56
+ disabled?: boolean;
57
+ }
58
+ declare const SelectItem: React__default.ForwardRefExoticComponent<SelectItemProps & React__default.RefAttributes<HTMLDivElement>>;
59
+ interface SelectGroupProps extends React__default.HTMLAttributes<HTMLDivElement> {
60
+ /** Group label */
61
+ label?: string;
62
+ }
63
+ declare const SelectGroup: React__default.ForwardRefExoticComponent<SelectGroupProps & React__default.RefAttributes<HTMLDivElement>>;
64
+ declare const SelectSeparator: React__default.ForwardRefExoticComponent<React__default.HTMLAttributes<HTMLDivElement> & React__default.RefAttributes<HTMLDivElement>>;
65
+
66
+ export { Select as S, SelectContent as a, type SelectContentProps as b, SelectGroup as c, type SelectGroupProps as d, SelectItem as e, type SelectItemProps as f, type SelectProps as g, SelectSeparator as h, SelectTrigger as i, type SelectTriggerProps as j };