remoraid 2.10.7 → 2.18.43

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.
@@ -2,7 +2,7 @@ import { PropsWithChildren as PropsWithChildren5, ReactNode as ReactNode6 } from
2
2
  import { AlertProps, MantineBreakpoint, MantineColorScheme, MantineSize, MantineTheme, ScrollAreaProps } from "@mantine/core";
3
3
  import { Icon, IconProps } from "@tabler/icons-react";
4
4
  import { ImageProps } from "next/image";
5
- import { Dispatch, ReactNode, SetStateAction } from "react";
5
+ import React2, { Dispatch, ReactNode, SetStateAction } from "react";
6
6
  type RemoraidUser = {
7
7
  name: string
8
8
  } | null;
@@ -29,15 +29,16 @@ declare enum NavbarVariant {
29
29
  declare enum FooterVariant {
30
30
  Minimal = "minimal"
31
31
  }
32
- type UserExperience = Record<string, any>;
33
- interface CoreUserExperience extends UserExperience {
32
+ type PrimitiveUserExperience = string | number | boolean;
33
+ type UserExperience = Partial<Record<string, any>> | PrimitiveUserExperience | PrimitiveUserExperience[];
34
+ interface CoreUserExperience {
34
35
  showWelcomeMessage: boolean;
35
36
  navbar: {
36
37
  hiddenPages: string[]
37
38
  };
38
39
  }
39
40
  type UserExperienceProviderProps<T extends UserExperience> = {
40
- initialValue?: Partial<T>
41
+ initialValue?: T extends PrimitiveUserExperience | PrimitiveUserExperience[] ? T : Partial<T>
41
42
  cookieName?: string
42
43
  };
43
44
  interface UserExperienceContext<T extends UserExperience> {
@@ -46,6 +47,22 @@ interface UserExperienceContext<T extends UserExperience> {
46
47
  processedCookie: boolean;
47
48
  initialUserExperience: T;
48
49
  }
50
+ interface WidgetContext {
51
+ name: string;
52
+ selected: boolean;
53
+ }
54
+ interface WidgetsContext {
55
+ widgets: Partial<Record<string, Partial<Record<string, WidgetContext>>>>;
56
+ activeWidget: string | null;
57
+ updateActiveWidget: (widgetId: string | null) => void;
58
+ registerWidget: (pageId: string, widget: WidgetConfiguration) => void;
59
+ registerPage: (pageId: string, initialWidgets: WidgetConfiguration[]) => void;
60
+ isWidgetRegistered: (pageId: string, widgetId: string) => boolean;
61
+ isPageRegistered: (pageId: string) => boolean;
62
+ updateWidgetSelection: (pageId: string, widgetId: string, value: boolean) => void;
63
+ updateWidgetSelectionBulk: (pageId: string, selectedWidgetIds: string[]) => void;
64
+ isWidgetSelected: (pageId: string, widgetId: string) => boolean;
65
+ }
49
66
  declare enum AlertCategory {
50
67
  Negative = "negative",
51
68
  Neutral = "neutral",
@@ -83,8 +100,7 @@ interface RemoraidThemeDependencies {
83
100
  type RemoraidThemeCallback = (dependencies: Partial<RemoraidThemeDependencies>) => Partial<RemoraidTheme>;
84
101
  interface WidgetConfiguration {
85
102
  widgetId: string;
86
- name: string;
87
- initialValue?: boolean;
103
+ initialValues?: Partial<WidgetContext>;
88
104
  allowUnregisteredPageUsage?: boolean;
89
105
  }
90
106
  interface PageConfiguration {
@@ -113,44 +129,29 @@ declare enum FrameLayoutSection {
113
129
  Right = "right",
114
130
  Content = "content"
115
131
  }
116
- type Layout<T extends LayoutType> = T extends LayoutType.Frame ? {
117
- sections: Record<Exclude<FrameLayoutSection, FrameLayoutSection.Content>, HTMLDivElement | null>
118
- } : never;
119
- interface LayoutsContext {
120
- layouts: Record<string, Layout<LayoutType>>;
121
- setLayouts: Dispatch<SetStateAction<Record<string, Layout<LayoutType>>>>;
132
+ type LayoutSection<T extends LayoutType> = T extends LayoutType.Frame ? FrameLayoutSection : string;
133
+ interface LayoutContext<T extends LayoutType> {
134
+ type: T;
135
+ layoutId: string;
136
+ sections: Record<LayoutSection<T>, HTMLDivElement | null>;
122
137
  }
123
- type FrameLayoutContext = {
124
- layoutId: string | null
125
- layout: Layout<LayoutType.Frame>
126
- setLayout: Dispatch<SetStateAction<Layout<LayoutType.Frame>>>
127
- };
128
- declare enum FrameLayoutVariant {
129
- Plain = "plain",
130
- Sticky = "sticky"
138
+ interface LayoutsContext {
139
+ layouts: Partial<Record<string, Omit<LayoutContext<LayoutType>, "layoutId">>>;
140
+ setLayouts: Dispatch<SetStateAction<Partial<Record<string, Omit<LayoutContext<LayoutType>, "layoutId">>>>>;
131
141
  }
132
- type FrameLayoutNavbarPosition<T extends NavbarVariant> = T extends NavbarVariant.Minimal ? FrameLayoutSection.Left | FrameLayoutSection.Right : FrameLayoutSection;
133
- type FrameLayoutFooterPosition<T extends FooterVariant> = T extends FooterVariant.Minimal ? FrameLayoutSection.Content | FrameLayoutSection.Bottom : FrameLayoutSection;
134
- interface WidgetsContext {
135
- widgets: {
136
- [index: string]: {
137
- [index: string]: {
138
- name: string
139
- selected: boolean
140
- }
141
- }
142
- };
143
- activeWidget: string | null;
144
- updateActiveWidget: (widgetId: string | null) => void;
145
- registerWidget: (pageId: string, widget: WidgetConfiguration) => void;
146
- registerPage: (pageId: string, initialWidgets: WidgetConfiguration[]) => void;
147
- isWidgetRegistered: (pageId: string, widgetId: string) => boolean;
148
- isPageRegistered: (pageId: string) => boolean;
149
- updateWidgetSelection: (pageId: string, widgetId: string, value: boolean) => void;
150
- updateWidgetSelectionBulk: (pageId: string, selectedWidgetIds: string[]) => void;
151
- isWidgetSelected: (pageId: string, widgetId: string) => boolean;
142
+ interface ContextCluster<
143
+ Context,
144
+ StaticID extends string = never
145
+ > {
146
+ contexts: Partial<Record<string, React2.Context<Context>>>;
147
+ defaultValues: Partial<Record<string, Context>>;
148
+ generalDefaultValue: Context;
149
+ createContext: (id: string, defaultValue?: Context) => React2.Context<Context>;
150
+ useContext: <ID extends string>(id: ID) => ID extends StaticID ? Context : Context | null;
152
151
  }
152
+ declare const getDefaultWidgetContext: (configuration: WidgetConfiguration) => WidgetContext;
153
153
  declare const useWidgets: () => WidgetsContext;
154
+ declare const useWidget: (pageId: string, widgetId: string) => WidgetContext | null;
154
155
  interface WidgetsProviderProps {}
155
156
  declare const createRemoraidTheme: (customTheme?: Partial<RemoraidTheme>, dependencies?: Partial<RemoraidThemeDependencies>) => RemoraidTheme;
156
157
  declare const useRemoraidTheme: () => RemoraidTheme;
@@ -169,10 +170,7 @@ declare const useHydratedMantineColorScheme: () => {
169
170
  };
170
171
  interface HydrationStatusProviderProps {}
171
172
  declare function HydrationStatusProvider({ children }: PropsWithChildren3<HydrationStatusProviderProps>): ReactNode4;
172
- declare const defaultLayoutsContext: {
173
- layouts: {}
174
- setLayouts: () => void
175
- };
173
+ declare const defaultLayoutsContext: LayoutsContext;
176
174
  declare const useLayouts: () => LayoutsContext;
177
175
  interface LayoutsProviderProps {}
178
176
  interface RemoraidProviderProps {
@@ -188,7 +186,7 @@ interface RemoraidProviderProps {
188
186
  };
189
187
  }
190
188
  declare function RemoraidProvider({ children, theme, initialUserExperience, componentsProps }: PropsWithChildren5<RemoraidProviderProps>): ReactNode6;
191
- import { BoxProps as BoxProps3 } from "@mantine/core";
189
+ import { BoxProps as BoxProps2 } from "@mantine/core";
192
190
  import { IndicatorProps, PaperProps } from "@mantine/core";
193
191
  import { Icon as Icon2 } from "@tabler/icons-react";
194
192
  import { ReactNode as ReactNode7 } from "react";
@@ -223,7 +221,7 @@ interface FooterMinimalProps {
223
221
  };
224
222
  }
225
223
  declare function FooterMinimal({ componentsProps }: FooterMinimalProps): ReactNode8;
226
- import { PropsWithChildren as PropsWithChildren9, ReactNode as ReactNode12 } from "react";
224
+ import { ComponentProps as ComponentProps3, PropsWithChildren as PropsWithChildren10, ReactNode as ReactNode13 } from "react";
227
225
  import { PropsWithChildren as PropsWithChildren6, ReactNode as ReactNode9 } from "react";
228
226
  declare const defaultAppContext: RemoraidAppContext<CustomAppVariables>;
229
227
  declare const useRemoraidApp: () => RemoraidAppContext<CustomAppVariables>;
@@ -231,15 +229,12 @@ interface AppProviderProps<V extends CustomAppVariables = {}> {
231
229
  appContext: AppContextProps<V>;
232
230
  }
233
231
  declare function AppProvider2<V extends CustomAppVariables = {}>({ appContext: appContextProps, children }: PropsWithChildren6<AppProviderProps<V>>): ReactNode9;
234
- import { ReactElement } from "react";
232
+ import { ComponentProps, ElementType, ReactElement } from "react";
233
+ declare const co: <T>(condition: (value: T) => boolean, value: T, fallback: T) => T;
235
234
  type Common<
236
235
  A,
237
236
  B
238
237
  > = Pick<A & B, keyof A & keyof B>;
239
- type OnlyChildrenOf<
240
- T extends (...args: any) => any,
241
- P = any
242
- > = ReactElement<P, T> | ReactElement<P, T>[];
243
238
  type Optional<
244
239
  T,
245
240
  K extends keyof T
@@ -250,28 +245,61 @@ type OptionalIfExtends<
250
245
  V1,
251
246
  V2
252
247
  > = [V1] extends [V2] ? Optional<T, K> : T;
253
- import { BoxProps as BoxProps2, GroupProps as GroupProps2, ScrollAreaProps as ScrollAreaProps2, StackProps } from "@mantine/core";
248
+ type ElementOfType<
249
+ T extends ElementType,
250
+ P = ComponentProps<T>
251
+ > = ReactElement<P, T>;
252
+ type ChildrenOfType<T extends ElementType> = ElementOfType<T> | undefined | null | ReadonlyArray<ChildrenOfType<T>>;
253
+ type PropsWithChildrenOfType<
254
+ T extends ElementType,
255
+ P = {}
256
+ > = P & {
257
+ children?: ChildrenOfType<T>
258
+ };
259
+ type ElementOrPropsOfType<
260
+ T extends ElementType,
261
+ P = ComponentProps<T>
262
+ > = ElementOfType<T> | P;
263
+ declare const isValidElementOfType: <T extends ElementType>(type: T, value: unknown) => value is ElementOfType<T>;
264
+ declare const getElementTypeName: (type: ElementType | ReactElement["type"]) => string;
265
+ declare const asElementOfType: <T extends ElementType>(type: T, element: ReactElement, additionalErrorMessage?: string) => ElementOfType<T>;
266
+ declare const asChildrenOfType: <T extends ElementType>(type: T, children: ChildrenOfType<ElementType>, additionalErrorMessage?: string) => ChildrenOfType<T>;
267
+ declare const asElementOrPropsOfType: <
268
+ T extends ElementType,
269
+ P = ComponentProps<T>
270
+ >(type: T, elementOrProps: ReactElement | P, additionalErrorMessage?: string) => ElementOrPropsOfType<T, P>;
271
+ import { GroupProps as GroupProps2, MantineSize as MantineSize3, ScrollAreaProps as ScrollAreaProps2, StackProps } from "@mantine/core";
272
+ import { ComponentProps as ComponentProps2, PropsWithChildren as PropsWithChildren9, ReactNode as ReactNode12 } from "react";
254
273
  import { PropsWithChildren as PropsWithChildren8, ReactNode as ReactNode11 } from "react";
255
- import { PropsWithChildren as PropsWithChildren7, ReactNode as ReactNode10 } from "react";
256
274
  import { BoxProps } from "@mantine/core";
275
+ import { ContainerProps, MantineSize as MantineSize2 } from "@mantine/core";
276
+ import { PropsWithChildren as PropsWithChildren7, ReactNode as ReactNode10 } from "react";
277
+ interface PageContainerProps {
278
+ p?: MantineSize2 | number;
279
+ hidden?: boolean;
280
+ componentsProps?: {
281
+ container?: ContainerProps
282
+ };
283
+ }
284
+ declare function PageContainer2({ children, p, hidden, componentsProps }: PropsWithChildren7<PageContainerProps>): ReactNode10;
257
285
  interface FrameLayoutElementProps {
258
- section: Exclude<FrameLayoutSection, FrameLayoutSection.Content>;
286
+ section: FrameLayoutSection;
259
287
  includeContainer?: boolean;
288
+ includePageContainer?: boolean;
260
289
  layoutId?: string;
290
+ hidden?: boolean;
261
291
  componentsProps?: {
262
292
  container?: Partial<BoxProps>
293
+ PageContainer?: Partial<PageContainerProps>
263
294
  };
264
295
  }
265
- declare function Element2({ section, includeContainer, layoutId, componentsProps, children }: PropsWithChildren7<FrameLayoutElementProps>): ReactNode10;
266
- declare const isFrameLayout: (layout: Layout<LayoutType>) => layout is Layout<LayoutType.Frame>;
267
- type DefaultFrameLayoutVariant = FrameLayoutVariant.Sticky;
268
- declare const defaultFrameLayoutContext: FrameLayoutContext;
269
- declare const useFrameLayout: () => FrameLayoutContext;
270
- interface FrameLayoutPropsWithExplicitVariant<T extends FrameLayoutVariant> {
271
- variant: T;
296
+ declare function Element2({ section, includeContainer, includePageContainer, layoutId, hidden, componentsProps, children }: PropsWithChildren8<FrameLayoutElementProps>): ReactNode11;
297
+ declare const useFrameLayout: () => LayoutContext<LayoutType.Frame> | null;
298
+ interface FrameLayoutProps {
272
299
  layoutId: string;
300
+ includeScrollArea?: boolean;
301
+ gutter?: MantineSize3 | number;
273
302
  componentsProps?: {
274
- childrenContainer?: T extends FrameLayoutVariant.Plain ? Partial<BoxProps2> : T extends FrameLayoutVariant.Sticky ? Partial<ScrollAreaProps2> : never
275
303
  horizontalContainer?: Partial<GroupProps2>
276
304
  verticalContainer?: Partial<StackProps>
277
305
  sectionContainers?: {
@@ -279,21 +307,25 @@ interface FrameLayoutPropsWithExplicitVariant<T extends FrameLayoutVariant> {
279
307
  [FrameLayoutSection.Right]?: Partial<GroupProps2>
280
308
  [FrameLayoutSection.Top]?: Partial<StackProps>
281
309
  [FrameLayoutSection.Bottom]?: Partial<StackProps>
310
+ [FrameLayoutSection.Content]?: Partial<StackProps>
282
311
  }
312
+ ScrollArea?: Partial<ScrollAreaProps2>
283
313
  };
284
314
  }
285
- type FrameLayoutProps<T extends FrameLayoutVariant = DefaultFrameLayoutVariant> = T extends DefaultFrameLayoutVariant ? Optional<FrameLayoutPropsWithExplicitVariant<T>, "variant"> : FrameLayoutPropsWithExplicitVariant<T>;
286
- declare function FrameLayout<T extends FrameLayoutVariant = DefaultFrameLayoutVariant>({ variant, layoutId, componentsProps, children }: PropsWithChildren8<FrameLayoutProps<T>>): ReactNode11;
287
- interface FrameLayout {
288
- <T extends FrameLayoutVariant = DefaultFrameLayoutVariant>(props: PropsWithChildren8<FrameLayoutProps<T>>): ReactNode11;
315
+ declare function FrameLayout({ layoutId, includeScrollArea, gutter, componentsProps, children }: PropsWithChildren9<FrameLayoutProps>): ReactNode12;
316
+ interface FrameLayout extends React.FC<ComponentProps2<typeof FrameLayout>> {
289
317
  Element: typeof Element2;
290
318
  }
291
319
  declare const _default: FrameLayout;
292
- declare const defaultAppShellLayoutId = "remoraidAppShell";
320
+ declare const remoraidAppShellLayoutId = "remoraid-app-shell";
293
321
  type AppShellNavbarVariant = NavbarVariant | null;
294
322
  type AppShellFooterVariant = FooterVariant | null;
295
323
  type DefaultNavbarVariant = null;
296
324
  type DefaultFooterVariant = null;
325
+ type AppShellNavbarPosition<N extends AppShellNavbarVariant> = N extends NavbarVariant.Minimal ? FrameLayoutSection.Left | FrameLayoutSection.Right : N extends null ? never : FrameLayoutSection;
326
+ type AppShellFooterPosition<F extends AppShellFooterVariant> = F extends FooterVariant.Minimal ? FrameLayoutSection.Content | FrameLayoutSection.Bottom : F extends null ? never : FrameLayoutSection;
327
+ declare const defaultAppShellNavbarPositions: { [N in Exclude<AppShellNavbarVariant, null>] : AppShellNavbarPosition<N> };
328
+ declare const defaultAppShellFooterPositions: { [F in Exclude<AppShellFooterVariant, null>] : AppShellFooterPosition<F> };
297
329
  interface ExplicitAppShellProps<
298
330
  N extends AppShellNavbarVariant,
299
331
  F extends AppShellFooterVariant,
@@ -301,14 +333,17 @@ interface ExplicitAppShellProps<
301
333
  > {
302
334
  navbarVariant: N;
303
335
  footerVariant: F;
304
- navbarPosition: N extends NavbarVariant ? FrameLayoutNavbarPosition<N> : never;
305
- footerPosition: F extends FooterVariant ? FrameLayoutFooterPosition<F> : never;
306
336
  appContext: AppContextProps<V>;
337
+ navbarPosition?: AppShellNavbarPosition<N>;
338
+ footerPosition?: AppShellFooterPosition<F>;
339
+ gutter?: FrameLayoutProps["gutter"];
307
340
  componentsProps?: {
341
+ container?: Partial<BoxProps2>
308
342
  navbar?: N extends NavbarVariant.Minimal ? Partial<NavbarMinimalProps> : never
309
- footer?: N extends FooterVariant.Minimal ? Partial<FooterMinimalProps> : never
310
- layout?: Partial<FrameLayoutProps<FrameLayoutVariant.Sticky>>
311
- childrenContainer?: Partial<BoxProps3>
343
+ footer?: F extends FooterVariant.Minimal ? Partial<FooterMinimalProps> : never
344
+ layout?: Partial<FrameLayoutProps>
345
+ navbarLayoutElement?: Omit<Partial<FrameLayoutElementProps>, "section">
346
+ footerLayoutElement?: Omit<Partial<FrameLayoutElementProps>, "section">
312
347
  AppProvider?: Partial<AppProviderProps>
313
348
  };
314
349
  }
@@ -316,207 +351,256 @@ type AppShellProps<
316
351
  N extends AppShellNavbarVariant = DefaultNavbarVariant,
317
352
  F extends AppShellFooterVariant = DefaultFooterVariant,
318
353
  V extends CustomAppVariables = {}
319
- > = OptionalIfExtends<OptionalIfExtends<ExplicitAppShellProps<N, F, V>, "footerVariant", F, DefaultFooterVariant>, "navbarVariant", N, DefaultNavbarVariant>;
354
+ > = OptionalIfExtends<OptionalIfExtends<ExplicitAppShellProps<N, F, V>, "footerVariant", DefaultFooterVariant, F>, "navbarVariant", DefaultNavbarVariant, N>;
320
355
  declare function AppShell<
321
356
  N extends AppShellNavbarVariant = DefaultNavbarVariant,
322
357
  F extends AppShellFooterVariant = DefaultFooterVariant,
323
358
  V extends CustomAppVariables = {}
324
- >(props: PropsWithChildren9<AppShellProps<N, F, V>>): ReactNode12;
359
+ >({ navbarVariant: navbarVariantProp, footerVariant: footerVariantProp, navbarPosition: navbarPositionProp, footerPosition: footerPositionProp, gutter, appContext, componentsProps, children }: PropsWithChildren10<AppShellProps<N, F, V>>): ReactNode13;
325
360
  interface AppShell {
326
361
  <
327
362
  N extends AppShellNavbarVariant = DefaultNavbarVariant,
328
363
  F extends AppShellFooterVariant = DefaultFooterVariant,
329
364
  V extends CustomAppVariables = {}
330
- >(props: PropsWithChildren9<AppShellProps<N, F, V>>): ReactNode12;
365
+ >(props: ComponentProps3<typeof AppShell<N, F, V>>): ReactNode13;
331
366
  NavbarMinimal: typeof NavbarMinimal;
332
367
  FooterMinimal: typeof FooterMinimal;
333
368
  }
334
369
  declare const _default2: AppShell;
335
- import { Context, PropsWithChildren as PropsWithChildren10, ReactNode as ReactNode13 } from "react";
336
- declare const createUserExperienceContext: <T extends UserExperience>(defaultUserExperience: T) => Context<UserExperienceContext<T>>;
370
+ import { Context as Context2, PropsWithChildren as PropsWithChildren11, ReactNode as ReactNode14 } from "react";
371
+ declare const createUserExperienceContext: <T extends UserExperience>(defaultUserExperience: T) => Context2<UserExperienceContext<T>>;
337
372
  interface UserExperienceProviderWrapperProps<T extends UserExperience> {
338
- context: Context<UserExperienceContext<T>>;
373
+ context: Context2<UserExperienceContext<T>>;
339
374
  cookieName: string;
340
375
  defaultUserExperience: T;
341
376
  isValidUserExperience: (x: unknown) => x is T;
342
- initialValue?: Partial<T>;
377
+ initialValue?: T extends PrimitiveUserExperience | PrimitiveUserExperience[] ? never : Partial<T>;
343
378
  }
344
- declare function UserExperienceProviderWrapper<T extends UserExperience>({ children, context, cookieName, defaultUserExperience, isValidUserExperience, initialValue }: PropsWithChildren10<UserExperienceProviderWrapperProps<T>>): ReactNode13;
379
+ declare function UserExperienceProviderWrapper<T extends UserExperience>({ children, context, cookieName, defaultUserExperience, isValidUserExperience, initialValue }: PropsWithChildren11<UserExperienceProviderWrapperProps<T>>): ReactNode14;
345
380
  declare const defaultUserExperience: CoreUserExperience;
346
381
  declare const defaultUserExperienceCookieName = "remoraid-core-user-experience";
347
382
  declare const useRemoraidUserExperience: () => UserExperienceContext<CoreUserExperience>;
348
- import { MantineSize as MantineSize2 } from "@mantine/core";
349
- import { ReactNode as ReactNode15 } from "react";
383
+ import { MantineSize as MantineSize4 } from "@mantine/core";
384
+ import { ReactNode as ReactNode16 } from "react";
350
385
  interface WidgetSelectionHeaderProps {
351
386
  title?: string;
352
387
  disabledWidgets?: string[];
353
- mt?: MantineSize2 | number;
354
- }
355
- declare function WidgetSelectionHeader({ title, disabledWidgets, mt }: WidgetSelectionHeaderProps): ReactNode15;
356
- import { ReactNode as ReactNode16 } from "react";
357
- interface CloseButtonProps {
358
- widgetId: string;
388
+ mt?: MantineSize4 | number;
359
389
  }
360
- declare function CloseButton2({ widgetId }: CloseButtonProps): ReactNode16;
361
- import { BadgeProps as BadgeProps2, MantineBreakpoint as MantineBreakpoint2, MantineSize as MantineSize3, TooltipProps as TooltipProps2 } from "@mantine/core";
362
- import { ReactNode as ReactNode18 } from "react";
390
+ declare function WidgetSelectionHeader({ title, disabledWidgets, mt }: WidgetSelectionHeaderProps): ReactNode16;
391
+ import { BadgeProps as BadgeProps2, MantineBreakpoint as MantineBreakpoint2, MantineSize as MantineSize5, TooltipProps as TooltipProps2 } from "@mantine/core";
392
+ import { ComponentProps as ComponentProps4, ReactNode as ReactNode18 } from "react";
363
393
  import { BadgeProps, TooltipProps, TransitionProps } from "@mantine/core";
364
394
  import { ReactNode as ReactNode17 } from "react";
365
395
  interface BadgeMinimalProps {
366
396
  label: string;
367
397
  tooltip?: string;
368
- mounted?: boolean;
398
+ mounted?: TransitionProps["mounted"];
369
399
  componentsProps?: {
370
400
  badge?: BadgeProps
371
401
  transition?: Partial<Omit<TransitionProps, "mounted">>
372
402
  tooltip?: TooltipProps
373
403
  };
374
404
  }
375
- declare function BadgeMinimal(props: BadgeMinimalProps): ReactNode17;
405
+ declare function BadgeMinimal({ label, tooltip, mounted, componentsProps }: BadgeMinimalProps): ReactNode17;
376
406
  interface BadgeGroupProps {
377
- badges: (BadgeMinimalProps | ReactNode18)[];
378
- gap?: MantineSize3 | number;
407
+ badges: (ComponentProps4<typeof BadgeMinimal> | ElementOfType<typeof BadgeMinimal>)[];
408
+ gap?: MantineSize5 | number;
379
409
  breakpoint?: MantineBreakpoint2;
380
410
  componentsProps?: {
381
411
  tooltip?: Partial<TooltipProps2>
382
412
  cumulativeBadge?: Partial<Omit<BadgeProps2, "hiddenFrom" | "circle">>
383
413
  };
384
414
  }
385
- declare function BadgeGroup({ badges, gap, breakpoint, componentsProps }: BadgeGroupProps): ReactNode18;
386
- import { AlertProps as AlertProps2, MantineSize as MantineSize4, TransitionProps as TransitionProps2 } from "@mantine/core";
387
- import { PropsWithChildren as PropsWithChildren12, ReactNode as ReactNode19 } from "react";
415
+ declare function BadgeGroup({ badges: badgesProp, gap, breakpoint, componentsProps }: BadgeGroupProps): ReactNode18;
416
+ import { AlertProps as AlertProps2, MantineSize as MantineSize6, TransitionProps as TransitionProps2 } from "@mantine/core";
417
+ import { PropsWithChildren as PropsWithChildren13, ReactNode as ReactNode19 } from "react";
388
418
  interface AlertMinimalProps {
389
419
  category: AlertCategory;
390
420
  title?: string;
391
421
  text?: string;
392
422
  onClose?: () => void;
393
- mounted?: boolean;
394
- mt?: MantineSize4 | number;
395
- mb?: MantineSize4 | number;
423
+ mounted?: TransitionProps2["mounted"];
424
+ mt?: MantineSize6 | number;
425
+ mb?: MantineSize6 | number;
396
426
  componentsProps?: {
397
427
  alert?: AlertProps2
398
428
  transition?: Omit<TransitionProps2, "mounted">
399
429
  };
400
430
  }
401
- declare function AlertMinimal({ children, title, category, text, onClose, mounted, mt, mb, componentsProps }: PropsWithChildren12<AlertMinimalProps>): ReactNode19;
402
- import { ActionIconProps, ActionIconVariant, ButtonProps, ButtonVariant, MantineBreakpoint as MantineBreakpoint3, MantineColor, MantineSize as MantineSize5, TooltipProps as TooltipProps3 } from "@mantine/core";
431
+ declare function AlertMinimal({ title, category, text, onClose, mounted, mt, mb, componentsProps, children }: PropsWithChildren13<AlertMinimalProps>): ReactNode19;
432
+ import { ActionIconProps, ActionIconVariant, ButtonProps, ButtonVariant, MantineBreakpoint as MantineBreakpoint3, MantineColor, MantineSize as MantineSize7, TooltipProps as TooltipProps3, TransitionProps as TransitionProps3 } from "@mantine/core";
403
433
  import { Icon as Icon3, IconProps as IconProps3 } from "@tabler/icons-react";
404
434
  import { ReactNode as ReactNode20 } from "react";
405
- interface RemoraidButtonProps {
435
+ type RemoraidButtonDefaultResponsivity = true;
436
+ interface ExplicitRemoraidButtonProps<Responsive extends boolean> {
437
+ responsive: Responsive;
406
438
  label: string;
407
- responsive?: boolean;
408
- breakpoint?: MantineBreakpoint3;
409
- collapsed?: boolean;
410
- size?: MantineSize5;
439
+ size?: MantineSize7;
411
440
  color?: MantineColor;
441
+ breakpoint?: true extends Responsive ? MantineBreakpoint3 : never;
442
+ collapsed?: false extends Responsive ? boolean : never;
412
443
  icon?: Icon3;
444
+ iconSize?: RemoraidIconSize;
413
445
  onClick?: () => void;
414
446
  loading?: boolean;
415
447
  variant?: Extract<ButtonVariant, ActionIconVariant>;
448
+ mounted?: TransitionProps3["mounted"];
416
449
  componentsProps?: {
417
450
  tooltip?: Partial<TooltipProps3>
418
451
  icon?: Partial<IconProps3>
419
452
  button?: Omit<Partial<Common<ButtonProps, ActionIconProps>>, "variant" | "onClick" | "size" | "color" | "loading">
453
+ transition?: Partial<Omit<TransitionProps3, "mounted">>
420
454
  Button?: Partial<ButtonProps>
421
455
  ActionIcon?: Partial<ActionIconProps>
422
456
  };
423
457
  }
424
- declare function RemoraidButton({ label, responsive, breakpoint, collapsed, size, color, onClick, loading, variant, componentsProps,...props }: RemoraidButtonProps): ReactNode20;
425
- import { MantineSize as MantineSize6, PaperProps as PaperProps2, TransitionProps as TransitionProps3 } from "@mantine/core";
426
- import { PropsWithChildren as PropsWithChildren13, ReactNode as ReactNode21 } from "react";
427
- interface WidgetWrapperComponentsProps {
428
- container?: Partial<PaperProps2>;
429
- transition?: Partial<Omit<TransitionProps3, "mounted">>;
458
+ type RemoraidButtonProps<Responsive extends boolean = RemoraidButtonDefaultResponsivity> = OptionalIfExtends<ExplicitRemoraidButtonProps<Responsive>, "responsive", true, Responsive>;
459
+ declare function RemoraidButton<Responsive extends boolean = RemoraidButtonDefaultResponsivity>({ label, responsive: ResponsiveProp, breakpoint: breakpointProp, collapsed: collapsedProp, size, color, onClick, loading, variant, mounted, icon: iconProp, iconSize, componentsProps }: RemoraidButtonProps<Responsive>): ReactNode20;
460
+ import { ActionIcon as ActionIcon2, ActionIconProps as ActionIconProps2, TooltipProps as TooltipProps4, TransitionProps as TransitionProps4 } from "@mantine/core";
461
+ import { Icon as Icon4, IconProps as IconProps4 } from "@tabler/icons-react";
462
+ import { ComponentProps as ComponentProps5, ReactNode as ReactNode21 } from "react";
463
+ interface ControlButtonProps {
464
+ icon: Icon4;
465
+ mounted?: boolean;
466
+ tooltip?: string;
467
+ size?: ActionIconProps2["size"];
468
+ iconSize?: RemoraidIconSize;
469
+ color?: ActionIconProps2["color"];
470
+ onClick?: ComponentProps5<typeof ActionIcon2<"button">>["onClick"];
471
+ order?: number;
472
+ componentsProps?: {
473
+ transition?: Partial<TransitionProps4>
474
+ tooltip?: Partial<TooltipProps4>
475
+ button?: Partial<ActionIconProps2>
476
+ icon?: Partial<IconProps4>
477
+ };
478
+ }
479
+ declare function ControlButton({ icon: Icon4, mounted, size, iconSize, onClick, order, color, tooltip, componentsProps }: ControlButtonProps): ReactNode21;
480
+ import { ReactNode as ReactNode22, Ref, RefObject } from "react";
481
+ import { GroupProps as GroupProps3, MantineSize as MantineSize8, PaperProps as PaperProps2, TransitionProps as TransitionProps5 } from "@mantine/core";
482
+ import { IconProps as IconProps5 } from "@tabler/icons-react";
483
+ interface ControlsProps {
484
+ dragContainerRef: RefObject<HTMLDivElement | null>;
485
+ mounted?: boolean;
486
+ groupRef?: Ref<HTMLDivElement>;
487
+ gutter?: MantineSize8 | number;
488
+ iconSize?: RemoraidIconSize;
489
+ additionalButtons?: ElementOrPropsOfType<typeof ControlButton>[];
490
+ componentsProps?: {
491
+ group?: Partial<GroupProps3>
492
+ container?: Partial<PaperProps2>
493
+ transition?: Partial<TransitionProps5>
494
+ gripIcon?: Partial<IconProps5>
495
+ };
496
+ }
497
+ declare function Controls({ groupRef, mounted, dragContainerRef, gutter, iconSize, additionalButtons: additionalButtonsProp, componentsProps, children: childrenProp }: PropsWithChildrenOfType<typeof ControlButton, ControlsProps>): ReactNode22;
498
+ import { MantineSize as MantineSize9, Paper, TransitionProps as TransitionProps6 } from "@mantine/core";
499
+ import { ComponentProps as ComponentProps7, PropsWithChildren as PropsWithChildren15, ReactNode as ReactNode24 } from "react";
500
+ import { ComponentProps as ComponentProps6, PropsWithChildren as PropsWithChildren14, ReactNode as ReactNode23 } from "react";
501
+ import { Box } from "@mantine/core";
502
+ type PinnableDefaultLayoutType = LayoutType.Frame;
503
+ interface ExplicitPinnableProps<T extends LayoutType> {
504
+ layoutType: T;
505
+ section: LayoutSection<T>;
506
+ initialValue?: boolean;
507
+ layoutId?: string;
508
+ controlsContainer?: HTMLDivElement | null;
509
+ hidden?: boolean;
510
+ componentsProps?: {
511
+ controls?: Partial<ControlsProps>
512
+ button?: Partial<ControlButtonProps>
513
+ container?: Partial<ComponentProps6<typeof Box<"div">>>
514
+ layoutElement?: Partial<FrameLayoutElementProps>
515
+ };
430
516
  }
517
+ type PinnableProps<T extends LayoutType = PinnableDefaultLayoutType> = OptionalIfExtends<ExplicitPinnableProps<T>, "layoutType", PinnableDefaultLayoutType, T>;
518
+ declare function Pinnable2<T extends LayoutType = PinnableDefaultLayoutType>({ layoutType: layoutTypeProp, section, initialValue, layoutId, controlsContainer, hidden, componentsProps, children }: PropsWithChildren14<PinnableProps<T>>): ReactNode23;
431
519
  interface WidgetWrapperProps {
432
520
  config: WidgetConfiguration;
433
- mt?: MantineSize6 | number;
521
+ mt?: MantineSize9 | number;
434
522
  withCloseButton?: boolean;
435
- componentsProps?: WidgetWrapperComponentsProps;
436
- }
437
- declare function WidgetWrapper({ children, config, mt, withCloseButton, componentsProps }: PropsWithChildren13<WidgetWrapperProps>): ReactNode21;
438
- interface WidgetWrapper extends React.FC<PropsWithChildren13<WidgetWrapperProps>> {
439
- CloseButton: typeof CloseButton2;
440
- }
441
- declare const _default3: WidgetWrapper;
442
- import { MantineSize as MantineSize7, LoaderProps } from "@mantine/core";
443
- import { PropsWithChildren as PropsWithChildren14, ReactNode as ReactNode22 } from "react";
444
- interface WidgetComponentsProps extends WidgetWrapperComponentsProps {
445
- wrapper?: Partial<Omit<WidgetWrapperProps, "widgetId">>;
446
- loader?: Partial<LoaderProps>;
447
- badgeGroup?: Partial<BadgeGroupProps>;
523
+ pinnableSection?: Exclude<FrameLayoutSection, FrameLayoutSection.Content>;
524
+ componentsProps?: {
525
+ container?: Partial<ComponentProps7<typeof Paper<"div">>>
526
+ transition?: Partial<TransitionProps6>
527
+ controls?: Partial<ControlsProps>
528
+ closeButton?: Partial<ControlButtonProps>
529
+ Pinnable?: Partial<PinnableProps>
530
+ };
448
531
  }
532
+ declare function WidgetWrapper({ config, mt, withCloseButton, pinnableSection, componentsProps, children }: PropsWithChildren15<WidgetWrapperProps>): ReactNode24;
533
+ import { MantineSize as MantineSize10, LoaderProps, DividerProps, StackProps as StackProps2 } from "@mantine/core";
534
+ import { ComponentProps as ComponentProps8, PropsWithChildren as PropsWithChildren16, ReactNode as ReactNode25 } from "react";
449
535
  interface WidgetProps {
450
536
  id: string;
451
- title: string;
537
+ title?: string;
452
538
  config?: Partial<Omit<WidgetConfiguration, "widgetId">>;
453
- badges?: (BadgeMinimalProps | ReactNode22)[];
454
- buttons?: (RemoraidButtonProps | ReactNode22)[];
455
- alerts?: (AlertMinimalProps | ReactNode22)[];
456
- gaps?: MantineSize7 | number | {
457
- badges?: MantineSize7 | number
458
- buttons?: MantineSize7 | number
459
- alerts?: MantineSize7 | number
539
+ badges?: (ComponentProps8<typeof BadgeMinimal> | ElementOfType<typeof BadgeMinimal>)[];
540
+ buttons?: (RemoraidButtonProps<true> | RemoraidButtonProps<false> | ElementOfType<typeof RemoraidButton, RemoraidButtonProps<true> | RemoraidButtonProps<false>>)[];
541
+ alerts?: (ComponentProps8<typeof AlertMinimal> | ElementOfType<typeof AlertMinimal>)[];
542
+ gaps?: MantineSize10 | number | {
543
+ badges?: MantineSize10 | number
544
+ buttons?: MantineSize10 | number
545
+ alerts?: MantineSize10 | number
460
546
  };
461
547
  loading?: boolean;
462
- mt?: MantineSize7 | number;
463
- componentsProps?: WidgetComponentsProps;
548
+ mt?: MantineSize10 | number;
549
+ pinnableSection?: WidgetWrapperProps["pinnableSection"];
550
+ componentsProps?: {
551
+ wrapper?: Partial<Omit<WidgetWrapperProps, "config">>
552
+ loader?: Partial<LoaderProps>
553
+ badgeGroup?: Partial<BadgeGroupProps>
554
+ divider?: Partial<DividerProps>
555
+ alertsContainer?: Partial<StackProps2>
556
+ };
464
557
  }
465
- declare function Widget({ children, id, config, title, badges, buttons, alerts, gaps, loading, mt, componentsProps }: PropsWithChildren14<WidgetProps>): ReactNode22;
466
- import { ContainerProps, MantineSize as MantineSize8 } from "@mantine/core";
467
- import { PropsWithChildren as PropsWithChildren15, ReactNode as ReactNode23 } from "react";
558
+ declare function Widget({ id, title, config, badges: badgesProp, buttons: buttonsProp, alerts: alertsProp, gaps, loading, mt, pinnableSection, componentsProps, children }: PropsWithChildren16<WidgetProps>): ReactNode25;
559
+ import { ContainerProps as ContainerProps2 } from "@mantine/core";
560
+ import { PropsWithChildren as PropsWithChildren17, ReactNode as ReactNode26 } from "react";
468
561
  declare const usePage: () => PageConfiguration | null;
469
562
  interface PageProps {
470
563
  name?: string;
471
564
  config?: Partial<Omit<PageConfiguration, "name">>;
472
- pt?: MantineSize8 | number;
473
- componentsProps?: {
474
- container?: ContainerProps
475
- };
476
- }
477
- declare function Page({ children, name, config, pt, componentsProps }: PropsWithChildren15<PageProps>): ReactNode23;
478
- import { ContainerProps as ContainerProps2, MantineSize as MantineSize9 } from "@mantine/core";
479
- import { PropsWithChildren as PropsWithChildren16, ReactNode as ReactNode24 } from "react";
480
- interface PageContainerProps {
481
- pt?: MantineSize9 | number;
565
+ p?: PageContainerProps["p"];
482
566
  componentsProps?: {
483
567
  container?: ContainerProps2
484
568
  };
485
569
  }
486
- declare function PageContainer({ children, pt, componentsProps }: PropsWithChildren16<PageContainerProps>): ReactNode24;
487
- import { PropsWithChildren as PropsWithChildren17, ReactNode as ReactNode25 } from "react";
570
+ declare function Page({ children, name, config, p, componentsProps }: PropsWithChildren17<PageProps>): ReactNode26;
571
+ import { PropsWithChildren as PropsWithChildren18, ReactNode as ReactNode27 } from "react";
488
572
  interface NotFoundPageProps {
489
573
  message?: string;
490
574
  componentsProps?: {
491
575
  page?: PageProps
492
576
  };
493
577
  }
494
- declare function NotFoundPage({ children, message, componentsProps }: PropsWithChildren17<NotFoundPageProps>): ReactNode25;
495
- import { ContainerProps as ContainerProps3, MantineSize as MantineSize10 } from "@mantine/core";
496
- import { PropsWithChildren as PropsWithChildren18, ReactNode as ReactNode26 } from "react";
578
+ declare function NotFoundPage({ children, message, componentsProps }: PropsWithChildren18<NotFoundPageProps>): ReactNode27;
579
+ import { ContainerProps as ContainerProps3, MantineSize as MantineSize11 } from "@mantine/core";
580
+ import { PropsWithChildren as PropsWithChildren19, ReactNode as ReactNode28 } from "react";
497
581
  interface EnvironmentShellProps {
498
582
  environment: Record<string, string | undefined>;
499
583
  message?: string;
500
- m?: MantineSize10 | number;
501
- mt?: MantineSize10 | number;
584
+ m?: MantineSize11 | number;
585
+ mt?: MantineSize11 | number;
502
586
  withContainer?: boolean;
503
587
  componentsProps?: {
504
588
  container?: ContainerProps3
505
589
  };
506
590
  }
507
- declare function EnvironmentShell({ children, environment, message, m, mt, withContainer, componentsProps }: PropsWithChildren18<EnvironmentShellProps>): ReactNode26;
508
- import { PropsWithChildren as PropsWithChildren19, ReactNode as ReactNode28 } from "react";
509
- import { ReactNode as ReactNode27 } from "react";
510
- import { GroupProps as GroupProps3 } from "@mantine/core";
591
+ declare function EnvironmentShell({ children, environment, message, m, mt, withContainer, componentsProps }: PropsWithChildren19<EnvironmentShellProps>): ReactNode28;
592
+ import { PropsWithChildren as PropsWithChildren20, ReactNode as ReactNode30 } from "react";
593
+ import { ReactNode as ReactNode29 } from "react";
594
+ import { GroupProps as GroupProps4 } from "@mantine/core";
511
595
  interface SettingsWidgetSaveButtonProps {
512
596
  onSaveChanges: () => void;
513
597
  insideContainer?: boolean;
514
598
  componentsProps?: {
515
- container?: Partial<GroupProps3>
599
+ container?: Partial<GroupProps4>
516
600
  button?: Partial<RemoraidButtonProps>
517
601
  };
518
602
  }
519
- declare function SaveButton2({ onSaveChanges, insideContainer, componentsProps }: SettingsWidgetSaveButtonProps): ReactNode27;
603
+ declare function SaveButton2({ onSaveChanges, insideContainer, componentsProps }: SettingsWidgetSaveButtonProps): ReactNode29;
520
604
  declare const defaultSettingsWidgetContext: {};
521
605
  declare const useSettingsWidgetContext: () => SettingsWidgetContext;
522
606
  interface SettingsWidgetProps {
@@ -525,52 +609,66 @@ interface SettingsWidgetProps {
525
609
  custom?: boolean;
526
610
  widgetProps?: Partial<WidgetProps>;
527
611
  }
528
- declare function SettingsWidget({ children, onRestoreDefaultValues, unsavedChanges, custom, widgetProps }: PropsWithChildren19<SettingsWidgetProps>): ReactNode28;
529
- interface SettingsWidget extends React.FC<PropsWithChildren19<SettingsWidgetProps>> {
612
+ declare function SettingsWidget({ children, onRestoreDefaultValues, unsavedChanges, custom, widgetProps }: PropsWithChildren20<SettingsWidgetProps>): ReactNode30;
613
+ interface SettingsWidget extends React.FC<PropsWithChildren20<SettingsWidgetProps>> {
530
614
  SaveButton: typeof SaveButton2;
531
615
  }
532
- declare const _default4: SettingsWidget;
533
- import { ReactNode as ReactNode30 } from "react";
534
- import { PropsWithChildren as PropsWithChildren20, ReactNode as ReactNode29 } from "react";
616
+ declare const _default3: SettingsWidget;
617
+ import { ComponentProps as ComponentProps9, ReactNode as ReactNode32 } from "react";
618
+ import { PropsWithChildren as PropsWithChildren21, ReactNode as ReactNode31 } from "react";
535
619
  interface SettingsTableRowProps {
536
620
  label: string;
537
621
  }
538
- declare function Row2({ children, label }: PropsWithChildren20<SettingsTableRowProps>): ReactNode29;
622
+ declare function Row2({ children, label }: PropsWithChildren21<SettingsTableRowProps>): ReactNode31;
539
623
  declare const defaultSettingsTableOptions: {
540
624
  leftColumnWidth: string
541
625
  };
542
626
  declare const useSettingsTableOptions: () => SettingsTableOptions;
543
627
  interface SettingsTableProps {
544
- children: OnlyChildrenOf<typeof Row2, SettingsTableRowProps>;
545
628
  leftColumnWidth?: string | number;
546
629
  }
547
- declare function SettingsTable({ children, leftColumnWidth }: SettingsTableProps): ReactNode30;
548
- interface SettingsTable extends React.FC<SettingsTableProps> {
630
+ declare function SettingsTable({ leftColumnWidth, children: childrenProp }: PropsWithChildrenOfType<typeof Row2, SettingsTableProps>): ReactNode32;
631
+ interface SettingsTable extends React.FC<ComponentProps9<typeof SettingsTable>> {
549
632
  Row: typeof Row2;
550
633
  }
551
- declare const _default5: SettingsTable;
552
- import { ReactElement as ReactElement2, ReactNode as ReactNode31 } from "react";
634
+ declare const _default4: SettingsTable;
635
+ import { ComponentProps as ComponentProps10, ReactNode as ReactNode33 } from "react";
553
636
  declare const defaultNavbarSettingsWidgetId = "navbar-settings";
554
637
  interface NavbarSettingsWidgetProps {
555
- additionalRows?: ReactElement2<SettingsTableRowProps, typeof _default5.Row>[];
638
+ additionalRows?: (ComponentProps10<typeof _default4.Row> | ElementOfType<typeof _default4.Row>)[];
556
639
  widgetProps?: Partial<WidgetProps>;
557
640
  componentsProps?: {
558
- table: Partial<Omit<SettingsTableProps, "children">>
641
+ table: Partial<SettingsTableProps>
559
642
  };
560
643
  }
561
- declare function NavbarSettingsWidget({ additionalRows, widgetProps, componentsProps }: NavbarSettingsWidgetProps): ReactNode31;
562
- import { Chip, ChipGroupProps, ChipProps, FlexProps, MantineSize as MantineSize11, ScrollAreaProps as ScrollAreaProps3 } from "@mantine/core";
563
- import { ReactNode as ReactNode32 } from "react";
644
+ declare function NavbarSettingsWidget({ additionalRows: additionalRowsProp, widgetProps, componentsProps }: NavbarSettingsWidgetProps): ReactNode33;
645
+ import { Chip, ChipGroupProps, FlexProps, MantineSize as MantineSize12, ScrollAreaProps as ScrollAreaProps3 } from "@mantine/core";
646
+ import { ReactNode as ReactNode34 } from "react";
564
647
  interface ScrollbleChipGroupProps {
565
648
  value: string[];
566
649
  onChange?: (value: string[]) => void;
567
- gap?: MantineSize11 | number;
650
+ gap?: MantineSize12 | number;
568
651
  componentsProps?: {
569
652
  chipGroup?: Partial<ChipGroupProps<true>>
570
653
  scrollArea?: Partial<ScrollAreaProps3>
571
654
  container?: Partial<FlexProps>
572
655
  };
573
- children?: OnlyChildrenOf<typeof Chip, ChipProps>;
574
656
  }
575
- declare function ScrollableChipGroup({ value, onChange, gap, componentsProps, children }: ScrollbleChipGroupProps): ReactNode32;
576
- export { useWidgets, useSettingsWidgetContext as useSettingsWidgetOptions, useSettingsTableOptions, useRemoraidUserExperience, useRemoraidTheme, useRemoraidApp, usePage, useLayouts, useHydrationStatus, useHydratedMantineColorScheme, useFrameLayout, isFrameLayout, defaultUserExperienceCookieName, defaultUserExperience, defaultSettingsWidgetContext as defaultSettingsWidgetOptions, defaultSettingsTableOptions, defaultNavbarSettingsWidgetId, defaultLayoutsContext, defaultFrameLayoutContext, defaultAppShellLayoutId, defaultAppContext, createUserExperienceContext, createRemoraidTheme, WidgetsProviderProps, WidgetWrapperProps, _default3 as WidgetWrapper, WidgetSelectionHeaderProps, WidgetSelectionHeader, WidgetProps, WidgetConfiguration, Widget, UserExperienceProviderWrapperProps, UserExperienceProviderWrapper, UserExperienceProviderProps, UserExperienceContext, UserExperience, TransitionDuration, ThemeProviderProps, StaticRemoraidAppContext, SettingsWidgetSaveButtonProps, SettingsWidgetProps, SettingsWidgetContext, _default4 as SettingsWidget, SettingsTableRowProps, SettingsTableOptions, _default5 as SettingsTable, ScrollbleChipGroupProps, ScrollableChipGroup, RemoraidUser, RemoraidThemeDependencies, RemoraidThemeCallback, RemoraidTheme, RemoraidProviderProps, RemoraidProvider, RemoraidIconSize, RemoraidButtonProps, RemoraidButton, RemoraidBreakpoint, RemoraidAuthContext, RemoraidAppContext, PageProps, PageContainerProps, PageContainer, PageConfiguration, Page, NotFoundPageProps, NotFoundPage, NavbarVariant, NavbarSettingsWidgetProps, NavbarSettingsWidget, NavbarMinimalProps, LayoutsProviderProps, LayoutsContext, LayoutType, Layout, HydrationStatusProviderProps, HydrationStatusProvider, HydrationStatus, FrameLayoutVariant, FrameLayoutSection, FrameLayoutProps, FrameLayoutNavbarPosition, FrameLayoutFooterPosition, FrameLayoutElementProps, FrameLayoutContext, _default as FrameLayout, FooterVariant, FooterMinimalProps, EnvironmentShellProps, EnvironmentShell, DefaultNavbarVariant, DefaultFrameLayoutVariant, DefaultFooterVariant, CustomAppVariables, CoreUserExperience, CloseButtonProps, BadgeMinimalProps, BadgeMinimal, BadgeGroupProps, BadgeGroup, AppShellProps, AppShellNavbarVariant, AppShellFooterVariant, _default2 as AppShell, AppProviderProps, AppProvider2 as AppProvider, AppLogo, AppContextProps, AlertMinimalProps, AlertMinimal, AlertCategory };
657
+ declare function ScrollableChipGroup({ value, onChange, gap, componentsProps, children: childrenProp }: PropsWithChildrenOfType<typeof Chip, ScrollbleChipGroupProps>): ReactNode34;
658
+ import { PropsWithChildren as PropsWithChildren22, ReactNode as ReactNode35 } from "react";
659
+ declare const createContextCluster: <
660
+ Context,
661
+ StaticID extends string = never
662
+ >(generalDefaultValue: Context, staticIds?: StaticID[]) => ContextCluster<Context, StaticID>;
663
+ interface ContextClusterProviderProps<
664
+ Context,
665
+ StaticID extends string = never
666
+ > {
667
+ cluster: ContextCluster<Context, StaticID>;
668
+ values?: Record<string, Context>;
669
+ }
670
+ declare function ContextClusterProvider<
671
+ Context,
672
+ StaticID extends string = never
673
+ >({ cluster, values, children }: PropsWithChildren22<ContextClusterProviderProps<Context, StaticID>>): ReactNode35;
674
+ export { useWidgets, useWidget, useSettingsWidgetContext as useSettingsWidgetOptions, useSettingsTableOptions, useRemoraidUserExperience, useRemoraidTheme, useRemoraidApp, usePage, useLayouts, useHydrationStatus, useHydratedMantineColorScheme, useFrameLayout, remoraidAppShellLayoutId, isValidElementOfType, getElementTypeName, getDefaultWidgetContext, defaultUserExperienceCookieName, defaultUserExperience, defaultSettingsWidgetContext as defaultSettingsWidgetOptions, defaultSettingsTableOptions, defaultNavbarSettingsWidgetId, defaultLayoutsContext, defaultAppShellNavbarPositions, defaultAppShellFooterPositions, defaultAppContext, createUserExperienceContext, createRemoraidTheme, createContextCluster, co, asElementOrPropsOfType, asElementOfType, asChildrenOfType, WidgetsProviderProps, WidgetsContext, WidgetWrapperProps, WidgetWrapper, WidgetSelectionHeaderProps, WidgetSelectionHeader, WidgetProps, WidgetContext, WidgetConfiguration, Widget, UserExperienceProviderWrapperProps, UserExperienceProviderWrapper, UserExperienceProviderProps, UserExperienceContext, UserExperience, TransitionDuration, ThemeProviderProps, StaticRemoraidAppContext, SettingsWidgetSaveButtonProps, SettingsWidgetProps, SettingsWidgetContext, _default3 as SettingsWidget, SettingsTableRowProps, SettingsTableOptions, _default4 as SettingsTable, ScrollbleChipGroupProps, ScrollableChipGroup, RemoraidUser, RemoraidThemeDependencies, RemoraidThemeCallback, RemoraidTheme, RemoraidProviderProps, RemoraidProvider, RemoraidIconSize, RemoraidButtonProps, RemoraidButtonDefaultResponsivity, RemoraidButton, RemoraidBreakpoint, RemoraidAuthContext, RemoraidAppContext, PropsWithChildrenOfType, PrimitiveUserExperience, PinnableProps, PinnableDefaultLayoutType, Pinnable2 as Pinnable, PageProps, PageContainerProps, PageContainer2 as PageContainer, PageConfiguration, Page, OptionalIfExtends, Optional, NotFoundPageProps, NotFoundPage, NavbarVariant, NavbarSettingsWidgetProps, NavbarSettingsWidget, NavbarMinimalProps, LayoutsProviderProps, LayoutsContext, LayoutType, LayoutSection, LayoutContext, HydrationStatusProviderProps, HydrationStatusProvider, HydrationStatus, FrameLayoutSection, FrameLayoutProps, FrameLayoutElementProps, _default as FrameLayout, FooterVariant, FooterMinimalProps, EnvironmentShellProps, EnvironmentShell, ElementOrPropsOfType, ElementOfType, DefaultNavbarVariant, DefaultFooterVariant, CustomAppVariables, CoreUserExperience, ControlsProps, Controls, ControlButtonProps, ControlButton, ContextClusterProviderProps, ContextClusterProvider, ContextCluster, Common, ChildrenOfType, BadgeMinimalProps, BadgeMinimal, BadgeGroupProps, BadgeGroup, AppShellProps, AppShellNavbarVariant, AppShellNavbarPosition, AppShellFooterVariant, AppShellFooterPosition, _default2 as AppShell, AppProviderProps, AppProvider2 as AppProvider, AppLogo, AppContextProps, AlertMinimalProps, AlertMinimal, AlertCategory };