PHP WebShell

Текущая директория: /opt/BitGoJS/node_modules/@hashgraph/sdk/lib/client

Просмотр файла: ManagedNetwork.d.ts

/**
 * @typedef {import("../channel/Channel.js").default} Channel
 * @typedef {import("../channel/MirrorChannel.js").default} MirrorChannel
 * @typedef {import("../Node.js").default} Node
 * @typedef {import("../MirrorNode.js").default} MirrorNode
 * @typedef {import("../address_book/NodeAddressBook.js").default} NodeAddressBook
 */
/**
 * @template {Channel | MirrorChannel} ChannelT
 * @typedef {import("../ManagedNode.js").default<ChannelT>} ManagedNode
 */
/**
 * @template {Channel | MirrorChannel} ChannelT
 * @template {ManagedNode<ChannelT>} NetworkNodeT
 * @template {{ toString: () => string }} KeyT
 */
export default class ManagedNetwork<ChannelT extends import("../channel/MirrorChannel.js").default | import("../channel/Channel.js").default, NetworkNodeT extends import("../ManagedNode.js").default<ChannelT>, KeyT extends {
    toString: () => string;
}> {
    /**
     * @param {(address: string) => ChannelT} createNetworkChannel
     */
    constructor(createNetworkChannel: (address: string) => ChannelT);
    /**
     * Map of node account ID (as a string)
     * to the node URL.
     *
     * @internal
     * @type {Map<string, NetworkNodeT[]>}
     */
    _network: Map<string, NetworkNodeT[]>;
    /**
     * List of node account IDs.
     *
     * @protected
     * @type {NetworkNodeT[]}
     */
    protected _nodes: NetworkNodeT[];
    /**
     * List of node account IDs.
     *
     * @protected
     * @type {NetworkNodeT[]}
     */
    protected _healthyNodes: NetworkNodeT[];
    /**
     * Count of unhealthy nodes.
     *
     * @protected
     * @type {number}
     */
    protected _unhealthyNodesCount: number;
    /** @type {(address: string, cert?: string) => ChannelT} */
    _createNetworkChannel: (address: string, cert?: string) => ChannelT;
    /** @type {LedgerId | null} */
    _ledgerId: LedgerId | null;
    _minBackoff: number;
    _maxBackoff: number;
    /** @type {number} */
    _maxNodeAttempts: number;
    _nodeMinReadmitPeriod: number;
    _nodeMaxReadmitPeriod: number;
    _earliestReadmitTime: number;
    /**
     * @deprecated
     * @param {string} networkName
     * @returns {this}
     */
    setNetworkName(networkName: string): this;
    /**
     * @deprecated
     * @returns {string | null}
     */
    get networkName(): string | null;
    /**
     * @param {string|LedgerId} ledgerId
     * @returns {this}
     */
    setLedgerId(ledgerId: string | LedgerId): this;
    /**
     * @returns {LedgerId | null}
     */
    get ledgerId(): LedgerId | null;
    /**
     * @abstract
     * @param {[string, KeyT]} entry
     * @returns {NetworkNodeT}
     */
    _createNodeFromNetworkEntry(entry: [string, KeyT]): NetworkNodeT;
    /**
     * @abstract
     * @param {Map<string, KeyT>} network
     * @returns {number[]}
     */
    _getNodesToRemove(network: Map<string, KeyT>): number[];
    _removeDeadNodes(): void;
    _readmitNodes(): void;
    /**
     * @param {number} count
     * @returns {NetworkNodeT[]}
     */
    _getNumberOfMostHealthyNodes(count: number): NetworkNodeT[];
    /**
     * @param {number} i
     */
    _closeNode(i: number): void;
    /**
     * @param {NetworkNodeT} node
     */
    _removeNodeFromNetwork(node: NetworkNodeT): void;
    /**
     * @param {Map<string, KeyT>} network
     * @returns {this}
     */
    _setNetwork(network: Map<string, KeyT>): this;
    /**
     * @returns {number}
     */
    get maxNodeAttempts(): number;
    /**
     * @param {number} maxNodeAttempts
     * @returns {this}
     */
    setMaxNodeAttempts(maxNodeAttempts: number): this;
    /**
     * @returns {number}
     */
    get minBackoff(): number;
    /**
     * @param {number} minBackoff
     * @returns {this}
     */
    setMinBackoff(minBackoff: number): this;
    /**
     * @returns {number}
     */
    get maxBackoff(): number;
    /**
     * @param {number} maxBackoff
     * @returns {this}
     */
    setMaxBackoff(maxBackoff: number): this;
    /**
     * @returns {number}
     */
    get nodeMinReadmitPeriod(): number;
    /**
     * @param {number} nodeMinReadmitPeriod
     * @returns {this}
     */
    setNodeMinReadmitPeriod(nodeMinReadmitPeriod: number): this;
    /**
     * @returns {number}
     */
    get nodeMaxReadmitPeriod(): number;
    /**
     * @param {number} nodeMaxReadmitPeriod
     * @returns {this}
     */
    setNodeMaxReadmitPeriod(nodeMaxReadmitPeriod: number): this;
    /**
     * @param {KeyT=} key
     * @returns {NetworkNodeT}
     */
    getNode(key?: KeyT | undefined): NetworkNodeT;
    /**
     * @param {NetworkNodeT} node
     */
    increaseBackoff(node: NetworkNodeT): void;
    /**
     * @param {NetworkNodeT} node
     */
    decreaseBackoff(node: NetworkNodeT): void;
    close(): void;
}
export type Channel = import("../channel/Channel.js").default;
export type MirrorChannel = import("../channel/MirrorChannel.js").default;
export type Node = import("../Node.js").default;
export type MirrorNode = import("../MirrorNode.js").default;
export type NodeAddressBook = import("../address_book/NodeAddressBook.js").default;
export type ManagedNode<ChannelT extends import("../channel/MirrorChannel.js").default | import("../channel/Channel.js").default> = import("../ManagedNode.js").default<ChannelT>;
import LedgerId from "../LedgerId.js";

Выполнить команду


Для локальной разработки. Не используйте в интернете!