import { AuthUser } from './AuthUser'; export interface DatabaseConnectionsType { name: string; type: string; title: string; description: string; enabled: boolean; synchronize: boolean; database: string; charset: string; logger: string; logging: boolean; } export interface DatabaseLoggersType { title: string; value: string; } export interface DatabaseType { drivers: string[]; connections: DatabaseConnectionsType[]; loggers: DatabaseLoggersType[]; } export interface LayoutPanelType { gridEnabled: boolean; asideEnabled: boolean; navigationEnabled: boolean; toolbarEnabled: boolean; previewEnabled: boolean; glyphsEnabled: boolean; searchEnabled: boolean; waterfallEnabled: boolean; } export interface LayoutThemeType { _defaultTheme: string; } export interface LayoutPreviewType { fontSize: number; fontColor: string | null; backgroundColor: string | null; displayText: string | null; wordSpacing: number; letterSpacing: number; selectedGlyph: number | null; } export interface LayoutType { panel: LayoutPanelType; theme: LayoutThemeType; preview: LayoutPreviewType; } export interface NewsArticlesType { source?: { id: string; name: string; }; author?: string; title?: string; description?: string; url?: string; urlToImage?: string; publishedAt?: string; content?: string; } export interface NewsType { ts?: number; articles?: NewsArticlesType[]; apiKey?: string; status?: string; } export interface OptionsType { import?: { type: string; }; } export interface CatalogType { collection?: { id: number; }; store?: { id: number; }; } export interface UptimeType { ts: number; hours: number; minutes: number; seconds: number; } export interface SystemType { uptime: UptimeType; locale: string; is_dev: boolean; is_production: boolean; is_x86: boolean; is_x64: boolean; is_mac: boolean; is_windows: boolean; is_linux: boolean; cache_path: string; app_path: string; app_data_path: string; user_data_path: string; downloads_path: string; session_path: string; catalog_path: string; } export interface SystemConfig { catalog?: CatalogType; database: DatabaseType; layout?: LayoutType; news?: NewsType; options: OptionsType; system: SystemType; user?: AuthUser; }