/**
 * This module contains the logic for selecting the nodes that will be allowed
 * to join the network.
 */
/**
 * Decides how many nodes to accept into the network, then selects nodes that
 * will be allowed to join. If this node isn't active yet, selection will be
 * skipped.
 */
export declare function executeNodeSelection(): void;
/**
 * Selects the nodes to be allowed to join.
 * Iterates through all standby nodes and pick the best ones by their scores
 * (`selectionNum`)
 *
 * @returns The list of public keys of the nodes that have been selected.
 */
export declare function selectNodes(maxAllowed: number): void;
/**
 * Notifies the nodes that have been selected that they have been selected by
 * calling their `accepted` endpoints.`
 */
export declare function notifyNewestJoinedConsensors(): Promise<void>;
export declare function notifyingNewestJoinedConsensors(): Promise<void>;
/**
 * Returns the list of public keys of the nodes that have been selected and
 * empties the list.
 */
export declare function drainSelectedPublicKeys(): string[];
export declare function forceSelectSelf(): void;
