UNPKG

@rxxuzi/gumi

Version:

Clean & minimal design system with delightful interactions

31 lines (30 loc) 820 B
export interface SidebarOptions { overlay?: boolean; closeOnOutsideClick?: boolean; closeOnEscape?: boolean; push?: boolean; pushTarget?: string; } export declare class Sidebar { private element; private options; private overlay; private hamburger; private isOpen; private boundKeyHandler; private boundOutsideClickHandler; constructor(element: HTMLElement | string, options?: SidebarOptions); private init; private createOverlay; private setupHamburger; private bindEvents; private handleKeyPress; private handleOutsideClick; open(): void; close(): void; toggle(): void; isOpened(): boolean; destroy(): void; static initFromAttributes(selector?: string): Sidebar[]; static init(selector: string): Sidebar | null; }