UNPKG

@plone/types

Version:

Plone's Types Package

72 lines (63 loc) 1.63 kB
import type { SettingsConfig } from './Settings'; import type { BlocksConfig } from './Blocks'; import type { ViewsConfig } from './Views'; import type { WidgetsConfig } from './Widgets'; import type { SlotsConfig } from './Slots'; import type { UtilitiesConfig } from './Utilities'; export type AddonReducersConfig = Record<string, Function>; export type AddonRoutesConfig = { path: string; exact: boolean; component: React.ComponentType; }[]; export type AddonRoutesEntry = { path: string; exact: boolean; component: React.ComponentType; }; export type ReactRouterRouteEntry = { type: 'route' | 'index' | 'layout' | 'prefix'; path: string; file: string; options?: { id?: string; index?: boolean; caseSensitive?: boolean; }; children?: ReactRouterRouteEntry[]; }; export type ComponentsConfig = Record< string, { component: React.ComponentType } >; export interface ExperimentalConfig { addBlockButton: { enabled: boolean; }; } // This is a type because it's not supposed to be extendable export type ConfigData = { settings: SettingsConfig; blocks: BlocksConfig; views: ViewsConfig; widgets: WidgetsConfig; addonReducers: AddonReducersConfig; addonRoutes: AddonRoutesConfig; slots: SlotsConfig; components: ComponentsConfig; utilities: UtilitiesConfig; experimental: ExperimentalConfig; }; export { BlocksConfig, SettingsConfig, UtilitiesConfig, ViewsConfig, WidgetsConfig, }; export * from './Blocks'; export * from './Settings'; export * from './Slots'; export * from './Utilities'; export * from './Views'; export * from './Widgets';