remoraid 2.7.2 → 2.14.7

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.
@@ -1,37 +1,44 @@
1
- import { PropsWithChildren as PropsWithChildren4, ReactNode as ReactNode5 } from "react";
2
- import { AlertProps, IndicatorProps, MantineBreakpoint, MantineColorScheme, MantineSize, MantineTheme, ScrollAreaProps } from "@mantine/core";
1
+ import { PropsWithChildren as PropsWithChildren5, ReactNode as ReactNode6 } from "react";
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 { ReactNode } from "react";
5
+ import React2, { Dispatch, ReactNode, SetStateAction } from "react";
6
6
  type RemoraidUser = {
7
7
  name: string
8
8
  } | null;
9
- interface RemoraidAppContext {
9
+ interface RemoraidAuthContext {
10
+ user: RemoraidUser;
11
+ onLogout?: () => void;
12
+ }
13
+ type AppLogo = (props: Omit<ImageProps, "src" | "alt">) => ReactNode;
14
+ interface StaticRemoraidAppContext {
10
15
  navigablePages: {
11
16
  label: string
12
17
  href: string
13
18
  icon?: Icon
14
19
  }[];
15
- user?: RemoraidUser;
20
+ logo?: AppLogo;
21
+ auth?: RemoraidAuthContext;
16
22
  }
23
+ type CustomAppVariables = { [K in Exclude<string, keyof StaticRemoraidAppContext>] : any };
24
+ type RemoraidAppContext<V extends CustomAppVariables> = StaticRemoraidAppContext & V;
25
+ type AppContextProps<V extends CustomAppVariables> = StaticRemoraidAppContext & V;
17
26
  declare enum NavbarVariant {
18
27
  Minimal = "minimal"
19
28
  }
20
- interface NavbarSettings {
21
- hiddenPages: string[];
22
- linkSize: string;
23
- px: MantineSize | number;
24
- py: MantineSize | number;
25
- iconSize?: string | number;
26
- }
27
- type UserExperience = Record<string, any>;
28
- interface CoreUserExperience extends UserExperience {
29
- navbarVariant: NavbarVariant;
30
- navbarSettings: NavbarSettings;
29
+ declare enum FooterVariant {
30
+ Minimal = "minimal"
31
+ }
32
+ type PrimitiveUserExperience = string | number | boolean;
33
+ type UserExperience = Record<string, any> | PrimitiveUserExperience | PrimitiveUserExperience[];
34
+ interface CoreUserExperience {
31
35
  showWelcomeMessage: boolean;
36
+ navbar: {
37
+ hiddenPages: string[]
38
+ };
32
39
  }
33
40
  type UserExperienceProviderProps<T extends UserExperience> = {
34
- initialValue?: Partial<T>
41
+ initialValue?: T extends PrimitiveUserExperience | PrimitiveUserExperience[] ? T : Partial<T>
35
42
  cookieName?: string
36
43
  };
37
44
  interface UserExperienceContext<T extends UserExperience> {
@@ -75,14 +82,6 @@ interface RemoraidThemeDependencies {
75
82
  colorScheme: MantineColorScheme;
76
83
  }
77
84
  type RemoraidThemeCallback = (dependencies: Partial<RemoraidThemeDependencies>) => Partial<RemoraidTheme>;
78
- type AppShellLogo = (props: Omit<ImageProps, "src" | "alt">) => ReactNode;
79
- interface NavbarProps {
80
- settings?: Partial<NavbarSettings>;
81
- variant?: NavbarVariant;
82
- linkIndicator?: (isHovering: boolean) => IndicatorProps;
83
- logoIndicator?: (isHovering: boolean) => IndicatorProps;
84
- onLogout?: () => void;
85
- }
86
85
  interface WidgetConfiguration {
87
86
  widgetId: string;
88
87
  name: string;
@@ -105,6 +104,42 @@ interface HydrationStatus {
105
104
  hasHydrated: boolean;
106
105
  ensureHydration: <T>(v: T) => T | undefined;
107
106
  }
107
+ declare enum LayoutType {
108
+ Frame = "frame"
109
+ }
110
+ declare enum FrameLayoutSection {
111
+ Top = "top",
112
+ Bottom = "bottom",
113
+ Left = "left",
114
+ Right = "right",
115
+ Content = "content"
116
+ }
117
+ type Layout<T extends LayoutType> = T extends LayoutType.Frame ? {
118
+ sections: Record<Exclude<FrameLayoutSection, FrameLayoutSection.Content>, HTMLDivElement | null>
119
+ } : never;
120
+ interface LayoutsContext {
121
+ layouts: Record<string, Layout<LayoutType>>;
122
+ setLayouts: Dispatch<SetStateAction<Record<string, Layout<LayoutType>>>>;
123
+ }
124
+ type FrameLayoutContext = {
125
+ layoutId: string | null
126
+ layout: Layout<LayoutType.Frame>
127
+ setLayout: Dispatch<SetStateAction<Layout<LayoutType.Frame>>>
128
+ };
129
+ declare enum FrameLayoutVariant {
130
+ Plain = "plain",
131
+ Sticky = "sticky"
132
+ }
133
+ interface ContextCluster<
134
+ Context,
135
+ StaticID extends string = never
136
+ > {
137
+ contexts: Record<string, React2.Context<Context>>;
138
+ defaultValues: Record<string, Context>;
139
+ generalDefaultValue: Context;
140
+ createContext: (id: string, defaultValue?: Context) => React2.Context<Context>;
141
+ useContext: <ID extends string>(id: ID) => ID extends StaticID ? Context : Context | null;
142
+ }
108
143
  interface WidgetsContext {
109
144
  widgets: {
110
145
  [index: string]: {
@@ -143,6 +178,12 @@ declare const useHydratedMantineColorScheme: () => {
143
178
  };
144
179
  interface HydrationStatusProviderProps {}
145
180
  declare function HydrationStatusProvider({ children }: PropsWithChildren3<HydrationStatusProviderProps>): ReactNode4;
181
+ declare const defaultLayoutsContext: {
182
+ layouts: {}
183
+ setLayouts: () => void
184
+ };
185
+ declare const useLayouts: () => LayoutsContext;
186
+ interface LayoutsProviderProps {}
146
187
  interface RemoraidProviderProps {
147
188
  theme?: ThemeProviderProps["theme"];
148
189
  initialUserExperience?: UserExperienceProviderProps<CoreUserExperience>["initialValue"];
@@ -152,56 +193,202 @@ interface RemoraidProviderProps {
152
193
  WidgetsProvider?: Partial<WidgetsProviderProps>
153
194
  CookiesProvider?: Partial<ReactCookieProps>
154
195
  HydrationStatusProviderProps?: Partial<HydrationStatusProviderProps>
196
+ LayoutsProviderProps?: Partial<LayoutsProviderProps>
155
197
  };
156
198
  }
157
- declare function RemoraidProvider({ children, theme, initialUserExperience, componentsProps }: PropsWithChildren4<RemoraidProviderProps>): ReactNode5;
158
- import { PropsWithChildren as PropsWithChildren5, ReactNode as ReactNode6 } from "react";
159
- interface AppShellProps {
160
- logo: AppShellLogo;
161
- navigablePages: RemoraidAppContext["navigablePages"];
162
- navbar?: NavbarProps;
163
- user?: RemoraidUser;
164
- }
165
- declare function AppShell({ children, logo, navbar, user, navigablePages }: PropsWithChildren5<AppShellProps>): ReactNode6;
166
- import { PropsWithChildren as PropsWithChildren6, ReactNode as ReactNode7 } from "react";
167
- declare const defaultAppContext: RemoraidAppContext;
168
- declare const useRemoraidApp: () => RemoraidAppContext;
169
- interface AppProviderProps {
170
- navigablePages: RemoraidAppContext["navigablePages"];
171
- user?: RemoraidUser;
172
- }
173
- declare function AppProvider({ children, navigablePages, user }: PropsWithChildren6<AppProviderProps>): ReactNode7;
174
- import { Context, PropsWithChildren as PropsWithChildren7, ReactNode as ReactNode8 } from "react";
175
- declare const createUserExperienceContext: <T extends UserExperience>(defaultUserExperience: T) => Context<UserExperienceContext<T>>;
199
+ declare function RemoraidProvider({ children, theme, initialUserExperience, componentsProps }: PropsWithChildren5<RemoraidProviderProps>): ReactNode6;
200
+ import { BoxProps as BoxProps3 } from "@mantine/core";
201
+ import { IndicatorProps, PaperProps } from "@mantine/core";
202
+ import { Icon as Icon2 } from "@tabler/icons-react";
203
+ import { ReactNode as ReactNode7 } from "react";
204
+ interface NavbarLinkProps {
205
+ label: string;
206
+ linkSize: string;
207
+ iconSize: string;
208
+ icon?: Icon2;
209
+ indicator?: (isHovering: boolean) => IndicatorProps;
210
+ href?: string;
211
+ active?: boolean;
212
+ onClick?(): void;
213
+ }
214
+ interface NavbarMinimalProps {
215
+ linkSize?: string;
216
+ iconSize?: string;
217
+ linkIndicator?: (isHovering: boolean) => IndicatorProps;
218
+ logoIndicator?: (isHovering: boolean) => IndicatorProps;
219
+ componentsProps?: {
220
+ container?: Partial<PaperProps>
221
+ link?: Partial<NavbarLinkProps>
222
+ };
223
+ }
224
+ declare function NavbarMinimal({ linkSize, iconSize, linkIndicator, logoIndicator, componentsProps }: NavbarMinimalProps): ReactNode7;
225
+ import { GroupProps } from "@mantine/core";
226
+ import { IconProps as IconProps2 } from "@tabler/icons-react";
227
+ import { ReactNode as ReactNode8 } from "react";
228
+ interface FooterMinimalProps {
229
+ componentsProps?: {
230
+ container?: Partial<GroupProps>
231
+ icon?: Partial<IconProps2>
232
+ };
233
+ }
234
+ declare function FooterMinimal({ componentsProps }: FooterMinimalProps): ReactNode8;
235
+ import { ComponentProps as ComponentProps3, PropsWithChildren as PropsWithChildren9, ReactNode as ReactNode12 } from "react";
236
+ import { PropsWithChildren as PropsWithChildren6, ReactNode as ReactNode9 } from "react";
237
+ declare const defaultAppContext: RemoraidAppContext<CustomAppVariables>;
238
+ declare const useRemoraidApp: () => RemoraidAppContext<CustomAppVariables>;
239
+ interface AppProviderProps<V extends CustomAppVariables = {}> {
240
+ appContext: AppContextProps<V>;
241
+ }
242
+ declare function AppProvider2<V extends CustomAppVariables = {}>({ appContext: appContextProps, children }: PropsWithChildren6<AppProviderProps<V>>): ReactNode9;
243
+ import { ComponentProps, ElementType, ReactElement } from "react";
244
+ declare const co: <T>(condition: (value: T) => boolean, value: T, fallback: T) => T;
245
+ type Common<
246
+ A,
247
+ B
248
+ > = Pick<A & B, keyof A & keyof B>;
249
+ type Optional<
250
+ T,
251
+ K extends keyof T
252
+ > = Omit<T, K> & Partial<Pick<T, K>>;
253
+ type OptionalIfExtends<
254
+ T,
255
+ K extends keyof T,
256
+ V1,
257
+ V2
258
+ > = [V1] extends [V2] ? Optional<T, K> : T;
259
+ type ElementOfType<T extends ElementType> = ReactElement<ComponentProps<T>, T>;
260
+ type ChildrenOfType<T extends ElementType> = ElementOfType<T> | undefined | null | ReadonlyArray<ChildrenOfType<T>>;
261
+ type PropsWithChildrenOfType<
262
+ T extends ElementType,
263
+ P = {}
264
+ > = P & {
265
+ children?: ChildrenOfType<T>
266
+ };
267
+ type ElementOrPropsOfType<T extends ElementType> = ElementOfType<T> | ComponentProps<T>;
268
+ declare const isValidElementOfType: <T extends ElementType>(type: T, value: unknown) => value is ElementOfType<T>;
269
+ declare const getElementTypeName: (type: ElementType | ReactElement["type"]) => string;
270
+ declare const asElementOfType: <T extends ElementType>(type: T, element: ReactElement, additionalErrorMessage?: string) => ElementOfType<T>;
271
+ declare const asChildrenOfType: <T extends ElementType>(type: T, children: ChildrenOfType<ElementType>, additionalErrorMessage?: string) => ChildrenOfType<T>;
272
+ declare const asElementOrPropsOfType: <T extends ElementType>(type: T, elementOrProps: ReactElement | ComponentProps<T>, additionalErrorMessage?: string) => ElementOrPropsOfType<T>;
273
+ import { BoxProps as BoxProps2, GroupProps as GroupProps2, ScrollAreaProps as ScrollAreaProps2, StackProps } from "@mantine/core";
274
+ import { ComponentProps as ComponentProps2, PropsWithChildren as PropsWithChildren8, ReactNode as ReactNode11 } from "react";
275
+ import { PropsWithChildren as PropsWithChildren7, ReactNode as ReactNode10 } from "react";
276
+ import { BoxProps } from "@mantine/core";
277
+ interface FrameLayoutElementProps {
278
+ section: Exclude<FrameLayoutSection, FrameLayoutSection.Content>;
279
+ includeContainer?: boolean;
280
+ layoutId?: string;
281
+ componentsProps?: {
282
+ container?: Partial<BoxProps>
283
+ };
284
+ }
285
+ declare function Element2({ section, includeContainer, layoutId, componentsProps, children }: PropsWithChildren7<FrameLayoutElementProps>): ReactNode10;
286
+ declare const isFrameLayout: (layout: Layout<LayoutType>) => layout is Layout<LayoutType.Frame>;
287
+ type DefaultFrameLayoutVariant = FrameLayoutVariant.Sticky;
288
+ declare const defaultFrameLayoutContext: FrameLayoutContext;
289
+ declare const useFrameLayout: () => FrameLayoutContext;
290
+ interface FrameLayoutPropsWithExplicitVariant<T extends FrameLayoutVariant> {
291
+ variant: T;
292
+ layoutId: string;
293
+ componentsProps?: {
294
+ childrenContainer?: T extends FrameLayoutVariant.Plain ? Partial<BoxProps2> : T extends FrameLayoutVariant.Sticky ? Partial<ScrollAreaProps2> : never
295
+ horizontalContainer?: Partial<GroupProps2>
296
+ verticalContainer?: Partial<StackProps>
297
+ sectionContainers?: {
298
+ [FrameLayoutSection.Left]?: Partial<GroupProps2>
299
+ [FrameLayoutSection.Right]?: Partial<GroupProps2>
300
+ [FrameLayoutSection.Top]?: Partial<StackProps>
301
+ [FrameLayoutSection.Bottom]?: Partial<StackProps>
302
+ }
303
+ };
304
+ }
305
+ type FrameLayoutProps<T extends FrameLayoutVariant = DefaultFrameLayoutVariant> = T extends DefaultFrameLayoutVariant ? Optional<FrameLayoutPropsWithExplicitVariant<T>, "variant"> : FrameLayoutPropsWithExplicitVariant<T>;
306
+ declare function FrameLayout<T extends FrameLayoutVariant = DefaultFrameLayoutVariant>({ variant, layoutId, componentsProps, children }: PropsWithChildren8<FrameLayoutProps<T>>): ReactNode11;
307
+ interface FrameLayout {
308
+ <T extends FrameLayoutVariant = DefaultFrameLayoutVariant>(props: ComponentProps2<typeof FrameLayout<T>>): ReactNode11;
309
+ Element: typeof Element2;
310
+ }
311
+ declare const _default: FrameLayout;
312
+ declare const defaultAppShellLayoutId = "remoraidAppShell";
313
+ type AppShellNavbarVariant = NavbarVariant | null;
314
+ type AppShellFooterVariant = FooterVariant | null;
315
+ type DefaultNavbarVariant = null;
316
+ type DefaultFooterVariant = null;
317
+ type AppShellNavbarPosition<N extends AppShellNavbarVariant> = N extends NavbarVariant.Minimal ? FrameLayoutSection.Left | FrameLayoutSection.Right : N extends null ? never : FrameLayoutSection;
318
+ type AppShellFooterPosition<F extends AppShellFooterVariant> = F extends FooterVariant.Minimal ? FrameLayoutSection.Content | FrameLayoutSection.Bottom : F extends null ? never : FrameLayoutSection;
319
+ declare const defaultAppShellNavbarPositions: { [N in Exclude<AppShellNavbarVariant, null>] : AppShellNavbarPosition<N> };
320
+ declare const defaultAppShellFooterPositions: { [F in Exclude<AppShellFooterVariant, null>] : AppShellFooterPosition<F> };
321
+ interface ExplicitAppShellProps<
322
+ N extends AppShellNavbarVariant,
323
+ F extends AppShellFooterVariant,
324
+ V extends CustomAppVariables
325
+ > {
326
+ navbarVariant: N;
327
+ footerVariant: F;
328
+ appContext: AppContextProps<V>;
329
+ navbarPosition?: AppShellNavbarPosition<N>;
330
+ footerPosition?: AppShellFooterPosition<F>;
331
+ componentsProps?: {
332
+ container?: Partial<BoxProps3>
333
+ navbar?: N extends NavbarVariant.Minimal ? Partial<NavbarMinimalProps> : never
334
+ footer?: N extends FooterVariant.Minimal ? Partial<FooterMinimalProps> : never
335
+ layout?: Partial<FrameLayoutProps<FrameLayoutVariant.Sticky>>
336
+ childrenContainer?: Partial<BoxProps3>
337
+ navbarLayoutElement?: Omit<Partial<FrameLayoutElementProps>, "section">
338
+ footerLayoutElement?: Omit<Partial<FrameLayoutElementProps>, "section">
339
+ AppProvider?: Partial<AppProviderProps>
340
+ };
341
+ }
342
+ type AppShellProps<
343
+ N extends AppShellNavbarVariant = DefaultNavbarVariant,
344
+ F extends AppShellFooterVariant = DefaultFooterVariant,
345
+ V extends CustomAppVariables = {}
346
+ > = OptionalIfExtends<OptionalIfExtends<ExplicitAppShellProps<N, F, V>, "footerVariant", F, DefaultFooterVariant>, "navbarVariant", N, DefaultNavbarVariant>;
347
+ declare function AppShell<
348
+ N extends AppShellNavbarVariant = DefaultNavbarVariant,
349
+ F extends AppShellFooterVariant = DefaultFooterVariant,
350
+ V extends CustomAppVariables = {}
351
+ >(props: PropsWithChildren9<AppShellProps<N, F, V>>): ReactNode12;
352
+ interface AppShell {
353
+ <
354
+ N extends AppShellNavbarVariant = DefaultNavbarVariant,
355
+ F extends AppShellFooterVariant = DefaultFooterVariant,
356
+ V extends CustomAppVariables = {}
357
+ >(props: ComponentProps3<typeof AppShell<N, F, V>>): ReactNode12;
358
+ NavbarMinimal: typeof NavbarMinimal;
359
+ FooterMinimal: typeof FooterMinimal;
360
+ }
361
+ declare const _default2: AppShell;
362
+ import { Context as Context2, PropsWithChildren as PropsWithChildren10, ReactNode as ReactNode13 } from "react";
363
+ declare const createUserExperienceContext: <T extends UserExperience>(defaultUserExperience: T) => Context2<UserExperienceContext<T>>;
176
364
  interface UserExperienceProviderWrapperProps<T extends UserExperience> {
177
- context: Context<UserExperienceContext<T>>;
365
+ context: Context2<UserExperienceContext<T>>;
178
366
  cookieName: string;
179
367
  defaultUserExperience: T;
180
368
  isValidUserExperience: (x: unknown) => x is T;
181
- initialValue?: Partial<T>;
369
+ initialValue?: T extends PrimitiveUserExperience | PrimitiveUserExperience[] ? never : Partial<T>;
182
370
  }
183
- declare function UserExperienceProviderWrapper<T extends UserExperience>({ children, context, cookieName, defaultUserExperience, isValidUserExperience, initialValue }: PropsWithChildren7<UserExperienceProviderWrapperProps<T>>): ReactNode8;
184
- declare const defaultNavbarSettings: Record<NavbarVariant, NavbarSettings>;
371
+ declare function UserExperienceProviderWrapper<T extends UserExperience>({ children, context, cookieName, defaultUserExperience, isValidUserExperience, initialValue }: PropsWithChildren10<UserExperienceProviderWrapperProps<T>>): ReactNode13;
185
372
  declare const defaultUserExperience: CoreUserExperience;
186
373
  declare const defaultUserExperienceCookieName = "remoraid-core-user-experience";
187
374
  declare const useRemoraidUserExperience: () => UserExperienceContext<CoreUserExperience>;
188
375
  import { MantineSize as MantineSize2 } from "@mantine/core";
189
- import { ReactNode as ReactNode10 } from "react";
376
+ import { ReactNode as ReactNode15 } from "react";
190
377
  interface WidgetSelectionHeaderProps {
191
378
  title?: string;
192
379
  disabledWidgets?: string[];
193
380
  mt?: MantineSize2 | number;
194
381
  }
195
- declare function WidgetSelectionHeader({ title, disabledWidgets, mt }: WidgetSelectionHeaderProps): ReactNode10;
196
- import { ReactNode as ReactNode11 } from "react";
382
+ declare function WidgetSelectionHeader({ title, disabledWidgets, mt }: WidgetSelectionHeaderProps): ReactNode15;
383
+ import { ReactNode as ReactNode16 } from "react";
197
384
  interface CloseButtonProps {
198
385
  widgetId: string;
199
386
  }
200
- declare function CloseButton2({ widgetId }: CloseButtonProps): ReactNode11;
387
+ declare function CloseButton2({ widgetId }: CloseButtonProps): ReactNode16;
201
388
  import { BadgeProps as BadgeProps2, MantineBreakpoint as MantineBreakpoint2, MantineSize as MantineSize3, TooltipProps as TooltipProps2 } from "@mantine/core";
202
- import { ReactNode as ReactNode13 } from "react";
389
+ import { ComponentProps as ComponentProps4, ReactNode as ReactNode18 } from "react";
203
390
  import { BadgeProps, TooltipProps, TransitionProps } from "@mantine/core";
204
- import { ReactNode as ReactNode12 } from "react";
391
+ import { ReactNode as ReactNode17 } from "react";
205
392
  interface BadgeMinimalProps {
206
393
  label: string;
207
394
  tooltip?: string;
@@ -212,9 +399,9 @@ interface BadgeMinimalProps {
212
399
  tooltip?: TooltipProps
213
400
  };
214
401
  }
215
- declare function BadgeMinimal(props: BadgeMinimalProps): ReactNode12;
402
+ declare function BadgeMinimal(props: BadgeMinimalProps): ReactNode17;
216
403
  interface BadgeGroupProps {
217
- badges: (BadgeMinimalProps | ReactNode13)[];
404
+ badges: (ComponentProps4<typeof BadgeMinimal> | ElementOfType<typeof BadgeMinimal>)[];
218
405
  gap?: MantineSize3 | number;
219
406
  breakpoint?: MantineBreakpoint2;
220
407
  componentsProps?: {
@@ -222,9 +409,9 @@ interface BadgeGroupProps {
222
409
  cumulativeBadge?: Partial<Omit<BadgeProps2, "hiddenFrom" | "circle">>
223
410
  };
224
411
  }
225
- declare function BadgeGroup({ badges, gap, breakpoint, componentsProps }: BadgeGroupProps): ReactNode13;
412
+ declare function BadgeGroup({ badges: badgesProp, gap, breakpoint, componentsProps }: BadgeGroupProps): ReactNode18;
226
413
  import { AlertProps as AlertProps2, MantineSize as MantineSize4, TransitionProps as TransitionProps2 } from "@mantine/core";
227
- import { PropsWithChildren as PropsWithChildren9, ReactNode as ReactNode14 } from "react";
414
+ import { PropsWithChildren as PropsWithChildren12, ReactNode as ReactNode19 } from "react";
228
415
  interface AlertMinimalProps {
229
416
  category: AlertCategory;
230
417
  title?: string;
@@ -238,19 +425,10 @@ interface AlertMinimalProps {
238
425
  transition?: Omit<TransitionProps2, "mounted">
239
426
  };
240
427
  }
241
- declare function AlertMinimal({ children, title, category, text, onClose, mounted, mt, mb, componentsProps }: PropsWithChildren9<AlertMinimalProps>): ReactNode14;
428
+ declare function AlertMinimal({ title, category, text, onClose, mounted, mt, mb, componentsProps, children }: PropsWithChildren12<AlertMinimalProps>): ReactNode19;
242
429
  import { ActionIconProps, ActionIconVariant, ButtonProps, ButtonVariant, MantineBreakpoint as MantineBreakpoint3, MantineColor, MantineSize as MantineSize5, TooltipProps as TooltipProps3 } from "@mantine/core";
243
- import { Icon as Icon2, IconProps as IconProps2 } from "@tabler/icons-react";
244
- import { ReactNode as ReactNode15 } from "react";
245
- import { ReactElement } from "react";
246
- type Common<
247
- A,
248
- B
249
- > = Pick<A & B, keyof A & keyof B>;
250
- type OnlyChildrenOf<
251
- T extends (...args: any) => any,
252
- P = any
253
- > = ReactElement<P, T> | ReactElement<P, T>[];
430
+ import { Icon as Icon3, IconProps as IconProps3 } from "@tabler/icons-react";
431
+ import { ReactNode as ReactNode20 } from "react";
254
432
  interface RemoraidButtonProps {
255
433
  label: string;
256
434
  responsive?: boolean;
@@ -258,23 +436,23 @@ interface RemoraidButtonProps {
258
436
  collapsed?: boolean;
259
437
  size?: MantineSize5;
260
438
  color?: MantineColor;
261
- icon?: Icon2;
439
+ icon?: Icon3;
262
440
  onClick?: () => void;
263
441
  loading?: boolean;
264
442
  variant?: Extract<ButtonVariant, ActionIconVariant>;
265
443
  componentsProps?: {
266
444
  tooltip?: Partial<TooltipProps3>
267
- icon?: Partial<IconProps2>
445
+ icon?: Partial<IconProps3>
268
446
  button?: Omit<Partial<Common<ButtonProps, ActionIconProps>>, "variant" | "onClick" | "size" | "color" | "loading">
269
447
  Button?: Partial<ButtonProps>
270
448
  ActionIcon?: Partial<ActionIconProps>
271
449
  };
272
450
  }
273
- declare function RemoraidButton({ label, responsive, breakpoint, collapsed, size, color, onClick, loading, variant, componentsProps,...props }: RemoraidButtonProps): ReactNode15;
274
- import { MantineSize as MantineSize6, PaperProps, TransitionProps as TransitionProps3 } from "@mantine/core";
275
- import { PropsWithChildren as PropsWithChildren10, ReactNode as ReactNode16 } from "react";
451
+ declare function RemoraidButton({ label, responsive, breakpoint, collapsed, size, color, onClick, loading, variant, componentsProps,...props }: RemoraidButtonProps): ReactNode20;
452
+ import { MantineSize as MantineSize6, PaperProps as PaperProps2, TransitionProps as TransitionProps3 } from "@mantine/core";
453
+ import { PropsWithChildren as PropsWithChildren13, ReactNode as ReactNode21 } from "react";
276
454
  interface WidgetWrapperComponentsProps {
277
- container?: Partial<PaperProps>;
455
+ container?: Partial<PaperProps2>;
278
456
  transition?: Partial<Omit<TransitionProps3, "mounted">>;
279
457
  }
280
458
  interface WidgetWrapperProps {
@@ -283,25 +461,27 @@ interface WidgetWrapperProps {
283
461
  withCloseButton?: boolean;
284
462
  componentsProps?: WidgetWrapperComponentsProps;
285
463
  }
286
- declare function WidgetWrapper({ children, config, mt, withCloseButton, componentsProps }: PropsWithChildren10<WidgetWrapperProps>): ReactNode16;
287
- interface WidgetWrapper extends React.FC<PropsWithChildren10<WidgetWrapperProps>> {
464
+ declare function WidgetWrapper({ children, config, mt, withCloseButton, componentsProps }: PropsWithChildren13<WidgetWrapperProps>): ReactNode21;
465
+ interface WidgetWrapper extends React.FC<PropsWithChildren13<WidgetWrapperProps>> {
288
466
  CloseButton: typeof CloseButton2;
289
467
  }
290
- declare const _default: WidgetWrapper;
291
- import { MantineSize as MantineSize7, LoaderProps } from "@mantine/core";
292
- import { PropsWithChildren as PropsWithChildren11, ReactNode as ReactNode17 } from "react";
468
+ declare const _default3: WidgetWrapper;
469
+ import { MantineSize as MantineSize7, LoaderProps, DividerProps, StackProps as StackProps2 } from "@mantine/core";
470
+ import { ComponentProps as ComponentProps5, PropsWithChildren as PropsWithChildren14, ReactNode as ReactNode22 } from "react";
293
471
  interface WidgetComponentsProps extends WidgetWrapperComponentsProps {
294
472
  wrapper?: Partial<Omit<WidgetWrapperProps, "widgetId">>;
295
473
  loader?: Partial<LoaderProps>;
296
474
  badgeGroup?: Partial<BadgeGroupProps>;
475
+ divider?: Partial<DividerProps>;
476
+ alertsContainer?: Partial<StackProps2>;
297
477
  }
298
478
  interface WidgetProps {
299
479
  id: string;
300
480
  title: string;
301
481
  config?: Partial<Omit<WidgetConfiguration, "widgetId">>;
302
- badges?: (BadgeMinimalProps | ReactNode17)[];
303
- buttons?: (RemoraidButtonProps | ReactNode17)[];
304
- alerts?: (AlertMinimalProps | ReactNode17)[];
482
+ badges?: (ComponentProps5<typeof BadgeMinimal> | ElementOfType<typeof BadgeMinimal>)[];
483
+ buttons?: (ComponentProps5<typeof RemoraidButton> | ElementOfType<typeof RemoraidButton>)[];
484
+ alerts?: (ComponentProps5<typeof AlertMinimal> | ElementOfType<typeof AlertMinimal>)[];
305
485
  gaps?: MantineSize7 | number | {
306
486
  badges?: MantineSize7 | number
307
487
  buttons?: MantineSize7 | number
@@ -311,9 +491,9 @@ interface WidgetProps {
311
491
  mt?: MantineSize7 | number;
312
492
  componentsProps?: WidgetComponentsProps;
313
493
  }
314
- declare function Widget({ children, id, config, title, badges, buttons, alerts, gaps, loading, mt, componentsProps }: PropsWithChildren11<WidgetProps>): ReactNode17;
494
+ declare function Widget({ children, id, config, title, badges: badgesProp, buttons: buttonsProp, alerts: alertsProp, gaps, loading, mt, componentsProps }: PropsWithChildren14<WidgetProps>): ReactNode22;
315
495
  import { ContainerProps, MantineSize as MantineSize8 } from "@mantine/core";
316
- import { PropsWithChildren as PropsWithChildren12, ReactNode as ReactNode18 } from "react";
496
+ import { PropsWithChildren as PropsWithChildren15, ReactNode as ReactNode23 } from "react";
317
497
  declare const usePage: () => PageConfiguration | null;
318
498
  interface PageProps {
319
499
  name?: string;
@@ -323,26 +503,26 @@ interface PageProps {
323
503
  container?: ContainerProps
324
504
  };
325
505
  }
326
- declare function Page({ children, name, config, pt, componentsProps }: PropsWithChildren12<PageProps>): ReactNode18;
506
+ declare function Page({ children, name, config, pt, componentsProps }: PropsWithChildren15<PageProps>): ReactNode23;
327
507
  import { ContainerProps as ContainerProps2, MantineSize as MantineSize9 } from "@mantine/core";
328
- import { PropsWithChildren as PropsWithChildren13, ReactNode as ReactNode19 } from "react";
508
+ import { PropsWithChildren as PropsWithChildren16, ReactNode as ReactNode24 } from "react";
329
509
  interface PageContainerProps {
330
510
  pt?: MantineSize9 | number;
331
511
  componentsProps?: {
332
512
  container?: ContainerProps2
333
513
  };
334
514
  }
335
- declare function PageContainer({ children, pt, componentsProps }: PropsWithChildren13<PageContainerProps>): ReactNode19;
336
- import { PropsWithChildren as PropsWithChildren14, ReactNode as ReactNode20 } from "react";
515
+ declare function PageContainer({ children, pt, componentsProps }: PropsWithChildren16<PageContainerProps>): ReactNode24;
516
+ import { PropsWithChildren as PropsWithChildren17, ReactNode as ReactNode25 } from "react";
337
517
  interface NotFoundPageProps {
338
518
  message?: string;
339
519
  componentsProps?: {
340
520
  page?: PageProps
341
521
  };
342
522
  }
343
- declare function NotFoundPage({ children, message, componentsProps }: PropsWithChildren14<NotFoundPageProps>): ReactNode20;
523
+ declare function NotFoundPage({ children, message, componentsProps }: PropsWithChildren17<NotFoundPageProps>): ReactNode25;
344
524
  import { ContainerProps as ContainerProps3, MantineSize as MantineSize10 } from "@mantine/core";
345
- import { PropsWithChildren as PropsWithChildren15, ReactNode as ReactNode21 } from "react";
525
+ import { PropsWithChildren as PropsWithChildren18, ReactNode as ReactNode26 } from "react";
346
526
  interface EnvironmentShellProps {
347
527
  environment: Record<string, string | undefined>;
348
528
  message?: string;
@@ -353,19 +533,19 @@ interface EnvironmentShellProps {
353
533
  container?: ContainerProps3
354
534
  };
355
535
  }
356
- declare function EnvironmentShell({ children, environment, message, m, mt, withContainer, componentsProps }: PropsWithChildren15<EnvironmentShellProps>): ReactNode21;
357
- import { PropsWithChildren as PropsWithChildren16, ReactNode as ReactNode23 } from "react";
358
- import { ReactNode as ReactNode22 } from "react";
359
- import { GroupProps } from "@mantine/core";
536
+ declare function EnvironmentShell({ children, environment, message, m, mt, withContainer, componentsProps }: PropsWithChildren18<EnvironmentShellProps>): ReactNode26;
537
+ import { PropsWithChildren as PropsWithChildren19, ReactNode as ReactNode28 } from "react";
538
+ import { ReactNode as ReactNode27 } from "react";
539
+ import { GroupProps as GroupProps3 } from "@mantine/core";
360
540
  interface SettingsWidgetSaveButtonProps {
361
541
  onSaveChanges: () => void;
362
542
  insideContainer?: boolean;
363
543
  componentsProps?: {
364
- container?: Partial<GroupProps>
544
+ container?: Partial<GroupProps3>
365
545
  button?: Partial<RemoraidButtonProps>
366
546
  };
367
547
  }
368
- declare function SaveButton2({ onSaveChanges, insideContainer, componentsProps }: SettingsWidgetSaveButtonProps): ReactNode22;
548
+ declare function SaveButton2({ onSaveChanges, insideContainer, componentsProps }: SettingsWidgetSaveButtonProps): ReactNode27;
369
549
  declare const defaultSettingsWidgetContext: {};
370
550
  declare const useSettingsWidgetContext: () => SettingsWidgetContext;
371
551
  interface SettingsWidgetProps {
@@ -374,52 +554,66 @@ interface SettingsWidgetProps {
374
554
  custom?: boolean;
375
555
  widgetProps?: Partial<WidgetProps>;
376
556
  }
377
- declare function SettingsWidget({ children, onRestoreDefaultValues, unsavedChanges, custom, widgetProps }: PropsWithChildren16<SettingsWidgetProps>): ReactNode23;
378
- interface SettingsWidget extends React.FC<PropsWithChildren16<SettingsWidgetProps>> {
557
+ declare function SettingsWidget({ children, onRestoreDefaultValues, unsavedChanges, custom, widgetProps }: PropsWithChildren19<SettingsWidgetProps>): ReactNode28;
558
+ interface SettingsWidget extends React.FC<PropsWithChildren19<SettingsWidgetProps>> {
379
559
  SaveButton: typeof SaveButton2;
380
560
  }
381
- declare const _default2: SettingsWidget;
382
- import { ReactNode as ReactNode25 } from "react";
383
- import { PropsWithChildren as PropsWithChildren17, ReactNode as ReactNode24 } from "react";
561
+ declare const _default4: SettingsWidget;
562
+ import { ComponentProps as ComponentProps6, ReactNode as ReactNode30 } from "react";
563
+ import { PropsWithChildren as PropsWithChildren20, ReactNode as ReactNode29 } from "react";
384
564
  interface SettingsTableRowProps {
385
565
  label: string;
386
566
  }
387
- declare function Row2({ children, label }: PropsWithChildren17<SettingsTableRowProps>): ReactNode24;
567
+ declare function Row2({ children, label }: PropsWithChildren20<SettingsTableRowProps>): ReactNode29;
388
568
  declare const defaultSettingsTableOptions: {
389
569
  leftColumnWidth: string
390
570
  };
391
571
  declare const useSettingsTableOptions: () => SettingsTableOptions;
392
572
  interface SettingsTableProps {
393
- children: OnlyChildrenOf<typeof Row2, SettingsTableRowProps>;
394
573
  leftColumnWidth?: string | number;
395
574
  }
396
- declare function SettingsTable({ children, leftColumnWidth }: SettingsTableProps): ReactNode25;
397
- interface SettingsTable extends React.FC<SettingsTableProps> {
575
+ declare function SettingsTable({ leftColumnWidth, children: childrenProp }: PropsWithChildrenOfType<typeof Row2, SettingsTableProps>): ReactNode30;
576
+ interface SettingsTable extends React.FC<ComponentProps6<typeof SettingsTable>> {
398
577
  Row: typeof Row2;
399
578
  }
400
- declare const _default3: SettingsTable;
401
- import { ReactElement as ReactElement2, ReactNode as ReactNode26 } from "react";
579
+ declare const _default5: SettingsTable;
580
+ import { ComponentProps as ComponentProps7, ReactNode as ReactNode31 } from "react";
402
581
  declare const defaultNavbarSettingsWidgetId = "navbar-settings";
403
582
  interface NavbarSettingsWidgetProps {
404
- additionalRows?: ReactElement2<SettingsTableRowProps, typeof _default3.Row>[];
583
+ additionalRows?: (ComponentProps7<typeof _default5.Row> | ElementOfType<typeof _default5.Row>)[];
405
584
  widgetProps?: Partial<WidgetProps>;
406
585
  componentsProps?: {
407
- table: Partial<Omit<SettingsTableProps, "children">>
586
+ table: Partial<SettingsTableProps>
408
587
  };
409
588
  }
410
- declare function NavbarSettingsWidget({ additionalRows, widgetProps, componentsProps }: NavbarSettingsWidgetProps): ReactNode26;
411
- import { Chip, ChipGroupProps, ChipProps, FlexProps, MantineSize as MantineSize11, ScrollAreaProps as ScrollAreaProps2 } from "@mantine/core";
412
- import { ReactNode as ReactNode27 } from "react";
589
+ declare function NavbarSettingsWidget({ additionalRows, widgetProps, componentsProps }: NavbarSettingsWidgetProps): ReactNode31;
590
+ import { Chip, ChipGroupProps, FlexProps, MantineSize as MantineSize11, ScrollAreaProps as ScrollAreaProps3 } from "@mantine/core";
591
+ import { ReactNode as ReactNode32 } from "react";
413
592
  interface ScrollbleChipGroupProps {
414
593
  value: string[];
415
594
  onChange?: (value: string[]) => void;
416
595
  gap?: MantineSize11 | number;
417
596
  componentsProps?: {
418
597
  chipGroup?: Partial<ChipGroupProps<true>>
419
- scrollArea?: Partial<ScrollAreaProps2>
598
+ scrollArea?: Partial<ScrollAreaProps3>
420
599
  container?: Partial<FlexProps>
421
600
  };
422
- children?: OnlyChildrenOf<typeof Chip, ChipProps>;
423
601
  }
424
- declare function ScrollableChipGroup({ value, onChange, gap, componentsProps, children }: ScrollbleChipGroupProps): ReactNode27;
425
- export { useWidgets, useSettingsWidgetContext as useSettingsWidgetOptions, useSettingsTableOptions, useRemoraidUserExperience, useRemoraidTheme, useRemoraidApp, usePage, useHydrationStatus, useHydratedMantineColorScheme, defaultUserExperienceCookieName, defaultUserExperience, defaultSettingsWidgetContext as defaultSettingsWidgetOptions, defaultSettingsTableOptions, defaultNavbarSettingsWidgetId, defaultNavbarSettings, defaultAppContext, createUserExperienceContext, createRemoraidTheme, WidgetsProviderProps, WidgetWrapperProps, _default as WidgetWrapper, WidgetSelectionHeaderProps, WidgetSelectionHeader, WidgetProps, WidgetConfiguration, Widget, UserExperienceProviderWrapperProps, UserExperienceProviderWrapper, UserExperienceProviderProps, UserExperienceContext, UserExperience, TransitionDuration, ThemeProviderProps, SettingsWidgetSaveButtonProps, SettingsWidgetProps, SettingsWidgetContext, _default2 as SettingsWidget, SettingsTableRowProps, SettingsTableOptions, _default3 as SettingsTable, ScrollbleChipGroupProps, ScrollableChipGroup, RemoraidUser, RemoraidThemeDependencies, RemoraidThemeCallback, RemoraidTheme, RemoraidProviderProps, RemoraidProvider, RemoraidIconSize, RemoraidButtonProps, RemoraidButton, RemoraidBreakpoint, RemoraidAppContext, PageProps, PageContainerProps, PageContainer, PageConfiguration, Page, NotFoundPageProps, NotFoundPage, NavbarVariant, NavbarSettingsWidgetProps, NavbarSettingsWidget, NavbarSettings, NavbarProps, HydrationStatusProviderProps, HydrationStatusProvider, HydrationStatus, EnvironmentShellProps, EnvironmentShell, CoreUserExperience, CloseButtonProps, BadgeMinimalProps, BadgeMinimal, BadgeGroupProps, BadgeGroup, AppShellProps, AppShellLogo, AppShell, AppProvider, AlertMinimalProps, AlertMinimal, AlertCategory };
602
+ declare function ScrollableChipGroup({ value, onChange, gap, componentsProps, children }: PropsWithChildrenOfType<typeof Chip, ScrollbleChipGroupProps>): ReactNode32;
603
+ import { PropsWithChildren as PropsWithChildren21, ReactNode as ReactNode33 } from "react";
604
+ declare const createContextCluster: <
605
+ Context,
606
+ StaticID extends string = never
607
+ >(generalDefaultValue: Context, staticIds?: StaticID[]) => ContextCluster<Context, StaticID>;
608
+ interface ContextClusterProviderProps<
609
+ Context,
610
+ StaticID extends string = never
611
+ > {
612
+ cluster: ContextCluster<Context, StaticID>;
613
+ values?: Record<string, Context>;
614
+ }
615
+ declare function ContextClusterProvider<
616
+ Context,
617
+ StaticID extends string = never
618
+ >({ cluster, values, children }: PropsWithChildren21<ContextClusterProviderProps<Context, StaticID>>): ReactNode33;
619
+ export { useWidgets, useSettingsWidgetContext as useSettingsWidgetOptions, useSettingsTableOptions, useRemoraidUserExperience, useRemoraidTheme, useRemoraidApp, usePage, useLayouts, useHydrationStatus, useHydratedMantineColorScheme, useFrameLayout, isValidElementOfType, isFrameLayout, getElementTypeName, defaultUserExperienceCookieName, defaultUserExperience, defaultSettingsWidgetContext as defaultSettingsWidgetOptions, defaultSettingsTableOptions, defaultNavbarSettingsWidgetId, defaultLayoutsContext, defaultFrameLayoutContext, defaultAppShellNavbarPositions, defaultAppShellLayoutId, defaultAppShellFooterPositions, defaultAppContext, createUserExperienceContext, createRemoraidTheme, createContextCluster, co, asElementOrPropsOfType, asElementOfType, asChildrenOfType, 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, PropsWithChildrenOfType, PrimitiveUserExperience, PageProps, PageContainerProps, PageContainer, PageConfiguration, Page, OptionalIfExtends, Optional, NotFoundPageProps, NotFoundPage, NavbarVariant, NavbarSettingsWidgetProps, NavbarSettingsWidget, NavbarMinimalProps, LayoutsProviderProps, LayoutsContext, LayoutType, Layout, HydrationStatusProviderProps, HydrationStatusProvider, HydrationStatus, FrameLayoutVariant, FrameLayoutSection, FrameLayoutProps, FrameLayoutElementProps, FrameLayoutContext, _default as FrameLayout, FooterVariant, FooterMinimalProps, EnvironmentShellProps, EnvironmentShell, ElementOrPropsOfType, ElementOfType, DefaultNavbarVariant, DefaultFrameLayoutVariant, DefaultFooterVariant, CustomAppVariables, CoreUserExperience, ContextClusterProviderProps, ContextClusterProvider, ContextCluster, Common, CloseButtonProps, ChildrenOfType, BadgeMinimalProps, BadgeMinimal, BadgeGroupProps, BadgeGroup, AppShellProps, AppShellNavbarVariant, AppShellNavbarPosition, AppShellFooterVariant, AppShellFooterPosition, _default2 as AppShell, AppProviderProps, AppProvider2 as AppProvider, AppLogo, AppContextProps, AlertMinimalProps, AlertMinimal, AlertCategory };