UNPKG

@sap-cloud-sdk/core

Version:
63 lines 3.23 kB
import { Constructable, Entity } from '../entity'; import { Selectable } from '../selectable/selectable'; import { Orderable } from '../order/orderable'; import { ODataGetAllRequestConfig } from '../request/odata-get-all-request-config'; import { DestinationOptions, Destination, DestinationNameAndJwt } from '../../connectivity/scp-cf'; import { CountRequestBuilder } from '../request-builder/count-request-builder'; import { EntityDeserializer } from '../entity-deserializer'; import { ResponseDataAccessor } from '../response-data-accessor'; import { GetRequestBuilder } from './get-request-builder-base'; /** * Base class for the get all request builders [[GetAllRequestBuilderV2]] and [[GetAllRequestBuilderV4]] * @typeparam EntityT - Type of the entity to be requested */ export declare abstract class GetAllRequestBuilder<EntityT extends Entity> extends GetRequestBuilder<EntityT, ODataGetAllRequestConfig<EntityT>> { readonly entityDeserializer: EntityDeserializer; readonly dataAccessor: ResponseDataAccessor; /** * Creates an instance of GetAllRequestBuilder. * @param entityConstructor - Constructor of the entity to create the request for * @param getAllRequestConfig - Request config of the get all request. */ constructor(entityConstructor: Constructable<EntityT>, getAllRequestConfig: ODataGetAllRequestConfig<EntityT>, entityDeserializer: EntityDeserializer, dataAccessor: ResponseDataAccessor); /** * Restrict the response to the given selection of properties in the request. * @param selects - Fields to select in the request * @returns The request builder itself, to facilitate method chaining */ select(...selects: Selectable<EntityT>[]): this; select(selects: Selectable<EntityT>[]): this; /** * Add order-by statements to the request. * @param orderBy - OrderBy statements to order the response by * @returns The request builder itself, to facilitate method chaining */ orderBy(orderBy: Orderable<EntityT>[]): this; orderBy(...orderBy: Orderable<EntityT>[]): this; /** * Limit number of returned entities. * @param top - Maximum number of entities to return in the response. Can be less, if less entities match the request * @returns The request builder itself, to facilitate method chaining */ top(top: number): this; /** * Skip number of entities. * @param skip - Number of matching entities to skip. Useful for paging * @returns The request builder itself, to facilitate method chaining */ skip(skip: number): this; /** * Count the number of entities. * @returns A count request builder for execution */ count(): CountRequestBuilder<EntityT>; /** * Execute request. * @param destination - Destination to execute the request against * @param options - Options to employ when fetching destinations * @returns A promise resolving to the requested entities */ execute(destination: Destination | DestinationNameAndJwt, options?: DestinationOptions): Promise<EntityT[]>; } export { GetAllRequestBuilder as GetAllRequestBuilderBase }; //# sourceMappingURL=get-all-request-builder-base.d.ts.map