import computeParser from './parsing/computeParser';
import filterParser from './parsing/filterParser';
import orderbyParser from './parsing/orderbyParser';
import skipParser from './parsing/skipParser';
import topParser from './parsing/topParser';
import expandParser from './parsing/expandParser';
import selectParser from './parsing/selectParser';
import { FilterNode, OrderbyNode, ExpandNode, ComputeNode, SelectNode, SearchNode } from './types/nodes';
import searchParser from './parsing/searchParser';
export type oDataParameters = {
    filter?: string;
    orderby?: string;
    skip?: string;
    top?: string;
    expand?: string;
    compute?: string;
    select?: string;
    search?: string;
    count?: string;
};
export type oDataParseResult = {
    filter?: FilterNode;
    orderby?: OrderbyNode;
    skip?: number;
    top?: number;
    expand?: ExpandNode;
    compute?: ComputeNode;
    select?: SelectNode;
    search?: SearchNode;
    count?: boolean;
};
/**
 * parse oData parameter expressions from url
 * @param oDataUrl oData url as string, from req.url
 * @example //returns {top: 4}
 * parseODataUrl("//https://services.odata.org/v2/northwind/northwind.svc/Customers?$top=4")
 * @returns parsed oData parameters
 */
export declare function parseODataUrl(oDataUrl: string): oDataParseResult;
export { filterParser, orderbyParser, skipParser, topParser, expandParser, computeParser, selectParser, searchParser };
