import { Router } from '@angular/router';
import { NgDocScrollService } from '@ng-doc/ui-kit/services/scroll';
import { BehaviorSubject, Observable } from 'rxjs';
import * as i0 from '@angular/core';

/**
 * Service for sidebar, it can be used to hide/show sidebar or to check if sidebar is collapsable.
 */
declare class NgDocSidebarService {
    protected readonly expanded: BehaviorSubject<boolean>;
    protected readonly document: Document;
    protected readonly window: Window;
    protected readonly router: Router;
    protected readonly scroll: NgDocScrollService;
    constructor();
    get isMobile(): boolean;
    /**
     * Indicates if sidebar is visible, based on the show/hide methods.
     */
    isExpanded(): Observable<boolean>;
    /**
     * Show sidebar, and block scrolling.
     */
    show(): void;
    /**
     * Hide sidebar, and unblock scrolling.
     */
    hide(): void;
    /**
     * Toggle sidebar visibility.
     */
    toggle(): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<NgDocSidebarService, never>;
    static ɵprov: i0.ɵɵInjectableDeclaration<NgDocSidebarService>;
}

export { NgDocSidebarService };
