kentico-cloud-delivery
Version:
Official Kentico Cloud Delivery SDK
30 lines (29 loc) • 1.36 kB
TypeScript
import { ItemContracts } from '../data-contracts';
import { ContentItem } from '../models/item/content-item.class';
import { TypeResolver } from '../models/item/type-resolver.class';
export declare class StronglyTypedResolver {
/**
* Indicates if given type has a type resolver
* @param type Type
* @param resolvers Type resolvers
*/
hasTypeResolver(type: string, resolvers: TypeResolver[]): boolean;
/**
* Creates non generic ContentItem used when content type does not have a strongly typed model
*/
createContentItem(item: ItemContracts.IContentItemContract): ContentItem;
/**
* Takes given type name and creates a strongly typed model based specified in client configuration
* @param type Type of the content item
* @param item Typed content item
* @param resolvers Type resolvers
*/
createTypedObj<TItem extends ContentItem>(type: string, item: ItemContracts.IContentItemContract, typeResolvers: TypeResolver[]): TItem;
/**
* Creates empty typed object of given type
* @param type Type of the content item
* @param resolvers Type resolvers
*/
createEmptyTypedObj<TItem extends ContentItem>(type: string, resolvers: TypeResolver[]): TItem | undefined;
}
export declare const stronglyTypedResolver: StronglyTypedResolver;