import './index.less'; import React, { Component } from 'react'; import { Settings } from '../defaultSettings'; declare type MergerSettingsType = Partial & { primaryColor?: string; colorWeak?: boolean; }; export interface SettingItemProps { title: React.ReactNode; action: React.ReactElement; disabled?: boolean; disabledReason?: React.ReactNode; } export interface SettingDrawerProps { settings: MergerSettingsType; collapse?: boolean; getContainer?: any; onCollapseChange?: (collapse: boolean) => void; onSettingChange?: (settings: MergerSettingsType) => void; } export interface SettingDrawerState extends MergerSettingsType { collapse?: boolean; language?: string; } declare class SettingDrawer extends Component { state: SettingDrawerState; static getDerivedStateFromProps(props: SettingDrawerProps): SettingDrawerState | null; componentDidMount(): void; componentWillUnmount(): void; onLanguageChange: () => void; updateTheme: (dark: boolean, color?: string | undefined) => void; getLayoutSetting: () => SettingItemProps[]; changeSetting: (key: string, value: string | boolean) => void; togglerContent: () => void; renderLayoutSettingItem: (item: SettingItemProps) => JSX.Element; getFormatMessage: () => (data: { id: string; defaultMessage?: string | undefined; }) => string; getThemeList: () => { colorList: { dark: { key: string; color: string; theme: import("antd/es/menu/MenuContext").MenuTheme; }[]; light: { key: string; color: string; theme: import("antd/es/menu/MenuContext").MenuTheme; }[]; }; themeList: { key: string; url: string; title: string; }[]; }; render(): React.ReactNode; } export default SettingDrawer;