cekat-ui 1.3.9 → 1.3.11

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.mts CHANGED
@@ -11,6 +11,8 @@ import { GroupProps } from 'react-aria-components';
11
11
  import { InputProps as InputProps_2 } from 'react-aria-components';
12
12
  import { JSX as JSX_2 } from 'react/jsx-runtime';
13
13
  import { Key } from 'react-aria-components';
14
+ import { LinkProps as LinkProps_2 } from 'react-aria-components';
15
+ import { LinkRenderProps } from 'react-aria-components';
14
16
  import { ListBoxItemProps as ListBoxItemProps_2 } from 'react-aria-components';
15
17
  import { ListBoxProps as ListBoxProps_2 } from 'react-aria-components';
16
18
  import { MenuItemProps as MenuItemProps_2 } from 'react-aria-components';
@@ -240,6 +242,71 @@ export declare type BadgeSize = 'sm' | 'md' | 'lg';
240
242
 
241
243
  export declare type BadgeVariant = 'solid' | 'outline';
242
244
 
245
+ /**
246
+ * Wraps RAC's `<Breadcrumb>` (an `<li>`). RAC computes `isCurrent` from the item's position
247
+ * in the collection — the last item gets it — so the trailing separator is suppressed
248
+ * automatically instead of the caller having to know which crumb is last.
249
+ */
250
+ export declare const Breadcrumb: {
251
+ ({ className, children }: BreadcrumbProps): JSX_2.Element;
252
+ displayName: string;
253
+ };
254
+
255
+ /**
256
+ * Composes `Link`. `variant`/`size` fall back to the parent `Breadcrumbs`' values via
257
+ * context so callers don't repeat them on every crumb, but either can still be overridden
258
+ * per item. `href` should be omitted on the current (last) crumb — RAC's `Breadcrumb`
259
+ * already forces it non-interactive via context, but leaving `href` off keeps the rendered
260
+ * element a `<span>` rather than a disabled `<a>`.
261
+ */
262
+ export declare const BreadcrumbLink: {
263
+ ({ variant, size, icon, children, ...props }: BreadcrumbLinkProps): JSX_2.Element;
264
+ displayName: string;
265
+ };
266
+
267
+ export declare interface BreadcrumbLinkProps extends Omit<LinkProps, 'children'> {
268
+ icon?: React_2.ReactNode;
269
+ children?: React_2.ReactNode;
270
+ }
271
+
272
+ export declare interface BreadcrumbProps {
273
+ className?: string;
274
+ children: React_2.ReactNode;
275
+ }
276
+
277
+ /**
278
+ * RAC's `<Breadcrumbs>` renders only the `<ol>` — no `<nav>` landmark, so no accessible
279
+ * name without this wrapper. `variant`/`size`/`separator` cascade to every `Breadcrumb`
280
+ * child through context rather than being repeated per item.
281
+ */
282
+ export declare const Breadcrumbs: {
283
+ ({ "aria-label": ariaLabel, separator, variant, size, isDisabled, className, children, }: BreadcrumbsProps): JSX_2.Element;
284
+ displayName: string;
285
+ };
286
+
287
+ /** Decorative only — `aria-hidden` keeps it out of the accessible name and tab order. */
288
+ export declare const BreadcrumbSeparator: {
289
+ ({ type, className }: BreadcrumbSeparatorProps): JSX_2.Element;
290
+ displayName: string;
291
+ };
292
+
293
+ export declare interface BreadcrumbSeparatorProps {
294
+ type?: BreadcrumbSeparatorType;
295
+ className?: string;
296
+ }
297
+
298
+ export declare type BreadcrumbSeparatorType = 'chevron' | 'slash';
299
+
300
+ export declare interface BreadcrumbsProps {
301
+ 'aria-label'?: string;
302
+ separator?: BreadcrumbSeparatorType;
303
+ variant?: LinkVariant;
304
+ size?: LinkSize;
305
+ isDisabled?: boolean;
306
+ className?: string;
307
+ children: React_2.ReactNode;
308
+ }
309
+
243
310
  export declare const Button: ButtonCompound;
244
311
 
245
312
  /** `ForwardRefExoticComponent` rather than `FC`: the base forwards a ref to its `<button>`. */
@@ -593,6 +660,29 @@ declare interface InputTrailingButtonSlot {
593
660
  disabled?: boolean;
594
661
  }
595
662
 
