lucent-ui 0.21.0 → 0.23.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.
package/dist/index.d.ts CHANGED
@@ -107,6 +107,21 @@ export declare interface BreadcrumbProps {
107
107
 
108
108
  export declare const Button: ForwardRefExoticComponent<ButtonProps & RefAttributes<HTMLButtonElement>>;
109
109
 
110
+ export declare function ButtonGroup({ children, style, }: ButtonGroupProps): JSX_2.Element;
111
+
112
+ export declare namespace ButtonGroup {
113
+ var displayName: string;
114
+ }
115
+
116
+ export declare const ButtonGroupManifest: ComponentManifest;
117
+
118
+ export declare interface ButtonGroupProps {
119
+ /** Button or SplitButton children to group. */
120
+ children: ReactNode;
121
+ /** Style overrides for the wrapper. */
122
+ style?: CSSProperties;
123
+ }
124
+
110
125
  export declare const ButtonManifest: ComponentManifest;
111
126
 
112
127
  export declare interface ButtonProps extends ButtonHTMLAttributes<HTMLButtonElement> {
@@ -196,12 +211,12 @@ export declare interface CheckboxProps extends Omit<InputHTMLAttributes<HTMLInpu
196
211
 
197
212
  export declare type CheckboxSize = 'sm' | 'md' | 'lg';
198
213
 
199
- export declare function Chip({ children, variant, size, onDismiss, onClick, leftIcon, swatch, dot, borderless, disabled, style, }: ChipProps): JSX_2.Element;
214
+ export declare function Chip({ children, variant, size, onDismiss, onClick, leftIcon, swatch, dot, pulse, borderless, ghost, disabled, style, }: ChipProps): JSX_2.Element;
200
215
 
201
216
  export declare const CHIP_MANIFEST: ComponentManifest;
202
217
 
203
218
  export declare interface ChipProps {
204
- children: ReactNode;
219
+ children?: ReactNode;
205
220
  variant?: ChipVariant;
206
221
  size?: ChipSize;
207
222
  /** Renders an × button. Fires when clicked. */
@@ -214,8 +229,12 @@ export declare interface ChipProps {
214
229
  swatch?: string;
215
230
  /** Status dot rendered before the label (uses variant color). */
216
231
  dot?: boolean;
232
+ /** Adds a pulsing ring animation to the status dot. Only applies when dot=true. */
233
+ pulse?: boolean;
217
234
  /** Removes the border for a filled-only look. */
218
235
  borderless?: boolean;
236
+ /** Transparent background with text color only. Overrides borderless. */
237
+ ghost?: boolean;
219
238
  disabled?: boolean;
220
239
  style?: CSSProperties;
221
240
  }
@@ -1266,6 +1285,51 @@ export declare interface SpinnerProps {
1266
1285
 
1267
1286
  export declare type SpinnerSize = 'xs' | 'sm' | 'md' | 'lg';
1268
1287
 
1288
+ export declare function SplitButton({ children, onClick, menuItems, variant, size, bordered, menuPlacement, disabled, loading, leftIcon, style, }: SplitButtonProps): JSX_2.Element;
1289
+
1290
+ export declare namespace SplitButton {
1291
+ var displayName: string;
1292
+ }
1293
+
1294
+ export declare const SplitButtonManifest: ComponentManifest;
1295
+
1296
+ export declare interface SplitButtonMenuItem {
1297
+ label: string;
1298
+ onSelect: () => void;
1299
+ disabled?: boolean;
1300
+ danger?: boolean;
1301
+ icon?: ReactNode;
1302
+ }
1303
+
1304
+ export declare interface SplitButtonProps {
1305
+ /** Primary button label. */
1306
+ children: ReactNode;
1307
+ /** Handler for the primary action (left half). */
1308
+ onClick: () => void;
1309
+ /** Items shown in the dropdown menu. */
1310
+ menuItems: SplitButtonMenuItem[];
1311
+ /** Visual variant applied to both halves. */
1312
+ variant?: SplitButtonVariant;
1313
+ /** Size applied to both halves. */
1314
+ size?: SplitButtonSize;
1315
+ /** If false, removes the border on both halves. */
1316
+ bordered?: boolean;
1317
+ /** Dropdown placement relative to the chevron trigger. */
1318
+ menuPlacement?: MenuPlacement;
1319
+ /** Disables both halves. */
1320
+ disabled?: boolean;
1321
+ /** Shows a spinner in the primary half and disables both. */
1322
+ loading?: boolean;
1323
+ /** Icon rendered before the label in the primary half. */
1324
+ leftIcon?: ReactNode;
1325
+ /** Style overrides for the wrapper. */
1326
+ style?: CSSProperties;
1327
+ }
1328
+
1329
+ export declare type SplitButtonSize = '2xs' | 'xs' | 'sm' | 'md' | 'lg';
1330
+
1331
+ export declare type SplitButtonVariant = 'primary' | 'secondary' | 'outline' | 'ghost' | 'danger' | 'danger-outline' | 'danger-ghost';
1332
+
1269
1333
  export declare function Stack({ gap, align, justify, as, wrap, children, style, ...rest }: StackProps): JSX_2.Element;
1270
1334
 
1271
1335
  export declare type StackAlign = 'start' | 'center' | 'end' | 'stretch' | 'baseline';