30 lines
803 B
TypeScript
30 lines
803 B
TypeScript
import { TenantUserType } from "../enums/tenants/TenantUserType";
|
|
import { ReactNode } from "react";
|
|
import { DefaultPermission } from "../dtos/shared/DefaultPermissions";
|
|
|
|
export interface SideBarItem {
|
|
id?: string;
|
|
title: string;
|
|
path: string;
|
|
uiIdPattern?: string;
|
|
uiIdParams?: Record<string, string | number | boolean | null | undefined>;
|
|
icon?: ReactNode;
|
|
description?: string;
|
|
open?: boolean;
|
|
adminOnly?: boolean;
|
|
tenantUserTypes?: TenantUserType[];
|
|
permission?: DefaultPermission;
|
|
items?: SideBarItem[];
|
|
side?: ReactNode;
|
|
exact?: boolean;
|
|
redirectTo?: string;
|
|
isCollapsible?: boolean;
|
|
target?: "_blank" | undefined;
|
|
disabled?: boolean;
|
|
hidden?: boolean;
|
|
isSecondary?: boolean;
|
|
isQuickLink?: boolean;
|
|
isActive?: boolean;
|
|
isExpandedByHref?: boolean;
|
|
}
|