@kontent-ai/delivery-sdk
Version:
Official Kontent.AI Delivery API SDK
41 lines (40 loc) • 2.14 kB
TypeScript
import { Contracts } from '../../contracts';
import { IDeliveryClientConfig } from '../../config';
import { IContentItem, IItemQueryConfig, IDeliveryNetworkResponse, Responses, ClientTypes } from '../../models';
import { QueryService } from '../../services';
import { BaseQuery } from '../common/base-query.class';
export declare class SingleItemQuery<TClientTypes extends ClientTypes, TContentItem extends IContentItem = IContentItem> extends BaseQuery<TClientTypes, Responses.IViewContentItemResponse<TContentItem, TClientTypes['contentItemType']>, IItemQueryConfig, Contracts.IViewContentItemContract> {
protected config: IDeliveryClientConfig;
protected queryService: QueryService<TClientTypes>;
private codename;
protected _queryConfig: IItemQueryConfig;
constructor(config: IDeliveryClientConfig, queryService: QueryService<TClientTypes>, codename: string);
/**
* Indicates depth of query that affects loading of nested linked items.
* @param depth Depth of the query (> 0)
*/
depthParameter(depth: number): this;
/**
* Used to configure query
* @param queryConfig Query configuration
*/
queryConfig(queryConfig: IItemQueryConfig): this;
/**
* Language codename
* @param languageCodename Codename of the language
*/
languageParameter(languageCodename: TClientTypes['languageCodenames']): this;
/**
* Used to limit the number of elements returned by query.
* @param elementCodenames Array of element codenames to fetch
*/
elementsParameter(elementCodenames: TClientTypes['elementCodenames'][]): this;
/**
* Used to exclude elements returned by query.
* @param elementCodenames Array of element codenames to exclude
*/
excludeElementsParameter(elementCodenames: TClientTypes['elementCodenames'][]): this;
toPromise(): Promise<IDeliveryNetworkResponse<Responses.IViewContentItemResponse<TContentItem, TClientTypes['contentItemType']>, Contracts.IViewContentItemContract>>;
getUrl(): string;
map(json: any): Responses.IViewContentItemResponse<TContentItem, TClientTypes['contentItemType']>;
}