import { ComponentInterface, EventEmitter } from '../../stencil-public-runtime'; import { NavDrawerAnchor, NavDrawerVariant, NavDrawerLabels } from '../types'; /** * A navigation drawer component designed to organize and facilitate user navigation in your app. * It functions as a wrapper around the material [drawer](https://github.com/material-components/material-components-web/blob/master/packages/mdc-drawer/) component. * * Usage Note: * - This component is intended exclusively for navigation purposes. It is optimized for holding items like `ino-list` and `ino-nav-item` for effective user guidance. * - To maintain a clean and organized app structure, `ino-nav-drawer` should be used once per application. This ensures a consistent and predictable navigation experience across different parts of the app. * * @slot header - For a custom header on top of the navigation drawer * @slot logo - For the logo on top of the navigation drawer (cannot be used with the `header` slot) * @slot subtitle - For the element just below the logo (cannot be used with the `header` slot) * @slot content - For the content of the navigation drawer (usually used with `ino-list` and `ino-nav-item`) * @slot footer - For elements below the content slot * @slot app - For the application located next to this nav-drawer */ export declare class NavDrawer implements ComponentInterface { /** * An internal instance of the material design drawer. */ private drawerInstance; private drawerEl; /** * We need this flag because the MDCDrawer needs to initialize after ui updates. * The property watcher is executed before rendering and initializing the MDCDrawer every component update is not needed. */ private reinitializeAfterVariantChange; el: HTMLInoNavDrawerElement; /** * Marks this element as open. (**unmanaged**) */ open?: boolean; openChanged(newOpen: boolean): void; /** * Side from which the drawer will appear. * Possible values: `left` (default), `right`. */ anchor?: NavDrawerAnchor; /** * The variant to use for the drawer. */ variant?: NavDrawerVariant; variantChanged(newVariant: NavDrawerVariant): void; /** * The aria-labels used for content and footer nav elements. * https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Roles/navigation_role. */ a11yLabels?: NavDrawerLabels; /** * Emits when the user clicks on the drawer toggle icon to change the open state. Contains the status in `event.detail`. */ openChange: EventEmitter; handleListItemClick(event: CustomEvent): void; componentDidUpdate(): void; componentDidLoad(): void; disconnectedCallback(): void; private initDrawerInstance; private activateMobileMode; private deactivateMobileMode; private deactivateAllItems; private closeDrawer; private toggleDrawer; private initTabindex; render(): any; }