UNPKG

@gobistories/gobi-web-integration

Version:

This library will let you put your Gobi stories on your site.

115 lines (114 loc) 3.62 kB
import { CallbackName } from '../types/options.types'; export declare type EventName = 'exits' | 'chapterCompletes' | 'storyCompletes' | 'forwardSkips' | 'backwardSkips' | 'duration' | 'chapterViews' | 'storyViews' | 'engagedViewers' | 'informedViewers' | 'engagedViewers' | 'previewsSeen' | 'previewsOpened' | 'linkClicks'; export interface GobiEvent { readonly metric?: EventName; readonly callback?: CallbackName; readonly payload?: Record<string, unknown>; } export declare class BubbleSeenEvent implements GobiEvent { readonly metric = "previewsSeen"; readonly payload: { previewType: string; }; } export declare class BubbleOpenEvent implements GobiEvent { readonly metric = "previewsOpened"; readonly payload: { previewType: string; }; } export declare class CardSeenEvent implements GobiEvent { readonly metric = "previewsSeen"; readonly payload: { previewType: string; }; } export declare class CardOpenEvent implements GobiEvent { readonly metric = "previewsOpened"; readonly payload: { previewType: string; }; } export declare class CloseEvent implements GobiEvent { readonly chapterId: string; readonly metric = "exits"; readonly callback = "close"; constructor(chapterId: string); get payload(): { chapterId: string; }; } export declare class StoryCompletedEvent implements GobiEvent { readonly metric = "storyCompletes"; readonly callback = "videoComplete"; } export declare class ChapterCompletedEvent implements GobiEvent { readonly chapterId: string; readonly metric = "chapterCompletes"; constructor(chapterId: string); get payload(): { chapterId: string; }; } export declare class SkipNextEvent implements GobiEvent { readonly chapterId: string; readonly metric = "forwardSkips"; readonly callback = "clickNext"; constructor(chapterId: string); get payload(): { chapterId: string; }; } export declare class SkipPreviousEvent implements GobiEvent { readonly chapterId: string; readonly metric = "backwardSkips"; readonly callback = "clickPrevious"; constructor(chapterId: string); get payload(): { chapterId: string; }; } export declare class StoryViewEvent implements GobiEvent { readonly metric = "storyViews"; } export declare class ChapterViewEvent implements GobiEvent { readonly chapterId: string; readonly duration: number; readonly metric = "chapterViews"; constructor(chapterId: string, duration: number); get payload(): { chapterId: string; duration: number; }; } export declare class EngagedViewerEvent implements GobiEvent { readonly metric = "engagedViewers"; } export declare class InformedViewerEvent implements GobiEvent { readonly metric = "informedViewers"; } export declare class LinkClickedEvent implements GobiEvent { readonly chapterId: string; readonly url: string; readonly metric = "linkClicks"; constructor(chapterId: string, url: string); get payload(): { chapterId: string; url: string; }; } export declare class LoadedEvent implements GobiEvent { readonly callback = "loaded"; } export declare class PlayEvent implements GobiEvent { readonly callback = "videoPlay"; } export declare class PauseEvent implements GobiEvent { readonly callback = "videoPause"; } export declare class LoopEvent implements GobiEvent { readonly callback = "newIteration"; } export declare class ErrorEvent implements GobiEvent { readonly callback = "error"; }