663
+ /**
664
+ * Built on react-aria-components' `<Link>`. Renders `<a href>` when `href` is passed and
665
+ * `<span>` otherwise — RAC's own fallback, not something this wrapper decides — so a
666
+ * `Link` used for the current page of a breadcrumb trail stays out of tab order without an
667
+ * `isDisabled` prop.
668
+ */
669
+ export declare const Link: React_2.ForwardRefExoticComponent<LinkProps & React_2.RefAttributes<HTMLAnchorElement>>;
670
+
671
+ export declare interface LinkProps extends Omit<LinkProps_2, 'className'> {
672
+ variant?: LinkVariant;
673
+ size?: LinkSize;
674
+ underline?: LinkUnderline;
675
+ className?: string;
676
+ }
677
+
678
+ export { LinkRenderProps }
679
+
680
+ export declare type LinkSize = 'xs' | 'sm' | 'md';
681
+
682
+ export declare type LinkUnderline = 'none' | 'hover' | 'always';
683
+
684
+ export declare type LinkVariant = 'text' | 'ghost' | 'ghost-primary';
685
+
596
686
  export declare const ListBox: <T extends object>(props: ListBoxProps<T> & {
597
687
  ref?: React_2.Ref<HTMLDivElement>;
598
688
  }) => React_2.ReactElement;
@@ -630,6 +720,21 @@ export declare interface ListBoxSeparatorProps {
630
720
  className?: string;
631
721
  }
632
722
 
