import './index.less'; import React, { Component } from 'react'; import { Settings } from '../defaultSettings'; declare type MergerSettingsType = Partial & { primaryColor?: string; colorWeak?: boolean; }; 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; zlServerList: { path: string; name: string; }[]; } 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; getLayoutSetting: () => SettingItemProps[]; changeSetting: (key: string, value: string | boolean) => void; togglerContent: () => void; renderLayoutSettingItem: (item: SettingItemProps) => JSX.Element; getFormatMessage: () => (data: { id: string; defaultMessage?: string | undefined; }) => string; saveTestServer: (path: string) => void; render(): React.ReactNode; } export default SettingDrawer;