import { BlazeFont, BlazeMargins } from './';
export interface BlazeWidgetLayout {
    horizontalItemsSpacing?: number;
    verticalItemsSpacing?: number;
    itemRatio?: number;
    margins?: BlazeMargins;
    columns?: number;
    maxDisplayItemsCount?: number;
    widgetItemStyle?: BlazeWidgetItemStyle;
    isScrollEnabled?: boolean;
}
export interface BlazeWidgetItemStyle {
    title?: BlazeWidgetItemTitleStyle;
    image?: BlazeWidgetItemImageStyle;
    statusIndicator?: BlazeWidgetItemStatusIndicatorStyle;
    backgroundColor?: string;
    cornerRadius?: number;
    cornerRadiusRatio?: number;
    margins?: BlazeMargins;
    badge?: BlazeWidgetItemBadgeStyle;
}
export type BlazeThumbnailType = 'SquareIcon' | 'VerticalTwoByThree' | 'Custom';
export type BlazeWidgetItemImagePosition = 'TopStart' | 'TopCenter' | 'TopEnd' | 'CenterStart' | 'Center' | 'CenterEnd' | 'BottomStart' | 'BottomCenter' | 'BottomEnd';
export type BlazeTextAlign = 'Start' | 'Center' | 'End';
export type BlazeWidgetGradientPosition = 'Top' | 'Center' | 'Bottom';
export type BlazeObjectXPosition = 'LeadingToLeading' | 'LeadingToTrailing' | 'TrailingToLeading' | 'TrailingToTrailing' | 'CenterX' | 'CenterToLeading' | 'CenterToTrailing';
export type BlazeObjectYPosition = 'BottomToTop' | 'BottomToBottom' | 'TopToBottom' | 'TopToTop' | 'CenterToTop' | 'CenterY' | 'CenterToBottom';
export interface BlazeWidgetItemImageStyle {
    position?: BlazeWidgetItemImagePosition;
    thumbnailType?: BlazeThumbnailType;
    width?: number;
    height?: number;
    ratio?: number;
    cornerRadius?: number;
    cornerRadiusRatio?: number;
    border?: BlazeWidgetItemImageContainerBorderStyle;
    gradientOverlay?: BlazeWidgetGradient;
    margins?: BlazeMargins;
    animatedThumbnail?: BlazeWidgetItemImageAnimatedThumbnailStyle;
}
export interface BlazeWidgetItemImageAnimatedThumbnailStyle {
    isEnabled?: boolean;
    horizontalAnimationTriggerPercentage?: number;
}
export interface BlazeWidgetItemImageContainerBorderStyle {
    isVisible?: boolean;
    liveReadState?: BlazeWidgetItemImageContainerBorderStateStyle;
    liveUnreadState?: BlazeWidgetItemImageContainerBorderStateStyle;
    readState?: BlazeWidgetItemImageContainerBorderStateStyle;
    unreadState?: BlazeWidgetItemImageContainerBorderStateStyle;
}
export interface BlazeWidgetItemImageContainerBorderStateStyle {
    isVisible?: boolean;
    color?: string;
    margin?: number;
    width?: number;
}
export interface BlazeWidgetItemTitleStyle {
    isVisible?: boolean;
    readState?: BlazeTitleStyle;
    unreadState?: BlazeTitleStyle;
    position?: BlazeObjectPositioning;
    margins?: BlazeMargins;
}
export interface BlazeWidgetItemBadgeStyle {
    position?: BlazeObjectPositioning;
    isVisible?: boolean;
    margins?: BlazeMargins;
    titlePadding?: BlazeMargins;
    liveUnreadState?: BlazeWidgetItemBadgeStateStyle;
    liveReadState?: BlazeWidgetItemBadgeStateStyle;
    unreadState?: BlazeWidgetItemBadgeStateStyle;
    readState?: BlazeWidgetItemBadgeStateStyle;
}
export interface BlazeWidgetItemBadgeStateStyle {
    width?: number;
    height?: number;
    textStyle?: BlazeTitleStyle;
    text?: String;
    backgroundColor?: string;
    backgroundImage?: BlazeImage;
    cornerRadius?: number;
    cornerRadiusRatio?: number;
    borderColor?: string;
    borderWidth?: number;
    isVisible?: boolean;
}
export interface BlazeTitleStyle {
    font?: BlazeFont;
    textSize?: number;
    letterSpacing?: number;
    textColor?: string;
    lineHeight?: number;
    maxLines?: number;
    textAlign?: BlazeTextAlign;
}
export interface BlazeImage {
    imageName?: string;
}
export interface BlazeObjectPositioning {
    xPosition?: BlazeObjectXPosition;
    yPosition?: BlazeObjectYPosition;
}
export interface BlazeWidgetGradient {
    isVisible?: boolean;
    position?: BlazeWidgetGradientPosition;
    startColor?: string;
    endColor?: string;
}
export interface BlazeWidgetItemStatusIndicatorStyle {
    isVisible?: boolean;
    position?: BlazeObjectPositioning;
    margins?: BlazeMargins;
    statusTitlePadding?: BlazeMargins;
    liveUnreadState?: BlazeWidgetItemStatusIndicatorStateStyle;
    liveReadState?: BlazeWidgetItemStatusIndicatorStateStyle;
    unreadState?: BlazeWidgetItemStatusIndicatorStateStyle;
    readState?: BlazeWidgetItemStatusIndicatorStateStyle;
}
export interface BlazeWidgetItemStatusIndicatorStateStyle {
    isVisible?: boolean;
    backgroundColor?: string;
    backgroundImage?: BlazeImage;
    textStyle?: BlazeTitleStyle;
    text?: string;
    cornerRadius?: number;
    cornerRadiusRatio?: number;
    borderColor?: string;
    borderWidth?: number;
}
//# sourceMappingURL=widget-layout.interface.d.ts.map