import { IEventEmitter } from '@breadstone/mosaik-elements'; import type { IDrawerMarginChangedEventDetail } from '../../../events'; import { CustomElement } from '../../Abstracts/CustomElement'; import { DrawerContentElement } from './DrawerContentElement'; import { DrawerElement } from './DrawerElement'; import type { IDrawerContainerElementProps } from './IDrawerContainerElementProps'; declare const DrawerContainerElement_base: (abstract new (...args: Array) => import("../../../Behaviors/Themeable").IThemeableProps) & (abstract new (...args: Array) => import("../../../Behaviors/Fitable").IFitableProps) & typeof CustomElement & import("../../../Behaviors/Themeable").IThemeableCtor; /** * DrawerContainer - A container element that wraps a drawer and its associated page content. * * @description * Organises a `mosaik-drawer` alongside the main page content, automatically adjusting * content margins when the drawer opens or closes in `side` mode. * * @name DrawerContainer * @element mosaik-drawer-container * @category Overlays * * @slot drawer - The drawer element. * @slot content - The content element. * * @fires contentMarginChanged {DrawerMarginChangedEvent} - Called when the content margin changed. * * @example * Basic drawer container: * ```html * * *
Page content goes here
*
* ``` * * @example * Drawer container with backdrop: * ```html * * *
Page content
*
* ``` * * @public */ export declare class DrawerContainerElement extends DrawerContainerElement_base implements IDrawerContainerElementProps { private readonly _contentMarginChanged; private readonly _resizeController; private _drawer; private _content; private _autoSize; private _hasBackdrop; /** * @public */ constructor(); /** * Returns the `is` property. * The `is` property represents natural name of this element. * * @public * @static * @readonly */ static get is(): string; /** * Gets or sets the `autoSize` property. * * @public * @attr */ get autoSize(): boolean; set autoSize(value: boolean); /** * Gets or sets the `hasBackdrop` property. * * @public * @attr */ get hasBackdrop(): boolean; set hasBackdrop(value: boolean); /** * Called when the content margin changed. * Provides reference to `IDrawerMarginChangedEventDetails` as event argument. * * @public * @readonly * @eventProperty * @type IEventEmitter */ get contentMarginChanged(): IEventEmitter; /** * Returns the `content` property. * * @public * @readonly */ get content(): DrawerContentElement | null; /** * Returns the `drawer` property. * * @public * @readonly */ get drawer(): DrawerElement | null; /** * @public */ open(): void; /** * @public */ close(): void; /** * @protected * @override */ protected onApplyTemplate(): void; /** * @private * * Recalculates and updates the inline styles for the content. Note that this should be used * sparingly, because it causes a reflow. */ private updateContentMargins; } /** * @public */ export declare namespace DrawerContainerElement { type Props = IDrawerContainerElementProps; } /** * @public */ declare global { interface HTMLElementTagNameMap { 'mosaik-drawer-container': DrawerContainerElement; } } export {}; //# sourceMappingURL=DrawerContainerElement.d.ts.map