/** * @public */ export type GridLayoutDefinition = { /** Column count of the grid layout. */ columns: number; /** Row count of the grid layout. */ rows: number; /** * Minimum grid container width required to use this layout. * @remarks * If this constraint is not met, we try to select a layout with fewer tiles * (`tiles=columns*rows`) that is within the constraint. */ minWidth?: number; /** * Minimum grid container height required to use this layout. * @remarks * If this constraint is not met, we try to select a layout with fewer tiles * (`tiles=columns*rows`) that is within the constraint. */ minHeight?: number; /** * For which orientation the layout definition should be applied. * Will be used for both landscape and portrait if no value is specified. */ orientation?: 'landscape' | 'portrait'; }; export type GridLayoutInfo = { /** Layout name (convention `x`). */ name?: string; /** Column count of the layout. */ columns?: number; /** Row count of the layout. */ rows?: number; /** Maximum tiles that fit into this layout. */ maxTiles?: number; /** Minimum width required to use this layout. */ minWidth?: number; /** Minimum height required to use this layout. */ minHeight?: number; orientation?: 'landscape' | 'portrait'; wrapperStyle?: { gridTemplateColumns?: string; height?: string; }; gridColumns?: string[]; }; export declare const GRID_LAYOUTS: GridLayoutDefinition[]; export declare const NEW_LAYOUT_CONFIG: ({ condition: (num: number) => num is 1; wrapperStyle?: undefined; gridColumns?: undefined; } | { condition: (num: number) => num is 2; wrapperStyle: { gridTemplateColumns: string; width: string; height: string; gridTemplateRows?: undefined; }; gridColumns?: undefined; } | { condition: (num: number) => num is 3; wrapperStyle: { gridTemplateColumns: string; gridTemplateRows: string; width: string; height: string; }; gridColumns: string[]; } | { condition: (num: number) => num is 4; wrapperStyle: { gridTemplateColumns: string; gridTemplateRows: string; width: string; height: string; }; gridColumns?: undefined; } | { condition: (num: number) => num is 5; wrapperStyle: { gridTemplateColumns: string; gridTemplateRows: string; height: string; width?: undefined; }; gridColumns: string[]; } | { condition: (num: number) => num is 7; wrapperStyle: { gridTemplateColumns: string; gridTemplateRows: string; height: string; width?: undefined; }; gridColumns: string[]; } | { condition: (num: number) => num is 8; wrapperStyle: { gridTemplateColumns: string; gridTemplateRows: string; height: string; width?: undefined; }; gridColumns: string[]; } | { condition: (num: number) => boolean; wrapperStyle: { gridTemplateColumns: string; gridTemplateRows: string; height: string; width?: undefined; }; gridColumns?: undefined; })[]; export declare function selectGridLayout(layoutDefinitions: GridLayoutDefinition[], participantCount: number): GridLayoutInfo; /** * @internal */ export declare function expandAndSortLayoutDefinitions(layouts: GridLayoutDefinition[]): GridLayoutInfo[]; //# sourceMappingURL=grid-layouts.d.ts.map