import { EventEmitter } from '../../stencil-public-runtime';
import { PanelVariant } from './exports';
/**
* A collapsible side navigation panel with expandable nav sections, can be collapsed and expanded.
*
* Example
* ```
*
*
*
*
*
*
* Logout
*
*
* ```
*
* @slot - Navigation items and content placed inside the panel body
* @slot logo-collapsed - Logo shown when the panel is in collapsed state
* @slot logo-expanded - Logo shown when the panel is in expanded state
* @slot footer - Content placed at the bottom of the panel
*/
export declare class Panel {
host: HTMLRPanelElement;
private previouslyExpandedPanels;
/** The `header` property is a string that specifies the header text. */
header?: string;
/** A boolean property that indicates whether the component includes a header */
hasHeader: boolean;
/** A boolean property that indicates whether the navitems are active of not */
active: boolean;
/** A boolean property that indicates whether the component includes a footer */
hasFooter: boolean;
/** Presentational style */
variant: PanelVariant;
/** A boolean property that determines the collapsed state of the component. The default state is `false`. */
collapsed: boolean;
/** Logo link */
logoLink: string;
/** Aria-label text for collapse */
labelCollapse: string;
/** Aria-label text for expand */
labelExpand: string;
/** Maintains the current URL or hash location within the component's state. */
currentLocation: string;
isCollapsed: boolean;
/** Event emitted when the panel state changes */
panelStateChanged: EventEmitter<{
collapsed: boolean;
}>;
toggleSubItems(event: MouseEvent): void;
/** Expand/Collapse Panel */
togglePanel(): Promise;
/** Expand Panel */
expandPanel(): Promise;
/** Collapse Panel */
collapsePanel(): Promise;
handleCollapseChange(collapsed: boolean): void;
watchVariant(newVariant: string): void;
handleDocumentClick(event: MouseEvent): void;
private getNavLinks;
private get isVariantCollapsible();
private handleClickOutside;
componentWillLoad(): void;
private updateCurrentLocationBound;
componentWillRender(): void;
componentDidRender(): void;
disconnectedCallback(): void;
private updateCurrentLocation;
private highlightCurrentLink;
private updateLinkState;
private highlightParent;
private expandParentMenus;
private handleSemiCollapsedButtonClick;
private handleFullyCollapsedButtonClick;
render(): any;
}