import { ClientAnalytics } from '@zeniai/client-analytics';
import { BillListUIState, BillPayViewSortKey, BillStageCodeType, BillTab, BillTransactionView, BillsSubTabType, BulkOperationType, FetchState, ID, PaymentHistoryAccountInfo, ReimbursementView, ReimbursementViewSortKey, RemiListUIState, RemiSubTabType, RemiTabType, SortOrder, SpendManagementEntityType, SpendManagementFilterEntityType, SpendManagementFiltersType, Tag, User, UserRoleType } from '@zeniai/client-epic-state';
import { AutoCompleteActions, AutoCompleteData } from '../../common/autoComplete/autoCompleteProps';
import { ValuesDropdownOption } from '../common/filters/spendManagementFiltersHelpers';
import { SpendManagementDownloadParams } from './downloads/SpendManagementDownloadButton';
export interface SpendManagementListViewPageProps {
    allowedBulkActions: BulkOperationType[];
    allSubTabs: BillsSubTabType[] | RemiSubTabType[];
    approvalCount: number;
    botEmail: string;
    bulkSubmissionFetchState: FetchState;
    bulkSubmissionLimit: number;
    currentSubTab: BillsSubTabType | RemiSubTabType;
    currentTab: BillTab;
    downloadParams: SpendManagementDownloadParams;
    downloadState: FetchState;
    entity: SpendManagementEntityType;
    fetchState: FetchState;
    filters: SpendManagementFiltersType;
    isAdmin: boolean;
    isBillPayCommentingEnabled: boolean;
    isBulkActionAllowed: boolean;
    isDownloadEnabled: boolean;
    isReimbursementCommentingEnabled: boolean;
    isShowDeletedBillsEnabled: boolean;
    isShowDeletedReimbursementEnabled: boolean;
    isZeniUser: boolean;
    searchText: string;
    transactionList: BillTransactionView[] | ReimbursementView[];
    transactionsSelectedForBulkAction: ID[];
    uiState: BillListUIState | RemiListUIState;
    analytics?: ClientAnalytics;
    billPayApprovalRulesAffectedEntityIds?: ID[];
    createdByUserList?: User[];
    createdByUserListFetchState?: FetchState;
    isAiCfoAccessEnabled?: boolean;
    isBillPayAdminLevelAccess?: boolean;
    isDetectInsufficientFundsEnabled?: boolean;
    isEmployee?: boolean;
    isRecurringBillInBulkActionList?: boolean;
    remiApprovalRulesAffectedEntityIds?: ID[];
    vendorSearchAutoCompleteActions?: AutoCompleteActions;
    vendorSearchAutoCompleteData?: AutoCompleteData;
    onAddTransactionClick: () => void;
    onClickSetupIcon: () => void;
    onFiltersChange: (filters: SpendManagementFiltersType) => void;
    onProceedForBulkActionClick: (operationType: BulkOperationType, description?: string) => void;
    onReloadTransactions: () => void;
    onSubtabChange: (subTab: BillsSubTabType | RemiSubTabType) => void;
    onTransactionClick: (id: ID, currentTab: BillStageCodeType) => void;
    removeAllTransactionsFromBulkActionList: () => void;
    updateBulkActionList: (ids: ID[]) => void;
    updateDownloadStateHandler: (newDownloadState: FetchState) => void;
    updateTabToState: (selectedTab: BillTab | RemiTabType) => void;
    onAskAiCfoClick?: () => void;
    onBackClick?: () => void;
    onClickMenuIcon?: () => void;
    onColumnSortConfigChanged?: (sortKey: BillPayViewSortKey | ReimbursementViewSortKey, sortOrder: SortOrder) => void;
    onSearchTextChanged?: (searchText: string) => void;
}
declare const SpendManagementListViewPage: (props: SpendManagementListViewPageProps) => import("react/jsx-runtime").JSX.Element;
export default SpendManagementListViewPage;
export declare const getDashboardFilterCategoryValues: (entity: SpendManagementFilterEntityType | "charge_card_payment_history", users: User[], userRole: UserRoleType[], tagList: Tag[], accountInfoByAccountId?: Record<ID, PaymentHistoryAccountInfo>) => Record<string, ValuesDropdownOption[]>;
