@atlaskit/navigation-system
Version:
The latest navigation system for Atlassian apps.
26 lines (25 loc) • 1.19 kB
TypeScript
import type { LayoutArea, LayoutAreaAllocation, LayoutAreaMode, LayoutWidthBound, ResizeSession, StoredLayoutArea } from './layout-area-sizing-context';
export declare function calculateLayoutAreaStates({ viewportWidth, layoutWidth, isChatPanelOverlay, isSideNavOverlay, occupiedWidth, mainMinWidth: mainMinWidthBound, areas, resizeSession, initialModes, }: {
viewportWidth: number;
/**
* Root's content width, excluding scrollbars, borders and padding.
*/
layoutWidth?: number;
/**
* Whether the viewport is below Root's 40rem inline-chat breakpoint.
*/
isChatPanelOverlay: boolean;
/**
* Whether the viewport is below Root and SideNav's 64rem desktop breakpoint.
*/
isSideNavOverlay: boolean;
occupiedWidth?: number;
mainMinWidth: LayoutWidthBound;
areas: Partial<Record<LayoutArea, StoredLayoutArea>>;
resizeSession?: ResizeSession | null;
/**
* The CSS-rendered modes during deferred activation. Bounds must describe the
* existing layout until the user actually resizes it.
*/
initialModes?: Partial<Record<LayoutArea, LayoutAreaMode>>;
}): Partial<Record<LayoutArea, LayoutAreaAllocation>>;