1
0
mirror of https://github.com/Unleash/unleash.git synced 2025-02-23 00:22:19 +01:00
unleash.unleash/frontend/src/interfaces/route.ts

38 lines
887 B
TypeScript

import type { VoidFunctionComponent } from 'react';
import type { UiFlags, IUiConfig } from 'interfaces/uiConfig';
export interface IRoute {
path: string;
title: string;
type: 'protected' | 'unprotected';
layout?: string;
parent?: string;
flag?: keyof UiFlags;
notFlag?: keyof UiFlags;
configFlag?: keyof IUiConfig;
hidden?: boolean;
enterprise?: boolean;
component: VoidFunctionComponent;
menu: IRouteMenu;
isStandalone?: boolean;
}
export interface INavigationMenuItem {
path: string;
title: string;
menu: IRouteMenu;
flag?: keyof UiFlags;
notFlag?: keyof UiFlags;
configFlag?: keyof IUiConfig;
group?: string;
enterprise?: boolean;
}
interface IRouteMenu {
mobile?: boolean;
advanced?: boolean;
adminSettings?: boolean;
mode?: Array<'pro' | 'enterprise'>;
billing?: boolean;
}