import { DataModel } from '@dvn/core/models/data-model';
import { MembershipConfig } from '@dvn/core/models/membership-config';
import { Space } from '@dvn/core/models/space';
import { DvnAppViewConfig } from '@dvn/core/models/view-config';
export declare enum ViewPlacement {
  Page = "page",
  SideModal = "side-modal",
  Dialog = "dialog"
}
export declare class AppConfig extends DataModel {
  mainNavigation: MainNavigationConfig;
  mainContent: MainContentConfig;
  space: Space;
  membership: MembershipConfig;
  views: DvnAppViewConfig[];
  static decode(json: any): AppConfig;
  getView(viewId: string): DvnAppViewConfig;
  getHomeView(): DvnAppViewConfig;
}
export interface MainContentConfig {
  centered: boolean;
}
export interface MainNavigationConfig {
  items: MainNavigationMenuItemConfig[];
  aligned: 'left' | 'top';
}
export interface MainNavigationMenuItemConfig {
  ui: ViewMenuConfig;
  viewId: string;
}
export interface ViewMenuConfig {
  title: string;
  icon?: string;
  parent?: string;
  section?: string;
}
