@atlaskit/navigation-system
Version:
The latest navigation system for Atlassian apps.
33 lines (32 loc) • 1.46 kB
TypeScript
/**
* @jsxRuntime classic
* @jsx jsx
*/
import { type Key, type MutableRefObject, type ReactNode } from 'react';
import type { LayoutAreaMode, LayoutAreaState } from './layout-area-sizing-context';
import type { PanelResizeEnd } from './panel-layout';
import type { ResizeBounds } from './panel-splitter/types';
type LocalPanelSurfaceProps = {
children: ReactNode;
contentKey?: Key;
label: string;
resizeLabel: string;
defaultWidth: number;
minWidth: number;
maxWidth?: number;
testId?: string;
layoutRef: MutableRefObject<HTMLDivElement | null>;
managedSizing?: LayoutAreaState;
getManagedResizeBounds: () => ResizeBounds | undefined;
prepareResize?: () => Promise<boolean>;
onManagedResizeStart: (mode: LayoutAreaMode) => void;
onManagedResize: (mode: LayoutAreaMode, width: number) => void;
onManagedResizeEnd: (mode: LayoutAreaMode, width: number) => void;
onWidthChange: (width: number) => void;
onResizeEnd: (event: PanelResizeEnd) => void;
};
/**
* Internal surface for PanelLayout. The host supplies content; navigation owns its geometry.
*/
export declare function LocalPanelSurface({ children, contentKey, label, resizeLabel, defaultWidth, minWidth, maxWidth, testId, layoutRef, managedSizing, getManagedResizeBounds, prepareResize, onManagedResizeStart, onManagedResize, onManagedResizeEnd, onWidthChange, onResizeEnd, }: LocalPanelSurfaceProps): JSX.Element;
export {};