/// <reference types="react" />
import React = require('react');
/**
 * <ContainerQuery tagName='div' query={query}>
 *   {(params) => {
 *     <div className={classname(params.class)}></div>
 *   }}
 * </ContainerQuery>
 */
export default class ContainerQuery extends React.Component<Props, State> {
    private rol;
    constructor(props: Props);
    componentDidMount(): void;
    render(): React.DOMElement<any, Element>;
    componentWillUnmount(): void;
}
export interface Props extends React.HTMLProps<ContainerQuery> {
    children?: ChildFunction | JSX.Element | JSX.Element[];
    tagName?: string;
    query: {
        [key: string]: ContainerQueries;
    };
}
export interface State {
    params: Params;
}
export interface ChildFunction {
    (params: Params): JSX.Element | JSX.Element[] | null;
}
export interface Params {
    [key: string]: boolean;
}
export interface ContainerQueries {
    minWidth?: number;
    maxWidth?: number;
    minHeight?: number;
    maxHeight?: number;
}
