export interface TypeBodySetting {
  fixed: boolean;
  contentWidth: string;
}

export interface TypeMenuSetting {
  title: string;
  width: number;
  minWidth: number;
  fixed: boolean;
  split: boolean;
  collapsed: boolean;
  show: boolean;
}

export interface TypeMultiTabsSetting {
  show: boolean;
}

export interface TypeHeaderSetting {
  collapsed: boolean;
  fixed: boolean;
  reload: boolean;
  height: number;
  show: boolean;
}

export interface TypeCrumbsSetting {
  show: boolean;
  showIcon: boolean;
}

export interface ProjectSettingState {
  layout: string;
  navTheme: string;
  headerTheme: string;
  darkTheme: boolean;
  headerSetting: TypeHeaderSetting;
  bodySetting: TypeBodySetting;
  menuSetting: TypeMenuSetting;
  multiTabsSetting: TypeMultiTabsSetting;
  crumbsSetting: TypeCrumbsSetting;
  permissionMode: string;
  isPageAnimate: boolean;
  pageAnimateType: string;
  isProjectSetting: boolean;
  isWaterMark: boolean;
}

export interface GlobConfig {
  title: string;
  apiUrl: string;
  shortName: string;
  urlPrefix?: string;
  uploadUrl?: string;
  prodMock: boolean;
  imgUrl?: string;
}

export interface GlobEnvConfig {
  // 标题
  VITE_GLOB_APP_TITLE: string;
  // 接口地址
  VITE_GLOB_API_URL: string;
  // 接口前缀
  VITE_GLOB_API_URL_PREFIX?: string;
  // Project abbreviation
  VITE_GLOB_APP_SHORT_NAME: string;
  // 图片上传地址
  VITE_GLOB_UPLOAD_URL?: string;
  //图片前缀地址
  VITE_GLOB_IMG_URL?: string;
  //生产环境开启mock
  VITE_GLOB_PROD_MOCK: boolean;
}
