@factorialco/f0-react 6.58.0 → 6.60.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.
@@ -31,8 +31,8 @@ import { CountryCellValue } from './types/country';
31
31
  import { DateCellValue } from './types/date';
32
32
  import { DateCellValue as DateCellValue_2 } from './experimental';
33
33
  import { DateFilterOptions } from './DateFilter/DateFilter';
34
- import { default as default_2 } from 'maplibre-gl';
35
- import { default as default_3 } from 'react';
34
+ import { default as default_2 } from 'react';
35
+ import { default as default_3 } from 'maplibre-gl';
36
36
  import { DeltaCellValue } from './types/delta';
37
37
  import { Dispatch } from 'react';
38
38
  import { DotTagCellValue } from './types/dotTag';
@@ -384,8 +384,8 @@ declare const actionVariants: readonly ["default", "outline", "critical", "neutr
384
384
  /**
385
385
  * @experimental This is an experimental component use it at your own risk
386
386
  */
387
- export declare const ActivityItemList: (({ items, loadingMoreItems, onClickItem, onEndReached, onEndReachedItemsThreshold, }: ActivityItemListProps) => default_3.JSX.Element) & {
388
- Skeleton: () => default_3.JSX.Element;
387
+ export declare const ActivityItemList: (({ items, loadingMoreItems, onClickItem, onEndReached, onEndReachedItemsThreshold, }: ActivityItemListProps) => default_2.JSX.Element) & {
388
+ Skeleton: () => default_2.JSX.Element;
389
389
  };
390
390
 
391
391
  export declare type ActivityItemListProps = Pick<SectionProps, "items" | "onClickItem"> & {
@@ -394,7 +394,7 @@ export declare type ActivityItemListProps = Pick<SectionProps, "items" | "onClic
394
394
  loadingMoreItems?: boolean;
395
395
  };
396
396
 
397
- export declare const ActivityItemListSkeleton: () => default_3.JSX.Element;
397
+ export declare const ActivityItemListSkeleton: () => default_2.JSX.Element;
398
398
 
399
399
  declare type ActivityItemProps = {
400
400
  id: string;
@@ -990,7 +990,7 @@ chart: BarChartProps;
990
990
 
991
991
  declare type BaseAction = Pick<F0ButtonProps, "label" | "onClick" | "icon" | "disabled">;
992
992
 
993
- export declare const BaseActivityItemList: ({ items, loadingMoreItems, onClickItem, onEndReached, onEndReachedItemsThreshold, }: ActivityItemListProps) => default_3.JSX.Element;
993
+ export declare const BaseActivityItemList: ({ items, loadingMoreItems, onClickItem, onEndReached, onEndReachedItemsThreshold, }: ActivityItemListProps) => default_2.JSX.Element;
994
994
 
995
995
  declare const BaseAvatar: ForwardRefExoticComponent<BaseAvatarProps & RefAttributes<HTMLDivElement>>;
996
996
 
@@ -1888,22 +1888,22 @@ declare type CardPropertyDefinition<T> = PropertyDefinition_2<T> & {
1888
1888
  };
1889
1889
 
1890
1890
  declare const cardPropertyRenderers: {
1891
- readonly text: (args: TextCellValue_2, meta: ValueDisplayRendererContext_2) => default_3.JSX.Element;
1892
- readonly number: (args: NumberCellValue_2, meta: ValueDisplayRendererContext_2) => default_3.JSX.Element;
1893
- readonly date: (args: DateCellValue_2, meta: ValueDisplayRendererContext_2) => default_3.JSX.Element;
1894
- readonly amount: (args: AmountCellValue_2, meta: ValueDisplayRendererContext_2) => default_3.JSX.Element;
1895
- readonly person: (args: PersonCellValue_2, meta: ValueDisplayRendererContext_2) => default_3.JSX.Element;
1896
- readonly company: (args: CompanyCellValue_2, meta: ValueDisplayRendererContext_2) => default_3.JSX.Element;
1897
- readonly team: (args: TeamCellValue_2, meta: ValueDisplayRendererContext_2) => default_3.JSX.Element;
1898
- readonly status: (args: StatusCellValue_2) => default_3.JSX.Element;
1899
- readonly tag: (args: TagCellValue_2) => default_3.JSX.Element;
1900
- readonly avatarList: (args: AvatarListCellValue_2, meta: ValueDisplayRendererContext_2) => default_3.JSX.Element;
1901
- readonly tagList: (args: TagListCellValue_2) => default_3.JSX.Element;
1902
- readonly alertTag: (args: AlertTagCellValue_2) => default_3.JSX.Element;
1903
- readonly dotTag: (args: DotTagCellValue_2) => default_3.JSX.Element;
1904
- readonly file: (args: FileCellValue_2) => default_3.JSX.Element;
1905
- readonly folder: (args: FolderCellValue_2) => default_3.JSX.Element;
1906
- readonly progressBar: (args: ProgressBarCellValue_2, _meta: ValueDisplayRendererContext_2) => default_3.JSX.Element | null;
1891
+ readonly text: (args: TextCellValue_2, meta: ValueDisplayRendererContext_2) => default_2.JSX.Element;
1892
+ readonly number: (args: NumberCellValue_2, meta: ValueDisplayRendererContext_2) => default_2.JSX.Element;
1893
+ readonly date: (args: DateCellValue_2, meta: ValueDisplayRendererContext_2) => default_2.JSX.Element;
1894
+ readonly amount: (args: AmountCellValue_2, meta: ValueDisplayRendererContext_2) => default_2.JSX.Element;
1895
+ readonly person: (args: PersonCellValue_2, meta: ValueDisplayRendererContext_2) => default_2.JSX.Element;
1896
+ readonly company: (args: CompanyCellValue_2, meta: ValueDisplayRendererContext_2) => default_2.JSX.Element;
1897
+ readonly team: (args: TeamCellValue_2, meta: ValueDisplayRendererContext_2) => default_2.JSX.Element;
1898
+ readonly status: (args: StatusCellValue_2) => default_2.JSX.Element;
1899
+ readonly tag: (args: TagCellValue_2) => default_2.JSX.Element;
1900
+ readonly avatarList: (args: AvatarListCellValue_2, meta: ValueDisplayRendererContext_2) => default_2.JSX.Element;
1901
+ readonly tagList: (args: TagListCellValue_2) => default_2.JSX.Element;
1902
+ readonly alertTag: (args: AlertTagCellValue_2) => default_2.JSX.Element;
1903
+ readonly dotTag: (args: DotTagCellValue_2) => default_2.JSX.Element;
1904
+ readonly file: (args: FileCellValue_2) => default_2.JSX.Element;
1905
+ readonly folder: (args: FolderCellValue_2) => default_2.JSX.Element;
1906
+ readonly progressBar: (args: ProgressBarCellValue_2, _meta: ValueDisplayRendererContext_2) => default_2.JSX.Element | null;
1907
1907
  };
1908
1908
 
1909
1909
  declare type CardPropertyType = keyof typeof cardPropertyRenderers;
@@ -2023,7 +2023,7 @@ declare type CardVisualizationOptions<T, _Filters extends FiltersDefinition, _So
2023
2023
  /**
2024
2024
  * @experimental This is an experimental component use it at your own risk
2025
2025
  */
2026
- export declare const Carousel: WithDataTestIdReturnType_3<({ children, columns, showArrows, showDots, arrowsPlacement, arrowLabels, paging, autoplay, delay, showPeek, doubleColumns, }: CarouselProps) => default_3.JSX.Element>;
2026
+ export declare const Carousel: WithDataTestIdReturnType_3<({ children, columns, showArrows, showDots, arrowsPlacement, arrowLabels, paging, autoplay, delay, showPeek, doubleColumns, }: CarouselProps) => default_2.JSX.Element>;
2027
2027
 
2028
2028
  declare interface CarouselBreakpoints {
2029
2029
  default?: ColumnNumber;
@@ -2065,7 +2065,7 @@ declare type CarouselPaging = {
2065
2065
  };
2066
2066
 
2067
2067
  declare interface CarouselProps {
2068
- children: default_3.ReactNode;
2068
+ children: default_2.ReactNode;
2069
2069
  showArrows?: boolean;
2070
2070
  showDots?: boolean;
2071
2071
  /**
@@ -3295,7 +3295,7 @@ declare type DataCollectionSettings = {
3295
3295
  };
3296
3296
 
3297
3297
  declare interface DataCollectionSettingsContextType {
3298
- setSettings: default_3.Dispatch<default_3.SetStateAction<DataCollectionSettings>>;
3298
+ setSettings: default_2.Dispatch<default_2.SetStateAction<DataCollectionSettings>>;
3299
3299
  settings: DataCollectionSettings;
3300
3300
  setVisualizationSettings: (key: keyof VisualizationSettings, settings: VisualizationSettings[keyof VisualizationSettings] | ((prev: VisualizationSettings[keyof VisualizationSettings]) => VisualizationSettings[keyof VisualizationSettings])) => void;
3301
3301
  }
@@ -5079,7 +5079,7 @@ export declare type DetailsItemContent = (ComponentProps<typeof DataList.Item> &
5079
5079
  /**
5080
5080
  * @experimental This is an experimental component use it at your own risk
5081
5081
  */
5082
- export declare const DetailsItemsList: default_3.ForwardRefExoticComponent<DetailsItemsListProps & default_3.RefAttributes<HTMLDivElement>>;
5082
+ export declare const DetailsItemsList: default_2.ForwardRefExoticComponent<DetailsItemsListProps & default_2.RefAttributes<HTMLDivElement>>;
5083
5083
 
5084
5084
  declare interface DetailsItemsListProps extends WithDataTestIdProps {
5085
5085
  title?: string;
@@ -5104,6 +5104,31 @@ export declare interface DetailsItemType {
5104
5104
 
5105
5105
  export declare const Dialog: WithDataTestIdReturnType_2<ForwardRefExoticComponent<Omit<DialogProps & RefAttributes<HTMLDivElement>, "ref"> & RefAttributes<HTMLElement | SVGElement>>>;
5106
5106
 
5107
+ declare type DialogControls = {
5108
+ kind: "resource";
5109
+ /**
5110
+ * "Open detail" affordance. Provide `url` to render a link to the
5111
+ * resource's full-page view (routed through the app's `LinkProvider`,
5112
+ * so it is cmd/middle-clickable) — typically the active item's
5113
+ * `itemUrl` from `useDataCollectionItemNavigation`. Provide `onClick`
5114
+ * for imperative expansion. `url` wins when both are set.
5115
+ */
5116
+ expand?: {
5117
+ label: string;
5118
+ url?: string;
5119
+ onClick?: () => void;
5120
+ };
5121
+ navigation?: NavigationProps;
5122
+ } | {
5123
+ kind: "back";
5124
+ label: string;
5125
+ onClick: () => void;
5126
+ };
5127
+
5128
+ declare type DialogPosition = (typeof dialogPositions)[number];
5129
+
5130
+ declare const dialogPositions: readonly ["center", "left", "right", "fullscreen"];
5131
+
5107
5132
  declare type DialogProps = {
5108
5133
  header: {
5109
5134
  type: AlertAvatarProps["type"];
@@ -5118,6 +5143,10 @@ declare type DialogProps = {
5118
5143
  onClose?: () => void;
5119
5144
  };
5120
5145
 
5146
+ declare type DialogWidth = (typeof dialogWidths)[number];
5147
+
5148
+ declare const dialogWidths: readonly ["sm", "md", "lg", "xl"];
5149
+
5121
5150
  /**
5122
5151
  * Remove a property from a union of objects.
5123
5152
  * @example
@@ -5145,7 +5174,7 @@ declare type DropdownInternalProps = {
5145
5174
  items: DropdownItem[];
5146
5175
  icon?: IconType;
5147
5176
  size?: F0ButtonProps["size"];
5148
- children?: default_3.ReactNode;
5177
+ children?: default_2.ReactNode;
5149
5178
  align?: "start" | "end" | "center";
5150
5179
  open?: boolean;
5151
5180
  onOpenChange?: (open: boolean) => void;
@@ -6105,6 +6134,100 @@ export declare interface F0CardHorizontalProps {
6105
6134
  descriptionAsSingleLine?: boolean;
6106
6135
  }
6107
6136
 
6137
+ /**
6138
+ * @experimental This is an experimental component use it at your own risk
6139
+ */
6140
+ export declare const F0CarouselDialog: WithDataTestIdReturnType_2<({ items, currentId, onNavigate, labels, loop, pagination, placeholder, isOpen, onClose, ...dialogProps }: F0CarouselDialogProps) => JSX_2.Element | null>;
6141
+
6142
+ /** One page of the dialog. */
6143
+ export declare interface F0CarouselDialogItem {
6144
+ id: string;
6145
+ /**
6146
+ * The dialog's title while this page is showing. The header therefore changes
6147
+ * with the content, which is what makes this ONE dialog moving rather than a
6148
+ * frame with something loaded into it.
6149
+ *
6150
+ * GIVE EVERY PAGE ONE: it is the dialog's accessible name as well as the words
6151
+ * in the header, and a dialog without one is announced as nothing at all. If
6152
+ * the content already shows the title itself, hide it THERE — `CommunityPost`
6153
+ * has `hideTitle` for exactly this — rather than leaving the header blank.
6154
+ */
6155
+ title?: string;
6156
+ content: ReactNode;
6157
+ }
6158
+
6159
+ export declare interface F0CarouselDialogProps extends Pick<F0DialogInternalProps, "isOpen" | "onClose" | "width" | "position" | "primaryAction" | "secondaryAction" | "otherActions" | "disableContentPadding" | "container"> {
6160
+ /** The pages, in the order they are walked. */
6161
+ items: F0CarouselDialogItem[];
6162
+ /**
6163
+ * WHICH PAGE IS SHOWING. Controlled, deliberately: the thing you opened the
6164
+ * dialog on is already state the app holds — the post you clicked in a feed,
6165
+ * a param in the URL — and a dialog keeping its own copy of it is two answers
6166
+ * to one question.
6167
+ *
6168
+ * An id that names nothing in `items` shows the {@link placeholder}, NOT some
6169
+ * other page. In a params-driven app the URL moves before the data does, and
6170
+ * "the id I asked for isn't here yet" must never render as "here is a
6171
+ * different post".
6172
+ */
6173
+ currentId: string;
6174
+ onNavigate: (id: string) => void;
6175
+ /**
6176
+ * WHAT TO SHOW WHILE `currentId` NAMES SOMETHING THE DIALOG DOESN'T HAVE — the
6177
+ * gap between the URL changing and the data arriving.
6178
+ *
6179
+ * The dialog stays open and stays put: same element, no reopen animation, the
6180
+ * arrows held until it knows where it is. Give it a `title` so the dialog keeps
6181
+ * an accessible name across the gap; a feed usually knows a post's title long
6182
+ * before its body.
6183
+ *
6184
+ * PREFER NOT TO NEED IT. If you can put an item in `items` for the id you are
6185
+ * navigating to — with skeleton `content` while its body loads — do that
6186
+ * instead: the id is always found, the title comes with it, and the position in
6187
+ * the header stays honest. This is the net for when you genuinely cannot.
6188
+ */
6189
+ placeholder?: {
6190
+ title?: string;
6191
+ content: ReactNode;
6192
+ };
6193
+ /**
6194
+ * The controls' words. There is no visible text on the arrows, so `previous`
6195
+ * and `next` are what a screen reader reads and what the tooltips say;
6196
+ * `position` writes the header's reading ("3 of 11").
6197
+ */
6198
+ labels?: {
6199
+ previous?: string;
6200
+ next?: string;
6201
+ position?: (current: number, total: number) => string;
6202
+ };
6203
+ /**
6204
+ * The ends JOIN UP: Next on the last page goes to the first. Off by default —
6205
+ * a list of eleven posts has an end, and an arrow that silently returns you to
6206
+ * the top is how you read the same thing twice without noticing.
6207
+ */
6208
+ loop?: boolean;
6209
+ /**
6210
+ * THE ITEMS ARE A PAGE of a longer set. Next then stays live past the last one
6211
+ * loaded: pressing it fetches, and the walk CONTINUES onto the new page as
6212
+ * soon as it lands, so the reader presses once rather than pressing, waiting,
6213
+ * and pressing again.
6214
+ *
6215
+ * It is the same {@link CarouselPaging} the carousel takes, on purpose. A post
6216
+ * opened from a feed is the same query as the feed it came from, so one
6217
+ * `useData` feeds both: the same records, the same `loadMore`. Walk past the
6218
+ * end in the dialog and the carousel behind it grows too, because there is one
6219
+ * list and both are looking at it.
6220
+ *
6221
+ * Arriving at the last loaded item ALSO asks for the next page, once per
6222
+ * position — so a source that answers `hasMore: true` with no new records
6223
+ * stalls instead of looping.
6224
+ *
6225
+ * `loop` is ignored while `hasMore`: an end that hasn't been reached yet is not
6226
+ * an end to join up.
6227
+ */
6228
+ pagination?: CarouselPaging;
6229
+ }
6230
+
6108
6231
  /**
6109
6232
  * Headless chat surface — header, transcript and composer — driven entirely by
6110
6233
  * the {@link F0ChatRuntime} from a surrounding `F0ChatProvider`. Panel controls
@@ -6782,6 +6905,101 @@ export declare interface F0CommunityPostsCarouselProps {
6782
6905
  pagination?: CarouselPaging;
6783
6906
  }
6784
6907
 
6908
+ declare type F0DialogActionItem = {
6909
+ value: string;
6910
+ label: string;
6911
+ icon?: IconType;
6912
+ onClick: () => void;
6913
+ disabled?: boolean;
6914
+ loading?: boolean;
6915
+ };
6916
+
6917
+ declare type F0DialogHeaderProps = {
6918
+ title?: string;
6919
+ description?: string;
6920
+ module?: {
6921
+ id: ModuleId;
6922
+ label: string;
6923
+ href: string;
6924
+ };
6925
+ otherActions?: DropdownInternalProps["items"];
6926
+ navigation?: NavigationProps;
6927
+ resourceHeader?: F0ResourceHeaderProps;
6928
+ controls?: DialogControls;
6929
+ headerStatus?: string;
6930
+ } & Partial<Pick<TabsProps, "tabs" | "activeTabId" | "setActiveTabId">>;
6931
+
6932
+ declare type F0DialogInternalProps = {
6933
+ isOpen: boolean;
6934
+ onClose: () => void;
6935
+ asBottomSheetInMobile?: boolean;
6936
+ position?: DialogPosition;
6937
+ width?: DialogWidth;
6938
+ primaryAction?: F0DialogPrimaryAction | F0DialogPrimaryActionItem[];
6939
+ secondaryAction?: F0DialogSecondaryAction | F0DialogSecondaryActionItem[];
6940
+ title?: string;
6941
+ description?: string;
6942
+ module?: F0DialogHeaderProps["module"];
6943
+ otherActions?: F0DialogHeaderProps["otherActions"];
6944
+ navigation?: F0DialogHeaderProps["navigation"];
6945
+ resourceHeader?: F0DialogHeaderProps["resourceHeader"];
6946
+ controls?: F0DialogHeaderProps["controls"];
6947
+ /**
6948
+ * A short reading beside the close button — "3 of 11". Where the dialog says
6949
+ * WHICH of several things it is currently showing.
6950
+ *
6951
+ * Not `navigation`: that draws its own arrows in the header. This is the label
6952
+ * alone, for a dialog whose arrows are somewhere else (`sideControls`).
6953
+ */
6954
+ headerStatus?: F0DialogHeaderProps["headerStatus"];
6955
+ /**
6956
+ * Controls flanking the panel — see {@link F0DialogSideControls}. On a phone
6957
+ * (where the dialog is a bottom sheet and there is no room beside it) they move
6958
+ * ONTO the panel's own edges instead, which is where a gallery puts them.
6959
+ */
6960
+ sideControls?: F0DialogSideControls;
6961
+ children: ReactNode;
6962
+ disableContentPadding?: boolean;
6963
+ container?: HTMLElement | null;
6964
+ } & Partial<Pick<TabsProps, "tabs" | "activeTabId" | "setActiveTabId">>;
6965
+
6966
+ declare type F0DialogPrimaryAction = {
6967
+ label: string;
6968
+ icon?: IconType;
6969
+ iconPosition?: "left" | "right";
6970
+ onClick: () => void;
6971
+ disabled?: boolean;
6972
+ loading?: boolean;
6973
+ };
6974
+
6975
+ declare type F0DialogPrimaryActionItem = F0DialogActionItem;
6976
+
6977
+ declare type F0DialogSecondaryAction = {
6978
+ label: string;
6979
+ icon?: IconType;
6980
+ iconPosition?: "left" | "right";
6981
+ onClick: () => void;
6982
+ disabled?: boolean;
6983
+ loading?: boolean;
6984
+ };
6985
+
6986
+ declare type F0DialogSecondaryActionItem = F0DialogActionItem;
6987
+
6988
+ /**
6989
+ * Controls FLANKING the panel rather than inside it — the affordance for a
6990
+ * dialog whose content can be changed without closing it (see
6991
+ * `F0CarouselDialog`).
6992
+ *
6993
+ * They are rendered INSIDE the Radix content, so they are inside the focus trap
6994
+ * and reachable by keyboard, and merely positioned outside its box. Anything
6995
+ * portalled next to the dialog instead would be `aria-hidden` and inert, which
6996
+ * is exactly the trap a modal is supposed to set.
6997
+ */
6998
+ declare type F0DialogSideControls = {
6999
+ previous?: ReactNode;
7000
+ next?: ReactNode;
7001
+ };
7002
+
6785
7003
  /**
6786
7004
  * @experimental This is an experimental component, use it at your own risk.
6787
7005
  */
@@ -7161,7 +7379,7 @@ export declare interface F0MapControlsProps extends WithDataTestIdProps {
7161
7379
  /** Imperative handle exposed via `ref`. */
7162
7380
  export declare interface F0MapHandle {
7163
7381
  /** The raw MapLibre instance (escape hatch). `null` until the map has mounted. */
7164
- getMap: () => default_2.Map | null;
7382
+ getMap: () => default_3.Map | null;
7165
7383
  /** Center on a marker (and select it). Always animates unless reduced-motion. */
7166
7384
  focusMarker: (id: string) => void;
7167
7385
  /** Frame all markers in view. */
@@ -11151,8 +11369,8 @@ declare interface OnePaginationProps {
11151
11369
  /**
11152
11370
  * @experimental This is an experimental component use it at your own risk
11153
11371
  */
11154
- export declare const OnePersonListItem: WithDataTestIdReturnType_3<default_3.ForwardRefExoticComponent<OnePersonListItemProps & default_3.RefAttributes<HTMLDivElement>> & {
11155
- Skeleton: () => default_3.JSX.Element;
11372
+ export declare const OnePersonListItem: WithDataTestIdReturnType_3<default_2.ForwardRefExoticComponent<OnePersonListItemProps & default_2.RefAttributes<HTMLDivElement>> & {
11373
+ Skeleton: () => default_2.JSX.Element;
11156
11374
  }>;
11157
11375
 
11158
11376
  export declare type OnePersonListItemProps = {
@@ -13456,10 +13674,10 @@ export declare const ToggleGroupItem: React_2.ForwardRefExoticComponent<Omit<Tog
13456
13674
  /**
13457
13675
  * @experimental This is an experimental component use it at your own risk
13458
13676
  */
13459
- export declare const Tooltip: WithDataTestIdReturnType_3<(props: TooltipProps) => default_3.JSX.Element>;
13677
+ export declare const Tooltip: WithDataTestIdReturnType_3<(props: TooltipProps) => default_2.JSX.Element>;
13460
13678
 
13461
13679
  declare type TooltipInternalProps = {
13462
- children: default_3.ReactNode;
13680
+ children: default_2.ReactNode;
13463
13681
  shortcut?: ComponentProps<typeof Shortcut>["keys"];
13464
13682
  delay?: number;
13465
13683
  instant?: boolean;
@@ -14066,7 +14284,7 @@ export declare interface ViewportInset {
14066
14284
  /**
14067
14285
  * @experimental This is an experimental component use it at your own risk
14068
14286
  */
14069
- export declare const VirtualList: default_3.ForwardRefExoticComponent<VirtualListProps & default_3.RefAttributes<HTMLDivElement>>;
14287
+ export declare const VirtualList: default_2.ForwardRefExoticComponent<VirtualListProps & default_2.RefAttributes<HTMLDivElement>>;
14070
14288
 
14071
14289
  declare type VirtualListProps = {
14072
14290
  height: number;
@@ -14242,10 +14460,10 @@ declare type WelcomeSuggestionClickEvent = {
14242
14460
  /**
14243
14461
  * @experimental This is an experimental component use it at your own risk
14244
14462
  */
14245
- export declare const Widget: WithDataTestIdReturnType_3<default_3.ForwardRefExoticComponent<WidgetProps & {
14463
+ export declare const Widget: WithDataTestIdReturnType_3<default_2.ForwardRefExoticComponent<WidgetProps & {
14246
14464
  children: ReactNode;
14247
- } & default_3.RefAttributes<HTMLDivElement>> & {
14248
- Skeleton: default_3.ForwardRefExoticComponent<WidgetSkeletonProps & default_3.RefAttributes<HTMLDivElement>>;
14465
+ } & default_2.RefAttributes<HTMLDivElement>> & {
14466
+ Skeleton: default_2.ForwardRefExoticComponent<WidgetSkeletonProps & default_2.RefAttributes<HTMLDivElement>>;
14249
14467
  }>;
14250
14468
 
14251
14469
  export declare function WidgetAvatarsListItem({ id, title, subtitle, avatars, remainingCount, withPointerCursor, onClick, ...props }: WidgetAvatarsListItemProps): JSX_2.Element;