tgsnake
Version:
Telegram MTProto framework for nodejs.
44 lines (43 loc) • 1.8 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.ChatPermission = void 0;
const TL_js_1 = require("../TL.js");
class ChatPermission extends TL_js_1.TLObject {
canSendMessages;
canSendMediaMessages;
canSendPolls;
canSendOtherMessages;
canAddWebPagePreview;
canChangeInfo;
canInviteUsers;
canPinMessages;
constructor({ canSendMessages, canSendMediaMessages, canSendPolls, canSendOtherMessages, canAddWebPagePreview, canChangeInfo, canInviteUsers, canPinMessages, }, client) {
super(client);
this.canSendMessages = canSendMessages;
this.canSendMediaMessages = canSendMediaMessages;
this.canSendPolls = canSendPolls;
this.canSendOtherMessages = canSendOtherMessages;
this.canAddWebPagePreview = canAddWebPagePreview;
this.canChangeInfo = canChangeInfo;
this.canInviteUsers = canInviteUsers;
this.canPinMessages = canPinMessages;
}
static parse(client, bannedPermission) {
if (!bannedPermission)
return;
return new ChatPermission({
canSendMessages: !bannedPermission.sendMessages,
canSendMediaMessages: !bannedPermission.sendMedia,
canSendPolls: !bannedPermission.sendPolls,
canSendOtherMessages: !bannedPermission.sendStickers &&
!bannedPermission.sendGifs &&
!bannedPermission.sendGames &&
!bannedPermission.sendInline,
canAddWebPagePreview: !bannedPermission.embedLinks,
canChangeInfo: !bannedPermission.changeInfo,
canInviteUsers: !bannedPermission.inviteUsers,
canPinMessages: !bannedPermission.pinMessages,
}, client);
}
}
exports.ChatPermission = ChatPermission;