import { EventEmitter, OnInit } from '@angular/core';
import { CompositeKey } from '@memberjunction/core';
import { MJAIAgentEntityExtended } from '@memberjunction/ai-core-plus';
import { TreeBranchConfig } from '@memberjunction/ng-trees';
import * as i0 from "@angular/core";
interface AgentFilter {
    searchTerm: string;
    agentType: string;
    parentAgent: string;
    status: string;
    executionMode: string;
    exposeAsAction: string;
    categoryId: string;
}
export declare class AgentFilterPanelComponent implements OnInit {
    agents: MJAIAgentEntityExtended[];
    filteredAgents: MJAIAgentEntityExtended[];
    filters: AgentFilter;
    filtersChange: EventEmitter<AgentFilter>;
    filterChange: EventEmitter<void>;
    resetFilters: EventEmitter<void>;
    closePanel: EventEmitter<void>;
    agentTypeOptions: {
        text: string;
        value: string;
    }[];
    parentAgentOptions: {
        text: string;
        value: string;
    }[];
    statusOptions: {
        text: string;
        value: string;
    }[];
    executionModeOptions: {
        text: string;
        value: string;
    }[];
    exposeAsActionOptions: {
        text: string;
        value: string;
    }[];
    /** TreeDropdown configuration for agent categories */
    CategoryBranchConfig: TreeBranchConfig;
    /** Current category selection for the tree dropdown */
    SelectedCategoryKey: CompositeKey | null;
    ngOnInit(): Promise<void>;
    onFilterChange(): void;
    onCategoryChange(value: CompositeKey | CompositeKey[] | null): void;
    resetAllFilters(): void;
    toggleFilterPanel(): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<AgentFilterPanelComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<AgentFilterPanelComponent, "mj-agent-filter-panel", never, { "agents": { "alias": "agents"; "required": false; }; "filteredAgents": { "alias": "filteredAgents"; "required": false; }; "filters": { "alias": "filters"; "required": false; }; }, { "filtersChange": "filtersChange"; "filterChange": "filterChange"; "resetFilters": "resetFilters"; "closePanel": "closePanel"; }, never, never, false, never>;
}
export {};
//# sourceMappingURL=agent-filter-panel.component.d.ts.map