import { AppReference, ExtendedRequestKey } from "../models/visualDiscovery"; import { Channel } from "../models/common"; interface VisualSearchUsedProps extends ExtendedRequestKey { imageID: string; products: string; latency: number; count: number; ref: AppReference; channel?: Channel; } interface DiscoveryImageClicked extends ExtendedRequestKey { type: "instagram" | "popular"; id: string; ref: AppReference; channel?: Channel; } export type DiscoveryProductVisitType = "instagram" | "popular" | "image-search" | "shop-the-look"; interface DiscoveryProductVisit extends ExtendedRequestKey { type: DiscoveryProductVisitType; data: string; pos: number; productID: string; ref: AppReference; cartToken?: string; channel?: Channel; } interface AddToCartProps extends ExtendedRequestKey { pos: number; productID: string; originID: string; type: DiscoveryProductVisitType; ref: AppReference; cartToken?: string; channel?: Channel; } export declare const VisualDiscoveryReporting: { visualSearchUsed: ({ storeID, uuid, userSessionID, sessionToken, imageID, products, latency, count, ref, channel }: VisualSearchUsedProps) => Promise; discoveryOpen: ({ userSessionID, sessionToken, uuid, storeID, channel }: ExtendedRequestKey, appReference: AppReference) => Promise; galleryImageClicked: ({ storeID, uuid, sessionToken, userSessionID, id, type, ref, channel }: DiscoveryImageClicked) => Promise; discoveryProductVisit: ({ userSessionID, sessionToken, uuid, storeID, data, pos, productID, type, ref, cartToken, channel }: DiscoveryProductVisit) => Promise; productAddedToCart: ({ productID, sessionToken, userSessionID, pos, storeID, uuid, type, originID, ref, cartToken, channel }: AddToCartProps) => Promise; }; export {};