import { ClientAnalytics, ReferrerType } from '@zeniai/client-analytics';
import { AccountViewMode, AuthParams, COABalanceTimeFrame, COABalanceType, COABalancesOrder, COABalancesRange, COABalancesRangeWithThisPeriod, ClassViewLayout, FetchState, ID, NestedClassID, Project, ReportFormat, ReportID, TimeframeTick, ZeniDate } from '@zeniai/client-epic-state';
import { DownloadReportOptions } from '../common/downloadReport/types/downloadReportOptions';
import { ReportFormatProps } from '../common/downloadReport/types/statementID';
type Props = {
    authParams: AuthParams;
    classesFetchState: FetchState;
    currentTenantCompanyName: string;
    dataAvailable: TimeframeTick;
    defaultOptions: DownloadReportOptions;
    downloadState: FetchState;
    isAccountingProjectsEnabled: boolean;
    referrer: ReferrerType;
    reportFormatProps: ReportFormatProps;
    selectedReportId: ReportID;
    showAccountGroups: boolean;
    statementEndPoint: string;
    analytics?: ClientAnalytics;
    isAccountingClassesEnabled?: boolean;
    isHorizontalClassReportSwitchEnabled?: boolean;
    lastRefreshSuccessTime?: ZeniDate;
    projects?: Project[];
    projectsListFetchState?: FetchState;
    projectsToFilterOut?: ID[];
    onClose: () => void;
    onOpenAccountViewMode: () => void;
    onSaveClickHandler: (view: AccountViewMode, classesToFilter?: NestedClassID[], filteredProjects?: ID[]) => void;
    onUpdateDisplayOrder: (displayOrder: COABalancesOrder) => void;
    onUpdateReportFormat: (reportFormat: ReportFormat) => void;
    updateDownloadStateHandler: (newDownloadState: FetchState) => void;
    onAdditionalBalanceSelectionChanged?: (additionalBalances: COABalanceType[], maxNumOfPeriodsToSelect: number, reportViewUpdate?: boolean) => void;
    onCOABalancesRangeChanged?: (selectedCOABalancesRange: COABalancesRange, highlightedCOABalancesRange?: COABalancesRangeWithThisPeriod) => void;
    onResyncReports?: () => void;
    onThisPeriodChanged?: (thisPeriod: TimeframeTick, maxNumOfPeriodsToSelect: number, reportViewUpdate?: boolean) => void;
    onTimeframeSelectionChanged?: (newTimeFrame: COABalanceTimeFrame, isUpdateAdditionalBalances: boolean, reportViewUpdate?: boolean) => void;
    onUpdateClassViewLayout?: (layout: ClassViewLayout) => void;
};
type ReportOptionsPanelProps = Omit<Props, "onClose">;
export declare const ReportOptionsPanel: (props: ReportOptionsPanelProps) => import("react/jsx-runtime").JSX.Element;
export {};
