import React, { ReactNode, MouseEvent, SyntheticEvent } from 'react';
import { RouteComponentProps } from 'react-router';
import ResourceJSON from '../../../backend/decorators/resource-json.interface';
import RecordJSON from '../../../backend/decorators/record-json.interface';
declare type Props = {
    resource: ResourceJSON;
    toggleFilter: () => void;
    isVisible: boolean;
};
declare type State = {
    filter: any;
};
declare type MatchProps = {
    resourceId: string;
};
declare type CombinedProps = Props & RouteComponentProps<MatchProps>;
declare class FilterContainer extends React.Component<CombinedProps, State> {
    constructor(props: CombinedProps);
    componentWillReceiveProps(nextProps: CombinedProps): void;
    parseQuery(): any;
    handleSubmit(event: SyntheticEvent): false;
    resetFilter(event: MouseEvent): void;
    handleChange(propertyName: string | RecordJSON, value: any): void;
    render(): ReactNode;
}
declare const _default: React.ComponentClass<Pick<CombinedProps, "resource" | "isVisible" | "toggleFilter">, any> & import("react-router").WithRouterStatics<typeof FilterContainer>;
export default _default;
