import { MXBaseComponent } from '@acorex/cdk/common';
import * as i0 from '@angular/core';
import { AfterContentInit, DoCheck } from '@angular/core';
import * as i1 from '@angular/common';

/**
 * A container component that organizes and positions drawer components.
 * @category component
 */
declare class AXDrawerLegacyContainerComponent extends MXBaseComponent {
    private service;
    constructor();
    static ɵfac: i0.ɵɵFactoryDeclaration<AXDrawerLegacyContainerComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<AXDrawerLegacyContainerComponent, "ax-drawer-legacy-container", never, {}, {}, never, ["ax-drawer", "ax-content"], true, never>;
}

type AXDrawerMode = 'push' | 'overlay';
type AXDrawerLocation = 'start' | 'end';
/**
 * A component that represents a drawer with header and content sections.
 *
 * @category Components
 */
declare class AXDrawerLegacyComponent extends MXBaseComponent implements AfterContentInit, DoCheck {
    #private;
    location: i0.ModelSignal<AXDrawerLocation>;
    showBackdrop: i0.InputSignal<boolean>;
    mode: i0.ModelSignal<AXDrawerMode>;
    closeOthers: i0.InputSignal<boolean>;
    collapsed: i0.ModelSignal<boolean>;
    private backdropElement;
    protected loaded: i0.WritableSignal<boolean>;
    private service;
    private _zone;
    private document;
    private platformID;
    /**
     *
     *  @ignore
     */
    ngAfterContentInit(): void;
    /**
     *  @ignore
     */
    ngDoCheck(): void;
    /**
     *  @ignore
     */
    private _detectBoundingSize;
    /**
     * Toggles the collapsed state of the drawer.
     */
    toggle(): void;
    /**
     * Collapses the drawer.
     * @ignore
     */
    close(): void;
    /**
     * Expands the drawer.
     */
    open(): void;
    /**
     *  @ignore
     */
    private _addBackdrop;
    /**
     *  @ignore
     */
    private _removeBackdrop;
    /**
     *  @ignore
     */
    private get __hostClass();
    static ɵfac: i0.ɵɵFactoryDeclaration<AXDrawerLegacyComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<AXDrawerLegacyComponent, "ax-drawer-legacy", never, { "location": { "alias": "location"; "required": false; "isSignal": true; }; "showBackdrop": { "alias": "showBackdrop"; "required": false; "isSignal": true; }; "mode": { "alias": "mode"; "required": false; "isSignal": true; }; "closeOthers": { "alias": "closeOthers"; "required": false; "isSignal": true; }; "collapsed": { "alias": "collapsed"; "required": false; "isSignal": true; }; }, { "location": "locationChange"; "mode": "modeChange"; "collapsed": "collapsedChange"; }, never, ["ax-header", "ax-content"], true, never>;
}

declare class AXDrawerLegacyModule {
    static ɵfac: i0.ɵɵFactoryDeclaration<AXDrawerLegacyModule, never>;
    static ɵmod: i0.ɵɵNgModuleDeclaration<AXDrawerLegacyModule, never, [typeof i1.CommonModule, typeof AXDrawerLegacyComponent, typeof AXDrawerLegacyContainerComponent], [typeof AXDrawerLegacyComponent, typeof AXDrawerLegacyContainerComponent]>;
    static ɵinj: i0.ɵɵInjectorDeclaration<AXDrawerLegacyModule>;
}

export { AXDrawerLegacyComponent, AXDrawerLegacyContainerComponent, AXDrawerLegacyModule };
export type { AXDrawerLocation, AXDrawerMode };
