kentico-cloud-delivery
Version:
Official Kentico Cloud Delivery SDK
36 lines (35 loc) • 1.51 kB
TypeScript
import { IItemQueryConfig, IUrlSlugResolverResult, IRichTextImageResolverResult, RichTextItemDataType, ContentItemType } from '../models';
export declare type ResolverContext = 'root' | 'nested';
export interface IRichTextHtmlParser {
resolveRichTextElement(resolverContext: ResolverContext, contentItemCodename: string, html: string, elementName: string, replacement: IRichTextReplacements, config: IHtmlResolverConfig): IRichTextResolverResult;
}
export interface IFeaturedObjects {
links: ILinkObject[];
linkedItems: ILinkedItemContentObject[];
images: IImageObject[];
}
export interface IRichTextResolverResult extends IFeaturedObjects {
resolvedHtml: string;
}
export interface IRichTextReplacements {
getLinkedItemHtml: (itemCodename: string, itemType: RichTextItemDataType) => string;
getUrlSlugResult: (itemId: string, linkText: string) => IUrlSlugResolverResult;
getImageResult: (resolverCotnext: ResolverContext, linkedItemCodename: string, imageId: string, elementName: string) => IRichTextImageResolverResult;
}
export interface IHtmlResolverConfig {
enableAdvancedLogging: boolean;
queryConfig: IItemQueryConfig;
linkedItemWrapperTag: string;
linkedItemWrapperClasses: string[];
}
export interface ILinkedItemContentObject {
dataType: string;
dataCodename: string;
itemType: ContentItemType;
}
export interface ILinkObject {
dataItemId: string;
}
export interface IImageObject {
imageId: string;
}