import { EventEmitter, ChangeDetectorRef } from '@angular/core'; import { MJDashboardCategoryEntity, MJDashboardEntity } from '@memberjunction/core-entities'; import * as i0 from "@angular/core"; /** * Event emitted when a breadcrumb item is clicked for navigation */ export interface BreadcrumbNavigateEvent { CategoryId: string | null; Category: MJDashboardCategoryEntity | null; } /** * Event emitted when a dashboard is dropped on a breadcrumb item */ export interface BreadcrumbDropEvent { TargetCategoryId: string | null; DashboardIds: string[]; } /** * Reusable breadcrumb navigation component for dashboards. * Shows hierarchical path from root to current location. * Supports drag-and-drop of dashboards onto breadcrumb items. */ export declare class DashboardBreadcrumbComponent { private cdr; /** All categories for building breadcrumb path */ private _categories; set Categories(value: MJDashboardCategoryEntity[]); get Categories(): MJDashboardCategoryEntity[]; /** Current category ID (null = root) */ private _currentCategoryId; set CurrentCategoryId(value: string | null); get CurrentCategoryId(): string | null; /** Current dashboard (when viewing a specific dashboard) */ CurrentDashboard: MJDashboardEntity | null; /** Icon class for the root breadcrumb item */ RootIcon: string; /** Label for the root breadcrumb item */ RootLabel: string; /** Whether to show the current dashboard name at the end */ ShowDashboardName: boolean; /** Whether to allow drag-drop onto breadcrumb items */ AllowDragDrop: boolean; /** Whether breadcrumb is visible (e.g., hide during edit mode) */ Visible: boolean; /** Size variant: 'normal' or 'large' */ Size: 'normal' | 'large'; /** Emitted when a breadcrumb item is clicked for navigation */ Navigate: EventEmitter; /** Emitted when dashboards are dropped on a breadcrumb item */ DashboardDrop: EventEmitter; /** Breadcrumb trail from root to current category */ Breadcrumbs: MJDashboardCategoryEntity[]; /** Category ID being hovered during drag */ DragOverCategoryId: string | null | undefined; constructor(cdr: ChangeDetectorRef); /** * Navigate to a category */ OnNavigate(categoryId: string | null): void; /** * Check if we're at the root level */ get IsAtRoot(): boolean; /** * Get the current category */ get CurrentCategory(): MJDashboardCategoryEntity | null; OnDragOver(categoryId: string | null, event: DragEvent): void; OnDragLeave(): void; OnDrop(categoryId: string | null, event: DragEvent): void; TrackByCategory(_index: number, category: MJDashboardCategoryEntity): string; private updateBreadcrumbs; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } //# sourceMappingURL=dashboard-breadcrumb.component.d.ts.map