package socketModeClient import ( "github.com/slack-go/slack" "github.com/slack-go/slack/socketmode" ) type ISocketModeClientWrapper interface { PostMessage(channelID string, options ...slack.MsgOption) (string, string, error) UpdateMessage(channelID string, timestamp string, options ...slack.MsgOption) (string, string, string, error) UploadFile(params slack.FileUploadParameters) (*slack.File, error) AddBookmark(channelID string, params slack.AddBookmarkParameters) (slack.Bookmark, error) PostEphemeral(channelID string, userID string, options ...slack.MsgOption) (string, error) GetUsersInfo(users ...string) (*[]slack.User, error) GetUserByEmail(email string) (*slack.User, error) CreateConversation(params slack.CreateConversationParams) (*slack.Channel, error) GetConversationInfo(input *slack.GetConversationInfoInput) (*slack.Channel, error) GetConversationHistory(params *slack.GetConversationHistoryParameters) (*slack.GetConversationHistoryResponse, error) GetConversationReplies(params *slack.GetConversationRepliesParameters) ([]slack.Message, bool, string, error) SetTopicOfConversation(channelID string, topic string) (*slack.Channel, error) GetUsersInConversation(params *slack.GetUsersInConversationParameters) ([]string, string, error) InviteUsersToConversation(channelID string, users ...string) (*slack.Channel, error) OpenView(triggerID string, view slack.ModalViewRequest) (*slack.ViewResponse, error) AckRequest(request socketmode.Request, payload ...interface{}) GetClient() *socketmode.Client }