723
+ /**
724
+ * Built on react-aria-components' `<ProgressBar>` (`isIndeterminate`) for the accessible
725
+ * progress-widget semantics (`role="progressbar"`, `aria-valuetext`, label wiring via
726
+ * `useProgressBar`). Visual variants stay Cekat's (`size` / `style` / `supportingText`).
727
+ *
728
+ * `role="progressbar"` is a widget role, not a live region — unlike the plain
729
+ * `role="status"` div this replaced, it does not auto-announce to screen readers on mount by
730
+ * itself. An outer `aria-live="polite"` / `aria-atomic="true"` wrapper restores that
731
+ * announce-on-mount behavior. It has to be a *separate* wrapping element, not props spread
732
+ * onto `<ProgressBar>` directly: react-aria's `useProgressBar` runs every prop through
733
+ * `filterDOMProps({ labelable: true })` internally, which only allow-lists
734
+ * `aria-label`/`aria-labelledby`/`aria-describedby`/`aria-details` — `aria-live` and
735
+ * `aria-atomic` are silently stripped before they reach the DOM if passed directly (confirmed
736
+ * via a failing interaction test before this wrapper was added; see Loading.stories.tsx).
737
+ */
633
738
  export declare const Loading: {
634
739
  ({ size, style, supportingText, label, className, }: LoadingProps): JSX_2.Element;
635
740
  displayName: string;
@@ -784,6 +889,66 @@ export declare type ModalSize = 'sm' | 'md' | 'lg';
784
889
 
785
890
  declare type NativeButtonProps = Omit<React_2.ButtonHTMLAttributes<HTMLButtonElement>, 'children' | 'className' | 'style'>;
786
891
 
892
+ /**
893
+ * Notification-card toast — Figma `ToastV2` (`node-id=1652-1892`). Presentation-only, same
894
+ * as the pill `Toast`: render it through whatever engine owns positioning/stacking/dismissal
895
+ * (`sonner`'s `toast.custom()` in this codebase). Not built on React Aria — no matching RAC
896
+ * primitive, `sonner` already owns the interaction/timing behavior this would otherwise need
897
+ * RAC for (same reasoning as `Toast` and `Alert`).
898
+ *
899
+ * `type` collapses Figma's 18 desktop/mobile permutations into 9 — no `breakpoint` prop. See
900
+ * `~/Desktop/cekat-ds-audit/RFC-alert-toast-component.md` §8 for why.
901
+ */
902
+ export declare const NotificationToast: {
903
+ ({ type, title, supportingText, primaryAction, secondaryAction, onClose, closeLabel, icon, avatarSrc, avatarAlt, timestamp, imageSrc, imageAlt, progressValue, progressLabel, className, }: NotificationToastProps): JSX_2.Element;
904
+ displayName: string;
905
+ };
906
+
907
+ export declare interface NotificationToastAction {
908
+ label: React_2.ReactNode;
909
+ onClick?: () => void;
910
+ }
911
+
912
+ export declare interface NotificationToastProps {
913
+ type: NotificationToastType;
914
+ title: React_2.ReactNode;
915
+ /** Supporting text under the title. Presence-implies-render, same as `Alert`'s `description`. */
916
+ supportingText?: React_2.ReactNode;
917
+ /** Emphasised action, e.g. "View changes" / "Upload another". Rendered as a text link. */
918
+ primaryAction?: NotificationToastAction;
919
+ /** Low-emphasis action, e.g. "Dismiss" / "Cancel". Rendered as a text link. */
920
+ secondaryAction?: NotificationToastAction;
921
+ /** Renders the close (X) button when provided. */
922
+ onClose?: () => void;
923
+ closeLabel?: string;
924
+ /** `type: "gray-icon"` requires a caller-supplied icon — Figma's example glyph
925
+ * (`brand-codesandbox`) is an arbitrary product icon, not a fixed semantic default. */
926
+ icon?: React_2.ReactNode;
927
+ /** `type: "avatar"` only. */
928
+ avatarSrc?: string;
929
+ avatarAlt?: string;
930
+ /** e.g. "2 mins ago". */
931
+ timestamp?: React_2.ReactNode;
932
+ /** `type: "image"` only. */
933
+ imageSrc?: string;
934
+ imageAlt?: string;
935
+ /** `type: "progress"` only. */
936
+ progressValue?: number;
937
+ /** e.g. "60% uploaded...". */
938
+ progressLabel?: React_2.ReactNode;
939
+ className?: string;
940
+ }
941
+
942
+ /**
943
+ * Figma `ToastV2` component set (`node-id=1652-1892`) collapsed from 18 desktop/mobile
944
+ * permutations down to 9 — no `breakpoint` prop. 8 of 9 types are a pure CSS reflow between
945
+ * breakpoints (icon/badge + title + supporting text + actions, same tree, narrower width);
946
+ * `image` has the largest delta (strip on the left vs. on top) but is still handled with
947
+ * `sm:` responsive classes, not a second variant. See
948
+ * `~/Desktop/cekat-ds-audit/RFC-alert-toast-component.md` §8 for the full reasoning.
949
+ */
950
+ export declare type NotificationToastType = 'primary-icon' | 'gray-icon' | 'progress' | 'avatar' | 'image' | 'success' | 'warning' | 'error' | 'no-icon';
951
+
787
952
  export declare function PhoneInput({ size, label, required, hint, error, disabled, placeholder, rightIcon, value, onChange, className, wrapperClassName, }: PhoneInputProps): JSX_2.Element;
788
953
 
789
954
  declare interface PhoneInputProps {
@@ -1242,6 +1407,33 @@ export declare interface TextareaProps extends Omit<React_2.TextareaHTMLAttribut
1242
1407
  wrapperClassName?: ClassValue;
1243
1408
  }
1244
1409
 
1410
+ /**
1411
+ * Presentation-only pill toast, matching Figma's `ToastV1` anatomy (icon badge + bold
1412
+ * lead-in + message, optional close). Not a toast engine — render it through whatever
1413
+ * toast library owns positioning/stacking/auto-dismiss (`sonner`'s `toast.custom()` in
1414
+ * this codebase, the same way `cekat-dashboard`'s `CekatToast` is used today via
1415
+ * `utils/showMessage.ts`). See `docs`/`RFC-alert-toast-component.md` in the audit folder
1416
+ * for why the richer 9-type `ToastV2` notification-card family is out of scope here.
1417
+ */
1418
+ export declare const Toast: {
1419
+ ({ variant, message, title, onClose, closeLabel, className, }: ToastProps): JSX_2.Element;
1420
+ displayName: string;
1421
+ };
1422
+
1423
+ export declare interface ToastProps {
1424
+ variant: ToastVariant;
1425
+ /** Message text after the bold lead-in. */
1426
+ message: React_2.ReactNode;
1427
+ /** Overrides the variant's default bold lead-in (e.g. "Success!"). */
1428
+ title?: React_2.ReactNode;
1429
+ /** Renders the small circular close badge when provided. */
1430
+ onClose?: () => void;
1431
+ closeLabel?: string;
1432
+ className?: string;
1433
+ }
1434
+
1435
+ export declare type ToastVariant = 'success' | 'error' | 'warning' | 'info';
1436
+
1245
1437
  export declare const Toggle: React_2.ForwardRefExoticComponent<ToggleProps & React_2.RefAttributes<HTMLButtonElement>>;
1246
1438
 
1247
1439
  export declare interface ToggleProps extends Omit<React_2.InputHTMLAttributes<HTMLInputElement>, 'size' | 'type'> {
package/dist/index.d.ts CHANGED
@@ -11,6 +11,8 @@ import { GroupProps } from 'react-aria-components';
11
11
  import { InputProps as InputProps_2 } from 'react-aria-components';
12
12
  import { JSX as JSX_2 } from 'react/jsx-runtime';
13
13
  import { Key } from 'react-aria-components';
14
+ import { LinkProps as LinkProps_2 } from 'react-aria-components';
15
+ import { LinkRenderProps } from 'react-aria-components';
14
16
  import { ListBoxItemProps as ListBoxItemProps_2 } from 'react-aria-components';
15
17
  import { ListBoxProps as ListBoxProps_2 } from 'react-aria-components';
16
18
  import { MenuItemProps as MenuItemProps_2 } from 'react-aria-components';
@@ -240,6 +242,71 @@ export declare type BadgeSize = 'sm' | 'md' | 'lg';
240
242
 
241
243
  export declare type BadgeVariant = 'solid' | 'outline';
242
244
 
245
+ /**
246
+ * Wraps RAC's `<Breadcrumb>` (an `<li>`). RAC computes `isCurrent` from the item's position
247
+ * in the collection — the last item gets it — so the trailing separator is suppressed
248
+ * automatically instead of the caller having to know which crumb is last.
249
+ */
250
+ export declare const Breadcrumb: {
251
+ ({ className, children }: BreadcrumbProps): JSX_2.Element;
252
+ displayName: string;
253
+ };
254
+
255
+ /**
256
+ * Composes `Link`. `variant`/`size` fall back to the parent `Breadcrumbs`' values via
257
+ * context so callers don't repeat them on every crumb, but either can still be overridden
258
+ * per item. `href` should be omitted on the current (last) crumb — RAC's `Breadcrumb`
259
+ * already forces it non-interactive via context, but leaving `href` off keeps the rendered
260
+ * element a `<span>` rather than a disabled `<a>`.
261
+ */
262
+ export declare const BreadcrumbLink: {
263
+ ({ variant, size, icon, children, ...props }: BreadcrumbLinkProps): JSX_2.Element;
264
+ displayName: string;
265
+ };
266
+
267
+ export declare interface BreadcrumbLinkProps extends Omit<LinkProps, 'children'> {
268
+ icon?: React_2.ReactNode;
269
+ children?: React_2.ReactNode;
270
+ }
271
+
272
+ export declare interface BreadcrumbProps {
273
+ className?: string;
274
+ children: React_2.ReactNode;
275
+ }
276
+
277
+ /**
278
+ * RAC's `<Breadcrumbs>` renders only the `<ol>` — no `<nav>` landmark, so no accessible
279
+ * name without this wrapper. `variant`/`size`/`separator` cascade to every `Breadcrumb`
280
+ * child through context rather than being repeated per item.
281
+ */
282
+ export declare const Breadcrumbs: {
283
+ ({ "aria-label": ariaLabel, separator, variant, size, isDisabled, className, children, }: BreadcrumbsProps): JSX_2.Element;
284
+ displayName: string;
285
+ };
286
+
287
+ /** Decorative only — `aria-hidden` keeps it out of the accessible name and tab order. */
288
+ export declare const BreadcrumbSeparator: {
289
+ ({ type, className }: BreadcrumbSeparatorProps): JSX_2.Element;
290
+ displayName: string;
291
+ };
292
+
293
+ export declare interface BreadcrumbSeparatorProps {
294
+ type?: BreadcrumbSeparatorType;
295
+ className?: string;
296
+ }
297
+
298
+ export declare type BreadcrumbSeparatorType = 'chevron' | 'slash';
299
+
300
+ export declare interface BreadcrumbsProps {
301
+ 'aria-label'?: string;
302
+ separator?: BreadcrumbSeparatorType;
303
+ variant?: LinkVariant;
304
+ size?: LinkSize;
305
+ isDisabled?: boolean;
306
+ className?: string;
307
+ children: React_2.ReactNode;
308
+ }
309
+
243
310
  export declare const Button: ButtonCompound;
244
311
 
245
312
  /** `ForwardRefExoticComponent` rather than `FC`: the base forwards a ref to its `<button>`. */
@@ -593,6 +660,29 @@ declare interface InputTrailingButtonSlot {
593
660
  disabled?: boolean;
594
661
  }
595
662
 
663
+ /**
664
+ * Built on react-aria-components' `<Link>`. Renders `<a href>` when `href` is passed and
665
+ * `<span>` otherwise — RAC's own fallback, not something this wrapper decides — so a
666
+ * `Link` used for the current page of a breadcrumb trail stays out of tab order without an
667
+ * `isDisabled` prop.
668
+ */
669
+ export declare const Link: React_2.ForwardRefExoticComponent<LinkProps & React_2.RefAttributes<HTMLAnchorElement>>;
670
+
671
+ export declare interface LinkProps extends Omit<LinkProps_2, 'className'> {
672
+ variant?: LinkVariant;
673
+ size?: LinkSize;
674
+ underline?: LinkUnderline;
675
+ className?: string;
676
+ }
677
+
678
+ export { LinkRenderProps }
679
+
680
+ export declare type LinkSize = 'xs' | 'sm' | 'md';
681
+
682
+ export declare type LinkUnderline = 'none' | 'hover' | 'always';
683
+
684
+ export declare type LinkVariant = 'text' | 'ghost' | 'ghost-primary';
685
+
596
686
  export declare const ListBox: <T extends object>(props: ListBoxProps<T> & {
597
687
  ref?: React_2.Ref<HTMLDivElement>;
598
688
  }) => React_2.ReactElement;
@@ -630,6 +720,21 @@ export declare interface ListBoxSeparatorProps {
630
720
  className?: string;
631
721
  }
632
722
 
723
+ /**
724
+ * Built on react-aria-components' `<ProgressBar>` (`isIndeterminate`) for the accessible
725
+ * progress-widget semantics (`role="progressbar"`, `aria-valuetext`, label wiring via
726
+ * `useProgressBar`). Visual variants stay Cekat's (`size` / `style` / `supportingText`).
727
+ *
728
+ * `role="progressbar"` is a widget role, not a live region — unlike the plain
729
+ * `role="status"` div this replaced, it does not auto-announce to screen readers on mount by
730
+ * itself. An outer `aria-live="polite"` / `aria-atomic="true"` wrapper restores that
731
+ * announce-on-mount behavior. It has to be a *separate* wrapping element, not props spread
732
+ * onto `<ProgressBar>` directly: react-aria's `useProgressBar` runs every prop through
733
+ * `filterDOMProps({ labelable: true })` internally, which only allow-lists
734
+ * `aria-label`/`aria-labelledby`/`aria-describedby`/`aria-details` — `aria-live` and
735
+ * `aria-atomic` are silently stripped before they reach the DOM if passed directly (confirmed
736
+ * via a failing interaction test before this wrapper was added; see Loading.stories.tsx).
737
+ */
633
738
  export declare const Loading: {
634
739
  ({ size, style, supportingText, label, className, }: LoadingProps): JSX_2.Element;
635
740
  displayName: string;
@@ -784,6 +889,66 @@ export declare type ModalSize = 'sm' | 'md' | 'lg';
784
889
 
785
890
  declare type NativeButtonProps = Omit<React_2.ButtonHTMLAttributes<HTMLButtonElement>, 'children' | 'className' | 'style'>;
786
891
 
892
+ /**
893
+ * Notification-card toast — Figma `ToastV2` (`node-id=1652-1892`). Presentation-only, same
894
+ * as the pill `Toast`: render it through whatever engine owns positioning/stacking/dismissal
895
+ * (`sonner`'s `toast.custom()` in this codebase). Not built on React Aria — no matching RAC
896
+ * primitive, `sonner` already owns the interaction/timing behavior this would otherwise need
897
+ * RAC for (same reasoning as `Toast` and `Alert`).
898
+ *
899
+ * `type` collapses Figma's 18 desktop/mobile permutations into 9 — no `breakpoint` prop. See
900
+ * `~/Desktop/cekat-ds-audit/RFC-alert-toast-component.md` §8 for why.
901
+ */
902
+ export declare const NotificationToast: {
903
+ ({ type, title, supportingText, primaryAction, secondaryAction, onClose, closeLabel, icon, avatarSrc, avatarAlt, timestamp, imageSrc, imageAlt, progressValue, progressLabel, className, }: NotificationToastProps): JSX_2.Element;
904
+ displayName: string;
905
+ };
906
+
907
+ export declare interface NotificationToastAction {
908
+ label: React_2.ReactNode;
909
+ onClick?: () => void;
910
+ }
911
+
912
+ export declare interface NotificationToastProps {
913
+ type: NotificationToastType;
914
+ title: React_2.ReactNode;
915
+ /** Supporting text under the title. Presence-implies-render, same as `Alert`'s `description`. */
916
+ supportingText?: React_2.ReactNode;
917
+ /** Emphasised action, e.g. "View changes" / "Upload another". Rendered as a text link. */
918
+ primaryAction?: NotificationToastAction;
919
+ /** Low-emphasis action, e.g. "Dismiss" / "Cancel". Rendered as a text link. */
920
+ secondaryAction?: NotificationToastAction;
921
+ /** Renders the close (X) button when provided. */
922
+ onClose?: () => void;
923
+ closeLabel?: string;
924
+ /** `type: "gray-icon"` requires a caller-supplied icon — Figma's example glyph
925
+ * (`brand-codesandbox`) is an arbitrary product icon, not a fixed semantic default. */
926
+ icon?: React_2.ReactNode;
927
+ /** `type: "avatar"` only. */
928
+ avatarSrc?: string;
929
+ avatarAlt?: string;
930
+ /** e.g. "2 mins ago". */
931
+ timestamp?: React_2.ReactNode;
932
+ /** `type: "image"` only. */
933
+ imageSrc?: string;
934
+ imageAlt?: string;
935
+ /** `type: "progress"` only. */
936
+ progressValue?: number;
937
+ /** e.g. "60% uploaded...". */
938
+ progressLabel?: React_2.ReactNode;
939
+ className?: string;
940
+ }
941
+
942
+ /**
943
+ * Figma `ToastV2` component set (`node-id=1652-1892`) collapsed from 18 desktop/mobile
944
+ * permutations down to 9 — no `breakpoint` prop. 8 of 9 types are a pure CSS reflow between
945
+ * breakpoints (icon/badge + title + supporting text + actions, same tree, narrower width);
946
+ * `image` has the largest delta (strip on the left vs. on top) but is still handled with
947
+ * `sm:` responsive classes, not a second variant. See
948
+ * `~/Desktop/cekat-ds-audit/RFC-alert-toast-component.md` §8 for the full reasoning.
949
+ */
950
+ export declare type NotificationToastType = 'primary-icon' | 'gray-icon' | 'progress' | 'avatar' | 'image' | 'success' | 'warning' | 'error' | 'no-icon';
951
+
787
952
  export declare function PhoneInput({ size, label, required, hint, error, disabled, placeholder, rightIcon, value, onChange, className, wrapperClassName, }: PhoneInputProps): JSX_2.Element;
788
953
 
789
954
  declare interface PhoneInputProps {
@@ -1242,6 +1407,33 @@ export declare interface TextareaProps extends Omit<React_2.TextareaHTMLAttribut
1242
1407
  wrapperClassName?: ClassValue;
1243
1408
  }
1244
1409
 
1410
+ /**
1411
+ * Presentation-only pill toast, matching Figma's `ToastV1` anatomy (icon badge + bold
1412
+ * lead-in + message, optional close). Not a toast engine — render it through whatever
1413
+ * toast library owns positioning/stacking/auto-dismiss (`sonner`'s `toast.custom()` in
1414
+ * this codebase, the same way `cekat-dashboard`'s `CekatToast` is used today via
1415
+ * `utils/showMessage.ts`). See `docs`/`RFC-alert-toast-component.md` in the audit folder
1416
+ * for why the richer 9-type `ToastV2` notification-card family is out of scope here.
1417
+ */
1418
+ export declare const Toast: {
1419
+ ({ variant, message, title, onClose, closeLabel, className, }: ToastProps): JSX_2.Element;
1420
+ displayName: string;
1421
+ };
1422
+
1423
+ export declare interface ToastProps {
1424
+ variant: ToastVariant;
1425
+ /** Message text after the bold lead-in. */
1426
+ message: React_2.ReactNode;
1427
+ /** Overrides the variant's default bold lead-in (e.g. "Success!"). */
1428
+ title?: React_2.ReactNode;
1429
+ /** Renders the small circular close badge when provided. */
1430
+ onClose?: () => void;
1431
+ closeLabel?: string;
1432
+ className?: string;
1433
+ }
1434
+
1435
+ export declare type ToastVariant = 'success' | 'error' | 'warning' | 'info';
1436
+
1245
1437
  export declare const Toggle: React_2.ForwardRefExoticComponent<ToggleProps & React_2.RefAttributes<HTMLButtonElement>>;
1246
1438
 
1247
1439
  export declare interface ToggleProps extends Omit<React_2.InputHTMLAttributes<HTMLInputElement>, 'size' | 'type'> {