UNPKG

@kontent-ai/delivery-sdk

Version:
77 lines (76 loc) 5.19 kB
import { IDeliveryClientConfig } from '../config'; import { Contracts } from '../contracts'; import { Responses, IContentItem, ClientTypes } from '../models'; export interface IMappingService<TClientTypes extends ClientTypes> { listContentTypesResponse(data: Contracts.IListContentTypeContract): Responses.IListContentTypesResponse<TClientTypes['contentTypeCodenames']>; itemsFeedResponse<TContentItem extends IContentItem = TClientTypes['contentItemType']>(data: Contracts.IItemsFeedContract): Responses.IListItemsFeedResponse<TContentItem, TClientTypes['contentItemType']>; usedInResponse(data: Contracts.IUsedInItemsContract): Responses.IUsedInResponse<TClientTypes>; viewContentTypeResponse(data: Contracts.IViewContentTypeContract): Responses.IViewContentTypeResponse<TClientTypes['contentTypeCodenames']>; viewContentItemResponse<TContentItem extends IContentItem = TClientTypes['contentItemType']>(data: Contracts.IViewContentItemContract): Responses.IViewContentItemResponse<TContentItem, TClientTypes['contentItemType']>; listContentItemsResponse<TContentItem extends IContentItem = TClientTypes['contentItemType']>(data: Contracts.IListContentItemsContract): Responses.IListContentItemsResponse<TContentItem, TClientTypes['contentItemType']>; viewTaxonomyResponse(data: Contracts.IViewTaxonomyGroupContract): Responses.IViewTaxonomyResponse<TClientTypes['taxonomyCodenames']>; listTaxonomiesResponse(data: Contracts.IListTaxonomyGroupsContract): Responses.IListTaxonomiesResponse<TClientTypes['taxonomyCodenames']>; viewContentTypeElementResponse(data: Contracts.IViewContentTypeElementContract): Responses.IViewContentTypeElementResponse; listLanguagesResponse(data: Contracts.IListLanguagesContract): Responses.IListLanguagesResponse<TClientTypes['languageCodenames']>; initializeContentSync(data: Contracts.IInitializeSyncContract): Responses.IInitializeSyncResponse; syncChanges(data: Contracts.ISyncChangesContract): Responses.ISyncChangesResponse; } export declare class MappingService<TClientTypes extends ClientTypes> implements IMappingService<TClientTypes> { readonly config: IDeliveryClientConfig; private readonly typeMapper; private readonly languageMapper; private readonly itemMapper; private readonly taxonomyMapper; private readonly usedInMapper; private readonly genericElementMapper; private readonly syncMapper; constructor(config: IDeliveryClientConfig); usedInResponse(data: Contracts.IUsedInItemsContract): Responses.IUsedInResponse<TClientTypes>; /** * Gets response for list of languages * @param data Response data */ listLanguagesResponse(data: Contracts.IListLanguagesContract): Responses.IListLanguagesResponse<TClientTypes['languageCodenames']>; /** * Gets response for getting a multiple type * @param data Response data */ listContentTypesResponse(data: Contracts.IListContentTypeContract): Responses.IListContentTypesResponse<TClientTypes['contentTypeCodenames']>; /** * Gets response for single type * @param data Response data * @param options Options */ viewContentTypeResponse(data: Contracts.IViewContentTypeContract): Responses.IViewContentTypeResponse<TClientTypes['contentTypeCodenames']>; itemsFeedResponse<TContentItem extends IContentItem = TClientTypes['contentItemType']>(data: Contracts.IItemsFeedContract): Responses.IListItemsFeedResponse<TContentItem, TClientTypes['contentItemType']>; /** * Gets response for getting single item * @param data Response data * @param queryConfig Query configuration */ viewContentItemResponse<TContentItem extends IContentItem = TClientTypes['contentItemType']>(data: Contracts.IViewContentItemContract): Responses.IViewContentItemResponse<TContentItem, TClientTypes['contentItemType']>; /** * Gets response for getting multiple items * @param data Response data * @param queryConfig Query configuration */ listContentItemsResponse<TContentItem extends IContentItem = TClientTypes['contentItemType']>(data: Contracts.IListContentItemsContract): Responses.IListContentItemsResponse<TContentItem, TClientTypes['contentItemType']>; /** * Gets response for getting single taxonomy item * @param data Response data */ viewTaxonomyResponse(data: Contracts.IViewTaxonomyGroupContract): Responses.IViewTaxonomyResponse<TClientTypes['taxonomyCodenames']>; /** * Gets response for getting multiples taxonomies * @param data Response data */ listTaxonomiesResponse(data: Contracts.IListTaxonomyGroupsContract): Responses.IListTaxonomiesResponse<TClientTypes['taxonomyCodenames']>; /** * Gets response for getting single content type element * @param data Response data */ viewContentTypeElementResponse(data: Contracts.IViewContentTypeElementContract): Responses.IViewContentTypeElementResponse; initializeContentSync(data: Contracts.IInitializeSyncContract): Responses.IInitializeSyncResponse; syncChanges(data: Contracts.ISyncChangesContract): Responses.ISyncChangesResponse; private mapPagination; }