/** * baileys-antiban — Anti-ban middleware for Baileys * * Wraps a Baileys socket with human-like messaging patterns * to minimize the risk of WhatsApp banning your number. * * @author Kobus Wentzel * @license MIT */ export { AntiBan, type AntiBanConfig, type AntiBanStats, type SendDecision } from './antiban.js'; export { RateLimiter, type RateLimiterConfig, type RateLimiterStats } from './rateLimiter.js'; export { WarmUp, type WarmUpConfig, type WarmUpState, type WarmUpStatus } from './warmup.js'; export { HealthMonitor, type HealthStatus, type HealthMonitorConfig, type BanRiskLevel } from './health.js'; export { TimelockGuard, type TimelockGuardConfig, type TimelockState } from './timelockGuard.js'; export { ReplyRatioGuard, type ReplyRatioConfig, type ReplyRatioStats } from './replyRatio.js'; export { ContactGraphWarmer, type ContactGraphConfig, type ContactGraphStats, type ContactState } from './contactGraph.js'; export { PresenceChoreographer, type PresenceChoreographerConfig, type PresenceChoreographerStats, type TypingPlanStep, type CircadianProfile, getCircadianMultiplier, } from './presenceChoreographer.js'; export { RetryReasonTracker, type RetryTrackerConfig, type RetryStats, type RetryReason } from './retryTracker.js'; export { PostReconnectThrottle, type ReconnectThrottleConfig, type ReconnectThrottleStats } from './reconnectThrottle.js'; export { LidResolver, type LidResolverConfig, type LidResolverStats, type LidMapping } from './lidResolver.js'; export { JidCanonicalizer, type JidCanonicalizerConfig, type JidCanonicalizerStats } from './jidCanonicalizer.js'; export { SessionHealthMonitor, type SessionHealthStats, type SessionHealthConfig, wrapWithSessionStability, type SessionStabilityConfig, classifyDisconnect, type DisconnectClassification, type DisconnectCategory, DeafSessionDetector, type DeafSessionConfig, type DeafSessionInfo, } from './sessionStability.js'; export { LidFirstResolver, createLidFirstResolver, type LidPhoneMapping, } from './lidFirstResolver.js'; export { MessageRetryReason, MAC_ERROR_CODES, parseRetryReason, isMacError, getRetryReasonDescription, } from './retryReason.js'; export { wrapSocket, wrapSocketWithFingerprint, type WrappedSocket, type WrapSocketOptions } from './wrapper.js'; export { MessageQueue, type QueuedMessage, type MessageQueueConfig } from './messageQueue.js'; export { ContentVariator, type VariatorConfig } from './contentVariator.js'; export { WebhookAlerts, type WebhookConfig } from './webhooks.js'; export { Scheduler, type SchedulerConfig } from './scheduler.js'; export { type StateAdapter, FileStateAdapter } from './stateAdapter.js'; export { resolveConfig, PRESETS, type AntiBanInput, type ResolvedConfig, type PresetName } from './presets.js'; export { StateManager, type PersistedState } from './persist.js'; export { isGroup, isNewsletter, isBroadcast, shouldUseGroupProfile, applyGroupMultiplier, type RateLimits } from './profiles.js'; export { messageRecovery, type MessageRecoveryConfig, type MessageRecoveryStats, type MessageRecoveryHandle } from './messageRecovery.js'; export { generateFingerprint, applyFingerprint, type DeviceFingerprint, type DeviceFingerprintConfig, } from './deviceFingerprint.js'; export { credsSnapshot, type CredsSnapshot, type CredsSnapshotConfig, } from './credsSnapshot.js'; export { readReceiptVariance, type ReadReceiptVariance, type ReadReceiptVarianceConfig, } from './readReceiptVariance.js'; export { proxyRotator, type ProxyEndpoint, type ProxyRotatorConfig, type ProxyRotatorStats, type ProxyRotatorHandle, } from './proxyRotator.js'; export { generateSessionFingerprint, applySessionFingerprint, getMessageSendJitter, getTypingJitter, getRetryJitter, getVoiceNoteMetadata, getBatteryState, createStealthFingerprint, type SessionFingerprint, type SessionFingerprintConfig, } from './sessionFingerprint.js'; export { getStealthSocketConfig, rampPresenceAfterConnect, STEALTH_BROWSER_POOL, AbortError, type BrowserTuple, type StealthSocketConfig, type GetStealthSocketConfigOptions, type RampPresenceOptions, type PresenceCapableSocket, } from './stealthConnect.js'; export { GroupOperationGuard, classifyGroupOpError, extractPrivacyBlock, GROUP_OP_ERRORS, type GroupOperation, type GroupOpLimit, type GroupOperationGuardConfig, type GroupOpResult, type GroupOperationGuardStats, type GroupOpErrorCode, type PrivacyBlockResult, } from './groupOperationGuard.js'; export { LegitimacySignalInjector, type LegitimacySignalInjectorConfig, type LegitimacySignalStats, type TypoResult, type TypingPause, } from './legitimacySignalInjector.js'; export { BanRecoveryOrchestrator, type BanEventType, type RecoveryPhase, type RecoveryPlan, type BanRecoveryConfig, type RecoveryState, type RecoveryStatus, } from './banRecoveryOrchestrator.js'; export { DeliveryTracker, type DeliveryTrackerConfig, type DeliveryTrackerStats } from './deliveryTracker.js'; export { InstanceCoordinator, type InstanceCoordinatorConfig, type InstanceCoordinatorStats } from './instanceCoordinator.js'; export { JidCircuitBreaker, createJidCircuitBreaker, type JidCircuitBreakerConfig, type CircuitState, type JidCircuitBreakerStats } from './jidCircuitBreaker.js'; export { createFleetEventStore, createMySQLEventStoreBackend, createInMemoryEventStoreBackend, type FleetEventType, type FleetEvent, type FleetEventStoreConfig, type FleetEventStoreHandle, type EventStoreBackend } from './fleetEventStore.js'; export { HumanEntropyService, createHumanEntropyService, type HumanEntropyConfig, type HumanEntropyStats } from './humanEntropy.js'; export { MessageTypeRegistry, type MessageTypeDefinition, type MessageProvenance, type MessageTypeStats, type MessageTypeWarning, type MessageTypeRegistryState } from './messageTypeRegistry.js'; export { exportAntibanState, importAntibanState, type AntibanSnapshot, type RateLimiterState, type TimelockGuardState, type CircuitState as CircuitStateExport, type DisconnectEvent } from './stateExport.js'; export { TopologyThrottler, type TopologyThrottlerConfig, type ContactRisk, type ContactRiskAssessment, type ContactRiskConfig, type TopologyThrottlerState } from './topologyThrottler.js'; export { ReputationVoucher, type ReputationVoucherConfig, type VouchTarget, type VouchingAccount, type VouchConversation, type ReputationVoucherState } from './reputationVoucher.js'; export { createConsoleLogger, exportPrometheusMetrics, createMetricsHandler, createPeriodicExporter, type AntiBanLogger, type PeriodicExporterConfig, type PeriodicExporterHandle, } from './observability.js';