import { BillPayFilterCategoryDropdownOption, MatchingOperatorDropdownOption, PaymentHistoryFilterCategoryDropdownOption, ReimbursementFilterCategoryDropdownOption, SpendManagementFilterCategoryDropdownOption, SpendManagementFilterEntityType, SpendManagementFiltersType, TaskFilterCategoryDropdownOption, UserRoleType, ZeniDate, ZeniUrl } from '@zeniai/client-epic-state';
interface DropdownOptionTypeBase {
    [key: string]: any;
}
export interface ValuesDropdownOption extends DropdownOptionTypeBase {
    label: string;
    value: string | number | ZeniDate;
    email?: string;
    iconColor?: string;
    iconType?: string;
    photo?: ZeniUrl;
}
export declare const defaultEmptyFilters: SpendManagementFiltersType;
export declare const NEW_CATEGORY_BODY: {
    valuesCombinationOperator: string;
    values: never[];
    matchingOperator: string;
};
interface GetUpdatedFiltersonCategoryChangeProps {
    currentFilters: SpendManagementFiltersType;
    selectedOption: SpendManagementFilterCategoryDropdownOption;
    categoryIndex?: number;
}
interface GetUpdatedFiltersOnMatchingOperatorChangeProps {
    currentFilters: SpendManagementFiltersType;
    selectedOption: MatchingOperatorDropdownOption;
    categoryIndex?: number;
}
interface GetUpdatedFiltersOnValueChangeProps {
    categoryIndex: number;
    currentFilters: SpendManagementFiltersType;
    selectedOptions: ValuesDropdownOption[];
}
export declare const getFilterCategoriesForSelectedEntity: (selectedEntity: SpendManagementFilterEntityType | "charge_card_payment_history", userRole: UserRoleType[]) => BillPayFilterCategoryDropdownOption[] | ReimbursementFilterCategoryDropdownOption[] | TaskFilterCategoryDropdownOption[] | PaymentHistoryFilterCategoryDropdownOption[];
export declare const getFilterCategoryLabel: (selectedEntity: SpendManagementFilterEntityType | "charge_card_payment_history", key: string) => string;
export declare const getUpdatedFiltersOnCategoryChange: ({ currentFilters, selectedOption, categoryIndex, }: GetUpdatedFiltersonCategoryChangeProps) => SpendManagementFiltersType;
export declare const getUpdatedFiltersOnMatchingOperatorChange: ({ currentFilters, selectedOption, categoryIndex, }: GetUpdatedFiltersOnMatchingOperatorChangeProps) => SpendManagementFiltersType;
export declare const getUpdatedFiltersOnValueChange: ({ currentFilters, selectedOptions, categoryIndex, }: GetUpdatedFiltersOnValueChangeProps) => SpendManagementFiltersType;
export {};
