import * as React from "react"; import * as PropTypes from "prop-types"; import { SDK } from "@gooddata/gooddata-js"; import { AFM, VisualizationInput } from "@gooddata/typings"; import { IAttributeElement } from "./model"; export interface IAttributeFilterProps { onApply?: (...params: any[]) => any; onApplyWithFilterDefinition?: (filter: VisualizationInput.IPositiveAttributeFilter | VisualizationInput.INegativeAttributeFilter) => void; sdk?: SDK; uri?: string; projectId?: string; identifier?: string; filter?: VisualizationInput.IPositiveAttributeFilter | VisualizationInput.INegativeAttributeFilter; locale?: string; fullscreenOnMobile?: boolean; title?: string; FilterLoading?: React.ComponentType<{}>; FilterError?: React.ComponentType; } export interface IFilterErrorProps { error: string; } export declare function createOldFilterDefinition(id: string, selection: IAttributeElement[], isInverted: boolean, isUsingTextFilter?: boolean): { [x: string]: string | string[]; id: string; type: string; }; export declare function createAfmFilter(id: string, selection: IAttributeElement[], isInverted: boolean, isUsingTextFilter?: boolean): AFM.AttributeFilterItem; /** * AttributeFilter * is a component that renders a dropdown populated with attribute values */ export declare class AttributeFilter extends React.PureComponent { static propTypes: { uri: PropTypes.Requireable; identifier: PropTypes.Requireable; filter: PropTypes.Requireable; projectId: PropTypes.Requireable; onApply: PropTypes.Requireable; onApplyWithFilterDefinition: PropTypes.Requireable; fullscreenOnMobile: PropTypes.Requireable; FilterLoading: PropTypes.Requireable; FilterError: PropTypes.Requireable; locale: PropTypes.Requireable; title: PropTypes.Requireable; }; static defaultProps: Partial; private sdk; constructor(props: IAttributeFilterProps); componentWillReceiveProps(nextProps: IAttributeFilterProps): void; render(): JSX.Element; onApply: (selection: IAttributeElement[], isInverted: boolean) => void; private isInverted; private getIdentifierOrUri; private getFilterBody; private getSelection; private renderContent; }