UNPKG

@grouparoo/core

Version:
70 lines (69 loc) 2.36 kB
import { OptionallyAuthenticatedAction } from "../classes/actions/optionallyAuthenticatedAction"; import { GrouparooModel } from "../models/GrouparooModel"; import { ActionPermission } from "../models/Permission"; import { TeamMember } from "../models/TeamMember"; declare type NavigationMode = "authenticated" | "unauthenticated" | "config:authenticated" | "config:unauthenticated"; export interface NavigationItem { type: "link" | "divider" | "subNavMenu"; title?: string; icon?: string; href?: string; mainPathSectionIdx?: number; small?: boolean; subNavItems?: NavigationItem[]; } export declare class NavigationList extends OptionallyAuthenticatedAction { name: string; description: string; permission: ActionPermission; outputExample: {}; runWithinTransaction({ session: { teamMember }, }: { session: { teamMember: TeamMember; }; }): Promise<{ navigationMode: NavigationMode; navigation: { navigationItems: NavigationItem[]; platformItems: NavigationItem[]; bottomMenuItems: NavigationItem[]; }; clusterName: { default: boolean; value: string; }; teamMember: { id: string; teamId: string; firstName: string; lastName: string; email: string; locked: string; lastLoginAt: Date; createdAt: number; updatedAt: number; }; }>; private static createModelNavigationItems; authenticatedNav(teamMember: TeamMember, models: GrouparooModel[]): Promise<{ navigationItems: NavigationItem[]; platformItems: NavigationItem[]; bottomMenuItems: NavigationItem[]; }>; unauthenticatedNav(): Promise<{ navigationItems: NavigationItem[]; platformItems: NavigationItem[]; bottomMenuItems: NavigationItem[]; }>; authenticatedConfigNav(models: GrouparooModel[]): Promise<{ navigationItems: NavigationItem[]; platformItems: NavigationItem[]; bottomMenuItems: NavigationItem[]; }>; unauthenticatedConfigNav(): Promise<{ navigationItems: NavigationItem[]; platformItems: NavigationItem[]; bottomMenuItems: NavigationItem[]; }>; } export {};