import { Component } from 'react'; import { SelectProps } from 'choerodon-ui/pro/lib/select/Select'; import './index.less'; export interface IQuickFilter { description: string; expressQuery: string; filterId: string; name: string; objectVersionNumber: number; projectId: number; sequence: number; } export interface IPersonalFilter { filterId: string; filterJson: string; name: string; objectVersionNumber: number; projectId: number; userId: string; default: boolean; } interface Props extends Partial { projectId?: string; value?: IQuickSearchValue; onChange?: (value: IQuickSearchValue) => void; } export interface IQuickSearchValue { onlyStory: boolean; onlyMe: boolean; quickFilters: string[]; personalFilters: string[]; } interface State { quickFilters: IQuickFilter[]; personalFilters: IPersonalFilter[]; value: IQuickSearchValue; } declare class QuickSearch extends Component { state: State; static getDerivedStateFromProps(nextProps: Props): { value: IQuickSearchValue | undefined; } | null; componentDidMount(): void; triggerChange: (value: IQuickSearchValue) => void; handleChange: (values: string[] | null) => void; renderCommonlyUsedOptions: () => JSX.Element; renderQuickFiltersOptions: () => JSX.Element; renderUserFiltersOptions: () => JSX.Element; render(): JSX.Element; } export default QuickSearch;