import GirafeResizableElement from '../../base/GirafeResizableElement.js'; import IGirafePanel from '../../tools/state/igirafepanel.js'; /** * A panel component that extends GirafeResizableElement. * Used as main Left and Right panels on the app. * It has a state toggle manager that can activate or deactivate * toggle paths based on changes in its state. * It also has methods to shows/hide itself based on the state toggle paths and state. * * To have the toggle on the state working, the component must implement the IGirafePanel interface * and be added to the lr-panel: * * * * */ declare class LRPanelComponent extends GirafeResizableElement { templateUrl: null; styleUrls: null; template: () => import("uhtml").Hole; private stateToggleManager?; panelTitle: string; get hasMultipleChilds(): boolean; constructor(); protected connectedCallback(): void; /** * Closes the panel by deactivating all state toggles and hiding itself. */ closePanel(): void; /** * Retrieve the (valid boolean) toggle paths from child elements of the main slot. */ private retrieveTogglePanels; /** * Subscribes to changes in togglePaths and shows or hides the component based on the changes. */ private registerOnChildChange; renderPanel(panel: IGirafePanel): void; } export default LRPanelComponent;