import type { SlackActivityItem, SlackBookmark, SlackChannel, SlackChannelSection, SlackDM, SlackDraft, SlackFile, SlackMessage, SlackPin, SlackReminder, SlackSavedItem, SlackScheduledMessage, SlackSearchResult, SlackThreadView, SlackUnreadCounts, SlackUser, SlackUserProfile, SlackUsergroup } from './types.js'; export declare class SlackError extends Error { code: string; constructor(message: string, code: string); } export declare class SlackClient { private client; private token; private cookie; login(credentials?: { token: string; cookie: string; }): Promise; private ensureAuth; private withRetry; private sleep; private checkResponse; testAuth(): Promise<{ user_id: string; team_id: string; user?: string; team?: string; }>; listChannels(): Promise; listDMs(options?: { includeArchived?: boolean; }): Promise; getChannel(id: string): Promise; resolveChannel(channel: string): Promise; sendMessage(channel: string, text: string, threadTs?: string): Promise; getMessages(channel: string, limitOrOptions?: number | { limit?: number; oldest?: string; latest?: string; }): Promise; getMessage(channel: string, ts: string): Promise; updateMessage(channel: string, ts: string, text: string): Promise; deleteMessage(channel: string, ts: string): Promise; addReaction(channel: string, ts: string, emoji: string): Promise; removeReaction(channel: string, ts: string, emoji: string): Promise; listUsers(): Promise; listChannelMembers(channel: string): Promise; getUser(id: string): Promise; uploadFile(channels: string[], file: Buffer, filename: string): Promise; listFiles(channel?: string): Promise; getFileInfo(fileId: string): Promise; downloadFile(fileId: string): Promise<{ buffer: Buffer; file: SlackFile; }>; searchMessages(query: string, options?: { sort?: 'score' | 'timestamp'; sortDir?: 'asc' | 'desc'; count?: number; }): Promise; getThreadReplies(channel: string, threadTs: string, options?: { limit?: number; oldest?: string; latest?: string; cursor?: string; }): Promise<{ messages: SlackMessage[]; has_more: boolean; next_cursor?: string; }>; getUnreadCounts(): Promise; getThreadView(channelId: string, ts: string): Promise; markRead(channelId: string, ts: string): Promise; getActivityFeed(options?: { types?: string; mode?: string; limit?: number; }): Promise; getSavedItems(cursor?: string): Promise<{ items: SlackSavedItem[]; has_more: boolean; next_cursor?: string; }>; getChannelSections(): Promise; openConversation(users: string): Promise<{ channel_id: string; already_open: boolean; }>; getDrafts(cursor?: string): Promise<{ drafts: SlackDraft[]; next_cursor?: string; }>; rtmConnect(): Promise<{ url: string; cookie: string; self: { id: string; }; team: { id: string; }; }>; pinMessage(channel: string, ts: string): Promise; unpinMessage(channel: string, ts: string): Promise; listPins(channel: string): Promise; addBookmark(channel: string, title: string, link: string, options?: { type?: string; emoji?: string; }): Promise; editBookmark(channel: string, bookmarkId: string, options: Partial>): Promise; removeBookmark(channel: string, bookmarkId: string): Promise; listBookmarks(channel: string): Promise; scheduleMessage(channel: string, text: string, postAt: number, threadTs?: string): Promise; listScheduledMessages(channel?: string): Promise; deleteScheduledMessage(channel: string, scheduledMessageId: string): Promise; createChannel(name: string, isPrivate?: boolean): Promise; archiveChannel(channel: string): Promise; setChannelTopic(channel: string, topic: string): Promise<{ topic: string; }>; setChannelPurpose(channel: string, purpose: string): Promise<{ purpose: string; }>; inviteToChannel(channel: string, users: string): Promise; joinChannel(channel: string): Promise; leaveChannel(channel: string): Promise; lookupUserByEmail(email: string): Promise; getUserProfile(userId: string): Promise; setUserProfile(profile: SlackUserProfile): Promise; postEphemeral(channel: string, user: string, text: string): Promise; getPermalink(channel: string, ts: string): Promise; addReminder(text: string, time: number, options?: { user?: string; }): Promise; listReminders(): Promise; completeReminder(reminderId: string): Promise; deleteReminder(reminderId: string): Promise; deleteFile(fileId: string): Promise; listEmoji(): Promise>; listUsergroups(options?: { includeDisabled?: boolean; includeUsers?: boolean; includeCount?: boolean; }): Promise; createUsergroup(name: string, options?: { handle?: string; description?: string; channels?: string[]; }): Promise; updateUsergroup(usergroupId: string, options: { name?: string; handle?: string; description?: string; channels?: string[]; }): Promise; disableUsergroup(usergroupId: string): Promise; enableUsergroup(usergroupId: string): Promise; listUsergroupMembers(usergroupId: string, options?: { includeDisabled?: boolean; }): Promise; updateUsergroupMembers(usergroupId: string, users: string[]): Promise; } //# sourceMappingURL=client.d.ts.map