import { Observable, Subject } from 'rxjs';
import { SideMenuEvent } from './side-menu-event';
import { SideMenuInjectionData } from './side-menu-injection-data';
import { MatDrawerToggleResult } from '@angular/material/sidenav';
export declare class SideMenuControl {
    private sideMenuCloseFunction;
    private readonly _injectionData?;
    isVersionVisible?: boolean;
    allVersionEnabled?: boolean;
    private _event$;
    private _isOpened;
    constructor(bindingsFunction: (event$: Subject<SideMenuEvent>) => void, sideMenuOpenedStateChange: Observable<boolean>, sideMenuCloseFunction: () => Observable<MatDrawerToggleResult>, _injectionData?: SideMenuInjectionData, isVersionVisible?: boolean, allVersionEnabled?: boolean);
    get data(): SideMenuInjectionData;
    isOpened(): boolean;
    publish(event: SideMenuEvent): void;
    close(event: SideMenuEvent): Observable<MatDrawerToggleResult>;
}
