import type { BotConfig } from "../config/config.js"; import type { SlackAccountConfig } from "../config/types.slack.js"; import { type SlackTokenSource } from "./accounts.js"; export type SlackCredentialStatus = "available" | "configured_unavailable" | "missing"; export type InspectedSlackAccount = { accountId: string; enabled: boolean; name?: string; mode?: SlackAccountConfig["mode"]; botToken?: string; appToken?: string; signingSecret?: string; userToken?: string; botTokenSource: SlackTokenSource; appTokenSource: SlackTokenSource; signingSecretSource?: SlackTokenSource; userTokenSource: SlackTokenSource; botTokenStatus: SlackCredentialStatus; appTokenStatus: SlackCredentialStatus; signingSecretStatus?: SlackCredentialStatus; userTokenStatus: SlackCredentialStatus; configured: boolean; config: SlackAccountConfig; groupPolicy?: SlackAccountConfig["groupPolicy"]; textChunkLimit?: SlackAccountConfig["textChunkLimit"]; mediaMaxMb?: SlackAccountConfig["mediaMaxMb"]; reactionNotifications?: SlackAccountConfig["reactionNotifications"]; reactionAllowlist?: SlackAccountConfig["reactionAllowlist"]; replyToMode?: SlackAccountConfig["replyToMode"]; replyToModeByChatType?: SlackAccountConfig["replyToModeByChatType"]; actions?: SlackAccountConfig["actions"]; slashCommand?: SlackAccountConfig["slashCommand"]; dm?: SlackAccountConfig["dm"]; channels?: SlackAccountConfig["channels"]; }; export declare function inspectSlackAccount(params: { cfg: BotConfig; accountId?: string | null; envBotToken?: string | null; envAppToken?: string | null; envUserToken?: string | null; }): InspectedSlackAccount;