import Foundation import Postbox // Incuding at least one Objective-C class in a swift file ensures that it doesn't get stripped by the linker private final class LinkHelperClass: NSObject { } public extension TelegramGroup { enum Permission { case sendSomething } func hasPermission(_ permission: Permission) -> Bool { switch permission { case .sendSomething: switch self.role { case .creator, .admin: return true default: break } let flags: TelegramChatBannedRightsFlags = [ .banSendText, .banSendInstantVideos, .banSendVoice, .banSendPhotos, .banSendVideos, .banSendStickers, .banSendPolls, .banSendFiles, .banSendInline, .banSendMusic ] if let defaultBannedRights = self.defaultBannedRights, defaultBannedRights.flags.intersection(flags) == flags { return false } return true } } func hasBannedPermission(_ rights: TelegramChatBannedRightsFlags) -> Bool { switch self.role { case .creator, .admin: return false default: if let bannedRights = self.defaultBannedRights { return bannedRights.flags.contains(rights) } else { return false } } } }