import RadixUniverseConfig from './RadixUniverseConfig'; import RadixNodeDiscovery from './RadixNodeDiscovery'; import RadixNodeDiscoveryFromNodeFinder from './RadixNodeDiscoveryFromNodeFinder'; import RadixNodeDiscoveryFromSeed from './RadixNodeDiscoveryFromSeed'; import RadixNodeConnection from './RadixNodeConnection'; import Long from 'long'; export default class RadixUniverse { static ALPHANET: { universeConfig: RadixUniverseConfig; nodeDiscovery: RadixNodeDiscoveryFromNodeFinder; nodePort: number; }; static HIGHGARDEN: { universeConfig: RadixUniverseConfig; nodeDiscovery: RadixNodeDiscoveryFromNodeFinder; nodePort: number; }; static WINTERFELL: { universeConfig: RadixUniverseConfig; nodeDiscovery: RadixNodeDiscoveryFromSeed; nodePort: number; }; static WINTERFELL_LOCAL: { universeConfig: RadixUniverseConfig; nodeDiscovery: RadixNodeDiscoveryFromSeed; nodePort: number; }; initialized: boolean; universeConfig: RadixUniverseConfig; nodeDiscovery: RadixNodeDiscovery; nodePort: number; private liveNodes; private connectedNodes; private lastNetworkUpdate; private networkUpdateInterval; /** * Bootstraps the universe with a specific configuration * Must be called before performing any operations * Use one of the predefined static configurations in this class * @param config */ bootstrap(config: { universeConfig: RadixUniverseConfig; nodeDiscovery: RadixNodeDiscovery; nodePort: number; }): void; /** * Gets the universe magic byte, used mainly for generating an address from a public key * @returns */ getMagicByte(): number; private loadPeersFromBootstrap; /** * Gets a RadixNodeConnection for a specified shard * Updates the node list if neccessary * @param shard * @returns node connection */ getNodeConnection(shard: Long): Promise; private openNodeConnection; /** * Close all open connections * Recommended to call this before quitting the application, so that nodes can close the corresponding open connections as well */ closeAllConnections: () => void; private canNodeServiceShard; } export declare const radixUniverse: RadixUniverse;