export type themeType = { [key: string]: string; }; export type themesType = { [key: string]: themeType; }; export type UIThemeBaseConfig = { type: string; onSetupCallback?: (loadedTheme: themeType) => void; }; export type UIThemeLocalConfig = UIThemeBaseConfig & { type: 'local'; themeName: string; }; export type UIThemeRemoteConfig = UIThemeBaseConfig & { type: 'remote'; brandingSectionName?: string; payloadData?: Record; apiUrl: string; }; export type UIThemeCustomObjectJsonConfig = UIThemeBaseConfig & { type: 'customJson'; config: themeType; }; export type UiThemeNoneConfig = UIThemeBaseConfig & { type: 'none'; }; export declare type UIThemeConfig = UIThemeLocalConfig | UIThemeRemoteConfig | UIThemeCustomObjectJsonConfig | UiThemeNoneConfig;