import { ServiceBubble } from '../../../types/service-bubble-class.js'; import type { BubbleContext } from '../../../types/bubble.js'; import { CredentialType } from '@bubblelab/shared-schemas'; import { type DiscordParamsInput, type DiscordResult } from './discord.schema.js'; /** * Discord Service Bubble * * Comprehensive Discord integration for messaging, channel management, * threads, reactions, and guild operations via the Discord REST API (v10). */ export declare class DiscordBubble extends ServiceBubble> { static readonly type: "service"; static readonly service = "discord"; static readonly authType: "oauth"; static readonly bubbleName = "discord"; static readonly schema: import("zod").ZodDiscriminatedUnion<"operation", [import("zod").ZodObject<{ operation: import("zod").ZodLiteral<"send_message">; channel_id: import("zod").ZodString; content: import("zod").ZodOptional; embeds: import("zod").ZodOptional; description: import("zod").ZodOptional; url: import("zod").ZodOptional; color: import("zod").ZodOptional; fields: import("zod").ZodOptional; }, "strip", import("zod").ZodTypeAny, { value: string; name: string; inline?: boolean | undefined; }, { value: string; name: string; inline?: boolean | undefined; }>, "many">>; footer: import("zod").ZodOptional; }, "strip", import("zod").ZodTypeAny, { text: string; icon_url?: string | undefined; }, { text: string; icon_url?: string | undefined; }>>; thumbnail: import("zod").ZodOptional>; image: import("zod").ZodOptional>; author: import("zod").ZodOptional; icon_url: import("zod").ZodOptional; }, "strip", import("zod").ZodTypeAny, { name: string; url?: string | undefined; icon_url?: string | undefined; }, { name: string; url?: string | undefined; icon_url?: string | undefined; }>>; timestamp: import("zod").ZodOptional; }, "strip", import("zod").ZodTypeAny, { description?: string | undefined; title?: string | undefined; image?: { url: string; } | undefined; url?: string | undefined; fields?: { value: string; name: string; inline?: boolean | undefined; }[] | undefined; color?: number | undefined; footer?: { text: string; icon_url?: string | undefined; } | undefined; timestamp?: string | undefined; thumbnail?: { url: string; } | undefined; author?: { name: string; url?: string | undefined; icon_url?: string | undefined; } | undefined; }, { description?: string | undefined; title?: string | undefined; image?: { url: string; } | undefined; url?: string | undefined; fields?: { value: string; name: string; inline?: boolean | undefined; }[] | undefined; color?: number | undefined; footer?: { text: string; icon_url?: string | undefined; } | undefined; timestamp?: string | undefined; thumbnail?: { url: string; } | undefined; author?: { name: string; url?: string | undefined; icon_url?: string | undefined; } | undefined; }>, "many">>; tts: import("zod").ZodDefault>; reply_to: import("zod").ZodOptional; credentials: import("zod").ZodOptional, import("zod").ZodString>>; }, "strip", import("zod").ZodTypeAny, { operation: "send_message"; channel_id: string; tts: boolean; credentials?: Partial> | undefined; content?: string | undefined; reply_to?: string | undefined; embeds?: { description?: string | undefined; title?: string | undefined; image?: { url: string; } | undefined; url?: string | undefined; fields?: { value: string; name: string; inline?: boolean | undefined; }[] | undefined; color?: number | undefined; footer?: { text: string; icon_url?: string | undefined; } | undefined; timestamp?: string | undefined; thumbnail?: { url: string; } | undefined; author?: { name: string; url?: string | undefined; icon_url?: string | undefined; } | undefined; }[] | undefined; }, { operation: "send_message"; channel_id: string; credentials?: Partial> | undefined; content?: string | undefined; reply_to?: string | undefined; embeds?: { description?: string | undefined; title?: string | undefined; image?: { url: string; } | undefined; url?: string | undefined; fields?: { value: string; name: string; inline?: boolean | undefined; }[] | undefined; color?: number | undefined; footer?: { text: string; icon_url?: string | undefined; } | undefined; timestamp?: string | undefined; thumbnail?: { url: string; } | undefined; author?: { name: string; url?: string | undefined; icon_url?: string | undefined; } | undefined; }[] | undefined; tts?: boolean | undefined; }>, import("zod").ZodObject<{ operation: import("zod").ZodLiteral<"list_messages">; channel_id: import("zod").ZodString; limit: import("zod").ZodDefault>; before: import("zod").ZodOptional; after: import("zod").ZodOptional; credentials: import("zod").ZodOptional, import("zod").ZodString>>; }, "strip", import("zod").ZodTypeAny, { operation: "list_messages"; limit: number; channel_id: string; credentials?: Partial> | undefined; after?: string | undefined; before?: string | undefined; }, { operation: "list_messages"; channel_id: string; credentials?: Partial> | undefined; limit?: number | undefined; after?: string | undefined; before?: string | undefined; }>, import("zod").ZodObject<{ operation: import("zod").ZodLiteral<"edit_message">; channel_id: import("zod").ZodString; message_id: import("zod").ZodString; content: import("zod").ZodOptional; embeds: import("zod").ZodOptional; description: import("zod").ZodOptional; url: import("zod").ZodOptional; color: import("zod").ZodOptional; fields: import("zod").ZodOptional; }, "strip", import("zod").ZodTypeAny, { value: string; name: string; inline?: boolean | undefined; }, { value: string; name: string; inline?: boolean | undefined; }>, "many">>; footer: import("zod").ZodOptional; }, "strip", import("zod").ZodTypeAny, { text: string; icon_url?: string | undefined; }, { text: string; icon_url?: string | undefined; }>>; thumbnail: import("zod").ZodOptional>; image: import("zod").ZodOptional>; author: import("zod").ZodOptional; icon_url: import("zod").ZodOptional; }, "strip", import("zod").ZodTypeAny, { name: string; url?: string | undefined; icon_url?: string | undefined; }, { name: string; url?: string | undefined; icon_url?: string | undefined; }>>; timestamp: import("zod").ZodOptional; }, "strip", import("zod").ZodTypeAny, { description?: string | undefined; title?: string | undefined; image?: { url: string; } | undefined; url?: string | undefined; fields?: { value: string; name: string; inline?: boolean | undefined; }[] | undefined; color?: number | undefined; footer?: { text: string; icon_url?: string | undefined; } | undefined; timestamp?: string | undefined; thumbnail?: { url: string; } | undefined; author?: { name: string; url?: string | undefined; icon_url?: string | undefined; } | undefined; }, { description?: string | undefined; title?: string | undefined; image?: { url: string; } | undefined; url?: string | undefined; fields?: { value: string; name: string; inline?: boolean | undefined; }[] | undefined; color?: number | undefined; footer?: { text: string; icon_url?: string | undefined; } | undefined; timestamp?: string | undefined; thumbnail?: { url: string; } | undefined; author?: { name: string; url?: string | undefined; icon_url?: string | undefined; } | undefined; }>, "many">>; credentials: import("zod").ZodOptional, import("zod").ZodString>>; }, "strip", import("zod").ZodTypeAny, { operation: "edit_message"; channel_id: string; message_id: string; credentials?: Partial> | undefined; content?: string | undefined; embeds?: { description?: string | undefined; title?: string | undefined; image?: { url: string; } | undefined; url?: string | undefined; fields?: { value: string; name: string; inline?: boolean | undefined; }[] | undefined; color?: number | undefined; footer?: { text: string; icon_url?: string | undefined; } | undefined; timestamp?: string | undefined; thumbnail?: { url: string; } | undefined; author?: { name: string; url?: string | undefined; icon_url?: string | undefined; } | undefined; }[] | undefined; }, { operation: "edit_message"; channel_id: string; message_id: string; credentials?: Partial> | undefined; content?: string | undefined; embeds?: { description?: string | undefined; title?: string | undefined; image?: { url: string; } | undefined; url?: string | undefined; fields?: { value: string; name: string; inline?: boolean | undefined; }[] | undefined; color?: number | undefined; footer?: { text: string; icon_url?: string | undefined; } | undefined; timestamp?: string | undefined; thumbnail?: { url: string; } | undefined; author?: { name: string; url?: string | undefined; icon_url?: string | undefined; } | undefined; }[] | undefined; }>, import("zod").ZodObject<{ operation: import("zod").ZodLiteral<"delete_message">; channel_id: import("zod").ZodString; message_id: import("zod").ZodString; credentials: import("zod").ZodOptional, import("zod").ZodString>>; }, "strip", import("zod").ZodTypeAny, { operation: "delete_message"; channel_id: string; message_id: string; credentials?: Partial> | undefined; }, { operation: "delete_message"; channel_id: string; message_id: string; credentials?: Partial> | undefined; }>, import("zod").ZodObject<{ operation: import("zod").ZodLiteral<"pin_message">; channel_id: import("zod").ZodString; message_id: import("zod").ZodString; credentials: import("zod").ZodOptional, import("zod").ZodString>>; }, "strip", import("zod").ZodTypeAny, { operation: "pin_message"; channel_id: string; message_id: string; credentials?: Partial> | undefined; }, { operation: "pin_message"; channel_id: string; message_id: string; credentials?: Partial> | undefined; }>, import("zod").ZodObject<{ operation: import("zod").ZodLiteral<"add_reaction">; channel_id: import("zod").ZodString; message_id: import("zod").ZodString; emoji: import("zod").ZodString; credentials: import("zod").ZodOptional, import("zod").ZodString>>; }, "strip", import("zod").ZodTypeAny, { emoji: string; operation: "add_reaction"; channel_id: string; message_id: string; credentials?: Partial> | undefined; }, { emoji: string; operation: "add_reaction"; channel_id: string; message_id: string; credentials?: Partial> | undefined; }>, import("zod").ZodObject<{ operation: import("zod").ZodLiteral<"list_channels">; guild_id: import("zod").ZodOptional; credentials: import("zod").ZodOptional, import("zod").ZodString>>; }, "strip", import("zod").ZodTypeAny, { operation: "list_channels"; credentials?: Partial> | undefined; guild_id?: string | undefined; }, { operation: "list_channels"; credentials?: Partial> | undefined; guild_id?: string | undefined; }>, import("zod").ZodObject<{ operation: import("zod").ZodLiteral<"create_channel">; guild_id: import("zod").ZodOptional; name: import("zod").ZodString; type: import("zod").ZodDefault>>; topic: import("zod").ZodOptional; parent_id: import("zod").ZodOptional; nsfw: import("zod").ZodOptional; credentials: import("zod").ZodOptional, import("zod").ZodString>>; }, "strip", import("zod").ZodTypeAny, { type: "text" | "category" | "voice" | "announcement" | "forum"; name: string; operation: "create_channel"; credentials?: Partial> | undefined; topic?: string | undefined; guild_id?: string | undefined; parent_id?: string | undefined; nsfw?: boolean | undefined; }, { name: string; operation: "create_channel"; type?: "text" | "category" | "voice" | "announcement" | "forum" | undefined; credentials?: Partial> | undefined; topic?: string | undefined; guild_id?: string | undefined; parent_id?: string | undefined; nsfw?: boolean | undefined; }>, import("zod").ZodObject<{ operation: import("zod").ZodLiteral<"delete_channel">; channel_id: import("zod").ZodString; credentials: import("zod").ZodOptional, import("zod").ZodString>>; }, "strip", import("zod").ZodTypeAny, { operation: "delete_channel"; channel_id: string; credentials?: Partial> | undefined; }, { operation: "delete_channel"; channel_id: string; credentials?: Partial> | undefined; }>, import("zod").ZodObject<{ operation: import("zod").ZodLiteral<"create_thread">; channel_id: import("zod").ZodString; name: import("zod").ZodString; message_id: import("zod").ZodOptional; auto_archive_duration: import("zod").ZodDefault>>; credentials: import("zod").ZodOptional, import("zod").ZodString>>; }, "strip", import("zod").ZodTypeAny, { name: string; operation: "create_thread"; channel_id: string; auto_archive_duration: "60" | "1440" | "4320" | "10080"; credentials?: Partial> | undefined; message_id?: string | undefined; }, { name: string; operation: "create_thread"; channel_id: string; credentials?: Partial> | undefined; message_id?: string | undefined; auto_archive_duration?: "60" | "1440" | "4320" | "10080" | undefined; }>, import("zod").ZodObject<{ operation: import("zod").ZodLiteral<"list_threads">; guild_id: import("zod").ZodOptional; credentials: import("zod").ZodOptional, import("zod").ZodString>>; }, "strip", import("zod").ZodTypeAny, { operation: "list_threads"; credentials?: Partial> | undefined; guild_id?: string | undefined; }, { operation: "list_threads"; credentials?: Partial> | undefined; guild_id?: string | undefined; }>, import("zod").ZodObject<{ operation: import("zod").ZodLiteral<"list_members">; guild_id: import("zod").ZodOptional; limit: import("zod").ZodDefault>; after: import("zod").ZodOptional; credentials: import("zod").ZodOptional, import("zod").ZodString>>; }, "strip", import("zod").ZodTypeAny, { operation: "list_members"; limit: number; credentials?: Partial> | undefined; after?: string | undefined; guild_id?: string | undefined; }, { operation: "list_members"; credentials?: Partial> | undefined; limit?: number | undefined; after?: string | undefined; guild_id?: string | undefined; }>, import("zod").ZodObject<{ operation: import("zod").ZodLiteral<"get_guild">; guild_id: import("zod").ZodOptional; credentials: import("zod").ZodOptional, import("zod").ZodString>>; }, "strip", import("zod").ZodTypeAny, { operation: "get_guild"; credentials?: Partial> | undefined; guild_id?: string | undefined; }, { operation: "get_guild"; credentials?: Partial> | undefined; guild_id?: string | undefined; }>]>; static readonly resultSchema: import("zod").ZodDiscriminatedUnion<"operation", [import("zod").ZodObject<{ operation: import("zod").ZodLiteral<"send_message">; success: import("zod").ZodBoolean; message: import("zod").ZodOptional>; error: import("zod").ZodString; }, "strip", import("zod").ZodTypeAny, { error: string; success: boolean; operation: "send_message"; message?: Record | undefined; }, { error: string; success: boolean; operation: "send_message"; message?: Record | undefined; }>, import("zod").ZodObject<{ operation: import("zod").ZodLiteral<"list_messages">; success: import("zod").ZodBoolean; messages: import("zod").ZodOptional, "many">>; error: import("zod").ZodString; }, "strip", import("zod").ZodTypeAny, { error: string; success: boolean; operation: "list_messages"; messages?: Record[] | undefined; }, { error: string; success: boolean; operation: "list_messages"; messages?: Record[] | undefined; }>, import("zod").ZodObject<{ operation: import("zod").ZodLiteral<"edit_message">; success: import("zod").ZodBoolean; message: import("zod").ZodOptional>; error: import("zod").ZodString; }, "strip", import("zod").ZodTypeAny, { error: string; success: boolean; operation: "edit_message"; message?: Record | undefined; }, { error: string; success: boolean; operation: "edit_message"; message?: Record | undefined; }>, import("zod").ZodObject<{ operation: import("zod").ZodLiteral<"delete_message">; success: import("zod").ZodBoolean; error: import("zod").ZodString; }, "strip", import("zod").ZodTypeAny, { error: string; success: boolean; operation: "delete_message"; }, { error: string; success: boolean; operation: "delete_message"; }>, import("zod").ZodObject<{ operation: import("zod").ZodLiteral<"pin_message">; success: import("zod").ZodBoolean; error: import("zod").ZodString; }, "strip", import("zod").ZodTypeAny, { error: string; success: boolean; operation: "pin_message"; }, { error: string; success: boolean; operation: "pin_message"; }>, import("zod").ZodObject<{ operation: import("zod").ZodLiteral<"add_reaction">; success: import("zod").ZodBoolean; error: import("zod").ZodString; }, "strip", import("zod").ZodTypeAny, { error: string; success: boolean; operation: "add_reaction"; }, { error: string; success: boolean; operation: "add_reaction"; }>, import("zod").ZodObject<{ operation: import("zod").ZodLiteral<"list_channels">; success: import("zod").ZodBoolean; channels: import("zod").ZodOptional, "many">>; error: import("zod").ZodString; }, "strip", import("zod").ZodTypeAny, { error: string; success: boolean; operation: "list_channels"; channels?: Record[] | undefined; }, { error: string; success: boolean; operation: "list_channels"; channels?: Record[] | undefined; }>, import("zod").ZodObject<{ operation: import("zod").ZodLiteral<"create_channel">; success: import("zod").ZodBoolean; channel: import("zod").ZodOptional>; error: import("zod").ZodString; }, "strip", import("zod").ZodTypeAny, { error: string; success: boolean; operation: "create_channel"; channel?: Record | undefined; }, { error: string; success: boolean; operation: "create_channel"; channel?: Record | undefined; }>, import("zod").ZodObject<{ operation: import("zod").ZodLiteral<"delete_channel">; success: import("zod").ZodBoolean; error: import("zod").ZodString; }, "strip", import("zod").ZodTypeAny, { error: string; success: boolean; operation: "delete_channel"; }, { error: string; success: boolean; operation: "delete_channel"; }>, import("zod").ZodObject<{ operation: import("zod").ZodLiteral<"create_thread">; success: import("zod").ZodBoolean; thread: import("zod").ZodOptional>; error: import("zod").ZodString; }, "strip", import("zod").ZodTypeAny, { error: string; success: boolean; operation: "create_thread"; thread?: Record | undefined; }, { error: string; success: boolean; operation: "create_thread"; thread?: Record | undefined; }>, import("zod").ZodObject<{ operation: import("zod").ZodLiteral<"list_threads">; success: import("zod").ZodBoolean; threads: import("zod").ZodOptional, "many">>; error: import("zod").ZodString; }, "strip", import("zod").ZodTypeAny, { error: string; success: boolean; operation: "list_threads"; threads?: Record[] | undefined; }, { error: string; success: boolean; operation: "list_threads"; threads?: Record[] | undefined; }>, import("zod").ZodObject<{ operation: import("zod").ZodLiteral<"list_members">; success: import("zod").ZodBoolean; members: import("zod").ZodOptional, "many">>; error: import("zod").ZodString; }, "strip", import("zod").ZodTypeAny, { error: string; success: boolean; operation: "list_members"; members?: Record[] | undefined; }, { error: string; success: boolean; operation: "list_members"; members?: Record[] | undefined; }>, import("zod").ZodObject<{ operation: import("zod").ZodLiteral<"get_guild">; success: import("zod").ZodBoolean; guild: import("zod").ZodOptional>; error: import("zod").ZodString; }, "strip", import("zod").ZodTypeAny, { error: string; success: boolean; operation: "get_guild"; guild?: Record | undefined; }, { error: string; success: boolean; operation: "get_guild"; guild?: Record | undefined; }>]>; static readonly shortDescription = "Discord integration for messaging, channels, threads, and server management"; static readonly longDescription = "\n Comprehensive Discord integration via the REST API (v10).\n\n Features:\n - Send, edit, delete, and pin messages in channels\n - List and read message history\n - Add emoji reactions to messages\n - List, create, and delete channels\n - Create and list threads\n - List guild/server members\n - Get guild/server information\n\n Security Features:\n - OAuth 2.0 authentication with Discord\n - Guild-scoped access with bot permissions\n - Secure credential handling with base64-encoded payloads\n "; static readonly alias = ""; constructor(params?: T, context?: BubbleContext); testCredential(): Promise; private parseCredentials; protected chooseCredential(): string | undefined; /** Resolve guild ID from params or credential metadata. */ private getGuildId; private discordRequest; protected performAction(): Promise>; private sendMessage; private listMessages; private editMessage; private deleteMessage; private pinMessage; private addReaction; private listChannels; private createChannel; private deleteChannel; private createThread; private listThreads; private listMembers; private getGuild; } //# sourceMappingURL=discord.d.ts.map