glassheart-ui-vanilla
Version:
GlassHeart UI - Vanilla JavaScript components
63 lines • 2.08 kB
TypeScript
export interface GlassNavigationOptions {
variant?: 'default' | 'transparent' | 'solid' | 'floating';
glass?: 'light' | 'medium' | 'heavy';
position?: 'top' | 'bottom' | 'left' | 'right';
size?: 'sm' | 'md' | 'lg';
sticky?: boolean;
fixed?: boolean;
liquid?: boolean;
animated?: boolean;
blur?: boolean;
shadow?: 'none' | 'sm' | 'md' | 'lg' | 'xl';
padding?: 'none' | 'xs' | 'sm' | 'md' | 'lg' | 'xl';
rounded?: 'none' | 'sm' | 'md' | 'lg' | 'xl' | 'full';
zIndex?: number;
className?: string;
onToggle?: (isOpen: boolean) => void;
onItemClick?: (item: string, index: number) => void;
}
export interface GlassNavigationItemOptions {
text: string;
href?: string;
active?: boolean;
disabled?: boolean;
icon?: string;
badge?: string | number;
onClick?: () => void;
}
export declare class GlassNavigation {
private element;
private options;
private isOpen;
private isScrolled;
private items;
constructor(options?: GlassNavigationOptions);
private createElement;
private getNavigationClasses;
private getNavigationStyles;
private setupEventListeners;
private handleScroll;
private updateClasses;
addBrand(text: string, href?: string, onClick?: () => void): void;
addItem(options: GlassNavigationItemOptions): GlassNavigationItem;
addToggle(): void;
toggle(): void;
private updateMenuState;
render(selector: string | HTMLElement): void;
appendTo(element: HTMLElement): void;
remove(): void;
update(options: Partial<GlassNavigationOptions>): void;
getElement(): HTMLElement;
static create(options?: GlassNavigationOptions): GlassNavigation;
}
export declare class GlassNavigationItem {
private element;
private options;
constructor(options: GlassNavigationItemOptions);
private createElement;
private setupEventListeners;
getElement(): HTMLElement;
setActive(active: boolean): void;
setDisabled(disabled: boolean): void;
}
//# sourceMappingURL=GlassNavigation.d.ts.map