import { SmeResponsiveWindowBreakpoints } from '../common/sme-responsive-window-manager.component'; export interface LayoutItemConfig { width: LayoutItemConfigPropertyWidth; } export interface LayoutItemConfigPropertyWidth { type: LayoutItemConfigPropertyWidthType; value: number; } export declare enum LayoutItemConfigPropertyWidthType { Percentage = "Percentage", Number = "Number" } export interface LayoutConfig { [SmeResponsiveWindowBreakpoints.PhoneUp]?: LayoutConfigItem; [SmeResponsiveWindowBreakpoints.PhoneDown]?: LayoutConfigItem; [SmeResponsiveWindowBreakpoints.Reflow]?: LayoutConfigItem; } export interface LayoutConfigItem { mode?: LayoutItemConfigMode; config?: LayoutItemConfig[]; } export declare enum LayoutItemConfigMode { Default = "Default", Custom = "Custom" } export declare enum LayoutDrivenType { Default = "Default", ResponsiveWindowManager = "ResponsiveWindowManager" } /** * The layout config generator. * * It determines the configurable width for the layout item. * Usage: * * const layoutConfigGenerator = new LayoutConfigGenerator(); * layoutConfigGenerator.initialize([20, '100']) * * type number is used for pixel. * type string is used for percentage. */ export declare class LayoutConfigGenerator { /** * It initialized the layout configs for the layout component. * * @param phoneUp the layout config array for phone-up * @param phoneDown the layout config array for phone-down * @param reflow the layout config array for reflow * @returns */ initialize(phoneUp: any[], phoneDown?: any[], reflow?: any[]): LayoutConfig; private parseConfig; }