kentico-cloud-delivery
Version:
Official Kentico Cloud Delivery SDK
105 lines (104 loc) • 3.48 kB
TypeScript
import { Observable } from 'rxjs';
import { IDeliveryClientConfig } from '../../config';
import { ContentItem, ItemResponses, SortOrder } from '../../models';
import { QueryService } from '../../services';
import { BaseItemQuery } from './base-item-query.class';
export declare class MultipleItemQuery<TItem extends ContentItem> extends BaseItemQuery<TItem, ItemResponses.DeliveryItemListingResponse<TItem>> {
protected config: IDeliveryClientConfig;
protected queryService: QueryService;
constructor(config: IDeliveryClientConfig, queryService: QueryService);
/**
* Gets only item of given type
* @param type Codename of type to get
*/
type(type: string): this;
/**
* Gets items of given types (logical or)
* I.e. get items of either 'Actor' or 'Movie' type
* @param types Types to get
*/
types(types: string[]): this;
/**
* Equals filter condition
* @param field Element to filter. Example: 'elements.movie'
* @param value Value to match. Example: 'Kingsman'
*/
equalsFilter(field: string, value: string): this;
/**
* All filter
* @param field Element to filter.
* @param values Values
*/
allFilter(field: string, values: string[]): this;
/**
* Any filter
* @param field Element to filter.
* @param values Values
*/
anyFilter(field: string, values: string[]): this;
/**
* Contains filter
* @param field Element to filter.
* @param values Values
*/
containsFilter(field: string, values: string[]): this;
/**
* Greater then filter
* @param field Element to filter.
* @param value Value
*/
greaterThanFilter(field: string, value: string): this;
/**
* Greater then or equals filter
* @param field Element to filter.
* @param value Value
*/
greaterThanOrEqualFilter(field: string, value: string): this;
/**
* In filter
* @param field Element to filter.
* @param values Values
*/
inFilter(field: string, values: string[]): this;
/**
* Less then filter
* @param field Element to filter.
* @param value Value
*/
lessThanFilter(field: string, value: string): this;
/**
* @param field Element to filter.
* @param value Value
*/
lessThanOrEqualFilter(field: string, value: string): this;
/**
* @param field Element to filter.
* @param lowerValue Lower value of range (e.g. 2)
* @param higherValue Higher value of range (e.g. 10)
*/
rangeFilter(field: string, lowerValue: number, higherValue: number): this;
/**
* Limits the number of items returned by query
* @param limit Number of items to load
*/
limitParameter(limit: number): this;
/**
* Orders query based on given field and sort order
* @param field Element by which to order
* @param sortOrder Asc/Desc order type
*/
orderParameter(field: string, sortOrder: SortOrder): this;
/**
* Skips the selected number of items
* @param skip Number of items to skip
*/
skipParameter(skip: number): this;
/**
* Gets the runnable Observable
*/
getObservable(): Observable<ItemResponses.DeliveryItemListingResponse<TItem>>;
/**
* Gets 'Url' representation of query
*/
getUrl(): string;
}