import { Model } from 'redux-orm';
/**
 * A hybrid type that describes a query to the ORM and a selector that can be fed to angular-redux
 */
export declare type QuerySetSelector = {
    (state: any): Array<Model> | Model | number | boolean;
    at(index: number): QuerySetSelector;
    count(): QuerySetSelector;
    exclude(lookupObj: Object): QuerySetSelector;
    exists(): QuerySetSelector;
    filter(lookupObj: Object): QuerySetSelector;
    first(): QuerySetSelector;
    last(): QuerySetSelector;
    orderBy: QuerySetSelector;
    toModelArray(): QuerySetSelector;
    toRefArray(): QuerySetSelector;
};
/**
 * Queries to the database
 *
 * @param function getModelFromState A function that provides a model from the state
 *
 * @return QuerySetSelector Returns an instance of QuerySetSelector that can be used to further specify the query to execute
 */
export declare function QuerySet(getModelFromState: any): QuerySetSelector;
