Files
marketplaces/src/app/shared/models/config/navigation.model.ts

38 lines
868 B
TypeScript
Raw Normal View History

export interface NavigationLocalizedText {
[locale: string]: string;
}
export interface NavigationItemConfig {
id: string;
labelKey?: string;
label?: string | NavigationLocalizedText;
route?: string;
type?: string;
key?: string;
icon?: string;
order?: number;
visible?: boolean;
visibleWhenFlags?: string[];
children?: NavigationItemConfig[];
}
export interface FooterNavigationItemConfig {
type: string;
key?: string;
label?: string | NavigationLocalizedText;
labelKey?: string;
route?: string;
visible?: boolean;
}
export interface FooterNavigationGroupConfig {
groupTitle?: string | NavigationLocalizedText;
items: FooterNavigationItemConfig[];
}
export interface NavigationConfig {
header: NavigationItemConfig[];
footer: NavigationItemConfig[] | FooterNavigationGroupConfig[];
sidebar?: NavigationItemConfig[];
}