|  |  | "use strict";
 | 
						
						
						
							|  |  | Object.defineProperty(exports, "__esModule", { value: true });
 | 
						
						
						
							|  |  | exports.ServerHeartbeatFailedEvent = exports.ServerHeartbeatSucceededEvent = exports.ServerHeartbeatStartedEvent = exports.TopologyClosedEvent = exports.TopologyOpeningEvent = exports.TopologyDescriptionChangedEvent = exports.ServerClosedEvent = exports.ServerOpeningEvent = exports.ServerDescriptionChangedEvent = void 0;
 | 
						
						
						
							|  |  | /**
 | 
						
						
						
							|  |  |  * Emitted when server description changes, but does NOT include changes to the RTT.
 | 
						
						
						
							|  |  |  * @public
 | 
						
						
						
							|  |  |  * @category Event
 | 
						
						
						
							|  |  |  */
 | 
						
						
						
							|  |  | class ServerDescriptionChangedEvent {
 | 
						
						
						
							|  |  |     /** @internal */
 | 
						
						
						
							|  |  |     constructor(topologyId, address, previousDescription, newDescription) {
 | 
						
						
						
							|  |  |         this.topologyId = topologyId;
 | 
						
						
						
							|  |  |         this.address = address;
 | 
						
						
						
							|  |  |         this.previousDescription = previousDescription;
 | 
						
						
						
							|  |  |         this.newDescription = newDescription;
 | 
						
						
						
							|  |  |     }
 | 
						
						
						
							|  |  | }
 | 
						
						
						
							|  |  | exports.ServerDescriptionChangedEvent = ServerDescriptionChangedEvent;
 | 
						
						
						
							|  |  | /**
 | 
						
						
						
							|  |  |  * Emitted when server is initialized.
 | 
						
						
						
							|  |  |  * @public
 | 
						
						
						
							|  |  |  * @category Event
 | 
						
						
						
							|  |  |  */
 | 
						
						
						
							|  |  | class ServerOpeningEvent {
 | 
						
						
						
							|  |  |     /** @internal */
 | 
						
						
						
							|  |  |     constructor(topologyId, address) {
 | 
						
						
						
							|  |  |         this.topologyId = topologyId;
 | 
						
						
						
							|  |  |         this.address = address;
 | 
						
						
						
							|  |  |     }
 | 
						
						
						
							|  |  | }
 | 
						
						
						
							|  |  | exports.ServerOpeningEvent = ServerOpeningEvent;
 | 
						
						
						
							|  |  | /**
 | 
						
						
						
							|  |  |  * Emitted when server is closed.
 | 
						
						
						
							|  |  |  * @public
 | 
						
						
						
							|  |  |  * @category Event
 | 
						
						
						
							|  |  |  */
 | 
						
						
						
							|  |  | class ServerClosedEvent {
 | 
						
						
						
							|  |  |     /** @internal */
 | 
						
						
						
							|  |  |     constructor(topologyId, address) {
 | 
						
						
						
							|  |  |         this.topologyId = topologyId;
 | 
						
						
						
							|  |  |         this.address = address;
 | 
						
						
						
							|  |  |     }
 | 
						
						
						
							|  |  | }
 | 
						
						
						
							|  |  | exports.ServerClosedEvent = ServerClosedEvent;
 | 
						
						
						
							|  |  | /**
 | 
						
						
						
							|  |  |  * Emitted when topology description changes.
 | 
						
						
						
							|  |  |  * @public
 | 
						
						
						
							|  |  |  * @category Event
 | 
						
						
						
							|  |  |  */
 | 
						
						
						
							|  |  | class TopologyDescriptionChangedEvent {
 | 
						
						
						
							|  |  |     /** @internal */
 | 
						
						
						
							|  |  |     constructor(topologyId, previousDescription, newDescription) {
 | 
						
						
						
							|  |  |         this.topologyId = topologyId;
 | 
						
						
						
							|  |  |         this.previousDescription = previousDescription;
 | 
						
						
						
							|  |  |         this.newDescription = newDescription;
 | 
						
						
						
							|  |  |     }
 | 
						
						
						
							|  |  | }
 | 
						
						
						
							|  |  | exports.TopologyDescriptionChangedEvent = TopologyDescriptionChangedEvent;
 | 
						
						
						
							|  |  | /**
 | 
						
						
						
							|  |  |  * Emitted when topology is initialized.
 | 
						
						
						
							|  |  |  * @public
 | 
						
						
						
							|  |  |  * @category Event
 | 
						
						
						
							|  |  |  */
 | 
						
						
						
							|  |  | class TopologyOpeningEvent {
 | 
						
						
						
							|  |  |     /** @internal */
 | 
						
						
						
							|  |  |     constructor(topologyId) {
 | 
						
						
						
							|  |  |         this.topologyId = topologyId;
 | 
						
						
						
							|  |  |     }
 | 
						
						
						
							|  |  | }
 | 
						
						
						
							|  |  | exports.TopologyOpeningEvent = TopologyOpeningEvent;
 | 
						
						
						
							|  |  | /**
 | 
						
						
						
							|  |  |  * Emitted when topology is closed.
 | 
						
						
						
							|  |  |  * @public
 | 
						
						
						
							|  |  |  * @category Event
 | 
						
						
						
							|  |  |  */
 | 
						
						
						
							|  |  | class TopologyClosedEvent {
 | 
						
						
						
							|  |  |     /** @internal */
 | 
						
						
						
							|  |  |     constructor(topologyId) {
 | 
						
						
						
							|  |  |         this.topologyId = topologyId;
 | 
						
						
						
							|  |  |     }
 | 
						
						
						
							|  |  | }
 | 
						
						
						
							|  |  | exports.TopologyClosedEvent = TopologyClosedEvent;
 | 
						
						
						
							|  |  | /**
 | 
						
						
						
							|  |  |  * Emitted when the server monitor’s hello command is started - immediately before
 | 
						
						
						
							|  |  |  * the hello command is serialized into raw BSON and written to the socket.
 | 
						
						
						
							|  |  |  *
 | 
						
						
						
							|  |  |  * @public
 | 
						
						
						
							|  |  |  * @category Event
 | 
						
						
						
							|  |  |  */
 | 
						
						
						
							|  |  | class ServerHeartbeatStartedEvent {
 | 
						
						
						
							|  |  |     /** @internal */
 | 
						
						
						
							|  |  |     constructor(connectionId) {
 | 
						
						
						
							|  |  |         this.connectionId = connectionId;
 | 
						
						
						
							|  |  |     }
 | 
						
						
						
							|  |  | }
 | 
						
						
						
							|  |  | exports.ServerHeartbeatStartedEvent = ServerHeartbeatStartedEvent;
 | 
						
						
						
							|  |  | /**
 | 
						
						
						
							|  |  |  * Emitted when the server monitor’s hello succeeds.
 | 
						
						
						
							|  |  |  * @public
 | 
						
						
						
							|  |  |  * @category Event
 | 
						
						
						
							|  |  |  */
 | 
						
						
						
							|  |  | class ServerHeartbeatSucceededEvent {
 | 
						
						
						
							|  |  |     /** @internal */
 | 
						
						
						
							|  |  |     constructor(connectionId, duration, reply) {
 | 
						
						
						
							|  |  |         this.connectionId = connectionId;
 | 
						
						
						
							|  |  |         this.duration = duration;
 | 
						
						
						
							|  |  |         this.reply = reply ?? {};
 | 
						
						
						
							|  |  |     }
 | 
						
						
						
							|  |  | }
 | 
						
						
						
							|  |  | exports.ServerHeartbeatSucceededEvent = ServerHeartbeatSucceededEvent;
 | 
						
						
						
							|  |  | /**
 | 
						
						
						
							|  |  |  * Emitted when the server monitor’s hello fails, either with an “ok: 0” or a socket exception.
 | 
						
						
						
							|  |  |  * @public
 | 
						
						
						
							|  |  |  * @category Event
 | 
						
						
						
							|  |  |  */
 | 
						
						
						
							|  |  | class ServerHeartbeatFailedEvent {
 | 
						
						
						
							|  |  |     /** @internal */
 | 
						
						
						
							|  |  |     constructor(connectionId, duration, failure) {
 | 
						
						
						
							|  |  |         this.connectionId = connectionId;
 | 
						
						
						
							|  |  |         this.duration = duration;
 | 
						
						
						
							|  |  |         this.failure = failure;
 | 
						
						
						
							|  |  |     }
 | 
						
						
						
							|  |  | }
 | 
						
						
						
							|  |  | exports.ServerHeartbeatFailedEvent = ServerHeartbeatFailedEvent;
 | 
						
						
						
							|  |  | //# sourceMappingURL=events.js.map
 |