import { ICustomState, IdleCode } from '@webex/cc-store';
/**
 * Gets the CSS class for the dropdown based on current state
 */
export declare const getDropdownClass: (customState: ICustomState, currentState: string, idleCodes: IdleCode[], logger?: any) => string;
/**
 * Gets the icon style configuration for a given item
 */
export declare const getIconStyle: (item: {
    id: string;
    name: string;
    developerName?: string;
}, logger?: any) => {
    class: string;
    iconName: string;
};
/**
 * Gets the tooltip text based on current state
 */
export declare const getTooltipText: (customState: ICustomState, currentState: string, idleCodes: IdleCode[], logger?: any) => string;
/**
 * Handles selection change in the dropdown
 */
export declare const handleSelectionChange: (key: string, currentState: string, setAgentStatus: (auxCodeId: string) => void, logger: any) => void;
/**
 * Sorts dropdown items with Available first, then others
 */
export declare const sortDropdownItems: (items: Array<{
    id: string;
    name: string;
}>, logger?: any) => Array<{
    id: string;
    name: string;
}>;
/**
 * Gets the previous selectable state (first non-RONA/Engaged state)
 */
export declare const getPreviousSelectableState: (idleCodes: IdleCode[], logger?: any) => string;
/**
 * Gets the selected key for the dropdown
 */
export declare const getSelectedKey: (customState: ICustomState, currentState: string, idleCodes: IdleCode[], logger?: any) => string;
/**
 * Builds the dropdown items including custom state and conditional RONA
 */
export declare const buildDropdownItems: (customState: ICustomState, idleCodes: IdleCode[], currentState: string, logger?: any) => Array<{
    id: string;
    name: string;
    developerName?: string;
}>;
