import { Observable } from 'rxjs'; import { IDeliveryClientConfig } from '../../config'; import { ICloudResponse, IItemQueryConfig } from '../../interfaces'; import { ContentItem, ItemResponses } from '../../models'; import { QueryService } from '../../services'; import { BaseQuery } from '../common/base-query.class'; export declare abstract class BaseItemQuery extends BaseQuery { protected config: IDeliveryClientConfig; protected queryService: QueryService; protected _queryConfig: IItemQueryConfig; constructor(config: IDeliveryClientConfig, queryService: QueryService); /** * Used to configure query * @param queryConfig Query configuration */ queryConfig(queryConfig: IItemQueryConfig): this; /** * Language codename * @param languageCodename Codename of the language */ languageParameter(languageCodename: string): this; /** * Used to limit the number of elements returned by query. * @param elementCodenames Array of element codenames to fetch */ elementsParameter(elementCodenames: string[]): this; /** * Indicates how deep nested modular content items are resolved. * @param depth Depth of the query (> 0) */ depthParameter(depth: number): this; injectMultipleItems(body: string): ItemResponses.DeliveryItemListingResponse; injectSingleItem(body: string): ItemResponses.DeliveryItemResponse; protected getMultipleItemsQueryUrl(): string; protected getSingleItemQueryUrl(codename: string): string; protected runMultipleItemsQuery(): Observable>; protected runSingleItemQuery(codename: string): Observable>; private processDefaultLanguageParameter(); }