@gobistories/gobi-web-integration
Version:
This library will let you put your Gobi stories on your site.
115 lines (114 loc) • 3.62 kB
TypeScript
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";
}