kentico-cloud-delivery
Version:
Official Kentico Cloud Delivery SDK
64 lines (63 loc) • 4.21 kB
TypeScript
import { IBaseResponse } from 'kentico-cloud-core';
import { IDeliveryClientConfig } from '../config';
import { ElementContracts, ItemContracts, TaxonomyContracts, TypeContracts } from '../data-contracts';
import { ElementResponses, ICloudResponseDebug, IContentItem, IItemQueryConfig, ItemResponses, TaxonomyResponses, TypeResponses } from '../models';
import { IRichTextHtmlParser } from '../parser';
export interface IMappingService {
listContentTypesResponse(response: IBaseResponse<TypeContracts.IListContentTypeContract>): TypeResponses.ListContentTypesResponse;
viewContentTypeResponse(response: IBaseResponse<TypeContracts.IViewContentTypeContract>): TypeResponses.ViewContentTypeResponse;
viewContentItemResponse<TItem extends IContentItem = IContentItem>(response: IBaseResponse<ItemContracts.IViewContentItemContract>, queryConfig: IItemQueryConfig): ItemResponses.ViewContentItemResponse<TItem>;
listContentItemsResponse<TItem extends IContentItem = IContentItem>(response: IBaseResponse<ItemContracts.IListContentItemsContract>, queryConfig: IItemQueryConfig): ItemResponses.ListContentItemsResponse<TItem>;
viewTaxonomyGroupResponse(response: IBaseResponse<TaxonomyContracts.IViewTaxonomyGroupContract>): TaxonomyResponses.ViewTaxonomyGroupResponse;
listTaxonomyGroupsResponse(response: IBaseResponse<TaxonomyContracts.IListTaxonomyGroupsContract>): TaxonomyResponses.ListTaxonomyGroupsResponse;
viewContentTypeElementResponse(response: IBaseResponse<ElementContracts.IViewContentTypeElementContract>): ElementResponses.ViewContentTypeElementResponse;
mapResponseDebug(response: IBaseResponse<any>): ICloudResponseDebug;
}
export declare class MappingService implements IMappingService {
readonly config: IDeliveryClientConfig;
readonly richTextHtmlParser: IRichTextHtmlParser;
private readonly typeMapper;
private readonly itemMapper;
private readonly taxonomyMapper;
private readonly genericElementMapper;
constructor(config: IDeliveryClientConfig, richTextHtmlParser: IRichTextHtmlParser);
/**
* Gets response for getting a single type
* @param response Response data
*/
listContentTypesResponse(response: IBaseResponse<TypeContracts.IListContentTypeContract>): TypeResponses.ListContentTypesResponse;
/**
* Gets resposne for getting multiple types
* @param response Response data
* @param options Options
*/
viewContentTypeResponse(response: IBaseResponse<TypeContracts.IViewContentTypeContract>): TypeResponses.ViewContentTypeResponse;
/**
* Gets response for getting single item
* @param response Response data
* @param queryConfig Query configuration
*/
viewContentItemResponse<TItem extends IContentItem = IContentItem>(response: IBaseResponse<ItemContracts.IViewContentItemContract>, queryConfig: IItemQueryConfig): ItemResponses.ViewContentItemResponse<TItem>;
/**
* Gets response for getting multiple items
* @param response Response data
* @param queryConfig Query configuration
*/
listContentItemsResponse<TItem extends IContentItem = IContentItem>(response: IBaseResponse<ItemContracts.IListContentItemsContract>, queryConfig: IItemQueryConfig): ItemResponses.ListContentItemsResponse<TItem>;
/**
* Gets response for getting single taxonomy item
* @param response Response data
*/
viewTaxonomyGroupResponse(response: IBaseResponse<TaxonomyContracts.IViewTaxonomyGroupContract>): TaxonomyResponses.ViewTaxonomyGroupResponse;
/**
* Gets response for getting multiples taxonomies
* @param response Response data
*/
listTaxonomyGroupsResponse(response: IBaseResponse<TaxonomyContracts.IListTaxonomyGroupsContract>): TaxonomyResponses.ListTaxonomyGroupsResponse;
/**
* Gets response for getting single content type element
* @param response Response data
*/
viewContentTypeElementResponse(response: IBaseResponse<ElementContracts.IViewContentTypeElementContract>): ElementResponses.ViewContentTypeElementResponse;
mapResponseDebug(response: IBaseResponse<any>): ICloudResponseDebug;
}