import { BlazePlayerEvent, BlazePlayerEventType } from './blaze-player-event';
import { BlazeWidgetLabel } from '../classes/blaze-widget-label';
import { BlazeRecommendationsType } from '../classes/blaze-recommendations-type';
import { BlazeCTAActionType } from './common.interface';
export interface StoryPageType {
    storyId: string;
    pageId?: string;
}
export type PresetRowWidgetLayout = 'widgetRectangle' | 'widgetCircle';
export type PresetGridWidgetLayout = 'twoColumnsTheme' | 'threeColumnsTheme';
export type OnDataLoadStartedEvent = Readonly<{
    widgetId: string;
}>;
export type OnDataLoadCompleteEvent = Readonly<{
    widgetId: string;
    itemsCount: number;
    error?: string;
}>;
export type OnPlayerDidAppearEvent = Readonly<{
    widgetId: string;
}>;
export type OnPlayerDidDismissEvent = Readonly<{
    widgetId: string;
}>;
export type OnItemClickedEvent = Readonly<{
    widgetId: string;
    widgetItemId: string;
    widgetItemTitle?: string;
}>;
export type OnTriggerCTAEvent = Readonly<{
    widgetId: string;
    actionType: BlazeCTAActionType;
    actionParam: string;
}>;
export type OnTriggerPlayerBodyTextLinkEvent = Readonly<{
    widgetId: string;
    actionParam: string;
}>;
export type OnPlayerEventTriggeredEvent = Readonly<{
    widgetId: string;
    playerEvent: BlazePlayerEvent;
}>;
export type OnPlayerEventTriggeredEventInternal = Readonly<{
    widgetId: string;
    playerEventType: BlazePlayerEventType;
    playerEventParams: string;
}>;
export type OnHeightChangedEventInternal = Readonly<{
    newHeight: number;
}>;
export type BlazeDataSourceType = {
    labels: BlazeWidgetLabel;
    orderType?: BlazeOrderType;
    labelsPriority?: BlazeWidgetLabel[];
    maxItems?: number;
} | {
    ids: string[];
    orderType?: BlazeOrderType;
} | {
    recommendationsType: BlazeRecommendationsType;
};
type BlazeOrderType = 'manual' | 'recentlyUpdatedFirst' | 'recentlyUpdatedLast' | 'aToZ' | 'zToA' | 'recentlyCreatedFirst' | 'recentlyCreatedLast' | 'random';
export interface BlazeWidgetDelegate {
    onDataLoadStarted?: (event: OnDataLoadStartedEvent) => void;
    onDataLoadComplete?: (event: OnDataLoadCompleteEvent) => void;
    onPlayerDidAppear?: (event: OnPlayerDidAppearEvent) => void;
    onPlayerDidDismiss?: (event: OnPlayerDidDismissEvent) => void;
    onItemClicked?: (event: OnItemClickedEvent) => void;
    onTriggerCTA?: (event: OnTriggerCTAEvent) => void;
    onTriggerPlayerBodyTextLink?: (event: OnTriggerPlayerBodyTextLinkEvent) => void;
    onPlayerEventTriggered?: (event: OnPlayerEventTriggeredEvent) => void;
}
export {};
//# sourceMappingURL=widgets-props.interface.d.ts.map