import { EventEmitter, OnInit, OnDestroy, ChangeDetectorRef } from '@angular/core';
import { ActionExplorerStateService, ActionViewMode, SortField, SortDirection, ActionFilters } from '../../services/action-explorer-state.service';
import * as i0 from "@angular/core";
interface SortOption {
    field: SortField;
    label: string;
    icon: string;
}
export declare class ActionToolbarComponent implements OnInit, OnDestroy {
    StateService: ActionExplorerStateService;
    private cdr;
    TotalCount: number;
    FilteredCount: number;
    NewActionClick: EventEmitter<void>;
    RefreshClick: EventEmitter<void>;
    ViewMode: ActionViewMode;
    SortField: SortField;
    SortDirection: SortDirection;
    Filters: ActionFilters;
    ShowFiltersDropdown: boolean;
    ShowSortDropdown: boolean;
    SortOptions: SortOption[];
    StatusOptions: {
        value: string;
        label: string;
        color: string;
    }[];
    TypeOptions: {
        value: string;
        label: string;
        icon: string;
    }[];
    private destroy$;
    private searchInput$;
    constructor(StateService: ActionExplorerStateService, cdr: ChangeDetectorRef);
    ngOnInit(): void;
    ngOnDestroy(): void;
    private subscribeToState;
    private setupSearchDebounce;
    onSearchInput(term: string): void;
    clearSearch(): void;
    setViewMode(mode: ActionViewMode): void;
    setSortField(field: SortField): void;
    toggleSortDirection(): void;
    toggleStatus(status: string): void;
    toggleType(type: string): void;
    isStatusSelected(status: string): boolean;
    isTypeSelected(type: string): boolean;
    clearFilters(): void;
    hasActiveFilters(): boolean;
    getActiveFilterCount(): number;
    toggleFiltersDropdown(): void;
    toggleSortDropdown(): void;
    closeDropdowns(): void;
    getSortLabel(): string;
    getSortIcon(): string;
    onNewAction(): void;
    onRefresh(): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<ActionToolbarComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<ActionToolbarComponent, "mj-action-toolbar", never, { "TotalCount": { "alias": "TotalCount"; "required": false; }; "FilteredCount": { "alias": "FilteredCount"; "required": false; }; }, { "NewActionClick": "NewActionClick"; "RefreshClick": "RefreshClick"; }, never, never, false, never>;
}
export {};
//# sourceMappingURL=action-toolbar.component.d.ts.map