package config // AuthCfg groups access control, authentication, mute, rate-limit, and IP // policy fields. Pass this slice to domain constructors that only need auth // configuration (e.g. access control checks, ACL services). type AuthCfg struct { AuthRequired bool AuthToWrite bool PrivilegedOpen bool NIP70Enforce bool MarmotOpen bool NIP46BypassAuth bool ACLMode string MuteBlacklist string Admins []string Owners []string FreeWriteLimit int FreeWriteWindow int IPWhitelist []string IPBlacklist []string FollowListFreqSec int FollowsThrottle bool FollowsThrottleIncrMs int FollowsThrottleMaxMs int SocialThrottleD2IncrMs int SocialThrottleD2MaxMs int SocialThrottleD3IncrMs int SocialThrottleD3MaxMs int SocialThrottleOutsiderIncrMs int SocialThrottleOutsiderMaxMs int SocialWoTMaxDepth int SocialWoTRefreshSec int GrapeVineEnabled bool GrapeVineMaxDepth int GrapeVineMaxCycles int GrapeVineAttenuation float64 GrapeVineRigor float64 GrapeVineFollowConf float64 GrapeVineObservers []string GrapeVineRefreshSec int GrapeVineAutoWhitelist bool GrapeVineWhitelistThresh float64 GrapeVineWhitelistRefSec int }