import { QFilterExpression, QOrderByExpression, QueryObject } from "@odata2ts/odata-query-objects"; import { ExpandType, ExpandingFunctionV2, NullableParam, NullableParamList, ODataUriBuilderConfig, ODataUriBuilderV2 as ODataUriBuilderV2Model } from "../ODataUriBuilderModel"; /** * Create an UriBuilder by passing in a query object, which already contains the base path * to the OData service & the given entity. * * Example: * ODataUriBuilder.create("people", qPerson) * .select(...) * .filter(qPerson.age.greaterThan(...)) * ... * .build() * * @param path base path to * @param qEntity the query object * @param config optionally pass a configuration * @returns a UriBuilder */ export declare function createUriBuilderV2(path: string, qEntity: Q, config?: ODataUriBuilderConfig): ODataUriBuilderV2; /** * Create an OData URI string in a typesafe way by facilitating generated query objects. */ declare class ODataUriBuilderV2 implements ODataUriBuilderV2Model { private builder; constructor(path: string, qEntity: Q, config?: ODataUriBuilderConfig); select(...props: NullableParamList): this; filter(...expressions: NullableParamList): this; expand>(...props: NullableParamList): this; expanding>(prop: Prop, builderFn: ExpandingFunctionV2): this; orderBy(...expressions: NullableParamList): this; count(doCount?: boolean): this; top(itemsTop: NullableParam): this; skip(itemsToSkip: NullableParam): this; build(): string; } export {};