import * as log4js from 'log4js';
import { Cycle } from '../state-manager/state-manager-types';
import { P2P, StateManager } from '@shardeum-foundation/lib-types';
/** STATE */
export declare let oldDataPath: string;
export declare const safetyModeVals: {
    safetyMode: boolean;
    safetyNum: number;
    networkStateHash: string;
};
export declare let lastSnapshotCycle: number;
export declare let snapshotLogger: log4js.Logger;
/** FUNCTIONS */
export declare function initLogger(): void;
export declare function setOldDataPath(path: any): void;
export declare function getStateHashes(start?: Cycle['counter'], end?: Cycle['counter']): P2P.SnapshotTypes.StateHashes[];
export declare function getReceiptHashes(start?: Cycle['counter'], end?: Cycle['counter']): P2P.SnapshotTypes.ReceiptHashes[];
export declare function getSummaryHashes(start?: Cycle['counter'], end?: Cycle['counter']): P2P.SnapshotTypes.SummaryHashes[];
export declare function getReceiptMap(start?: Cycle['counter'], end?: Cycle['counter']): {
    [key: number]: StateManager.StateManagerTypes.ReceiptMapResult[];
};
export declare function getSummaryBlob(start?: Cycle['counter'], end?: Cycle['counter']): {
    [key: number]: StateManager.StateManagerTypes.StatsClump;
};
export declare function initSafetyModeVals(): Promise<void>;
export declare function startSnapshotting(): void;
export declare function startWitnessMode(): Promise<void>;
