import { P2P } from '@shardeum-foundation/lib-types'; import { OpaqueTransaction } from '../shardus/shardus-types'; /** FUNCTIONS */ /** CycleCreator Functions */ export declare function init(): void; export declare function reset(): void; export declare function getTxs(): P2P.ServiceQueueTypes.Txs; export declare function validateRecordTypes(): string; export declare function updateRecord(txs: P2P.ServiceQueueTypes.Txs, record: P2P.CycleCreatorTypes.CycleRecord, prev: P2P.CycleCreatorTypes.CycleRecord): void; export declare function parseRecord(record: P2P.CycleCreatorTypes.CycleRecord): P2P.CycleParserTypes.Change; export declare function sendRequests(): void; /** Module Functions */ export declare function containsTx(txHash: string): boolean; export declare function containsTxData(txData: OpaqueTransaction): boolean; export declare function registerShutdownHandler(type: string, handler: (activeNode: P2P.NodeListTypes.Node, record: P2P.CycleCreatorTypes.CycleRecord) => Omit | null | undefined): void; export declare function registerBeforeAddVerifier(type: string, verifier: (txEntry: P2P.ServiceQueueTypes.AddNetworkTx) => Promise): void; export declare function registerApplyVerifier(type: string, verifier: (txEntry: P2P.ServiceQueueTypes.AddNetworkTx) => Promise): void; export declare function addNetworkTx(type: string, tx: OpaqueTransaction, subQueueKey?: string, priority?: number): Promise; export declare function getLatestNetworkTxEntryForSubqueueKey(subqueueKey: string): P2P.ServiceQueueTypes.NetworkTxEntry; export declare function _removeNetworkTx(removeTx: P2P.ServiceQueueTypes.RemoveNetworkTx): Promise; export declare function processNetworkTransactions(record: P2P.CycleCreatorTypes.CycleRecord): Promise; export declare function syncTxListFromArchiver(): Promise; export declare function getTxListHash(): string; export declare function getTxList(): Array; export declare function setTxList(_txList: P2P.ServiceQueueTypes.NetworkTxEntry[]): void;