// Copyright © 2023 OpenIM. All rights reserved.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
//     http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.

package callbackstruct

const CallbackBeforeInviteJoinGroupCommand = "callbackBeforeInviteJoinGroupCommand"
const CallbackAfterJoinGroupCommand = "callbackAfterJoinGroupCommand"
const CallbackAfterSetGroupInfoCommand = "callbackAfterSetGroupInfoCommand"
const CallbackBeforeSetGroupInfoCommand = "callbackBeforeSetGroupInfoCommand"

const CallbackAfterRevokeMsgCommand = "callbackBeforeAfterMsgCommand"
const CallbackBeforeAddBlackCommand = "callbackBeforeAddBlackCommand"
const CallbackAfterAddFriendCommand = "callbackAfterAddFriendCommand"
const CallbackBeforeAddFriendAgreeCommand = "callbackBeforeAddFriendAgreeCommand"

const CallbackAfterDeleteFriendCommand = "callbackAfterDeleteFriendCommand"
const CallbackBeforeImportFriendsCommand = "callbackBeforeImportFriendsCommand"
const CallbackAfterImportFriendsCommand = "callbackAfterImportFriendsCommand"
const CallbackAfterRemoveBlackCommand = "callbackAfterRemoveBlackCommand"

const (
	CallbackQuitGroupCommand                = "callbackQuitGroupCommand"
	CallbackKillGroupCommand                = "callbackKillGroupCommand"
	CallbackDisMissGroupCommand             = "callbackDisMissGroupCommand"
	CallbackBeforeJoinGroupCommand          = "callbackBeforeJoinGroupCommand"
	CallbackGroupMsgReadCommand             = "callbackGroupMsgReadCommand"
	CallbackMsgModifyCommand                = "callbackMsgModifyCommand"
	CallbackAfterUpdateUserInfoCommand      = "callbackAfterUpdateUserInfoCommand"
	CallbackAfterUpdateUserInfoExCommand    = "callbackAfterUpdateUserInfoExCommand"
	CallbackBeforeUpdateUserInfoExCommand   = "callbackBeforeUpdateUserInfoExCommand"
	CallbackBeforeUserRegisterCommand       = "callbackBeforeUserRegisterCommand"
	CallbackAfterUserRegisterCommand        = "callbackAfterUserRegisterCommand"
	CallbackAfterTransferGroupOwner         = "callbackAfterTransferGroupOwner"
	CallbackBeforeSetFriendRemark           = "callbackBeforeSetFriendRemark"
	CallbackAfterSetFriendRemark            = "callbackAfterSetFriendRemark"
	CallbackSingleMsgRead                   = "callbackSingleMsgRead"
	CallbackBeforeSendSingleMsgCommand      = "callbackBeforeSendSingleMsgCommand"
	CallbackAfterSendSingleMsgCommand       = "callbackAfterSendSingleMsgCommand"
	CallbackBeforeSendGroupMsgCommand       = "callbackBeforeSendGroupMsgCommand"
	CallbackAfterSendGroupMsgCommand        = "callbackAfterSendGroupMsgCommand"
	CallbackUserOnlineCommand               = "callbackUserOnlineCommand"
	CallbackUserOfflineCommand              = "callbackUserOfflineCommand"
	CallbackUserKickOffCommand              = "callbackUserKickOffCommand"
	CallbackOfflinePushCommand              = "callbackOfflinePushCommand"
	CallbackOnlinePushCommand               = "callbackOnlinePushCommand"
	CallbackSuperGroupOnlinePushCommand     = "callbackSuperGroupOnlinePushCommand"
	CallbackBeforeAddFriendCommand          = "callbackBeforeAddFriendCommand"
	CallbackBeforeUpdateUserInfoCommand     = "callbackBeforeUpdateUserInfoCommand"
	CallbackBeforeCreateGroupCommand        = "callbackBeforeCreateGroupCommand"
	CallbackAfterCreateGroupCommand         = "callbackAfterCreateGroupCommand"
	CallbackBeforeMemberJoinGroupCommand    = "callbackBeforeMemberJoinGroupCommand"
	CallbackBeforeSetGroupMemberInfoCommand = "callbackBeforeSetGroupMemberInfoCommand"
	CallbackAfterSetGroupMemberInfoCommand  = "callbackAfterSetGroupMemberInfoCommand"
)