@atlaskit/navigation-system
Version:
The latest navigation system for Atlassian apps.
49 lines (48 loc) • 1.67 kB
TypeScript
import type { StrictXCSSProp } from '@atlaskit/css';
import type { ResizeBound } from './panel-splitter/types';
import type { CommonSlotProps } from './types';
/**
* The ChatPanel layout area is rendered below the banner and to the right (inline end) of the app.
*
* Below 40rem it overlays the app. At 40rem and above it is rendered as the final
* full-height column in the page layout grid.
*
* You can optionally render a `PanelSplitter` as a child to make the chat panel resizable.
*/
export declare function ChatPanel({ children, defaultWidth: defaultWidthProp, minWidth, maxWidth, label, skipLinkLabel, testId, id: providedId, xcss, hasBorder, onClose, }: CommonSlotProps & {
/**
* The content of the layout area.
*/
children: React.ReactNode;
/**
* The accessible name of the slot, announced by screen readers.
*/
label?: string;
/**
* The default width of the layout area in pixels.
*/
defaultWidth?: number;
/**
* The minimum width the chat panel can be resized to.
*/
minWidth?: ResizeBound;
/**
* The maximum width the chat panel can be resized to.
*/
maxWidth?: ResizeBound;
/**
* Bounded style overrides.
*/
xcss?: StrictXCSSProp<'backgroundColor', never>;
/**
* Whether the slot has a border when inline, or a shadow when overlaying the app.
*
* @default true
*/
hasBorder?: boolean;
/**
* Required for controlled dismissal. Unmount ChatPanel when called, including
* when opening SideNav replaces the chat overlay. Remount it to open it again.
*/
onClose: () => void;
}): JSX.Element;