/**
 * This module is reponsible for refreshing cycle chain entries for consensors
 * and archivers that are not rotating and would be "forgotten" by the network.
 * In a network that has low amount of rotation or no rotation, a syncing node
 * would have to read the cycle chain all the way back to where the oldest node
 * in the network joined. If there is no rotation, this would mean reading back
 * to the begining of the cycle chain. To avoid this we refresh the join info
 * for the consensor or archiver. Thus the syncing node has to read back much
 * less to sync the cycle chain.
 */
import { P2P } from '@shardeum-foundation/lib-types';
/** FUNCTIONS */
/** CycleCreator Functions */
export declare function init(): void;
export declare function reset(): void;
export declare function getTxs(): P2P.RefreshTypes.Txs;
export declare function validateRecordTypes(rec: P2P.RefreshTypes.Record): string;
export declare function dropInvalidTxs(txs: P2P.RefreshTypes.Txs): P2P.RefreshTypes.Txs;
export declare function updateRecord(txs: P2P.RefreshTypes.Txs, record: P2P.CycleCreatorTypes.CycleRecord, prev: P2P.CycleCreatorTypes.CycleRecord): void;
export declare function parseRecord(record: P2P.CycleCreatorTypes.CycleRecord): P2P.CycleParserTypes.Change;
export declare function queueRequest(request: any): void;
export declare function sendRequests(): void;
export declare function getRefreshCount(): number;
export declare function cyclesToKeep(): number;
