import { EventEmitter } from "../../stencil-public-runtime"; import { ResponseDynamicFilterItem, RequestDynamicFilterItem } from "../../campaign/VPRCampaignService"; import { Recommendation, ContextAnnotation, Interactions } from "../../interfaces"; import { DynamicFilterInternalData, ChangedFiltersEventData } from "../../recommendation/events"; export interface FilterHandlers { vviinnFilterTriggered: EventEmitter; vviinnFiltersChanged: EventEmitter; el: HTMLElement; isTriggeredByVpsWidget: boolean; } export declare const extractDataItems: (annotation: ContextAnnotation) => { kind?: import("../../interfaces/generated").components["schemas"]["item-kind"]; entityType?: import("../../interfaces/generated").components["schemas"]["entity-type"]; groupId?: string | null; productId?: string; title?: string; deeplink?: string | null; brand?: string | null; productType?: string | null; image?: import("../../interfaces/generated").components["schemas"]["image"]; images?: import("../../interfaces/generated").components["schemas"]["image"][]; price?: { actual?: import("../../interfaces/generated").components["schemas"]["price"] | null; sale?: import("../../interfaces/generated").components["schemas"]["price"] | null; }; basePrice?: { actual?: import("../../interfaces/generated").components["schemas"]["basePrice"]; sale?: import("../../interfaces/generated").components["schemas"]["basePrice"]; }; energyEfficiencyClass?: import("../../interfaces/generated").components["schemas"]["energy-efficiency-class"]; minEnergyEfficiencyClass?: import("../../interfaces/generated").components["schemas"]["energy-efficiency-class"]; maxEnergyEfficiencyClass?: import("../../interfaces/generated").components["schemas"]["energy-efficiency-class"]; energyCertifications?: import("../../interfaces/generated").components["schemas"]["energy-certification"][]; custom_label_0?: string | null; custom_label_1?: string | null; custom_label_2?: string | null; custom_label_3?: string | null; custom_label_4?: string | null; }[]; export declare const findMatchingFilterValue: (item: Recommendation, filter: ResponseDynamicFilterItem) => { value: import("../../interfaces/generated").components["schemas"]["category-path"] | import("../../interfaces/generated").components["schemas"]["succinct-color-filter-response"] | import("../../interfaces/generated").components["schemas"]["full-color-filter-response"] | string | number; label: string; } & { active: boolean; selected: boolean; } & { value: unknown; label: unknown; }; export declare const applyFiltersForItems: (dataItems: Recommendation[], interactions: Interactions, currentRequestFilters: RequestDynamicFilterItem[], handlers: FilterHandlers) => RequestDynamicFilterItem[]; export declare const hasDynamicFilters: (annotation: ContextAnnotation) => boolean; export declare const hasProperLocators: (annotations: ContextAnnotation[]) => boolean; type Segment = { type: "text"; content: string; } | { type: "annotated"; content: string; annotation: ContextAnnotation; }; export declare const splitContentByLocators: (content: string, annotations: ContextAnnotation[]) => Segment[]; export declare const getAnnotationFilterKeys: (annotation: ContextAnnotation) => string[]; export declare const renderAnnotatedContent: (content: string, annotations: ContextAnnotation[], onAnnotationClick: (annotation: ContextAnnotation) => void, appliedFilters: Set, key: string) => any; export declare const renderInfoText: (content: string, key: string) => any; export {};