UNPKG

@rsc-labs/nocto-plugin-system

Version:

Pluggable registry system for Nocto plugins

26 lines (25 loc) 794 B
import React from "react"; import { RouteObject } from "react-router-dom"; export type RouteEntry = { path: string; index?: boolean; layout: "main" | "auth" | "settings" | "public"; element?: React.ReactNode; errorElement?: React.ReactNode; handle?: RouteObject["handle"]; lazy?: RouteObject["lazy"]; Component?: RouteObject["Component"]; loader?: RouteObject["loader"]; permissions?: string[]; children?: RouteEntry[]; }; type RouteMap = Map<string, RouteEntry[]>; declare class PluginRouteRegistry { private routesMap; register(pluginId: string, route: RouteEntry | RouteEntry[]): void; getMap(): RouteMap; getAll(): RouteEntry[]; getPluginsIds(): string[]; } export declare const RouteRegistry: PluginRouteRegistry; export {};